diff --git a/build/lib/helpdesk/__init__.py b/build/lib/helpdesk/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/build/lib/helpdesk/admin.py b/build/lib/helpdesk/admin.py new file mode 100644 index 00000000..ed1ab601 --- /dev/null +++ b/build/lib/helpdesk/admin.py @@ -0,0 +1,75 @@ +from django.contrib import admin +from django.utils.translation import ugettext_lazy as _ +from helpdesk.models import Queue, Ticket, FollowUp, PreSetReply, KBCategory +from helpdesk.models import EscalationExclusion, EmailTemplate, KBItem +from helpdesk.models import TicketChange, Attachment, IgnoreEmail +from helpdesk.models import CustomField + + +@admin.register(Queue) +class QueueAdmin(admin.ModelAdmin): + list_display = ('title', 'slug', 'email_address', 'locale') + prepopulated_fields = {"slug": ("title",)} + + +@admin.register(Ticket) +class TicketAdmin(admin.ModelAdmin): + list_display = ('title', 'status', 'assigned_to', 'queue', 'hidden_submitter_email',) + date_hierarchy = 'created' + list_filter = ('queue', 'assigned_to', 'status') + + def hidden_submitter_email(self, ticket): + if ticket.submitter_email: + username, domain = ticket.submitter_email.split("@") + username = username[:2] + "*" * (len(username) - 2) + domain = domain[:1] + "*" * (len(domain) - 2) + domain[-1:] + return "%s@%s" % (username, domain) + else: + return ticket.submitter_email + hidden_submitter_email.short_description = _('Submitter E-Mail') + + +class TicketChangeInline(admin.StackedInline): + model = TicketChange + + +class AttachmentInline(admin.StackedInline): + model = Attachment + + +@admin.register(FollowUp) +class FollowUpAdmin(admin.ModelAdmin): + inlines = [TicketChangeInline, AttachmentInline] + list_display = ('ticket_get_ticket_for_url', 'title', 'date', 'ticket', 'user', 'new_status') + list_filter = ('user', 'date', 'new_status') + + def ticket_get_ticket_for_url(self, obj): + return obj.ticket.ticket_for_url + ticket_get_ticket_for_url.short_description = _('Slug') + + +@admin.register(KBItem) +class KBItemAdmin(admin.ModelAdmin): + list_display = ('category', 'title', 'last_updated',) + list_display_links = ('title',) + + +@admin.register(CustomField) +class CustomFieldAdmin(admin.ModelAdmin): + list_display = ('name', 'label', 'data_type') + + +@admin.register(EmailTemplate) +class EmailTemplateAdmin(admin.ModelAdmin): + list_display = ('template_name', 'heading', 'locale') + list_filter = ('locale', ) + + +@admin.register(IgnoreEmail) +class IgnoreEmailAdmin(admin.ModelAdmin): + list_display = ('name', 'queue_list', 'email_address', 'keep_in_mailbox') + + +admin.site.register(PreSetReply) +admin.site.register(EscalationExclusion) +admin.site.register(KBCategory) diff --git a/build/lib/helpdesk/akismet.py b/build/lib/helpdesk/akismet.py new file mode 100644 index 00000000..31564b92 --- /dev/null +++ b/build/lib/helpdesk/akismet.py @@ -0,0 +1,373 @@ +# Version 0.2.0 +# 2009/06/18 + +# Copyright Michael Foord 2005-2009 +# akismet.py +# Python interface to the akismet API +# E-mail fuzzyman@voidspace.org.uk + +# http://www.voidspace.org.uk/python/modules.shtml +# http://akismet.com + +# Released subject to the BSD License +# See http://www.voidspace.org.uk/python/license.shtml + +# Updated by django-helpdesk developers, 2018 +# to be compatible with python 3 + + +""" +A python interface to the `Akismet `_ API. +This is a web service for blocking SPAM comments to blogs - or other online +services. + +You will need a Wordpress API key, from `wordpress.com `_. + +You should pass in the keyword argument 'agent' to the name of your program, +when you create an Akismet instance. This sets the ``user-agent`` to a useful +value. + +The default is:: + + Python Interface by Fuzzyman | akismet.py/0.2.0 + +Whatever you pass in, will replace the *Python Interface by Fuzzyman* part. +**0.2.0** will change with the version of this interface. + +Usage example:: + + from akismet import Akismet + + api = Akismet(agent='Test Script') + # if apikey.txt is in place, + # the key will automatically be set + # or you can call api.setAPIKey() + # + if api.key is None: + print >> sys.stderr, "No 'apikey.txt' file." + elif not api.verify_key(): + print >> sys.stderr, "The API key is invalid." + else: + # data should be a dictionary of values + # They can all be filled in with defaults + # from a CGI environment + if api.comment_check(comment, data): + print >> sys.stderr, 'This comment is spam.' + else: + print >> sys.stderr, 'This comment is ham.' +""" + + +import os +try: + from urllib import urlencode # python2 +except ImportError: + from urllib.parse import urlencode # python3 + +import socket +if hasattr(socket, 'setdefaulttimeout'): + # Set the default timeout on sockets to 5 seconds + socket.setdefaulttimeout(5) + +__version__ = '0.2.0' + +__all__ = ( + '__version__', + 'Akismet', + 'AkismetError', + 'APIKeyError', +) + +__author__ = 'Michael Foord ' + +__docformat__ = "restructuredtext en" + +user_agent = "%s | akismet.py/%s" +DEFAULTAGENT = 'Python Interface by Fuzzyman/%s' + +isfile = os.path.isfile + +urllib2 = None +try: + from google.appengine.api import urlfetch +except ImportError: + import urllib2 + +if urllib2 is None: + def _fetch_url(url, data, headers): + req = urlfetch.fetch(url=url, payload=data, method=urlfetch.POST, headers=headers) + if req.status_code == 200: + return req.content + raise Exception('Could not fetch Akismet URL: %s Response code: %s' % + (url, req.status_code)) +else: + def _fetch_url(url, data, headers): + req = urllib2.Request(url, data, headers) + h = urllib2.urlopen(req) + resp = h.read() + return resp + + +class AkismetError(Exception): + """Base class for all akismet exceptions.""" + pass + + +class APIKeyError(AkismetError): + """Invalid API key.""" + pass + + +class Akismet(object): + """A class for working with the akismet API""" + + baseurl = 'rest.akismet.com/1.1/' + + def __init__(self, key=None, blog_url=None, agent=None): + """Automatically calls ``setAPIKey``.""" + if agent is None: + agent = DEFAULTAGENT % __version__ + self.user_agent = user_agent % (agent, __version__) + self.setAPIKey(key, blog_url) + + def _getURL(self): + """ + Fetch the url to make requests to. + + This comprises of api key plus the baseurl. + """ + return 'http://%s.%s' % (self.key, self.baseurl) + + def _safeRequest(self, url, data, headers): + try: + resp = _fetch_url(url, data, headers) + except Exception as e: + raise AkismetError(str(e)) + return resp + + def setAPIKey(self, key=None, blog_url=None): + """ + Set the wordpress API key for all transactions. + + If you don't specify an explicit API ``key`` and ``blog_url`` it will + attempt to load them from a file called ``apikey.txt`` in the current + directory. + + This method is *usually* called automatically when you create a new + ``Akismet`` instance. + """ + if key is None and isfile('apikey.txt'): + the_file = [l.strip() for l in open('apikey.txt').readlines() + if l.strip() and not l.strip().startswith('#')] + try: + self.key = the_file[0] + self.blog_url = the_file[1] + except IndexError: + raise APIKeyError("Your 'apikey.txt' is invalid.") + else: + self.key = key + self.blog_url = blog_url + + def verify_key(self): + """ + This equates to the ``verify-key`` call against the akismet API. + + It returns ``True`` if the key is valid. + + The docs state that you *ought* to call this at the start of the + transaction. + + It raises ``APIKeyError`` if you have not yet set an API key. + + If the connection to akismet fails, it allows the normal ``HTTPError`` + or ``URLError`` to be raised. + (*akismet.py* uses `urllib2 `_) + """ + if self.key is None: + raise APIKeyError("Your have not set an API key.") + data = {'key': self.key, 'blog': self.blog_url} + # this function *doesn't* use the key as part of the URL + url = 'http://%sverify-key' % self.baseurl + # we *don't* trap the error here + # so if akismet is down it will raise an HTTPError or URLError + headers = {'User-Agent': self.user_agent} + resp = self._safeRequest(url, urlencode(data), headers) + if resp.lower() == 'valid': + return True + else: + return False + + def _build_data(self, comment, data): + """ + This function builds the data structure required by ``comment_check``, + ``submit_spam``, and ``submit_ham``. + + It modifies the ``data`` dictionary you give it in place. (and so + doesn't return anything) + + It raises an ``AkismetError`` if the user IP or user-agent can't be + worked out. + """ + data['comment_content'] = comment + if 'user_ip' not in data: + try: + val = os.environ['REMOTE_ADDR'] + except KeyError: + raise AkismetError("No 'user_ip' supplied") + data['user_ip'] = val + if 'user_agent' not in data: + try: + val = os.environ['HTTP_USER_AGENT'] + except KeyError: + raise AkismetError("No 'user_agent' supplied") + data['user_agent'] = val + # + data.setdefault('referrer', os.environ.get('HTTP_REFERER', 'unknown')) + data.setdefault('permalink', '') + data.setdefault('comment_type', 'comment') + data.setdefault('comment_author', '') + data.setdefault('comment_author_email', '') + data.setdefault('comment_author_url', '') + data.setdefault('SERVER_ADDR', os.environ.get('SERVER_ADDR', '')) + data.setdefault('SERVER_ADMIN', os.environ.get('SERVER_ADMIN', '')) + data.setdefault('SERVER_NAME', os.environ.get('SERVER_NAME', '')) + data.setdefault('SERVER_PORT', os.environ.get('SERVER_PORT', '')) + data.setdefault('SERVER_SIGNATURE', os.environ.get('SERVER_SIGNATURE', '')) + data.setdefault('SERVER_SOFTWARE', os.environ.get('SERVER_SOFTWARE', '')) + data.setdefault('HTTP_ACCEPT', os.environ.get('HTTP_ACCEPT', '')) + data.setdefault('blog', self.blog_url) + + def comment_check(self, comment, data=None, build_data=True, DEBUG=False): + """ + This is the function that checks comments. + + It returns ``True`` for spam and ``False`` for ham. + + If you set ``DEBUG=True`` then it will return the text of the response, + instead of the ``True`` or ``False`` object. + + It raises ``APIKeyError`` if you have not yet set an API key. + + If the connection to Akismet fails then the ``HTTPError`` or + ``URLError`` will be propogated. + + As a minimum it requires the body of the comment. This is the + ``comment`` argument. + + Akismet requires some other arguments, and allows some optional ones. + The more information you give it, the more likely it is to be able to + make an accurate diagnosise. + + You supply these values using a mapping object (dictionary) as the + ``data`` argument. + + If ``build_data`` is ``True`` (the default), then *akismet.py* will + attempt to fill in as much information as possible, using default + values where necessary. This is particularly useful for programs + running in a {acro;CGI} environment. A lot of useful information + can be supplied from evironment variables (``os.environ``). See below. + + You *only* need supply values for which you don't want defaults filled + in for. All values must be strings. + + There are a few required values. If they are not supplied, and + defaults can't be worked out, then an ``AkismetError`` is raised. + + If you set ``build_data=False`` and a required value is missing an + ``AkismetError`` will also be raised. + + The normal values (and defaults) are as follows : :: + + 'user_ip': os.environ['REMOTE_ADDR'] (*) + 'user_agent': os.environ['HTTP_USER_AGENT'] (*) + 'referrer': os.environ.get('HTTP_REFERER', 'unknown') [#]_ + 'permalink': '' + 'comment_type': 'comment' [#]_ + 'comment_author': '' + 'comment_author_email': '' + 'comment_author_url': '' + 'SERVER_ADDR': os.environ.get('SERVER_ADDR', '') + 'SERVER_ADMIN': os.environ.get('SERVER_ADMIN', '') + 'SERVER_NAME': os.environ.get('SERVER_NAME', '') + 'SERVER_PORT': os.environ.get('SERVER_PORT', '') + 'SERVER_SIGNATURE': os.environ.get('SERVER_SIGNATURE', '') + 'SERVER_SOFTWARE': os.environ.get('SERVER_SOFTWARE', '') + 'HTTP_ACCEPT': os.environ.get('HTTP_ACCEPT', '') + + (*) Required values + + You may supply as many additional 'HTTP_*' type values as you wish. + These should correspond to the http headers sent with the request. + + .. [#] Note the spelling "referrer". This is a required value by the + akismet api - however, referrer information is not always + supplied by the browser or server. In fact the HTTP protocol + forbids relying on referrer information for functionality in + programs. + .. [#] The `API docs `_ state that this value + can be " *blank, comment, trackback, pingback, or a made up value* + *like 'registration'* ". + """ + if self.key is None: + raise APIKeyError("Your have not set an API key.") + if data is None: + data = {} + if build_data: + self._build_data(comment, data) + if 'blog' not in data: + data['blog'] = self.blog_url + url = '%scomment-check' % self._getURL() + # we *don't* trap the error here + # so if akismet is down it will raise an HTTPError or URLError + headers = {'User-Agent': self.user_agent} + resp = self._safeRequest(url, urlencode(data), headers) + if DEBUG: + return resp + resp = resp.lower() + if resp == 'true': + return True + elif resp == 'false': + return False + else: + # NOTE: Happens when you get a 'howdy wilbur' response ! + raise AkismetError('missing required argument.') + + def submit_spam(self, comment, data=None, build_data=True): + """ + This function is used to tell akismet that a comment it marked as ham, + is really spam. + + It takes all the same arguments as ``comment_check``, except for + *DEBUG*. + """ + if self.key is None: + raise APIKeyError("Your have not set an API key.") + if data is None: + data = {} + if build_data: + self._build_data(comment, data) + url = '%ssubmit-spam' % self._getURL() + # we *don't* trap the error here + # so if akismet is down it will raise an HTTPError or URLError + headers = {'User-Agent': self.user_agent} + self._safeRequest(url, urlencode(data), headers) + + def submit_ham(self, comment, data=None, build_data=True): + """ + This function is used to tell akismet that a comment it marked as spam, + is really ham. + + It takes all the same arguments as ``comment_check``, except for + *DEBUG*. + """ + if self.key is None: + raise APIKeyError("Your have not set an API key.") + if data is None: + data = {} + if build_data: + self._build_data(comment, data) + url = '%ssubmit-ham' % self._getURL() + # we *don't* trap the error here + # so if akismet is down it will raise an HTTPError or URLError + headers = {'User-Agent': self.user_agent} + self._safeRequest(url, urlencode(data), headers) diff --git a/build/lib/helpdesk/apps.py b/build/lib/helpdesk/apps.py new file mode 100644 index 00000000..a573b4ca --- /dev/null +++ b/build/lib/helpdesk/apps.py @@ -0,0 +1,6 @@ +from django.apps import AppConfig + + +class HelpdeskConfig(AppConfig): + name = 'helpdesk' + verbose_name = "Helpdesk" diff --git a/build/lib/helpdesk/decorators.py b/build/lib/helpdesk/decorators.py new file mode 100644 index 00000000..47dc5911 --- /dev/null +++ b/build/lib/helpdesk/decorators.py @@ -0,0 +1,23 @@ +from functools import wraps + +from django.urls import reverse +from django.http import HttpResponseRedirect, Http404 +from django.utils.decorators import available_attrs + +from helpdesk import settings as helpdesk_settings + + +def protect_view(view_func): + """ + Decorator for protecting the views checking user, redirecting + to the log-in page if necessary or returning 404 status code + """ + @wraps(view_func, assigned=available_attrs(view_func)) + def _wrapped_view(request, *args, **kwargs): + if not request.user.is_authenticated and helpdesk_settings.HELPDESK_REDIRECT_TO_LOGIN_BY_DEFAULT: + return HttpResponseRedirect(reverse('helpdesk:login')) + elif not request.user.is_authenticated and helpdesk_settings.HELPDESK_ANON_ACCESS_RAISES_404: + raise Http404 + return view_func(request, *args, **kwargs) + + return _wrapped_view diff --git a/build/lib/helpdesk/fixtures/emailtemplate.json b/build/lib/helpdesk/fixtures/emailtemplate.json new file mode 100644 index 00000000..7f35769f --- /dev/null +++ b/build/lib/helpdesk/fixtures/emailtemplate.json @@ -0,0 +1,1349 @@ +[ + { + "pk": 1, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "assigned_cc", + "html": "

Hello,

\r\n\r\n

This is a courtesy e-mail to let you know that ticket {{ ticket.ticket }} ({{ ticket.title }}) for {{ ticket.submitter_email }} has been {% if ticket.assigned_to %}assigned to {{ ticket.assigned_to }}{% else %}unassigned{% endif %}.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nQueue: {{ queue.title }}
\r\nTitle: {{ ticket.title }}
\r\nOpened: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nSubmitter: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nPriority: {{ ticket.get_priority_display }}
\r\nStatus: {{ ticket.get_status }}
\r\nAssigned to: {{ ticket.get_assigned_to }}
\r\nView Online to update this ticket (login required)

\r\n\r\n

Just for reference, the original ticket description was:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "Hello,\r\n\r\nThis is a courtesy e-mail to let you know that ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") for {{ ticket.submitter_email }} has been {% if ticket.assigned_to %}assigned to {{ ticket.assigned_to }}{% else %}unassigned{% endif %}.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nQueue: {{ queue.title }}\r\nTitle: {{ ticket.title }}\r\nOpened: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSubmitter: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriority: {{ ticket.get_priority_display }}\r\nStatus: {{ ticket.get_status }}\r\nAssigned to: {{ ticket.get_assigned_to }}\r\nView Online: {{ ticket.staff_url }}\r\n\r\nThe original ticket description was:\r\n\r\n{{ ticket.description }}\r\n\r\n", + "heading": "Ticket Assigned", + "subject": "(Assigned)", + "locale": "en" + } + }, + { + "pk": 2, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "assigned_owner", + "html": "

Hello,

\r\n\r\n

This is a courtesy e-mail to let you know that ticket {{ ticket.ticket }} ({{ ticket.title }}) for {{ ticket.submitter_email }} has been assigned to you.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nQueue: {{ queue.title }}
\r\nTitle: {{ ticket.title }}
\r\nOpened: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nSubmitter: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nPriority: {{ ticket.get_priority_display }}
\r\nStatus: {{ ticket.get_status }}
\r\nAssigned to: YOU
\r\nView Online to update this ticket (login required)

\r\n\r\n

Just for reference, the original ticket description was:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "Hello,\r\n\r\nThis is a courtesy e-mail to let you know that ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") for {{ ticket.submitter_email }} has been assigned to you.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nQueue: {{ queue.title }}\r\nTitle: {{ ticket.title }}\r\nOpened: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSubmitter: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriority: {{ ticket.get_priority_display }}\r\nStatus: {{ ticket.get_status }}\r\nAssigned to: YOU\r\nView Online: {{ ticket.staff_url }}\r\n\r\nThe original ticket description was:\r\n\r\n{{ ticket.description }}\r\n\r\n", + "heading": "Ticket Assigned To You", + "subject": "(Assigned To You)", + "locale": "en" + } + }, + { + "pk": 3, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "closed_cc", + "html": "

Hello,

\r\n\r\n

Ticket {{ ticket.title }} ('{{ ticket.title }}'){% if ticket.assigned_to %}, assigned to {{ ticket.get_assigned_to }}{% endif %} has been closed.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nQueue: {{ queue.title }}
\r\nTitle: {{ ticket.title }}
\r\nOpened: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nSubmitter: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nPriority: {{ ticket.get_priority_display }}
\r\nStatus: {{ ticket.get_status }}
\r\nAssigned to: {{ ticket.get_assigned_to }}
\r\nView Online to update this ticket (login required)

\r\n\r\n

Just for reference, the original ticket description was:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

The resolution provided was:

\r\n\r\n
{{ resolution }}
\r\n\r\n

If you wish to view this ticket online, you can visit {{ ticket.staff_url }}.

", + "plain_text": "Hello,\r\n\r\nTicket {{ ticket.title }} (\"{{ ticket.title }}\"){% if ticket.assigned_to %}, assigned to {{ ticket.assigned_to }}{% endif %} has been closed.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nQueue: {{ queue.title }}\r\nTitle: {{ ticket.title }}\r\nOpened: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSubmitter: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriority: {{ ticket.get_priority_display }}\r\nStatus: {{ ticket.get_status }}\r\nAssigned to: {{ ticket.get_assigned_to }}\r\nView Online: {{ ticket.staff_url }} (login required)\r\n\r\nThe original description was:\r\n\r\n{{ ticket.description }}\r\n\r\nThe resolution provided was:\r\n\r\n{{ resolution }}\r\n\r\n", + "heading": "Ticket Closed", + "subject": "(Closed)", + "locale": "en" + } + }, + { + "pk": 4, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "closed_owner", + "html": "

Hello,

\r\n\r\n

The following ticket, which is currently assigned to you, has been closed.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nQueue: {{ queue.title }}
\r\nTitle: {{ ticket.title }}
\r\nOpened: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nSubmitter: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nPriority: {{ ticket.get_priority_display }}
\r\nStatus: {{ ticket.get_status }}
\r\nAssigned to: {{ ticket.get_assigned_to }}
\r\nView Online to update this ticket (login required)

\r\n\r\n

Just for reference, the original ticket description was:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

The resolution provided was:

\r\n\r\n
{{ ticket.resolution }}
", + "plain_text": "Hello,\r\n\r\nThe following ticket, which is currently assigned to you, has been closed.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nQueue: {{ queue.title }}\r\nTitle: {{ ticket.title }}\r\nOpened: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSubmitter: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriority: {{ ticket.get_priority_display }}\r\nStatus: {{ ticket.get_status }}\r\nAssigned to: {{ ticket.get_assigned_to }}\r\nView Online: {{ ticket.staff_url }} (login required)\r\n\r\nIf you wish to view this ticket online, you can visit {{ ticket.staff_url }}.\r\n\r\n", + "heading": "Ticket Closed", + "subject": "(Closed)", + "locale": "en" + } + }, + { + "pk": 5, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "closed_submitter", + "html": "

Hello,

\r\n\r\n

You recently logged a ticket with a subject of {{ ticket.title }} with us. This e-mail is to confirm that this ticket has been closed.

\r\n\r\n

The resolution that has been provided is:

\r\n\r\n
{{ ticket.resolution }}
\r\n\r\n

If you wish to view this ticket online, you can visit {{ ticket.ticket_url }}. If you believe that further work is required on this ticket, please let us know by replying to this e-mail and keeping the subject intact.

", + "plain_text": "Hello,\r\n\r\nYou recently logged a ticket with a subject of \"{{ ticket.title }}\" with us. This e-mail is to confirm that this ticket has been closed.\r\n\r\nIf you believe that further work is required on this ticket, please let us know by replying to this e-mail and keeping the subject intact.\r\n\r\nIf you wish to view this ticket online, you can visit {{ ticket.ticket_url }}.\r\n\r\nThe resolution provided was:\r\n\r\n{{ ticket.resolution }}\r\n\r\n", + "heading": "Ticket Closed", + "subject": "(Closed)", + "locale": "en" + } + }, + { + "pk": 6, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "escalated_cc", + "html": "

Hello,

\r\n\r\n

This is a courtesy e-mail to let you know that ticket {{ ticket.ticket }} ('{{ ticket.title }}') has been escalated automatically.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nQueue: {{ queue.title }}
\r\nTitle: {{ ticket.title }}
\r\nOpened: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nSubmitter: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nPriority: {{ ticket.get_priority_display }}
\r\nStatus: {{ ticket.get_status }}
\r\nAssigned to: {{ ticket.get_assigned_to }}
\r\nView Online to update this ticket (login required)

\r\n\r\n

Just for reference, the original ticket description was:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "Hello,\r\n\r\nThis is a courtesy e-mail to let you know that ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") has been escalated automatically.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nQueue: {{ queue.title }}\r\nTitle: {{ ticket.title }}\r\nOpened: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSubmitter: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriority: {{ ticket.get_priority_display }}\r\nStatus: {{ ticket.get_status }}\r\nAssigned to: {{ ticket.get_assigned_to }}\r\nView Online: {{ ticket.staff_url }} (login required)\r\n\r\nThe original ticket description was:\r\n\r\n{{ ticket.description }}\r\n\r\n", + "heading": "Ticket Escalated", + "subject": "(Escalated)", + "locale": "en" + } + }, + { + "pk": 8, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "escalated_owner", + "html": "

Hello,

\r\n\r\n

A ticket currently assigned to you has been automatically escalated as it has been open for longer than expected.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nQueue: {{ queue.title }}
\r\nTitle: {{ ticket.title }}
\r\nOpened: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nSubmitter: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nPriority: {{ ticket.get_priority_display }}
\r\nStatus: {{ ticket.get_status }}
\r\nAssigned to: {{ ticket.get_assigned_to }}
\r\nView Online to update this ticket (login required)

\r\n\r\n

Just for reference, the original ticket description was:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "Hello,\r\n\r\nA ticket currently assigned to you has been automatically escalated as it has been open for longer than expected.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nQueue: {{ queue.title }}\r\nTitle: {{ ticket.title }}\r\nOpened: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSubmitter: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriority: {{ ticket.get_priority_display }}\r\nStatus: {{ ticket.get_status }}\r\nAssigned to: {{ ticket.get_assigned_to }}\r\nView Online: {{ ticket.staff_url }} (login required)\r\n\r\nThe original ticket description was:\r\n\r\n{{ ticket.description }}\r\n\r\nPlease review this ticket and attempt to provide a resolution as soon as possible.\r\n\r\n", + "heading": "Ticket Assigned to You Has Been Escalated", + "subject": "(Escalated)", + "locale": "en" + } + }, + { + "pk": 7, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "escalated_submitter", + "html": "

Hello,

\r\n\r\n

You recently logged a ticket with a subject of {{ ticket.title }} with us. This e-mail is to advise you of an automated escalation of that ticket as it has been open for longer than expected.

\r\n\r\n

We will review your ticket shortly and attempt to provide a resolution as soon as possible.

\r\n\r\n

If you wish to view this ticket online, you can visit {{ ticket.ticket_url }}.

", + "plain_text": "Hello,\r\n\r\nYou recently logged a ticket with a subject of \"{{ ticket.title }}\" with us. This e-mail is to advise you of an automated escalation of that ticket as it has been open for longer than expected.\r\n\r\nWe will review your ticket shortly and attempt to provide a resolution as soon as possible.\r\n\r\nIf you wish to view this ticket online, you can visit {{ ticket.ticket_url }}.\r\n\r\n", + "heading": "Your Ticket Has Been Escalated", + "subject": "(Escalated)", + "locale": "en" + } + }, + { + "pk": 9, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "newticket_cc", + "html": "

Hello,

\r\n\r\n

This is a courtesy e-mail to let you know that a new ticket has been opened.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nQueue: {{ queue.title }}
\r\nTitle: {{ ticket.title }}
\r\nOpened: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nSubmitter: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nPriority: {{ ticket.get_priority_display }}
\r\nStatus: {{ ticket.get_status }}
\r\nView Online to update this ticket (login required)

\r\n\r\n

Description:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "Hello,\r\n\r\nThis is a courtesy e-mail to let you know that a new ticket has been opened.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nQueue: {{ queue.title }}\r\nTitle: {{ ticket.title }}\r\nOpened: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSubmitter: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriority: {{ ticket.get_priority_display }}\r\nStatus: {{ ticket.get_status }}\r\nView Online: {{ ticket.staff_url }} (login required)\r\n\r\nDescription:\r\n{{ ticket.description }}\r\n\r\n", + "heading": "New Ticket Opened", + "subject": "(Opened)", + "locale": "en" + } + }, + { + "pk": 10, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "newticket_submitter", + "html": "

Hello,

\r\n\r\n

This is a courtesy e-mail to let you know that we have received your helpdesk query with a subject of {{ ticket.title }}.

\r\n\r\n

You do not have to do anything further at this stage. Your ticket has been assigned a number of {{ ticket.ticket }} and will be responded to shortly.

\r\n\r\n

If you wish to send us further details, or if you have any queries about this ticket, please include the ticket id of {{ ticket.ticket }} in the subject. The easiest way to do this is just press \"reply\" to this message.

\r\n\r\n

If you wish to view this ticket online to provide further information, attach files or view recent updates, you can visit {{ ticket.ticket_url }}.

\r\n\r\n

We will investigate your query and attempt to resolve it as soon as possible. You will receive further updates and a resolution via this e-mail address.

", + "plain_text": "Hello,\r\n\r\nThis is a courtesy e-mail to let you know that we have received your helpdesk query with a subject of \"{{ ticket.title }}\". \r\n\r\nYou do not have to do anything further at this stage. Your ticket has been assigned a number of {{ ticket.ticket }} and will be responded to shortly.\r\n\r\nIf you wish to send us further details, or if you have any queries about this ticket, please include the ticket id of '{{ ticket.ticket }}' in the subject. The easiest way to do this is just press \"reply\" to this message.\r\n\r\nIf you wish to view this ticket online to provide further information, attach files or view recent updates, you can visit {{ ticket.ticket_url }}.\r\n\r\nWe will investigate your query and attempt to resolve it as soon as possible. You will receive further updates and a resolution via this e-mail address.\r\n", + "heading": "Your Ticket Has Been Opened", + "subject": "(Opened)", + "locale": "en" + } + }, + { + "pk": 11, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "resolved_cc", + "html": "

Hello,

\r\n\r\n

The following ticket has been resolved.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nQueue: {{ queue.title }}
\r\nTitle: {{ ticket.title }}
\r\nOpened: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nSubmitter: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nPriority: {{ ticket.get_priority_display }}
\r\nStatus: {{ ticket.get_status }}
\r\nAssigned to: {{ ticket.get_assigned_to }}
\r\nView Online to update this ticket (login required)

\r\n\r\n

Just for reference, the original ticket description was:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

The resolution that was added was:

\r\n\r\n
{{ ticket.resolution }}
\r\n\r\n

This resolution has been e-mailed to the submitter, who will verify it before you can close this ticket.

", + "plain_text": "Hello,\r\n\r\nThe following ticket has been resolved:\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nQueue: {{ queue.title }}\r\nTitle: {{ ticket.title }}\r\nOpened: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSubmitter: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriority: {{ ticket.get_priority_display }}\r\nStatus: {{ ticket.get_status }}\r\nAssigned to: {{ ticket.get_assigned_to }}\r\nView Online: {{ ticket.staff_url }} (login required)\r\n\r\nThe original ticket description was:\r\n\r\n{{ ticket.description }}\r\n\r\nThe resolution provided was:\r\n\r\n{{ ticket.resolution }}\r\n\r\nThis resolution has been e-mailed to the submitter, who will verify it before you can close this ticket.\r\n\r\n", + "heading": "Ticket Resolved", + "subject": "(Resolved)", + "locale": "en" + } + }, + { + "pk": 12, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "resolved_owner", + "html": "

Hello,

\r\n\r\n

A ticket currently assigned to you has been resolved.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nQueue: {{ queue.title }}
\r\nTitle: {{ ticket.title }}
\r\nOpened: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nSubmitter: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nPriority: {{ ticket.get_priority_display }}
\r\nStatus: {{ ticket.get_status }}
\r\nAssigned to: {{ ticket.get_assigned_to }}
\r\nView Online to update this ticket (login required)

\r\n\r\n

Just for reference, the original ticket description was:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

The resolution that was added was:

\r\n\r\n
{{ ticket.resolution }}
\r\n\r\n

This resolution has been e-mailed to the submitter, who will verify it before you can close this ticket.

", + "plain_text": "Hello,\r\n\r\nA ticket currently assigned to you has been resolved.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nQueue: {{ queue.title }}\r\nTitle: {{ ticket.title }}\r\nOpened: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSubmitter: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriority: {{ ticket.get_priority_display }}\r\nStatus: {{ ticket.get_status }}\r\nAssigned to: {{ ticket.get_assigned_to }}\r\nView Online: {{ ticket.staff_url }} (login required)\r\n\r\nThe original ticket description was:\r\n\r\n{{ ticket.description }}\r\n\r\nThe resolution provided was:\r\n\r\n{{ ticket.resolution }}\r\n\r\nThis resolution has been e-mailed to the submitter, who will verify it before you can close this ticket.\r\n\r\n", + "heading": "Ticket Resolved", + "subject": "(Resolved)", + "locale": "en" + } + }, + { + "pk": 13, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "resolved_submitter", + "html": "

Hello,

\r\n\r\n

You recently logged a ticket with a subject of {{ ticket.title }} with us. This e-mail is to advise you of a resolution to that ticket.

\r\n\r\n

The following resolution was added to ticket {{ ticket.ticket }}:

\r\n\r\n
{{ resolution }}
\r\n\r\n

Can you please confirm that this resolution addresses your needs so we may close this ticket? If you have any further queries, or if you do not believe this resolution is adequate, please reply to this e-mail and keep the subject intact.

\r\n\r\n

If you wish to view this ticket online, you can visit {{ ticket.ticket_url }}.

", + "plain_text": "Hello,\r\n\r\nYou recently logged a ticket with a subject of \"{{ ticket.title }}\" with us. This e-mail is to advise you of a resolution to that ticket.\r\n\r\nThe following resolution was added to ticket {{ ticket.ticket }}:\r\n\r\n{{ resolution }}\r\n\r\nCan you please confirm that this resolution addresses your needs so we may close this ticket? If you have any further queries, or if you do not believe this resolution is adequate, please reply to this e-mail and keep the subject intact.\r\n\r\nIf you wish to view this ticket online, you can visit {{ ticket.ticket_url }}\r\n\r\n", + "heading": "Your Ticket Has Been Resolved", + "subject": "(Resolved)", + "locale": "en" + } + }, + { + "pk": 14, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "updated_cc", + "html": "

Hello,

\r\n\r\n

This is a courtesy e-mail to let you know that ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") for {{ ticket.submitter_email }} has been updated.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nQueue: {{ queue.title }}
\r\nTitle: {{ ticket.title }}
\r\nOpened: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nSubmitter: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nPriority: {{ ticket.get_priority_display }}
\r\nStatus: {{ ticket.get_status }}
\r\nAssigned to: {{ ticket.get_assigned_to }}
\r\nView Online to update this ticket (login required)

\r\n\r\n

Just for reference, the original ticket description was:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

The following comment was added:

\r\n\r\n
{{ comment }}
\r\n\r\n

This information has {% if private %}not {% endif %} been e-mailed to the submitter.

", + "plain_text": "Hello,\r\n\r\nThis is a courtesy e-mail to let you know that ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") for {{ ticket.submitter_email }} has been updated.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nQueue: {{ queue.title }}\r\nTitle: {{ ticket.title }}\r\nOpened: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSubmitter: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriority: {{ ticket.get_priority_display }}\r\nStatus: {{ ticket.get_status }}\r\nAssigned to: {{ ticket.get_assigned_to }}\r\nView Online: {{ ticket.staff_url }} (login required)\r\n\r\nOriginal description:\r\n\r\n{{ ticket.description }}\r\n\r\nThe following comment was added:\r\n\r\n{{ comment }}\r\n\r\nThis information has {% if private %}not {% endif %} been e-mailed to the submitter.\r\n\r\nIf you wish to view this ticket online, you can visit {{ ticket.staff_url }}.\r\n\r\n", + "heading": "Ticket Updated", + "subject": "(Updated)", + "locale": "en" + } + }, + { + "pk": 15, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "updated_owner", + "html": "

Hello,

\r\n\r\n

This is a courtesy e-mail to let you know that ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") for {{ ticket.submitter_email }}, which is assigned to you, has been updated.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nQueue: {{ queue.title }}
\r\nTitle: {{ ticket.title }}
\r\nOpened: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nSubmitter: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nPriority: {{ ticket.get_priority_display }}
\r\nStatus: {{ ticket.get_status }}
\r\nAssigned to: {{ ticket.get_assigned_to }}
\r\nView Online to update this ticket (login required)

\r\n\r\n

Just for reference, the original ticket description was:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

The following comment was added:

\r\n\r\n
{{ comment }}
\r\n\r\n

This information has {% if private %}not {% endif %} been e-mailed to the submitter.

", + "plain_text": "Hello,\r\n\r\nThis is a courtesy e-mail to let you know that ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") for {{ ticket.submitter_email }}, which is assigned to you, has been updated.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nQueue: {{ queue.title }}\r\nTitle: {{ ticket.title }}\r\nOpened: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSubmitter: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriority: {{ ticket.get_priority_display }}\r\nStatus: {{ ticket.get_status }}\r\nAssigned to: {{ ticket.get_assigned_to }}\r\nView Online: {{ ticket.staff_url }} (login required)\r\n\r\nOriginal description:\r\n\r\n{{ ticket.description }}\r\n\r\nThe following comment was added:\r\n\r\n{{ comment }}\r\n\r\nThis information has {% if private %}not {% endif %} been e-mailed to the submitter.\r\n\r\nIf you wish to view this ticket online, you can visit {{ ticket.staff_url }}\r\n\r\n", + "heading": "Ticket Updated", + "subject": "(Updated)", + "locale": "en" + } + }, + { + "pk": 16, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "updated_submitter", + "html": "

Hello,

\r\n\r\n

You recently logged a ticket with a subject of {{ ticket.title }} with us. This e-mail is to advise you of an update to that ticket.

\r\n\r\n

The following comment was added to ticket {{ ticket.ticket }}:

\r\n\r\n
{{ comment }}
\r\n\r\n

If you need to provide us with further information, please reply to this e-mail and keep the subject intact. Alternatively, you can view and update this ticket online by visiting {{ ticket.ticket_url }}.

", + "plain_text": "Hello,\r\n\r\nYou recently logged a ticket with a subject of \"{{ ticket.title }}\" with us. This e-mail is to advise you of an update to that ticket.\r\n\r\nThe following comment was added to ticket {{ ticket.ticket }}:\r\n\r\n{{ comment }}\r\n\r\nIf you need to provide us with further information, please reply to this e-mail and keep the subject intact. Alternatively, you can view and update this ticket online by visiting {{ ticket.ticket_url }}\r\n\r\n", + "heading": "Your Ticket Has Been Updated", + "subject": "(Updated)", + "locale": "en" + } + }, + { + "pk": 17, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "assigned_cc", + "html": "

Здравствуйте,

\r\n\r\n

Уведомляем Вас о том, что заявка {{ ticket.ticket }} ({{ ticket.title }}) от {{ ticket.submitter_email }} была {% if ticket.assigned_to %}принята {{ ticket.assigned_to }}{% else %}отклонена{% endif %}.

\r\n\r\n

\r\nID заявки: {{ ticket.ticket }}
\r\nОчередь: {{ queue.title }}
\r\nЗаголовок: {{ ticket.title }}
\r\nСоздана: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nАвтор заявки: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nПриоритет: {{ ticket.get_priority_display }}
\r\nСтатус: {{ ticket.get_status }}
\r\nПрисвоена: {{ ticket.get_assigned_to }}
\r\nПерейти к заявке оставить комментарий (требуется авторизация)

\r\n\r\n

Изначальное описание :

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "Здравствуйте,\r\n\r\nУведомляем Вас о том, что заявка, {{ ticket.ticket }} (\"{{ ticket.title }}\") от {{ ticket.submitter_email }}, была {% if ticket.assigned_to %} принята {{ ticket.assigned_to }}{% else %} отклонена {% endif %}.\r\n\r\nID заявки: {{ ticket.ticket }}\r\nОчередь: {{ queue.title }}\r\nЗаголовок: {{ ticket.title }}\r\nСоздана: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nАвтор заявки: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nПриоритет: {{ ticket.get_priority_display }}\r\nСтатус: {{ ticket.get_status }}\r\nПрисвоена: {{ ticket.get_assigned_to }}\r\nПерейти к заявке: {{ ticket.staff_url }}\r\n\r\nИзначальное описание:\r\n\r\n{{ ticket.description }}", + "heading": "Заявка", + "subject": " ", + "locale": "ru" + } + }, + { + "pk": 18, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "assigned_owner", + "html": "

Здравствуйте,

\r\n\r\n

Уведомляем Вас о том, что заявка {{ ticket.ticket }} ({{ ticket.title }}) от {{ ticket.submitter_email }} была присвоена Вам.

\r\n\r\n

\r\nID заявки: {{ ticket.ticket }}
\r\nОчередь: {{ queue.title }}
\r\nЗаголовок: {{ ticket.title }}
\r\nСоздана: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nАвтор заявки: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nПриоритет: {{ ticket.get_priority_display }}
\r\nСтатус: {{ ticket.get_status }}
\r\nПрисвоена: ВАМ
\r\nПерейти к заявке оставить комментарий (требуется авторизация)

\r\n\r\n

Изначальное описание заявки:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "Здравствуйте,\r\n\r\nУведомляем Вас о том, что заявка {{ ticket.ticket }} (\"{{ ticket.title }}\") от {{ ticket.submitter_email }} была присвоенна Вам.\r\n\r\nID заявки: {{ ticket.ticket }}\r\nОчередь: {{ queue.title }}\r\nЗаголовок: {{ ticket.title }}\r\nСоздана: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nАвтор заявки: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nПриоритет: {{ ticket.get_priority_display }}\r\nСтатус: {{ ticket.get_status }}\r\nПрисвоена: ВАМ\r\nПросмотреть онлайн: {{ ticket.staff_url }}\r\n\r\nИзначальное описание:\r\n\r\n{{ ticket.description }}", + "heading": "Вам присвоенна заявка", + "subject": " ", + "locale": "ru" + } + }, + { + "pk": 19, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "closed_cc", + "html": "

Здравствуйте,

\r\n\r\n

Заявка {{ ticket.title }} (\"{{ ticket.title }}\"){% if ticket.assigned_to %}, присвоенная {{ ticket.get_assigned_to }}{% endif %} была закрыта.

\r\n\r\n

\r\nID заявки: {{ ticket.ticket }}
\r\nОчередь: {{ queue.title }}
\r\nЗаголовок: {{ ticket.title }}
\r\nСоздана: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nАвтор заявки: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nПриоритет: {{ ticket.get_priority_display }}
\r\nСтатус: {{ ticket.get_status }}
\r\nПрисвоена: {{ ticket.get_assigned_to }}
\r\nПерейти к заявке to оставить комментарий (требуется авторизация)

\r\n\r\n

Изначальное описание:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

Было принято следующее решение:

\r\n\r\n
{{ resolution }}
\r\n\r\n

Перейти к заявке {{ ticket.staff_url }}.

", + "plain_text": "Здравствуйте,\r\n\r\nЗаявка {{ ticket.title }} (\"{{ ticket.title }}\"){% if ticket.assigned_to %}, присвоенная {{ ticket.assigned_to }}{% endif %} была закрыта.\r\n\r\nID заявки: {{ ticket.ticket }}\r\nОчередь: {{ queue.title }}\r\nЗаголовок: {{ ticket.title }}\r\nСоздана: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nАвтор заявки: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nПриоритет: {{ ticket.get_priority_display }}\r\nСтатус: {{ ticket.get_status }}\r\nПрисвоена: {{ ticket.get_assigned_to }}\r\nПерейти к заявке: {{ ticket.staff_url }} (требуется авторизация)\r\n\r\nИзначальное описание:\r\n\r\n{{ ticket.description }}\r\n\r\nБыло предложено следующее решение:\r\n\r\n{{ resolution }}", + "heading": "Заявка закрыта", + "subject": " ", + "locale": "ru" + } + }, + { + "pk": 20, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "closed_owner", + "html": "

Здравствуйте,

\r\n\r\n

Следующая заявка, которая на данный момент присвоена Вам, была закрыта.

\r\n\r\n

\r\nID заявки: {{ ticket.ticket }}
\r\nОчередь: {{ queue.title }}
\r\nЗаголовок: {{ ticket.title }}
\r\nСоздана: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nАвтор заявки: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nПриоритет: {{ ticket.get_priority_display }}
\r\nСтатус: {{ ticket.get_status }}
\r\nПрисвоена: {{ ticket.get_assigned_to }}
\r\nПерейти к заявке Оставить комментарий (требуется авторизация)

\r\n\r\n

Изначальное описание:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

Было предложено следующее решение:

\r\n\r\n
{{ ticket.resolution }}
", + "plain_text": "Hello,\r\n\r\nСледующая заявка, которая на данный момент присвоена Вам, была закрыта.\r\n\r\nID заявки: {{ ticket.ticket }}\r\nОчередь: {{ queue.title }}\r\nЗаголовок: {{ ticket.title }}\r\nСоздана: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nАвтор заявки: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nПриоритет: {{ ticket.get_priority_display }}\r\nСтатус: {{ ticket.get_status }}\r\nПрисвоена: {{ ticket.get_assigned_to }}\r\nПерейти к заявке: {{ ticket.staff_url }} (требуется авторизаци)\r\n\r\nДля просмотра заявки перейдите по ссылке {{ ticket.staff_url }}.\r\n\r\n", + "heading": "Заявка закрыта", + "subject": " ", + "locale": "ru" + } + }, + { + "pk": 21, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "closed_submitter", + "html": "

Здравствуйте,

\r\n\r\n

Вами была оставлена заявка{{ ticket.title }} Уведомляем Вас о том, что ваша заявка была закрыта.

\r\n\r\n

Было предложено следующее решение:

\r\n\r\n
{{ ticket.resolution }}
\r\n\r\n

Для просмотра заявки перейдите по ссылке {{ ticket.ticket_url }}. Если вы считаете, что для решения проблемы требуется дальнейшая работа, пожалуйста, сообщите нам об этом, ответив на это письмо.

", + "plain_text": "Здравствуйте,\r\n\r\nВами была оставлена заявка \"{{ ticket.title }}\" Уведомляем Вас о том, что ваша заявка была закрыта\r\n\r\nЕсли вы считаете, что для решения проблемы требуется дальнейшая работа, пожалуйста, сообщите нам об этом, ответив на это письмо.\r\n\r\nДля просмотра заявки перейдите по ссылке {{ ticket.ticket_url }}.\r\n\r\nБыло предложено следующее решение:\r\n\r\n{{ ticket.resolution }}", + "heading": "Заявка закрыта", + "subject": " ", + "locale": "ru" + } + }, + { + "pk": 22, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "escalated_cc", + "html": "

Здравствуйте,

\r\n\r\n

Уведомляем Вас о том, что приоритет заявки {{ ticket.ticket }} (\"{{ ticket.title }}\")был автоматически повышен.

\r\n\r\n

\r\nID заявки: {{ ticket.ticket }}
\r\nОчередь: {{ queue.title }}
\r\nЗаголовок: {{ ticket.title }}
\r\nСоздана: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nАвтор заявки: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nПриоритет: {{ ticket.get_priority_display }}
\r\nСтатус: {{ ticket.get_status }}
\r\nПрисвоена: {{ ticket.get_assigned_to }}
\r\nПерейти к заявке оставить комментарий (требуется авторизация)

\r\n\r\n

Изначальное описание :

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "Здравствуйте,\r\n\r\nУведомляем Вас о том, что приоритет заявки {{ ticket.ticket }} (\"{{ ticket.title }}\") был автоматически повышен.\r\n\r\nID заявки: {{ ticket.ticket }}\r\nОчередь: {{ queue.title }}\r\nЗаголовок: {{ ticket.title }}\r\nСоздана: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nАвтор заявки: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nПриоритет: {{ ticket.get_priority_display }}\r\nСтатус: {{ ticket.get_status }}\r\nПрисвоена: {{ ticket.get_assigned_to }}\r\nПерейти к заявке: {{ ticket.staff_url }} (login required)\r\n\r\nИзначальное описание:\r\n\r\n{{ ticket.description }}", + "heading": "Приоритет заявки повышен", + "subject": " ", + "locale": "ru" + } + }, + { + "pk": 23, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "escalated_owner", + "html": "

Здравствуйте,

\r\n\r\n

Приоритет заявки, которая на данный момент присвоена Вам, был автоматически повышен, так как она оставалась открытой дольше, чем ожидалось.

\r\n\r\n

\r\nID заявки: {{ ticket.ticket }}
\r\nОчередь: {{ queue.title }}
\r\nЗаголовок: {{ ticket.title }}
\r\nСоздана: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nАвтор заявки: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nПриоритет: {{ ticket.get_priority_display }}
\r\nСтатус: {{ ticket.get_status }}
\r\nПрисвоена: {{ ticket.get_assigned_to }}
\r\nПерейти к заявкеоставить комментарий (требуется авторизация)

\r\n\r\n

Изначальное описание заявки:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "Здравствуйте,\r\n\r\nПриоритет заявки, которая на данный момент присвоена Вам, был автоматически повышен, так как она оставалась открытой дольше, чем ожидалось.\r\n\r\nID заявки: {{ ticket.ticket }}\r\nОчередь: {{ queue.title }}\r\nЗаголовок: {{ ticket.title }}\r\nСоздана: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nАвтор заявки: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nПриоритет: {{ ticket.get_priority_display }}\r\nСтатус: {{ ticket.get_status }}\r\nАдресованна: {{ ticket.get_assigned_to }}\r\nПерейти к заявке: {{ ticket.staff_url }} (необходима авторизация)\r\n\r\nИзначальное описание:\r\n\r\n{{ ticket.description }}\r\n\r\nПожалуйста, рассмотрите заявку и и попытайтесь найти решение проблемы как можно быстрее.", + "heading": "Приоритет присвоенной Вам заявки был повышен", + "subject": " ", + "locale": "ru" + } + }, + { + "pk": 24, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "escalated_submitter", + "html": "

Здравствуйте,

\r\n\r\n

Вами была оставлена заявка {{ ticket.title }} Советуем Вам воспользоваться автоматизированным повышением приоритета этой заявки, так как она оставалась открытой дольше, чем ожидалось.

\r\n\r\n

Вскоре мы пересмотрим вашу заявку и попытаемся найти решение проблемы как можно быстрее.

\r\n\r\n

Перейти к заявке{{ ticket.ticket_url }}.

", + "plain_text": "Здравствуте,\r\n\r\nВами была оставлена заявка \"{{ ticket.title }}\" Советуем Вам воспользоваться автоматизированным повышением приоритета этой заявки, так как она оставалась открытой дольше, чем ожидалось.\r\n\r\nВскоре мы пересмотрим вашу заявку и попытаемся найти решение проблемы как можно быстрее.\r\n\r\nПерейти к заявке {{ ticket.ticket_url }}.", + "heading": "Повышение приоритета Вашей заявки", + "subject": " ", + "locale": "ru" + } + }, + { + "pk": 25, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "newticket_cc", + "html": "

Здравствуйте,

\r\n\r\n

Уведомляем Вас о том, что была подана новая заявка

\r\n\r\n

\r\nID заявки: {{ ticket.ticket }}
\r\nОчередь: {{ queue.title }}
\r\nЗаголовок: {{ ticket.title }}
\r\nСоздана: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nАвтор заявки: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nПриоритет: {{ ticket.get_priority_display }}
\r\nСтатус: {{ ticket.get_status }}
\r\nПерейти к заявке оставить комментарий (требуется авторизация)

\r\n\r\n

Описание:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "Здравствуйте,\r\n\r\nУведомляем Вас о том, что была подана новая заявка.\r\n\r\nID заявки: {{ ticket.ticket }}\r\nОчередь: {{ queue.title }}\r\nЗаголовок: {{ ticket.title }}\r\nСоздана: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nАвтор заявки: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nПриоритет: {{ ticket.get_priority_display }}\r\nСтатус: {{ ticket.get_status }}\r\nПерейти к заявке: {{ ticket.staff_url }} (login required)\r\n\r\nОписание:\r\n{{ ticket.description }}\r\n", + "heading": "Подана новая заявка", + "subject": " ", + "locale": "ru" + } + }, + { + "pk": 26, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "newticket_submitter", + "html": "

Здравствуйте,

\r\n\r\n

Уведомляем Вас о том, что мы получили Ваш запрос на тему {{ ticket.title }}.

\r\n\r\n

На данном этапе Вам не нужно ничего делать. Вашей заявке был присвоен номер {{ ticket.ticket }} и вскоре Ваш запрос будет обработан.

\r\n\r\n

Если Вы хотите сообщить нам какую-либо дополнительную информацию, или если у Вас есть вопросы относительно заявки, пoжалуйста напишите id заявки {{ ticket.ticket }} в теме письма. Легче всего это сделать, просто нажав \"ответить\".

\r\n\r\n

Вы хотите просмотреть заявку онлайн, сообщить дополнительную информацию, прикрепить файлы или просмотреть последние комментарии, Вы можете перейти по следующей ссылке. {{ ticket.ticket_url }}.

\r\n\r\n

Мы обработаем Ваш запрос и постараемся найти решение как можно быстрее. В дальнейшем, мы будем держать Вас в курсе дела, отправляя письма с этого электронного адреса.

", + "plain_text": "Здравствуйте,\r\n\r\nУведомляем Вас о том, что мы получили Ваш запрос на тему \"{{ ticket.title }}\". \r\n\r\nНа данном этапе Вам не нужно ничего делать. Вашей заявке был присвоен номер {{ ticket.ticket }}и вскоре Ваш запрос будет обработан.\r\n\r\nЕсли Вы хотите сообщить нам какую-либо дополнительную информацию, или если у Вас есть вопросы относительно заявки, пожалуйста напишите id заявки \"{{ ticket.ticket }}\" в теме письма. Легче всего это сделать, просто нажав \"ответить\".\r\n\r\nЕсли Вы хотите просмотреть заявку онлайн, сообщить дополнительную информацию, прикрепить файлы или просмотреть последние комментарии, Вы можете перейти по следующей ссылке. {{ ticket.ticket_url }}.\r\n\r\nМы обработаем Ваш запрос и постараемся найти решение как можно быстрее. В дальнейшем, мы будем держать Вас в курсе дела, отправляя письма с этого электронного адреса.", + "heading": "Ваша заявка была успешно создана", + "subject": " ", + "locale": "ru" + } + }, + { + "pk": 27, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "resolved_cc", + "html": "

Здравствуйте,

\r\n\r\n

Было найдено решение проблемы, указанной в следующей заявке.

\r\n\r\n

\r\nID заявки: {{ ticket.ticket }}
\r\nОчередь: {{ queue.title }}
\r\nЗаголовок: {{ ticket.title }}
\r\nСоздана: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nАвтор заявки: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nПриоритет: {{ ticket.get_priority_display }}
\r\nСтатус: {{ ticket.get_status }}
\r\nПрисвоена: {{ ticket.get_assigned_to }}
\r\nПерейти к заявке оставить комментарий (требуется авторизация)

\r\n\r\n

Изначальное описание:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

Было предложено следующее решение:

\r\n\r\n
{{ ticket.resolution }}
\r\n\r\n

Это решение было отправлено автору заявки, который должен будет подтвердить его, прежде чем Вы сможете закрыть эту заявку.

", + "plain_text": "Здравствуйте,\r\n\r\nБыло найдено решение проблемы, указанной в следующей заявке:\r\n\r\nID заявки: {{ ticket.ticket }}\r\nОчередь: {{ queue.title }}\r\nЗаголовок: {{ ticket.title }}\r\nСоздана: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nАвтор заявки: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nПриоритет: {{ ticket.get_priority_display }}\r\nСтатус: {{ ticket.get_status }}\r\nПрисвоена: {{ ticket.get_assigned_to }}\r\nПерейти к заявке: {{ ticket.staff_url }} (требуется авторизация)\r\n\r\nИзначальное описание:\r\n\r\n{{ ticket.description }}\r\n\r\nБыло предложено следующее решение:\r\n\r\n{{ ticket.resolution }}\r\n\r\nЭто решение было отправлено автору заявки, который должен будет подтвердить его, прежде чем Вы сможете закрыть эту заявку.", + "heading": "Решение найдено", + "subject": " ", + "locale": "ru" + } + }, + { + "pk": 28, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "resolved_owner", + "html": "

Здравствуйте,

\r\n\r\n

Было найдено решение проблемы, указанной в присвоенной Вам заявке.

\r\n\r\n

\r\nID заявки: {{ ticket.ticket }}
\r\nочередь: {{ queue.title }}
\r\nЗаголовок: {{ ticket.title }}
\r\nСоздана: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nАвтор заявки: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nПриоритет: {{ ticket.get_priority_display }}
\r\nСтатус: {{ ticket.get_status }}
\r\nПрисвоена: {{ ticket.get_assigned_to }}
\r\nПерейти к заявке оставить комментарий (требуется авторизация)

\r\n\r\n

Изначальное описание:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

Было предложено следующее решение:

\r\n\r\n
{{ ticket.resolution }}
\r\n\r\n

Это решение было отправлено автору заявки, который должен будет подтвердить его, прежде чем Вы сможете закрыть эту заявку.

", + "plain_text": "Здравствуйте,\r\n\r\nБыло найдено решение проблемы, указанной в присвоенной Вам заявке.\r\n\r\nID заявки: {{ ticket.ticket }}\r\nОчередь: {{ queue.title }}\r\nЗаголовок: {{ ticket.title }}\r\nСоздана: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nАвтор заявки: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nПриоритет: {{ ticket.get_priority_display }}\r\nСтатус: {{ ticket.get_status }}\r\nПрисвоена: {{ ticket.get_assigned_to }}\r\nПерейти к заявке: {{ ticket.staff_url }} (требуется авторизация)\r\n\r\nИзначальное описание:\r\n\r\n{{ ticket.description }}\r\n\r\nБыло предложено следующее решение:\r\n\r\n{{ ticket.resolution }}\r\n\r\nЭто решение было отправлено автору заявки, который должен будет подтвердить его, прежде чем Вы сможете закрыть эту заявку.", + "heading": "Решение найдено", + "subject": " ", + "locale": "ru" + } + }, + { + "pk": 29, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "resolved_submitter", + "html": "

Здравствуйте,

\r\n\r\n

Вами была оставлена заявка {{ ticket.title }} В этом письме содержится решение указанной Вами проблемы.

\r\n\r\n

Следующий комментарий был добавлен к заявке {{ ticket.ticket }}:

\r\n\r\n
{{ resolution }}
\r\n\r\n

Не могли бы Вы сообщить, подходит ли Вам это решение, чтобы мы могли закрыть эту заявку? Если у Вас возникли какие-либо вопросы или сомнения в отношении адекватности этого решения, пожалуйста, ответьте на это письмо.

\r\n\r\n

Для просмотра заявки перейдите по ссылке{{ ticket.ticket_url }}.

", + "plain_text": "Здравствуйте,\r\n\r\nВами была оставлена заявка \"{{ ticket.title }}\" В этом письме содержится решение указанной Вами проблемы. \r\n\r\nСледующее решение было предложено к заявке {{ ticket.ticket }}:\r\n\r\n{{ resolution }}\r\n\r\nНе могли бы Вы сообщить, подходит ли Вам это решение, чтобы мы могли закрыть эту заявку? Если у Вас возникли какие-либо вопросы или сомнения в отношении адекватности этого решения, пожалуйста, ответьте на это письмо.\r\n\r\nДля просмотра заявки перейдите по ссылке {{ ticket.ticket_url }}.", + "heading": "Проблема, указанная в Вашей заявке была решена.", + "subject": " ", + "locale": "ru" + } + }, + { + "pk": 30, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "updated_cc", + "html": "

Здравствуйте,

\r\n\r\n

Уведомляем Вас о том, что заявка{{ ticket.ticket }} (\"{{ ticket.title }}\") от {{ ticket.submitter_email }} была обновлена.

\r\n\r\n

\r\nID заявки: {{ ticket.ticket }}
\r\nОчередь: {{ queue.title }}
\r\nЗаголовок: {{ ticket.title }}
\r\nСоздана: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nАвтор заявки: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nПриоритет: {{ ticket.get_priority_display }}
\r\nСтатус: {{ ticket.get_status }}
\r\nПрисвоена: {{ ticket.get_assigned_to }}
\r\nПерейти к заявке Оставить комментарий (требуется авторизация)

\r\n\r\n

Изначальное описание :

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

Был добавлен следующий комментарий:

\r\n\r\n
{{ comment }}
\r\n\r\n

Эта информация {% if private %}не{% endif %} была отправленна на электронный ящик автора заявки.

", + "plain_text": "Здравствуйте,\r\n\r\nУведомляем Вас о том, чтоо заявка {{ ticket.ticket }} (\"{{ ticket.title }}\") от {{ ticket.submitter_email }} была обновлена.\r\n\r\nID заявки: {{ ticket.ticket }}\r\nОчередь: {{ queue.title }}\r\nЗаголовок: {{ ticket.title }}\r\nСоздана: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nАвтор заявки: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nПриоритет: {{ ticket.get_priority_display }}\r\nСтатус: {{ ticket.get_status }}\r\nПрисвоена: {{ ticket.get_assigned_to }}\r\nПросмотреть онлайн: {{ ticket.staff_url }} (login required)\r\n\r\nИзначальное описание:\r\n\r\n{{ ticket.description }}\r\n\r\nБыл добавлен следующий комментарий:\r\n\r\n{{ comment }}\r\n\r\nЭта информация {% if private %}не {% endif %} была отправлена адресатуbeen e-mailed to the submitter.\r\n\r\nЕсли Вы хотите просмотреть заявку онлайн, перейдите по следующей ссылке{{ ticket.staff_url }}.", + "heading": "Заявка обновлена", + "subject": " ", + "locale": "ru" + } + }, + { + "pk": 31, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "updated_owner", + "html": "

Здравствуйте,

\r\n\r\n

Уведомляем Вас о том, что к заявке {{ ticket.ticket }} (\"{{ ticket.title }}\") от {{ ticket.submitter_email }}, которая была присвоенна Вам, был добавлен новый комментарий.

\r\n\r\n

\r\nID заявки: {{ ticket.ticket }}
\r\nОчередь: {{ queue.title }}
\r\nЗаголовок: {{ ticket.title }}
\r\nСоздана: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nАвтор заявки: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nПриоритет: {{ ticket.get_priority_display }}
\r\nСтатус: {{ ticket.get_status }}
\r\nПрисвоена: {{ ticket.get_assigned_to }}
\r\nПерейти к заявке оставить комментарий (требуется авторизация)

\r\n\r\n

Изначальное описание :

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

Был добавлен следующий комментарий:

\r\n\r\n
{{ comment }}
\r\n\r\n

Эта информация{% if private %}не {% endif %}была отправлена на электронный ящик автора заявки.

", + "plain_text": "Здравствуйте,\r\n\r\nУведомляем Вас о том, что к заявке {{ ticket.ticket }} (\"{{ ticket.title }}\") от {{ ticket.submitter_email }}, которая была присвоенна Вам, был добавлен новый комментарий.\r\n\r\nID заявки: {{ ticket.ticket }}\r\nОчередь: {{ queue.title }}\r\nЗаголовок: {{ ticket.title }}\r\nСоздана: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nАвтор заявки: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nПриоритет: {{ ticket.get_priority_display }}\r\nСтатус: {{ ticket.get_status }}\r\nПрсвоена: {{ ticket.get_assigned_to }}\r\nПерейти к заявке: {{ ticket.staff_url }} (требуется авторизация)\r\n\r\nИзначальное описание:\r\n\r\n{{ ticket.description }}\r\n\r\nБыл добавлен следующий комментарий:\r\n\r\n{{ comment }}\r\n\r\nЭта информация {% if private %}не {% endif %} была отправленна на электронный ящик автора заявки.\r\n\r\nДля просмотра заявки онлайн перейдите по следующей ссылке {{ ticket.staff_url }}.", + "heading": "Заявка обновлена", + "subject": " ", + "locale": "ru" + } + }, + { + "pk": 32, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "updated_submitter", + "html": "

Здравствуйте,

\r\n\r\n

Вами была оставлена заявка {{ ticket.title }} Советуем Вам прокомментировать эту заявку.

\r\n\r\n

Следующий комментарий был добавлен к заявке{{ ticket.ticket }}:

\r\n\r\n
{{ comment }}
\r\n\r\n

Если Вы хотите сообщить нам дополнительную информацию, пожалуйста ответьте на это письмо. Или же Вы можете сделать это, оставив комментарий к своей заявке. Перейти к заявке{{ ticket.ticket_url }}.

", + "plain_text": "Здравствуйте,\r\n\r\nВами была оставлена заявка \"{{ ticket.title }}\". Советуем Вам прокомментировать эту заявку.\r\n\r\nБыл добавлен следующий комментарий {{ ticket.ticket }}:\r\n\r\n{{ comment }}\r\n\r\nЕсли Вы хотите сообщить нам дополнительную информацию, пожалуйста ответьте на это письмо. Или же Вы можете сделать это, оставив комментарий к своей заявке. Перейти к заявке{{ ticket.ticket_url }}.", + "heading": "К Вашей заявке добавлен новый комментарий", + "subject": " ", + "locale": "ru" + } + }, + { + "pk": 33, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "assigned_cc", + "html": "

Hallo,

\r\n\r\n

gerne teilen wir Ihnen mit, dass Ticket {{ ticket.ticket }} ({{ ticket.title }}) für {{ ticket.submitter_email }} {% if ticket.assigned_to %}zugewiesen wurde an {{ ticket.assigned_to }}{% else %}nicht mehr zugeordnet ist{% endif %}.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nTicketsammlung: {{ queue.title }}
\r\nTitel: {{ ticket.title }}
\r\nEröffnet: {{ ticket.created|date:\"l, j. N Y, \\u\\m H:i\" }}
\r\nErsteller: {{ ticket.submitter_email|default:\"Unbekannt\" }}
\r\nPriorität: {{ ticket.get_priority_display }}
\r\nStatus: {{ ticket.get_status }}
\r\nZugewiesen an: {{ ticket.get_assigned_to }}
\r\nOnline ansehen um dieses Ticket zu aktualisieren (Login erforderlich).

\r\n\r\n

Die ursprüngliche Ticketbeschreibung war:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "Hallo,\r\n\r\ngerne teilen wir Ihnen mit, dass Ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") für {{ ticket.submitter_email }} {% if ticket.assigned_to %}zugewiesen wurde an {{ ticket.assigned_to }}{% else %}nicht mehr zugeordnet ist{% endif %}.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nTicketsammlung: {{ queue.title }}\r\nTitel: {{ ticket.title }}\r\nEröffnet: {{ ticket.created|date:\"l, j. N Y, \\u\\m H:i\" }}\r\nErsteller: {{ ticket.submitter_email|default:\"Unbekannt\" }}\r\nPriorität: {{ ticket.get_priority_display }}\r\nStatus: {{ ticket.get_status }}\r\nZugewiesen an: {{ ticket.get_assigned_to }}\r\nOnline ansehen: {{ ticket.staff_url }}\r\n\r\nDie ursprüngliche Ticketbeschreibung war:\r\n\r\n{{ ticket.description }}\r\n\r\n", + "heading": "Ticket Zugewiesen", + "subject": "(Zugewiesen)", + "locale": "de" + } + }, + { + "pk": 34, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "assigned_owner", + "html": "

Hallo,

\r\n\r\n

gerne teilen wir Ihnen mit, dass Ticket {{ ticket.ticket }} ({{ ticket.title }}) für {{ ticket.submitter_email }} Ihnen zugewiesen wurde.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nTicketsammlung: {{ queue.title }}
\r\nTitel: {{ ticket.title }}
\r\nEröffnet: {{ ticket.created|date:\"l, j. N Y, \\u\\m H:i\" }}
\r\nErsteller: {{ ticket.submitter_email|default:\"Unbekannt\" }}
\r\nPriorität: {{ ticket.get_priority_display }}
\r\nStatus: {{ ticket.get_status }}
\r\nZugewiesen an: SIE
\r\nOnline ansehen um dieses Ticket zu aktualisieren (Login erforderlich)

\r\n\r\n

Die ursprüngliche Ticketbeschreibung war:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "Hello,\r\n\r\ngerne teilen wir Ihnen mit, dass Ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") für {{ ticket.submitter_email }} Ihnen zugewiesen wurde.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nTicketsammlung: {{ queue.title }}\r\nTitel: {{ ticket.title }}\r\nEröffnet: {{ ticket.created|date:\"l, j. N Y, \\u\\m H:i\" }}\r\nErsteller: {{ ticket.submitter_email|default:\"Unbekannt\" }}\r\nPriorität: {{ ticket.get_priority_display }}\r\nStatus: {{ ticket.get_status }}\r\nZugewiesen an: SIE\r\nOnline ansehen: {{ ticket.staff_url }}\r\n\r\nDie ursprüngliche Ticketbeschreibung war:\r\n\r\n{{ ticket.description }}\r\n\r\n", + "heading": "Ein Ticket wurde Ihnen zugewiesen", + "subject": "(Ihnen zugewiesen)", + "locale": "de" + } + }, + { + "pk": 35, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "closed_cc", + "html": "

Hallo,

\r\n\r\n

Ticket {{ ticket.title }} ('{{ ticket.title }}'){% if ticket.assigned_to %}, zugewiesen an {{ ticket.get_assigned_to }}{% endif %} wurde geschlossen.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nTicketsammlung: {{ queue.title }}
\r\nTitel: {{ ticket.title }}
\r\nEröffnet: {{ ticket.created|date:\"l, j. N Y, \\u\\m H:i\" }}
\r\nErsteller: {{ ticket.submitter_email|default:\"Unbekannt\" }}
\r\nPriorität: {{ ticket.get_priority_display }}
\r\nStatus: {{ ticket.get_status }}
\r\nZugewiesen an: {{ ticket.get_assigned_to }}
\r\nOnline ansehen um dieses Ticket zu aktualisieren (Login erforderlich)

\r\n\r\n

Die ursprüngliche Ticketbeschreibung war:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

Die Lösung war:

\r\n\r\n
{{ resolution }}
\r\n\r\n

Sie können dieses Ticket unter folgendem Link online ansehen: {{ ticket.staff_url }}.

", + "plain_text": "Hallo,\r\n\r\nTicket {{ ticket.title }} (\"{{ ticket.title }}\"){% if ticket.assigned_to %}, zugewiesen an {{ ticket.assigned_to }}{% endif %} wurde geschlossen.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nTicketsammlung: {{ queue.title }}\r\nTitel: {{ ticket.title }}\r\nEröffnet: {{ ticket.created|date:\"l, j. N Y, \\u\\m H:i\" }}\r\nErsteller: {{ ticket.submitter_email|default:\"Unbekannt\" }}\r\nPriorität: {{ ticket.get_priority_display }}\r\nStatus: {{ ticket.get_status }}\r\nZugewiesen an: {{ ticket.get_assigned_to }}\r\nOnline ansehen: {{ ticket.staff_url }} (Login erforderlich)\r\n\r\nDie ursprüngliche Ticketbeschreibung war:\r\n\r\n{{ ticket.description }}\r\n\r\nDie Lösung war:\r\n\r\n{{ resolution }}\r\n\r\n", + "heading": "Ticket geschlossen", + "subject": "(Geschlossen)", + "locale": "de" + } + }, + { + "pk": 36, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "closed_owner", + "html": "

Hallo,

\r\n\r\n

Das folgende Ticket, das Ihnen zugewiesen war, wurde geschlossen.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nTicketsammlung: {{ queue.title }}
\r\nTitel: {{ ticket.title }}
\r\nEröffnet: {{ ticket.created|date:\"l, j. N Y, \\u\\m H:i\" }}
\r\nErsteller: {{ ticket.submitter_email|default:\"Unbekannt\" }}
\r\nPriorität: {{ ticket.get_priority_display }}
\r\nStatus: {{ ticket.get_status }}
\r\nZugewiesen an: {{ ticket.get_assigned_to }}
\r\nOnline ansehen um dieses Ticket zu aktualisieren (Login erforderlich)

\r\n\r\n

Die ursprüngliche Ticketbeschreibung war:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

Die Lösung war:

\r\n\r\n
{{ ticket.resolution }}
", + "plain_text": "Hallo,\r\n\r\nDas folgende Ticket, das Ihnen zugewiesen war, wurde geschlossen.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nTicketsammlung: {{ queue.title }}\r\nTitel: {{ ticket.title }}\r\nEröffnet: {{ ticket.created|date:\"l, j. N Y, \\u\\m H:i\" }}\r\nErsteller: {{ ticket.submitter_email|default:\"Unbekannt\" }}\r\nPriorität: {{ ticket.get_priority_display }}\r\nStatus: {{ ticket.get_status }}\r\nZugewiesen an: {{ ticket.get_assigned_to }}\r\nOnline ansehen: {{ ticket.staff_url }} (Login erforderlich)\r\n\r\nDie Lösung war:\r\n\r\n{{ resolution }}\r\n\r\n", + "heading": "Ticket geschlossen", + "subject": "(Geschlossen)", + "locale": "de" + } + }, + { + "pk": 37, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "closed_submitter", + "html": "

Hallo,

\r\n\r\n

Sie haben kürzlich das Ticket {{ ticket.title }} bei uns eröffnet. Hiermit möchten wir Ihnen mitteilen das dieses Ticket nun geschlossen wurde.

\r\n\r\n

Die Lösung war:

\r\n\r\n
{{ ticket.resolution }}
\r\n\r\n

Unter folgendem Link können Sie das Ticket online ansehen: {{ ticket.ticket_url }}. Wenn Sie der Meinung sind, dass weitere Arbeit an diesem Ticket nötig ist, dann möchten wir Sie bitten, auf diese E-Mail zu antworten und den Betreff unverändert zu lassen.

", + "plain_text": "Hallo,\r\n\r\nSie haben kürzlich das Ticket \"{{ ticket.title }}\" bei uns eröffnet. Hiermit möchten wir Ihnen mitteilen das dieses Ticket nun geschlossen wurde.\r\n\r\nDie Lösung war:\r\n\r\n{{ resolution }}\r\n\r\nWenn Sie der Meinung sind, dass weitere Arbeit an diesem Ticket nötig ist, dann möchten wir Sie bitten, auf diese E-Mail zu antworten und den Betreff unverändert zu lassen.\r\n\r\nUnter folgendem Link können Sie das Ticket online ansehen: {{ ticket.ticket_url }}.\r\n\r\n", + "heading": "Ticket geschlossen", + "subject": "(Geschlossen)", + "locale": "de" + } + }, + { + "pk": 38, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "escalated_cc", + "html": "

Hallo,

\r\n\r\n

Gerne teilen wir Ihnen mit, dass das Ticket {{ ticket.ticket }} ('{{ ticket.title }}') automatisch eskaliert wurde.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nTicketsammlung: {{ queue.title }}
\r\nTitel: {{ ticket.title }}
\r\nEröffnet: {{ ticket.created|date:\"l, j. N Y, \\u\\m H:i\" }}
\r\nErsteller: {{ ticket.submitter_email|default:\"Unbekannt\" }}
\r\nPriorität: {{ ticket.get_priority_display }}
\r\nStatus: {{ ticket.get_status }}
\r\nZugewiesen an: {{ ticket.get_assigned_to }}
\r\nOnline ansehen um dieses Ticket zu aktualisieren (Login erforderlich)

\r\n\r\n

Die ursprüngliche Ticketbeschreibung war:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "Hallo,\r\n\r\nGerne teilen wir Ihnen mit, dass das Ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") automatisch eskaliert wurde.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nTicketsammlung: {{ queue.title }}\r\nTitel: {{ ticket.title }}\r\nEröffnet: {{ ticket.created|date:\"l, j. N Y, \\u\\m H:i\" }}\r\nErsteller: {{ ticket.submitter_email|default:\"Unbekannt\" }}\r\nPriorität: {{ ticket.get_priority_display }}\r\nStatus: {{ ticket.get_status }}\r\nZugewiesen an: {{ ticket.get_assigned_to }}\r\nOnline ansehen: {{ ticket.staff_url }} (Login erforderlich)\r\n\r\nDie ursprüngliche Ticketbeschreibung war:\r\n\r\n{{ ticket.description }}\r\n\r\n", + "heading": "Ticket Eskaliert", + "subject": "(Eskaliert)", + "locale": "de" + } + }, + { + "pk": 39, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "escalated_owner", + "html": "

Hallo,

\r\n\r\n

Ein an Sie zugewiesenes Ticket wurde automatisch eskaliert da es länger offen war als erwartet.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nTicketsammlung: {{ queue.title }}
\r\nTitel: {{ ticket.title }}
\r\nEröffnet: {{ ticket.created|date:\"l, j. N Y, \\u\\m H:i\" }}
\r\nErsteller: {{ ticket.submitter_email|default:\"Unbekannt\" }}
\r\nPriorität: {{ ticket.get_priority_display }}
\r\nStatus: {{ ticket.get_status }}
\r\nZugewiesen an: {{ ticket.get_assigned_to }}
\r\nOnline ansehen um dieses Ticket zu aktualisieren (Login erforderlich)

\r\n\r\n

Die ursprüngliche Ticketbeschreibung war:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

Bitte prüfen Sie dieses Ticket und versuchen Sie so bald wie möglich eine Lösung zu finden.

", + "plain_text": "Hallo,\r\n\r\nEin an Sie zugewiesenes Ticket wurde automatisch eskaliert da es länger offen war als erwartet.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nTicketsammlung: {{ queue.title }}\r\nTitel: {{ ticket.title }}\r\nEröffnet: {{ ticket.created|date:\"l, j. N Y, \\u\\m H:i\" }}\r\nErsteller: {{ ticket.submitter_email|default:\"Unbekannt\" }}\r\nPriorität: {{ ticket.get_priority_display }}\r\nStatus: {{ ticket.get_status }}\r\nZugewiesen an: {{ ticket.get_assigned_to }}\r\nOnline ansehen: {{ ticket.staff_url }} (Login erforderlich)\r\n\r\nDie ursprüngliche Ticketbeschreibung war:\r\n\r\n{{ ticket.description }}\r\n\r\nBitte prüfen Sie dieses Ticket und versuchen Sie so bald wie möglich eine Lösung zu finden.\r\n\r\n", + "heading": "Ein an Sie zugewiesenes Ticket wurde eskaliert", + "subject": "(Eskaliert)", + "locale": "de" + } + }, + { + "pk": 40, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "escalated_submitter", + "html": "

Hallo,

\r\n\r\n

Sie haben kürzlich das Ticket {{ ticket.title }} bei uns eröffnet. Hiermit möchten wir Ihnen mitteilen, dass dieses Ticket automatisch eskaliert wurde, da es länger offen war als erwartet.

\r\n\r\n

Wir werden Ihr Ticket in Kürze prüfen und so bald wie möglich eine Lösung finden.

\r\n\r\n

Unter folgendem Link können das Ticket online ansehen: {{ ticket.ticket_url }}.

", + "plain_text": "Hallo,\r\n\r\nSie haben kürzlich das Ticket \"{{ ticket.title }}\" bei uns eröffnet. Hiermit möchten wir Ihnen mitteilen, dass dieses Ticket automatisch eskaliert wurde, da es länger offen war als erwartet.\r\n\r\nWir werden Ihr Ticket in Kürze prüfen und so bald wie möglich eine Lösung finden.\r\n\r\nUnter folgendem Link können das Ticket online ansehen: {{ ticket.ticket_url }}.\r\n\r\n", + "heading": "Ihr Ticket wurde eskaliert", + "subject": "(Eskaliert)", + "locale": "de" + } + }, + { + "pk": 41, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "newticket_cc", + "html": "

Hallo,

\r\n\r\n

Gerne teilen wir Ihnen mit, dass ein neues Ticket eröffnet wurde.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nTicketsammlung: {{ queue.title }}
\r\nTitel: {{ ticket.title }}
\r\nEröffnet: {{ ticket.created|date:\"l, j. N Y, \\u\\m H:i\" }}
\r\nErsteller: {{ ticket.submitter_email|default:\"Unbekannt\" }}
\r\nPriorität: {{ ticket.get_priority_display }}
\r\nStatus: {{ ticket.get_status }}
\r\nOnline ansehen um dieses Ticket zu aktualisieren (Login erforderlich)

\r\n\r\n

Beschreibung:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "Hallo,\r\n\r\nGerne teilen wir Ihnen mit, dass ein neues Ticket eröffnet wurde.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nTicketsammlung: {{ queue.title }}\r\nTitel: {{ ticket.title }}\r\nEröffnet: {{ ticket.created|date:\"l, j. N Y, \\u\\m H:i\" }}\r\nErsteller: {{ ticket.submitter_email|default:\"Unbekannt\" }}\r\nPriorität: {{ ticket.get_priority_display }}\r\nStatus: {{ ticket.get_status }}\r\nOnline ansehen: {{ ticket.staff_url }} (Login erforderlich)\r\n\r\nBeschreibung:\r\n{{ ticket.description }}\r\n\r\n", + "heading": "Neues Ticket eröffnet", + "subject": "(Eröffnet)", + "locale": "de" + } + }, + { + "pk": 42, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "newticket_submitter", + "html": "

Hallo,

\r\n\r\n

Gerne teilen wir Ihnen mit, dass wir Ihre Helpdesk-Anforderung mit dem Betreff {{ ticket.title }} erhalten haben.

\r\n\r\n

An dieser Stelle sind keine weiteren Eingaben von Ihnen nötig. Ihrem Ticket wurde die ID {{ ticket.ticket }} zugewiesen und es wird in Kürze bearbeitet werden.

\r\n\r\n

Wenn Sie uns weitere Details mitteilen möchten oder wenn Sie Fragen zu diesem Ticket haben, können Sie uns gerne eine E-Mail senden mit der Ticket ID {{ ticket.ticket }} im Betreff. Die einfachste Möglichkeit dazu ist, direkt auf diese E-Mail zu \"antworten\".

\r\n\r\n

Wenn Sie das Ticket online ansehen möchten, um weitere Informationen hinzuzufügen, Dateien anzuhängen oder Aktualisierungen anzusehen, besuchen Sie bitte folgenden Link: {{ ticket.ticket_url }}.

\r\n\r\n

Wir werden Ihr Ticket prüfen und so bald wie möglich eine Lösung erarbeiten. Weitere Aktualisierungen und die Lösung werden wir an diese E-Mail Adresse senden.

", + "plain_text": "Hallo,\r\n\r\nGerne teilen wir Ihnen mit, dass wir Ihre Helpdesk-Anforderung mit dem Betreff \"{{ ticket.title }}\" erhalten haben. \r\n\r\nAn dieser Stelle sind keine weiteren Eingaben von Ihnen nötig. Ihrem Ticket wurde die ID {{ ticket.ticket }} zugewiesen und es wird in Kürze bearbeitet werden.\r\n\r\nWenn Sie uns weitere Details mitteilen möchten oder wenn Sie Fragen zu diesem Ticket haben, können Sie uns gerne eine E-Mail senden mit der Ticket ID '{{ ticket.ticket }}' im Betreff. Die einfachste Möglichkeit dazu ist, direkt auf diese E-Mail zu \"antworten\".\r\n\r\nWenn Sie das Ticket online ansehen möchten, um weitere Informationen hinzuzufügen, Dateien anzuhängen oder Aktualisierungen anzusehen, besuchen Sie bitte folgenden Link: {{ ticket.ticket_url }}.\r\n\r\nWir werden Ihr Ticket prüfen und so bald wie möglich eine Lösung erarbeiten. Weitere Aktualisierungen und die Lösung werden wir an diese E-Mail Adresse senden.\r\n", + "heading": "Ihr Ticket wurde eröffnet", + "subject": "(Eröffnet)", + "locale": "de" + } + }, + { + "pk": 43, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "resolved_cc", + "html": "

Hallo,

\r\n\r\n

Das folgende Ticket wurde gelöst:

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nTicketsammlung: {{ queue.title }}
\r\nTitel: {{ ticket.title }}
\r\nEröffnet: {{ ticket.created|date:\"l, j. N Y, \\u\\m H:i\" }}
\r\nErsteller: {{ ticket.submitter_email|default:\"Unbekannt\" }}
\r\nPriorität: {{ ticket.get_priority_display }}
\r\nStatus: {{ ticket.get_status }}
\r\nZugewiesen an: {{ ticket.get_assigned_to }}
\r\nOnline ansehen um dieses Ticket zu aktualisieren (Login erforderlich)

\r\n\r\n

Die ursprüngliche Ticketbeschreibung war:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

Die vergeschlagene Lösung ist:

\r\n\r\n
{{ ticket.resolution }}
\r\n\r\n

Diese Lösung wurde an den Ersteller gesendet, der die Lösung überprüfen muss, bevor dieses Ticket geschlossen werden kann.

", + "plain_text": "Hallo,\r\n\r\nDas folgende Ticket wurde gelöst:\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nTicketsammlung: {{ queue.title }}\r\nTitel: {{ ticket.title }}\r\nEröffnet: {{ ticket.created|date:\"l, j. N Y, \\u\\m H:i\" }}\r\nErsteller: {{ ticket.submitter_email|default:\"Unbekannt\" }}\r\nPriorität: {{ ticket.get_priority_display }}\r\nStatus: {{ ticket.get_status }}\r\nZugewiesen an: {{ ticket.get_assigned_to }}\r\nOnline ansehen: {{ ticket.staff_url }} (Login erforderlich)\r\n\r\nDie ursprüngliche Ticketbeschreibung war:\r\n\r\n{{ ticket.description }}\r\n\r\nDie vorgeschlagene Lösung ist:\r\n\r\n{{ ticket.resolution }}\r\n\r\nDiese Lösung wurde an den Ersteller gesendet, der die Lösung überprüfen muss, bevor dieses Ticket geschlossen werden kann.\r\n\r\n", + "heading": "Ticket gelöst", + "subject": "(Gelöst)", + "locale": "de" + } + }, + { + "pk": 44, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "resolved_owner", + "html": "

Hallo,

\r\n\r\n

Ein Ihnen zugeordnetes Ticket wurde gelöst.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nTicketsammlung: {{ queue.title }}
\r\nTitel: {{ ticket.title }}
\r\nEröffnet: {{ ticket.created|date:\"l, j. N Y, \\u\\m H:i\" }}
\r\nErsteller: {{ ticket.submitter_email|default:\"Unbekannt\" }}
\r\nPriorität: {{ ticket.get_priority_display }}
\r\nStatus: {{ ticket.get_status }}
\r\nZugewiesen an: {{ ticket.get_assigned_to }}
\r\nOnline ansehen um dieses Ticket zu aktualisieren (Login erforderlich)

\r\n\r\n

Die ursprüngliche Ticketbeschreibung war:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

Die vergeschlagene Lösung ist:

\r\n\r\n
{{ ticket.resolution }}
\r\n\r\n

Diese Lösung wurde an den Ersteller gesendet, der die Lösung überprüfen muss, bevor dieses Ticket geschlossen werden kann.

", + "plain_text": "Hallo,\r\n\r\nEin Ihnen zugeordnetes Ticket wurde gelöst.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nTicketsammlung: {{ queue.title }}\r\nTitel: {{ ticket.title }}\r\nEröffnet: {{ ticket.created|date:\"l, j. N Y, \\u\\m H:i\" }}\r\nErsteller: {{ ticket.submitter_email|default:\"Unbekannt\" }}\r\nPriorität: {{ ticket.get_priority_display }}\r\nStatus: {{ ticket.get_status }}\r\nZugewiesen an: {{ ticket.get_assigned_to }}\r\nOnline ansehen: {{ ticket.staff_url }} (Login erforderlich)\r\n\r\nDie ursprüngliche Ticketbeschreibung war:\r\n\r\n{{ ticket.description }}\r\n\r\nDie vorgeschlagene Lösung ist:\r\n\r\n{{ ticket.resolution }}\r\n\r\nDiese Lösung wurde an den Ersteller gesendet, der die Lösung überprüfen muss, bevor dieses Ticket geschlossen werden kann.\r\n\r\n", + "heading": "Ticket gelöst", + "subject": "(Gelöst)", + "locale": "de" + } + }, + { + "pk": 45, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "resolved_submitter", + "html": "

Hallo,

\r\n\r\n

Sie haben kürzlich das Ticket {{ ticket.title }} bei uns eröffnet. Hiermit möchten wir Ihnen mitteilen, dass dafür eine Lösung gefunden wurde.

\r\n\r\n

Für das Ticket {{ ticket.ticket }} wurde folgende Lösung vorgeschlagen:

\r\n\r\n
{{ resolution }}
\r\n\r\n

Wir möchten Sie bitten zu bestätigen, dass diese Lösung Ihren Anforderungen entspricht, damit wir dieses Ticket schließen können. Wenn Sie weitere Fragen haben, oder der Meinung sind, dass diese Lösung nicht ausreichend ist, dann antworten Sie bitte auf diese E-Mail und lassen den Betreff unverändert.

\r\n\r\n

Unter folgendem Link können Sie das Ticket online ansehen: {{ ticket.ticket_url }}.

", + "plain_text": "Hallo,\r\n\r\nSie haben kürzlich das Ticket \"{{ ticket.title }}\" bei uns eröffnet. Hiermit möchten wir Ihnen mitteilen, dass dafür eine Lösung gefunden wurde.\r\n\r\nFür das Ticket {{ ticket.ticket }} wurde folgende Lösung vorgeschlagen:\r\n\r\n{{ resolution }}\r\n\r\nWir möchten Sie bitten zu bestätigen, dass diese Lösung Ihren Anforderungen entspricht, damit wir dieses Ticket schließen können. Wenn Sie weitere Fragen haben, oder der Meinung sind, dass diese Lösung nicht ausreichend ist, dann antworten Sie bitte auf diese E-Mail und lassen den Betreff unverändert.\r\n\r\nUnter folgendem Link können Sie das Ticket online ansehen: {{ ticket.ticket_url }}\r\n\r\n", + "heading": "Ihr Ticket wurde gelöst", + "subject": "(Gelöst)", + "locale": "de" + } + }, + { + "pk": 46, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "updated_cc", + "html": "

Hallo,

\r\n\r\n

Gerne teilen wir Ihnen mit, dass das Ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") für {{ ticket.submitter_email }} aktualisiert wurde.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nTicketsammlung: {{ queue.title }}
\r\nTitel: {{ ticket.title }}
\r\nEröffnet: {{ ticket.created|date:\"l, j. N Y, \\u\\m H:i\" }}
\r\nErsteller: {{ ticket.submitter_email|default:\"Unbekannt\" }}
\r\nPriorität: {{ ticket.get_priority_display }}
\r\nStatus: {{ ticket.get_status }}
\r\nZugewiesen an: {{ ticket.get_assigned_to }}
\r\nOnline ansehen um dieses Ticket zu aktualisieren (Login erforderlich)

\r\n\r\n

Die ursprüngliche Ticketbeschreibung war:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

Folgender Kommentar wurde hinzugefügt:

\r\n\r\n
{{ comment }}
\r\n\r\n

Diese Information wurde {% if private %}nicht {% endif %} an den Ersteller gesendet.

", + "plain_text": "Hallo,\r\n\r\nGerne teilen wir Ihnen mit, dass das Ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") für {{ ticket.submitter_email }} aktualisiert wurde.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nTicketsammlung: {{ queue.title }}\r\nTitel: {{ ticket.title }}\r\nEröffnet: {{ ticket.created|date:\"l, j. N Y, \\u\\m H:i\" }}\r\nErsteller: {{ ticket.submitter_email|default:\"Unbekannt\" }}\r\nPriorität: {{ ticket.get_priority_display }}\r\nStatus: {{ ticket.get_status }}\r\nZugewiesen an: {{ ticket.get_assigned_to }}\r\nOnline ansehen: {{ ticket.staff_url }} (Login erforderlich)\r\n\r\nUrsprüngliche Ticketbeschreibung:\r\n\r\n{{ ticket.description }}\r\n\r\nFolgender Kommentar wurde hinzugefügt:\r\n\r\n{{ comment }}\r\n\r\nDiese Information wurde {% if private %}nicht {% endif %} an den Ersteller gesendet.\r\n\r\nUnter folgendem Link können Sie das Ticket online ansehen: {{ ticket.staff_url }}.\r\n\r\n", + "heading": "Ticket aktualisiert", + "subject": "(Aktualisiert)", + "locale": "de" + } + }, + { + "pk": 47, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "updated_owner", + "html": "

Hallo,

\r\n\r\n

Gerne teilen wir Ihnen mit, dass das Ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") für {{ ticket.submitter_email }}, das Ihnen zugewiesen ist, aktualisiert wurde.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nTicketsammlung: {{ queue.title }}
\r\nTitel: {{ ticket.title }}
\r\nEröffnet: {{ ticket.created|date:\"l, j. N Y, \\u\\m H:i\" }}
\r\nErsteller: {{ ticket.submitter_email|default:\"Unbekannt\" }}
\r\nPriorität: {{ ticket.get_priority_display }}
\r\nStatus: {{ ticket.get_status }}
\r\nZugewiesen an: {{ ticket.get_assigned_to }}
\r\nOnline ansehen um dieses Ticket zu aktualisieren (Login erforderlich)

\r\n\r\n

Die ursprüngliche Ticketbeschreibung war:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

Folgender Kommentar wurde hinzugefügt:

\r\n\r\n
{{ comment }}
\r\n\r\n

Diese Information wurde {% if private %}nicht {% endif %} an den Ersteller gesendet.

", + "plain_text": "Hallo,\r\n\r\nGerne teilen wir Ihnen mit, dass das Ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") für {{ ticket.submitter_email }}, das Ihnen zugewiesen ist, aktualisiert wurde.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nTicketsammlung: {{ queue.title }}\r\nTitel: {{ ticket.title }}\r\nEröffnet: {{ ticket.created|date:\"l, j. N Y, \\u\\m H:i\" }}\r\nErsteller: {{ ticket.submitter_email|default:\"Unbekannt\" }}\r\nPriorität: {{ ticket.get_priority_display }}\r\nStatus: {{ ticket.get_status }}\r\nZugewiesen an: {{ ticket.get_assigned_to }}\r\nOnline ansehen: {{ ticket.staff_url }} (Login erforderlich)\r\n\r\nUrsprüngliche Ticketbeschreibung:\r\n\r\n{{ ticket.description }}\r\n\r\nFolgender Kommentar wurde hinzugefügt:\r\n\r\n{{ comment }}\r\n\r\nDiese Information wurde {% if private %}nicht {% endif %} an den Ersteller gesendet.\r\n\r\nUnter folgendem Link können Sie das Ticket online ansehen: {{ ticket.staff_url }}\r\n\r\n", + "heading": "Ticket Aktualisiert", + "subject": "(Aktualisiert)", + "locale": "de" + } + }, + { + "pk": 48, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "updated_submitter", + "html": "

Hallo,

\r\n\r\n

Sie haben kürzlich das Ticket {{ ticket.title }} bei uns eröffnet. Hiermit möchten wir Ihnen eine Aktualisierung mitteilen.

\r\n\r\n

Folgender Kommentar wurde zum Ticket {{ ticket.ticket }} hinzugefügt:

\r\n\r\n
{{ comment }}
\r\n\r\n

Wenn Sie uns weitere Informationen mitteilen möchten, antworten Sie bitte auf diese E-Mail und lassen den Betreff unverändert. Oder Sie können das Ticket online ansehen und aktualisieren: {{ ticket.ticket_url }}.

", + "plain_text": "Hallo,\r\n\r\nSie haben kürzlich das Ticket \"{{ ticket.title }}\" bei uns eröffnet. Hiermit möchten wir Ihnen eine Aktualisierung mitteilen.\r\n\r\nFolgender Kommentar wurde zum Ticket {{ ticket.ticket }} hinzugefügt:\r\n\r\n{{ comment }}\r\n\r\nWenn Sie uns weitere Informationen mitteilen möchten, antworten Sie bitte auf diese E-Mail und lassen den Betreff unverändert. Oder Sie können das Ticket online ansehen und aktualisieren: {{ ticket.ticket_url }}\r\n\r\n", + "heading": "Ihr Ticket wurde aktualisiert", + "subject": "(Aktualisiert)", + "locale": "de" + } + }, + { + "pk": 49, + "model": "helpdesk.emailtemplate", + "fields": { + "heading": "Ticket Assign\u00e9", + "html": "

Bonjour,

\r\n\r\n

Ce courriel indicatif permet de vous pr\u00e9venir que le ticket {{ ticket.ticket }} ({{ ticket.title }}) par {{ ticket.submitter_email }} {% if ticket.assigned_to %}a \u00e9t\u00e9 assign\u00e9 \u00e0 {{ ticket.assigned_to }}{% else %} n'est plus assign\u00e9 \u00e0 personne{% endif %}.

\r\n\r\n

\r\nFile d'attente : {{ ticket.ticket }}
\r\nQueue : {{ queue.title }}
\r\nTitre : {{ ticket.title }}
\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}
\r\nStatut : {{ ticket.get_status }}
\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}
\r\nVoir le ticket en ligne pour le mettre \u00e0 jour (apr\u00e8s authentification)

\r\n\r\n

Pour m\u00e9moire, la description originelle \u00e9tait :

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "locale": "fr", + "plain_text": "Bonjour,\r\n\r\nCe courriel indicatif permet de vous pr\u00e9venir que le ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") par {{ ticket.submitter_email }} {% if ticket.assigned_to %} a \u00e9t\u00e9 assign\u00e9 \u00e0 {{ ticket.assigned_to }}{% else %} n'est plus assign\u00e9 \u00e0 personne{% endif %}.\r\n\r\nIdentifiant\u00a0: {{ ticket.ticket }}\r\nFile d'attente\u00a0: {{ queue.title }}\r\nTitre\u00a0: {{ ticket.title }}\r\nOuvert le\u00a0: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSoumis par\u00a0: {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriorit\u00e9\u00a0: {{ ticket.get_priority_display }}\r\nStatut\u00a0: {{ ticket.get_status }}\r\nAssign\u00e9 \u00e0\u00a0: {{ ticket.get_assigned_to }}\r\nAdresse\u00a0: {{ ticket.staff_url }}\r\n\r\nLa description originelle \u00e9tait\u00a0:\r\n\r\n{{ ticket.description }}\r\n\r\n", + "subject": "(Assign\u00e9)", + "template_name": "assigned_cc" + } + }, + { + "pk": 50, + "model": "helpdesk.emailtemplate", + "fields": { + "heading": "Le ticket vous est assign\u00e9", + "html": "

Bonjour,

\r\n\r\n

Ce courriel indicatif permet de vous pr\u00e9venir que le ticket {{ ticket.ticket }} ({{ ticket.title }}) pour {{ ticket.submitter_email }} vous a \u00e9t\u00e9 assign\u00e9.

\r\n\r\n

\r\nFile d'attente : {{ ticket.ticket }}
\r\nQueue : {{ queue.title }}
\r\nTitre : {{ ticket.title }}
\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}
\r\nStatut : {{ ticket.get_status }}
\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}
\r\nVoir le ticket en ligne pour le mettre \u00e0 jour (apr\u00e8s authentification)

\r\n\r\n

Pour m\u00e9moire, la description originelle \u00e9tait :

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "locale": "fr", + "plain_text": "Bonjour,\r\n\r\nCe courriel indicatif permet de vous pr\u00e9venir que le ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") pour {{ ticket.submitter_email }} vous a \u00e9t\u00e9 assign\u00e9.\r\n\r\nIdentifiant : {{ ticket.ticket }}\r\nFile d'attente : {{ queue.title }}\r\nTitre : {{ ticket.title }}\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}\r\nStatut : {{ ticket.get_status }}\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}\r\nAdresse : {{ ticket.staff_url }}\r\n\r\nLa description originelle \u00e9tait :\r\n\r\n{{ ticket.description }}", + "subject": "(Pour vous)", + "template_name": "assigned_owner" + } + }, + { + "pk": 51, + "model": "helpdesk.emailtemplate", + "fields": { + "heading": "Ticket Ferm\u00e9", + "html": "

Bonjour,

\r\n\r\n

Le ticket {{ ticket.title }} ('{{ ticket.title }}'){% if ticket.assigned_to %}, assign\u00e9 \u00e0 {{ ticket.get_assigned_to }}{% endif %} a \u00e9t\u00e9 ferm\u00e9.

\r\n\r\n

\r\nFile d'attente : {{ ticket.ticket }}
\r\nQueue : {{ queue.title }}
\r\nTitre : {{ ticket.title }}
\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}
\r\nStatut : {{ ticket.get_status }}
\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}
\r\nVoir le ticket en ligne pour le mettre \u00e0 jour (apr\u00e8s authentification)

\r\n\r\n

Pour m\u00e9moire, la description originelle \u00e9tait :

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n

La motivation de r\u00e9solution est:

\r\n\r\n
{{ resolution }}
", + "locale": "fr", + "plain_text": "Bonjour,\r\n\r\nLe ticket {{ ticket.title }} (\"{{ ticket.title }}\"){% if ticket.assigned_to %}, assign\u00e9 \u00e0 {{ ticket.assigned_to }}{% endif %} a \u00e9t\u00e9 ferm\u00e9.\r\n\r\nIdentifiant : {{ ticket.ticket }}\r\nFile d'attente : {{ queue.title }}\r\nTitre : {{ ticket.title }}\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}\r\nStatut : {{ ticket.get_status }}\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}\r\nAdresse : {{ ticket.staff_url }}\r\n\r\nLa description originelle \u00e9tait :\r\n\r\n{{ ticket.description }}\r\n\r\nLa motivation de r\u00e9solution est:\r\n\r\n{{ resolution }}\r\n\r\n", + "subject": "(Ferm\u00e9)", + "template_name": "closed_cc" + } + }, + { + "pk": 52, + "model": "helpdesk.emailtemplate", + "fields": { + "heading": "Ticket Ferm\u00e9", + "html": "

Bonjour,

\r\n\r\n

\r\nLe ticket suivant qui vous est actuellement assign\u00e9 a \u00e9t\u00e9 ferm\u00e9.

\r\n\r\n

\r\nFile d'attente : {{ ticket.ticket }}
\r\nQueue : {{ queue.title }}
\r\nTitre : {{ ticket.title }}
\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}
\r\nStatut : {{ ticket.get_status }}
\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}
\r\nVoir le ticket en ligne pour le mettre \u00e0 jour (apr\u00e8s authentification)

\r\n\r\n

Pour m\u00e9moire, la description originelle \u00e9tait :

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n

La motivation de r\u00e9solution est:

\r\n\r\n
{{ resolution }}
\r\n", + "locale": "fr", + "plain_text": "Bonjour,\r\n\r\nLe ticket suivant qui vous est actuellement assign\u00e9 a \u00e9t\u00e9 ferm\u00e9.\r\n\r\n\r\nIdentifiant : {{ ticket.ticket }}\r\nFile d'attente : {{ queue.title }}\r\nTitre : {{ ticket.title }}\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}\r\nStatut : {{ ticket.get_status }}\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}\r\nAdresse : {{ ticket.staff_url }} (authentification obligatoire)\r\n\r\nLa description originelle \u00e9tait :\r\n\r\n{{ ticket.description }}\r\n\r\nLa motivation de r\u00e9solution est:\r\n\r\n{{ resolution }}", + "subject": "(Ferm\u00e9 - \u00e0 vous)", + "template_name": "closed_owner" + } + }, + { + "pk": 53, + "model": "helpdesk.emailtemplate", + "fields": { + "heading": "Ticket Ferm\u00e9", + "html": "

Bonjour,

\r\n\r\n

Vous avez r\u00e9cemment ouvert chez nous un ticket dont le sujet est {{ ticket.title }}. Ce courriel vous confirme que ce ticket a \u00e9t\u00e9 ferm\u00e9.

\r\n\r\n

\"La r\u00e9solution a \u00e9t\u00e9 motiv\u00e9e ainsi :

\r\n\r\n
{{ ticket.resolution }}
\r\n\r\n

Vous pouvez visualiser ce ticket en ligne, en vous rendant \u00e0 l'adresse {{ ticket.ticket_url }}.

\r\n\r\n

Si vous pensez que nous devons encore travailler sur ce probl\u00e8me, faites le nous savoir en r\u00e9pondant \u00e0 ce courriel en conservant le sujet tel-quel..

", + "locale": "fr", + "plain_text": "Bonjour,\r\n\r\nVous avez r\u00e9cemment ouvert chez nous un ticket dont le sujet est \"{{ ticket.title }}\". Ce courriel vous confirme que ce ticket a \u00e9t\u00e9 ferm\u00e9.\r\n\r\nSi vous pensez que nous devons encore travailler sur ce probl\u00e8me, faites le nous savoir en r\u00e9pondant \u00e0 ce courriel en conservant le sujet tel-quel.\r\n\r\nVous pouvez visualiser ce ticket en ligne, en vous rendant \u00e0 l'adresse {{ ticket.ticket_url }}.\r\n\r\nLa r\u00e9solution a \u00e9t\u00e9 motiv\u00e9e ainsi\u00a0:\r\n\r\n{{ ticket.resolution }}\r\n\r\n", + "subject": "(Ferm\u00e9)", + "template_name": "closed_submitter" + } + }, + { + "pk": 54, + "model": "helpdesk.emailtemplate", + "fields": { + "heading": "Priorit\u00e9 du ticket augment\u00e9e", + "html": "

Bonjour,

\r\n\r\n

Ce courriel indicatif permet de vous pr\u00e9venir que le ticket {{ ticket.ticket }} ('{{ ticket.title }}') a vu sa priorit\u00e9 augment\u00e9 de mani\u00e8re automatique.

\r\n

\r\nFile d'attente : {{ ticket.ticket }}
\r\nQueue : {{ queue.title }}
\r\nTitre : {{ ticket.title }}
\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}
\r\nStatut : {{ ticket.get_status }}
\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}
\r\nVoir le ticket en ligne pour le mettre \u00e0 jour (apr\u00e8s authentification)

\r\n\r\n

Pour m\u00e9moire, la description originelle \u00e9tait :

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "locale": "fr", + "plain_text": "Bonjour,\r\n\r\nCe courriel indicatif permet de vous pr\u00e9venir que le ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") a vu sa priorit\u00e9 augment\u00e9 de mani\u00e8re automatique.\r\n\r\nIdentifiant : {{ ticket.ticket }}\r\nFile d'attente : {{ queue.title }}\r\nTitre : {{ ticket.title }}\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}\r\nStatut : {{ ticket.get_status }}\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}\r\nAdresse : {{ ticket.staff_url }}\r\n\r\nLa description originelle \u00e9tait :\r\n\r\n{{ ticket.description }}\r\n", + "subject": "(Priorit\u00e9 augment\u00e9e)", + "template_name": "escalated_cc" + } + }, + { + "pk": 55, + "model": "helpdesk.emailtemplate", + "fields": { + "heading": "Votre ticket a vu sa priorit\u00e9 augment\u00e9e", + "html": "

Bonjour,

\r\n\r\n

Vous avez r\u00e9cemment ouvert chez nous un ticket dont le sujet est {{ ticket.title }} . Ce courriel vous informe que ce ticket a vu sa priorit\u00e9 augment\u00e9 de mani\u00e8re automatique, vu son d\u00e9lai de r\u00e9solution plus long que pr\u00e9vu.

\r\n\r\n

Nous allons reprendre rapidement ce ticket afin d'essayer de le r\u00e9soudre le plus vite possible.

\r\n\r\n

Vous pouvez visualiser ce ticket en ligne, en vous rendant \u00e0 l'adresse {{ ticket.ticket_url }}.

", + "locale": "fr", + "plain_text": "Bonjour,\r\n\r\n\r\nVous avez r\u00e9cemment ouvert chez nous un ticket dont le sujet est \"{{ ticket.title }}\". Ce courriel vous informe que ce ticket a vu sa priorit\u00e9 augment\u00e9 de mani\u00e8re automatique, vu son d\u00e9lai de r\u00e9solution plus long que pr\u00e9vu.\r\n\r\nNous allons reprendre rapidement ce ticket afin d'essayer de le r\u00e9soudre le plus vite possible.\r\n\r\nVous pouvez visualiser ce ticket en ligne, en vous rendant \u00e0 l'adresse {{ ticket.ticket_url }}.\r\n\r\n", + "subject": "(Priorit\u00e9 augment\u00e9e)", + "template_name": "escalated_submitter" + } + }, + { + "pk": 56, + "model": "helpdesk.emailtemplate", + "fields": { + "heading": "Priorit\u00e9 de votre ticket augment\u00e9e", + "html": "

Bonjour,

\r\n\r\n

Un ticket qui vous est assign\u00e9 a vu sa priorit\u00e9 augment\u00e9 vu son d\u00e9lai de r\u00e9solution plus long que pr\u00e9vu.

\r\n\r\n

\r\nFile d'attente : {{ ticket.ticket }}
\r\nQueue : {{ queue.title }}
\r\nTitre : {{ ticket.title }}
\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}
\r\nStatut : {{ ticket.get_status }}
\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}
\r\nVoir le ticket en ligne pour le mettre \u00e0 jour (apr\u00e8s authentification)

\r\n\r\n

Pour m\u00e9moire, la description originelle \u00e9tait :

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

Merci de reprendre ce ticket afin d'essayer de le r\u00e9soudre le plus vite possible..

", + "locale": "fr", + "plain_text": "Bonjour,\r\n\r\nUn ticket qui vous est assign\u00e9 a vu sa priorit\u00e9 augment\u00e9 vu son d\u00e9lai de r\u00e9solution plus long que pr\u00e9vu.\r\n\r\nIdentifiant : {{ ticket.ticket }}\r\nFile d'attente : {{ queue.title }}\r\nTitre : {{ ticket.title }}\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}\r\nStatut : {{ ticket.get_status }}\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}\r\nAdresse : {{ ticket.staff_url }}\r\n\r\nLa description originelle \u00e9tait :\r\n\r\n{{ ticket.description }}\r\n\r\nMerci de reprendre ce ticket afin d'essayer de le r\u00e9soudre le plus vite possible.\r\n", + "subject": "(Priorit\u00e9 augment\u00e9e - \u00e0 vous)", + "template_name": "escalated_owner" + } + }, + { + "pk": 57, + "model": "helpdesk.emailtemplate", + "fields": { + "heading": "Nouveau ticket ouvert", + "html": "

Bonjour,

\r\n\r\n

Ce courriel indicatif permet de vous pr\u00e9venir qu'un nouveau ticket a \u00e9t\u00e9 ouvert.

\r\n\r\n

\r\nFile d'attente : {{ ticket.ticket }}
\r\nQueue : {{ queue.title }}
\r\nTitre : {{ ticket.title }}
\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}
\r\nStatut : {{ ticket.get_status }}
\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}
\r\nVoir le ticket en ligne pour le mettre \u00e0 jour (apr\u00e8s authentification)

\r\n\r\n

Description :

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "locale": "fr", + "plain_text": "Bonjour,\r\n\r\nCe courriel indicatif permet de vous pr\u00e9venir qu'un nouveau ticket a \u00e9t\u00e9 ouvert.\r\n\r\nIdentifiant : {{ ticket.ticket }}\r\nFile d'attente : {{ queue.title }}\r\nTitre : {{ ticket.title }}\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}\r\nStatut : {{ ticket.get_status }}\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}\r\nAdresse : {{ ticket.staff_url }}\r\n\r\nDescription\u00a0:\r\n{{ ticket.description }}\r\n\r\n", + "subject": "(Ouvert)", + "template_name": "newticket_cc" + } + }, + { + "pk": 58, + "model": "helpdesk.emailtemplate", + "fields": { + "heading": "Votre ticket est d\u00e9sormais ouvert", + "html": "

Bonjour,

\r\n\r\n

Ce courriel permet de vous informer que nous avons re\u00e7u votre demande de support dont le sujet est {{ ticket.title }}.

\r\n\r\n

\"Vous n'avez rien de plus \u00e0 faire pour le moment. Votre ticket porte l'identifiant {{ ticket.ticket }} et sera trait\u00e9 rapidement.

\r\n\r\n

Si vous voulez nous donner plus de d\u00e9tails ou si vous avez une question concernant ce ticket, merci d'inclure la r\u00e9f\u00e9rence {{ ticket.ticket }} dans le sujet du message. Le plus simple \u00e9tant d'utiliser la fonction 'r\u00e9pondre' de votre logiciel de messagerie.

\r\n\r\n

Vous pouvez visualiser ce ticket en ligne et y ajouter des informations ou des pi\u00e8ces jointes ainsi que voir les derni\u00e8res mies \u00e0 jour en vous rendant \u00e0 l'adresse {{ ticket.ticket_url }}.

\r\n\r\n

Nous allons traiter votre demande afin, si possible, de la r\u00e9soudre au plus vite. Vous recevrez des mise \u00e0 jour ou la r\u00e9ponse au ticket \u00e0 cette adresse mail.

", + "locale": "fr", + "plain_text": "Bonjour,\r\n\r\nCe courriel permet de vous informer que nous avons re\u00e7u votre demande de support dont le sujet est \"{{ ticket.title }}\".\r\n\r\nVous n'avez rien de plus \u00e0 faire pour le moment. Votre ticket porte l'identifiant {{ ticket.ticket }} et sera trait\u00e9 rapidement.\r\n\r\nSi vous voulez nous donner plus de d\u00e9tails ou si vous avez une question concernant ce ticket, merci d'inclure la r\u00e9f\u00e9rence '{{ ticket.ticket }}' dans le sujet du message. Le plus simple \u00e9tant d'utiliser la fonction 'r\u00e9pondre' de votre logiciel de messagerie.\r\n\r\nVous pouvez visualiser ce ticket en ligne et y ajouter des informations ou des pi\u00e8ces jointes ainsi que voir les derni\u00e8res mies \u00e0 jour en vous rendant \u00e0 l'adresse {{ ticket.ticket_url }}.\r\n\r\nNous allons traiter votre demande afin, si possible, de la r\u00e9soudre au plus vite. Vous recevrez des mise \u00e0 jour ou la r\u00e9ponse au ticket \u00e0 cette adresse mail.", + "subject": "(Ouvert)", + "template_name": "newticket_submitter" + } + }, + { + "pk": 59, + "model": "helpdesk.emailtemplate", + "fields": { + "heading": "Ticket r\u00e9solu", + "html": "

Bonjour,

\r\n\r\n

Le ticket suivant a \u00e9t\u00e9 r\u00e9solu.

\r\n\r\n

\r\nFile d'attente : {{ ticket.ticket }}
\r\nQueue : {{ queue.title }}
\r\nTitre : {{ ticket.title }}
\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}
\r\nStatut : {{ ticket.get_status }}
\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}
\r\nVoir le ticket en ligne pour le mettre \u00e0 jour (apr\u00e8s authentification)

\r\n\r\n

Pour m\u00e9moire, la description originelle \u00e9tait :

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n

La motivation de r\u00e9solution est:

\r\n\r\n
{{ resolution }}
\r\n\r\n

\r\nCette information a \u00e9t\u00e9 envoy\u00e9 au cr\u00e9ateur de ce ticket, qui la confirmera avant que vous puissiez fermer ce ticket.

", + "locale": "fr", + "plain_text": "Bonjour,\r\n\r\nLe ticket suivant a \u00e9t\u00e9 r\u00e9solu.\r\n\r\nIdentifiant : {{ ticket.ticket }}\r\nFile d'attente : {{ queue.title }}\r\nTitre : {{ ticket.title }}\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}\r\nStatut : {{ ticket.get_status }}\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}\r\nAdresse : {{ ticket.staff_url }}\r\n\r\nLa description originelle \u00e9tait :\r\n\r\n{{ ticket.description }}\r\n\r\nLa motivation de r\u00e9solution est:\r\n\r\n{{ resolution }}\r\n\r\nCette information a \u00e9t\u00e9 envoy\u00e9 au cr\u00e9ateur de ce ticket, qui la confirmera avant que vous puissiez fermer ce ticket.\r\n\r\n", + "subject": "(R\u00e9solu)", + "template_name": "resolved_cc" + } + }, + { + "pk": 60, + "model": "helpdesk.emailtemplate", + "fields": { + "heading": "Ticket r\u00e9solu", + "html": "

Bonjour,

\r\n\r\n

Un ticket qui vous est assign\u00e9 a \u00e9t\u00e9 r\u00e9solu.

\r\n\r\n

\r\nFile d'attente : {{ ticket.ticket }}
\r\nQueue : {{ queue.title }}
\r\nTitre : {{ ticket.title }}
\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}
\r\nStatut : {{ ticket.get_status }}
\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}
\r\nVoir le ticket en ligne pour le mettre \u00e0 jour (apr\u00e8s authentification)

\r\n\r\n

Pour m\u00e9moire, la description originelle \u00e9tait :

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n

La motivation de r\u00e9solution est:

\r\n\r\n
{{ resolution }}
\r\n\r\n

\r\nCette information a \u00e9t\u00e9 envoy\u00e9 au cr\u00e9ateur de ce ticket, qui la confirmera avant que vous puissiez fermer ce ticket.

", + "locale": "fr", + "plain_text": "Bonjour,\r\n\r\nUn ticket qui vous est assign\u00e9 a \u00e9t\u00e9 r\u00e9solu.\r\n\r\n\r\nIdentifiant : {{ ticket.ticket }}\r\nFile d'attente : {{ queue.title }}\r\nTitre : {{ ticket.title }}\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}\r\nStatut : {{ ticket.get_status }}\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}\r\nAdresse : {{ ticket.staff_url }}\r\n\r\nLa description originelle \u00e9tait :\r\n\r\n{{ ticket.description }}\r\n\r\nLa motivation de r\u00e9solution est:\r\n\r\n{{ resolution }}\r\n\r\nCette information a \u00e9t\u00e9 envoy\u00e9 au cr\u00e9ateur de ce ticket, qui la confirmera avant que vous puissiez fermer ce ticket.\r\n\r\n", + "subject": "(R\u00e9solu - \u00e0 vous)", + "template_name": "resolved_owner" + } + }, + { + "pk": 61, + "model": "helpdesk.emailtemplate", + "fields": { + "heading": "Votre ticket a \u00e9t\u00e9 r\u00e9solu", + "html": "

Bonjour,

\r\n\r\n

Vous avez r\u00e9cemment ouvert chez nous un ticket dont le sujet est {{ ticket.title }}. Ce message vous informe d'une r\u00e9solution de la demande.

\r\n\r\n

La solution suivante a \u00e9t\u00e9 donn\u00e9e au ticket {{ ticket.ticket }}:

\r\n\r\n
{{ resolution }}
\r\n\r\n

Merci de confirmer que cette solution vous convient afin que nous puissions clore le ticket. Si vous avez d'autre demandes, o\u00f9 si vous pensez que cette solution n'est pas adapt\u00e9e, merci de r\u00e9pondre \u00e0 ce mail en conservant le sujet tel-quel.

\r\n\r\n

Vous pouvez visualiser ce ticket en ligne, en vous rendant \u00e0 l'adresse {{ ticket.ticket_url }}.

", + "locale": "fr", + "plain_text": "Bonjour,\r\n\r\nVous avez r\u00e9cemment ouvert chez nous un ticket dont le sujet est \"{{ ticket.title }}\" . Ce message vous informe d'une r\u00e9solution de la demande.\r\n\r\nLa solution suivante a \u00e9t\u00e9 donn\u00e9e au ticket {{ ticket.ticket }}:\r\n\r\n{{ resolution }}\r\n\r\nMerci de confirmer que cette solution vous convient afin que nous puissions clore le ticket. Si vous avez d'autre demandes, o\u00f9 si vous pensez que cette solution n'est pas adapt\u00e9e, merci de r\u00e9pondre \u00e0 ce mail en conservant le sujet tel-quel.\r\n\r\nVous pouvez visualiser ce ticket en ligne, en vous rendant \u00e0 l'adresse {{ ticket.ticket_url }}.\r\n\r\n", + "subject": "(R\u00e9solu)", + "template_name": "resolved_submitter" + } + }, + { + "pk": 62, + "model": "helpdesk.emailtemplate", + "fields": { + "heading": "Ticket mis \u00e0 jour", + "html": "

Bonjour,

\r\n\r\n

Ce courriel indicatif permet de vous pr\u00e9venir que le ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") par {{ ticket.submitter_email }} a \u00e9t\u00e9 mis \u00e0 jour.

\r\n\r\n

\r\nFile d'attente : {{ ticket.ticket }}
\r\nQueue : {{ queue.title }}
\r\nTitre : {{ ticket.title }}
\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}
\r\nStatut : {{ ticket.get_status }}
\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}
\r\nVoir le ticket en ligne pour le mettre \u00e0 jour (apr\u00e8s authentification)

\r\n\r\n

Pour m\u00e9moire, la description originelle \u00e9tait :

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

Le commentaire suivant a \u00e9t\u00e9 ajout\u00e9 :

\r\n\r\n
{{ comment }}
\r\n\r\n

Cette information {% if private %} n' a pas {% else %} a {% endif %} \u00e9t\u00e9 envoy\u00e9 par mail \u00e0 l'\u00e9metteur.

", + "locale": "fr", + "plain_text": "Bonjour,\r\n\r\nCe courriel indicatif permet de vous pr\u00e9venir que le ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") par {{ ticket.submitter_email }} a \u00e9t\u00e9 mis \u00e0 jour.\r\n\r\nIdentifiant : {{ ticket.ticket }}\r\nFile d'attente : {{ queue.title }}\r\nTitre : {{ ticket.title }}\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}\r\nStatut : {{ ticket.get_status }}\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}\r\nAdresse : {{ ticket.staff_url }}\r\n\r\nDescription originelle :\r\n\r\n{{ ticket.description }}\r\n\r\nLe commentaire suivant a \u00e9t\u00e9 ajout\u00e9\u00a0:\r\n\r\n{{ comment }}\r\n\r\nCette information {% if private %} n' a pas {% else %} a {% endif %} \u00e9t\u00e9 envoy\u00e9 par mail \u00e0 l'\u00e9metteur.\r\n\r\n", + "subject": "(Mis \u00e0 jour)", + "template_name": "updated_cc" + } + }, + { + "pk": 63, + "model": "helpdesk.emailtemplate", + "fields": { + "heading": "Ticket mis \u00e0 jour", + "html": "

Bonjour,

\r\n\r\n

Ce courriel indicatif permet de vous pr\u00e9venir que le ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") par {{ ticket.submitter_email }}, qui vous est assign\u00e9, a \u00e9t\u00e9 mis \u00e0 jour.

\r\n\r\n

\r\nFile d'attente : {{ ticket.ticket }}
\r\nQueue : {{ queue.title }}
\r\nTitre : {{ ticket.title }}
\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}
\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}
\r\nStatut : {{ ticket.get_status }}
\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}
\r\nVoir le ticket en ligne pour le mettre \u00e0 jour (apr\u00e8s authentification)

\r\n\r\n

Pour m\u00e9moire, la description originelle \u00e9tait :

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

Le commentaire suivant a \u00e9t\u00e9 ajout\u00e9 :

\r\n\r\n
{{ comment }}
\r\n\r\n

Cette information {% if private %} n' a pas {% else %} a {% endif %} \u00e9t\u00e9 envoy\u00e9 par mail \u00e0 l'\u00e9metteur.

", + "locale": "fr", + "plain_text": "Hello,\r\n\r\nCe courriel indicatif permet de vous pr\u00e9venir que le ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") par {{ ticket.submitter_email }}, qui vous est assign\u00e9, a \u00e9t\u00e9 mis \u00e0 jour.\r\n\r\nIdentifiant : {{ ticket.ticket }}\r\nFile d'attente : {{ queue.title }}\r\nTitre : {{ ticket.title }}\r\nOuvert le : {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nSoumis par : {{ ticket.submitter_email|default:\"Unknown\" }}\r\nPriorit\u00e9 : {{ ticket.get_priority_display }}\r\nStatut : {{ ticket.get_status }}\r\nAssign\u00e9 \u00e0 : {{ ticket.get_assigned_to }}\r\nAdresse : {{ ticket.staff_url }}\r\n\r\nDescription originelle :\r\n\r\n{{ ticket.description }}\r\n\r\nLe commentaire suivant a \u00e9t\u00e9 ajout\u00e9 :\r\n\r\n{{ comment }}\r\n\r\nCette information {% if private %} n' a pas {% else %} a {% endif %} \u00e9t\u00e9 envoy\u00e9 par mail \u00e0 l'\u00e9metteur.\r\n\r\n", + "subject": "(Mis \u00e0 jour - \u00e0 vous)", + "template_name": "updated_owner" + } + }, + { + "model": "helpdesk.emailtemplate", + "pk": 64, + "fields": { + "heading": "Votre ticket a \u00e9t\u00e9 mis \u00e0 jour", + "html": "

Bonjour,

\r\n\r\n

Vous avez r\u00e9cemment ouvert chez nous un ticket dont le sujet est {{ ticket.title }} . Ce message vous informe d'une mise \u00e0 jour du ticket.

\r\n\r\n

Le commentaire suivant a \u00e9t\u00e9 ajout\u00e9 au ticket {{ ticket.ticket }}:

\r\n\r\n
{{ comment }}
\r\n\r\n

\"Si vous voulez nous fournir d'autres informations, merci de r\u00e9pondre \u00e0 ce mail en conservant le sujet tel-quel. Vous pouvez \u00e9galement voir et mettre \u00e0 jour ce ticket en ligne \u00e0 l'adresse {{ ticket.ticket_url }}.

", + "locale": "fr", + "plain_text": "Bonjour,\r\n\r\nVous avez r\u00e9cemment ouvert chez nous un ticket dont le sujet est \"{{ ticket.title }}\". Ce message vous informe d'une mise \u00e0 jour du ticket.\r\n\r\nLe commentaire suivant a \u00e9t\u00e9 ajout\u00e9 au ticket {{ ticket.ticket }}\u00a0:\r\n\r\n{{ comment }}\r\n\r\nSi vous voulez nous fournir d'autres informations, merci de r\u00e9pondre \u00e0 ce mail en conservant le sujet tel-quel. Vous pouvez \u00e9galement voir et mettre \u00e0 jour ce ticket en ligne \u00e0 l'adresse {{ ticket.ticket_url }}", + "subject": "(Mis \u00e0 jour)", + "template_name": "updated_submitter" + } + }, + { + "pk": 65, + "model": "helpdesk.emailtemplate", + "fields": { + "locale": "it", + "template_name": "assigned_cc", + "plain_text": "Salve,\r\n\r\nTi \u00e8 stata inviata questa email per informarti che il ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") per {{ ticket.submitter_email }} {% if ticket.assigned_to %}\u00e8 stato assegnato a {{ ticket.assigned_to }}{% else %}non \u00e8 pi\u00f9 assegnato{% endif %}.\r\n\r\nID Ticket: {{ ticket.ticket }}\r\nCoda: {{ queue.title }}\r\nTitolo: {{ ticket.title }}\r\nAperto: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nInserito da: {{ ticket.submitter_email|default:\"Sconosciuto\" }}\r\nPriorit\u00e0: {{ ticket.get_priority_display }}\r\nStato: {{ ticket.get_status }}\r\nAssegnato a: {{ ticket.get_assigned_to }}\r\nVedi Online: {{ ticket.staff_url }} (richiede login)\r\n\r\nLa descrizione del ticket era:\r\n\r\n{{ ticket.description }}", + "html": "

Salve,

\r\n\r\n

Ti \u00e8 stata inviata questa email per informarti che il ticket {{ ticket.ticket }} ({{ ticket.title }}) per {{ ticket.submitter_email }} {% if ticket.assigned_to %}\u00e8 stato assegnato a {{ ticket.assigned_to }}{% else %}non \u00e8 pi\u00f9 assegnato{% endif %}.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nCoda: {{ queue.title }}
\r\nTitolo: {{ ticket.title }}
\r\nAperto: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nInserito da: {{ ticket.submitter_email|default:\"Sconosciuto\" }}
\r\nPriorit\u00e0: {{ ticket.get_priority_display }}
\r\nStato: {{ ticket.get_status }}
\r\nAssegnato a: {{ ticket.get_assigned_to }}
\r\nVedi Online per aggiornare questo ticket (richiede login)

\r\n\r\n

Per riferimento, la descrizione del ticket era:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "heading": "Ticket Assegnato", + "subject": "(Assegnato)" + } + }, + { + "pk": 66, + "model": "helpdesk.emailtemplate", + "fields": { + "locale": "it", + "template_name": "assigned_owner", + "plain_text": "Salve,\r\n\r\nTi \u00e8 stata inviata questa email per informarti che ti \u00e8 stato assegnato il ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") per {{ ticket.submitter_email }}.\r\n\r\nID Ticket: {{ ticket.ticket }}\r\nCoda: {{ queue.title }}\r\nTitolo: {{ ticket.title }}\r\nAperto: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nInserito da: {{ ticket.submitter_email|default:\"Sconosciuto\" }}\r\nPriorit\u00e0: {{ ticket.get_priority_display }}\r\nStato: {{ ticket.get_status }}\r\nAssegnato a: {{ ticket.get_assigned_to }}\r\nVedi Online: {{ ticket.staff_url }} (richiede login)\r\n\r\nLa descrizione del ticket \u00e8:\r\n\r\n{{ ticket.description }}", + "html": "

Salve,

\r\n\r\n

Ti \u00e8 stata inviata questa email per informarti che ti \u00e8 stato assegnato il ticket {{ ticket.ticket }} ({{ ticket.title }}) per {{ ticket.submitter_email }}.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nCoda: {{ queue.title }}
\r\nTitolo: {{ ticket.title }}
\r\nAperto: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nInserito da: {{ ticket.submitter_email|default:\"Sconosciuto\" }}
\r\nPriorit\u00e0: {{ ticket.get_priority_display }}
\r\nStato: {{ ticket.get_status }}
\r\nAssegnato a: {{ ticket.get_assigned_to }}
\r\nVedi Online per aggiornare questo ticket (richiede login)

\r\n\r\n

La descrizione del ticket \u00e8:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "heading": "Ticket Assegnato a Te", + "subject": "(Assegnato a Te)" + } + }, + { + "pk": 67, + "model": "helpdesk.emailtemplate", + "fields": { + "locale": "it", + "template_name": "closed_cc", + "plain_text": "Salve,\r\n\r\nIl ticket {{ ticket.title }} (\"{{ ticket.title }}\"){% if ticket.assigned_to %}, assegnato a {{ ticket.assigned_to }}{% endif %} \u00e8 stato chiuso.\r\n\r\nID Ticket: {{ ticket.ticket }}\r\nCoda: {{ queue.title }}\r\nTitolo: {{ ticket.title }}\r\nAperto: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nInserito da: {{ ticket.submitter_email|default:\"Sconosciuto\" }}\r\nPriorit\u00e0: {{ ticket.get_priority_display }}\r\nStato: {{ ticket.get_status }}\r\nAssegnato a: {{ ticket.get_assigned_to }}\r\nVedi Online: {{ ticket.staff_url }} (richiede login)\r\n\r\nLa descrizione del ticket \u00e8:\r\n\r\n{{ ticket.description }}\r\n\r\nLa soluzione fornita \u00e8:\r\n\r\n{{ resolution }}", + "html": "

Salve,

\r\n\r\n

Il ticket {{ ticket.title }} ('{{ ticket.title }}'){% if ticket.assigned_to %}, assegnato a {{ ticket.get_assigned_to }}{% endif %} \u00e8 stato chiuso.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nCoda: {{ queue.title }}
\r\nTitolo: {{ ticket.title }}
\r\nAperto: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nInserito da: {{ ticket.submitter_email|default:\"Sconosciuto\" }}
\r\nPriorit\u00e0: {{ ticket.get_priority_display }}
\r\nStato: {{ ticket.get_status }}
\r\nAssegnato a: {{ ticket.get_assigned_to }}
\r\nVedi Online per aggiornare questo ticket (richiede login)

\r\n\r\n

La descrizione del ticket \u00e8:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

La soluzione fornita \u00e8:

\r\n\r\n
{{ resolution }}
\r\n\r\n

Se vuoi vedere questo ticket online, puoi visitare l'indirizzo {{ ticket.staff_url }}.

", + "heading": "Ticket Chiuso", + "subject": "(Closed)" + } + }, + { + "pk": 68, + "model": "helpdesk.emailtemplate", + "fields": { + "locale": "it", + "template_name": "closed_owner", + "plain_text": "Salve,\r\n\r\nIl seguente ticket, attualmente assegnato a te, \u00e8 stato chiuso.\r\n\r\nID Ticket: {{ ticket.ticket }}\r\nCoda: {{ queue.title }}\r\nTitolo: {{ ticket.title }}\r\nAperto: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nInserito da: {{ ticket.submitter_email|default:\"Sconosciuto\" }}\r\nPriorit\u00e0: {{ ticket.get_priority_display }}\r\nStato: {{ ticket.get_status }}\r\nAssegnato a: {{ ticket.get_assigned_to }}\r\nVedi Online: {{ ticket.staff_url }} (richiede login)\r\n\r\nSe vuoi vedere il ticket online, puoi visitare l'indirizzo {{ ticket.staff_url }}.", + "html": "

Salve,

\r\n\r\n

Il seguente ticket, attualmente assegnato a te, \u00e8 stato chiuso.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nCoda: {{ queue.title }}
\r\nTitolo: {{ ticket.title }}
\r\nAperto: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nInserito da: {{ ticket.submitter_email|default:\"Sconosciuto\" }}
\r\nPriorit\u00e0: {{ ticket.get_priority_display }}
\r\nStato: {{ ticket.get_status }}
\r\nAssegnato a: {{ ticket.get_assigned_to }}
\r\nVedi Online per aggiornare questo ticket (richiede login)

\r\n\r\n

La descrizione del ticket \u00e8:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

La soluzione fornita \u00e8:

\r\n\r\n
{{ ticket.resolution }}
", + "heading": "Ticket Chiuso", + "subject": "(Chiuso)" + } + }, + { + "pk": 69, + "model": "helpdesk.emailtemplate", + "fields": { + "locale": "it", + "template_name": "closed_submitter", + "plain_text": "Salve,\r\n\r\nHai recentemente inserito un ticket dal titolo \"{{ ticket.title }}\". Questa email ti \u00e8 inviata come conferma della chiusura del ticket.\r\n\r\nSe ritieni che questo ticket richieda ulteriori attivit\u00e0, per cortesia faccelo sapere rispondendo a questa email mantenendone invariato l'oggetto.\r\n\r\nSe vuoi vedere il ticket online, puoi visitare l'indirizzo {{ ticket.ticket_url }}.\r\n\r\nLa soluzione proposta \u00e8:\r\n\r\n{{ ticket.resolution }}", + "html": "

Salve,

\r\n\r\n

Hai recentemente inserito un ticket dal titolo {{ ticket.title }}. Questa email ti \u00e8 inviata come conferma della chiusura del ticket.

\r\n\r\n

La soluzione proposta \u00e8:

\r\n\r\n
{{ ticket.resolution }}
\r\n\r\n

Se vuoi vedere il ticket online, puoi visitare l'indirizzo {{ ticket.ticket_url }}. Se ritieni che questo ticket richieda ulteriori attivit\u00e0, per cortesia faccelo sapere rispondendo a questa email mantenendone invariato l'oggetto.\r\n

", + "heading": "Ticket Chiuso", + "subject": "(Closed)" + } + }, + { + "pk": 70, + "model": "helpdesk.emailtemplate", + "fields": { + "locale": "it", + "template_name": "escalated_cc", + "plain_text": "Salve,\r\n\r\nTi \u00e8 stata inviata questa email per informarti che la priorit\u00e0 del ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") \u00e8 stata aumentata automaticamente.\r\n\r\nID Ticket: {{ ticket.ticket }}\r\nCoda: {{ queue.title }}\r\nTitolo: {{ ticket.title }}\r\nAperto: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nInserito da: {{ ticket.submitter_email|default:\"Sconosciuto\" }}\r\nPriorit\u00e0: {{ ticket.get_priority_display }}\r\nStato: {{ ticket.get_status }}\r\nAssegnato a: {{ ticket.get_assigned_to }}\r\nVedi Online: {{ ticket.staff_url }} (richiede login)\r\n\r\nLa descrizione originale del ticket era:\r\n\r\n{{ ticket.description }}", + "html": "

Salve,

\r\n\r\n

Ti \u00e8 stata inviata questa email per informarti che la priorit\u00e0 del ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") \u00e8 stata aumentata automaticamente.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nCoda: {{ queue.title }}
\r\nTitolo: {{ ticket.title }}
\r\nAperto: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nInserito da: {{ ticket.submitter_email|default:\"Sconosciuto\" }}
\r\nPriorit\u00e0: {{ ticket.get_priority_display }}
\r\nStato: {{ ticket.get_status }}
\r\nAssegnato a: {{ ticket.get_assigned_to }}
\r\nVedi Online per aggiornare questo ticket (richiede login)

\r\n\r\n

Per riferimento, la descrizione originale del ticket era:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "heading": "Priorit\u00e0 Aumentata", + "subject": "(Priorit\u00e0)" + } + }, + { + "pk": 71, + "model": "helpdesk.emailtemplate", + "fields": { + "locale": "it", + "template_name": "escalated_owner", + "plain_text": "Salve,\r\n\r\nLa priorit\u00e0 di un ticket a te assegnato \u00e8 stata automaticamente aumentata in quanto questo \u00e8 rimasto aperto pi\u00f9 del previsto.\r\n\r\nID Ticket: {{ ticket.ticket }}\r\nCoda: {{ queue.title }}\r\nTitolo: {{ ticket.title }}\r\nAperto: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nInserito da: {{ ticket.submitter_email|default:\"Sconosciuto\" }}\r\nPriorit\u00e0: {{ ticket.get_priority_display }}\r\nStato: {{ ticket.get_status }}\r\nAssegnato a: {{ ticket.get_assigned_to }}\r\nVedi Online: {{ ticket.staff_url }} (richiede login)\r\n\r\nLa descrizione originale del ticket era:\r\n\r\n{{ ticket.description }}\r\n\r\nRiesamina questo ticket e cerca di fornire una soluzione al pi\u00f9 presto.", + "html": "

Salve,

\r\n\r\n

La priorit\u00e0 di un ticket a te assegnato \u00e8 stata automaticamente aumentata in quanto questo \u00e8 rimasto aperto pi\u00f9 del previsto.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nCoda: {{ queue.title }}
\r\nTitolo: {{ ticket.title }}
\r\nAperto: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nInserito da: {{ ticket.submitter_email|default:\"Sconosciuto\" }}
\r\nPriorit\u00e0: {{ ticket.get_priority_display }}
\r\nStato: {{ ticket.get_status }}
\r\nAssegnato a: {{ ticket.get_assigned_to }}
\r\nVedi Online per aggiornare questo ticket (richiede login)

\r\n\r\n

Per riferimento, la descrizione originale del ticket era:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "heading": "La Priorit\u00e0 di un Ticket Assegnato a Te \u00e8 Stata Aumentata", + "subject": "(Priorit\u00e0)" + } + }, + { + "pk": 72, + "model": "helpdesk.emailtemplate", + "fields": { + "locale": "it", + "template_name": "escalated_submitter", + "plain_text": "Salve,\r\n\r\nHai recentemente inserito un ticket dal titolo \"{{ ticket.title }}\". Questa email ti \u00e8 inviata per informarti che la priorit\u00e0 del ticket \u00e8 stata automaticamente aumentata in quanto questo \u00e8 rimasto aperto pi\u00f9 a lungo del previsto.\r\n\r\nRiesamineremo a breve il ticket e cercheremo di fornire una soluzione quanto prima.\r\n\r\nSe vuoi visualizzare il ticket online, puoi visitare l'indirizzo {{ ticket.ticket_url }}.", + "html": "

Salve,

\r\n\r\n

Hai recentemente inserito un ticket dal titolo {{ ticket.title }}. Questa email ti \u00e8 inviata per informarti che la priorit\u00e0 del ticket \u00e8 stata automaticamente aumentata in quanto questo \u00e8 rimasto aperto pi\u00f9 a lungo del previsto.

\r\n\r\n

Riesamineremo a breve il ticket e cercheremo di fornire una soluzione quanto prima.

\r\n\r\n

Se vuoi visualizzare il ticket online, puoi visitare l'indirizzo {{ ticket.ticket_url }}.

", + "heading": "La Priorit\u00e0 del Tuo Ticket \u00e8 Stata Aumentata", + "subject": "(Priorit\u00e0)" + } + }, + { + "pk": 73, + "model": "helpdesk.emailtemplate", + "fields": { + "locale": "it", + "template_name": "newticket_cc", + "plain_text": "Salve,\r\n\r\nQuesta email ti \u00e8 stata inviata per informarti che \u00e8 stato aperto un nuovo ticket.\r\n\r\nID Ticket: {{ ticket.ticket }}\r\nCoda: {{ queue.title }}\r\nTitolo: {{ ticket.title }}\r\nAperto: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nInserito da: {{ ticket.submitter_email|default:\"Sconosciuto\" }}\r\nPriorit\u00e0: {{ ticket.get_priority_display }}\r\nStato: {{ ticket.get_status }}\r\nVedi Online: {{ ticket.staff_url }} (richiede login)\r\n\r\nDescrizione:\r\n{{ ticket.description }}", + "html": "

Salve,

\r\n\r\n

Questa email ti \u00e8 stata inviata per informarti che \u00e8 stato aperto un nuovo ticket.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nCoda: {{ queue.title }}
\r\nTitolo: {{ ticket.title }}
\r\nAperto: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nInserito da: {{ ticket.submitter_email|default:\"Sconosciuto\" }}
\r\nPriorit\u00e0: {{ ticket.get_priority_display }}
\r\nStato: {{ ticket.get_status }}
\r\nVedi Online per aggiornare questo ticket (richiede login)

\r\n\r\n

Descrizione:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "heading": "Nuovo Ticket Aperto", + "subject": "(Aperto)" + } + }, + { + "pk": 74, + "model": "helpdesk.emailtemplate", + "fields": { + "locale": "it", + "template_name": "newticket_submitter", + "plain_text": "Salve,\r\n\r\nQuesta email ti \u00e8 stata inviata per informarti che abbiamo ricevuto la tua richiesta di assistenza dal titolo \"{{ ticket.title }}\".\r\n\r\nNon \u00e8 necessario fare altro al momento. Il tuo ticket \u00e8 identificato dal codice {{ ticket.ticket }}, e verr\u00e0 esaminato al pi\u00f9 presto.\r\n\r\nSe vuoi aggiungere ulteriori dettagli o hai domande sul ticket, rispondi a questa email includendo l'id \"{{ ticket.ticket }}\" del ticket nell'oggetto. Il modo pi\u00f9 semplice per farlo \u00e8 premere il pulsante \"rispondi\" del tuo client di posta.\r\n\r\nSe vuoi vedere questo ticket online per aggiungere ulteriori informazioni, allegare file o vedere gli aggiornamenti, puoi visitare l'indirizzo {{ ticket.ticket_url }}.\r\n\r\nAnalizzeremo la tua richiesta e cercheremo di risolverla quanto prima. Riceverai successivi aggiornamenti e la notifica di risoluzione a questo indirizzo email.", + "html": "

Salve,

\r\n\r\n

Questa email ti \u00e8 stata inviata per informarti che abbiamo ricevuto la tua richiesta di assistenza dal titolo {{ ticket.title }}.

\r\n\r\n

Non \u00e8 necessario fare altro al momento. Il tuo ticket \u00e8 identificato dal codice {{ ticket.ticket }} e verr\u00e0 esaminato al pi\u00f9 presto.

\r\n\r\n

Se vuoi aggiungere ulteriori dettagli o hai domande sul ticket, rispondi a questa email includendo l'id {{ ticket.ticket}} del ticket nell'oggetto. Il modo pi\u00f9 semplice per farlo \u00e8 premere il pulsante \"rispondi\" del tuo client di posta.

\r\n\r\n

Se vuoi vedere questo ticket online per aggiungere ulteriori informazioni, allegare file o vedere gli aggiornamenti, puoi visitare l'indirizzo {{ ticket.ticket_url }}.

\r\n\r\n

Analizzeremo la tua richiesta e cercheremo di risolverla quanto prima. Riceverai successivi aggiornamenti e la notifica di risoluzione a questo indirizzo email.

", + "heading": "Il Tuo Ticket \u00e8 Stato Aperto", + "subject": "(Aperto)" + } + }, + { + "pk": 75, + "model": "helpdesk.emailtemplate", + "fields": { + "locale": "it", + "template_name": "resolved_cc", + "plain_text": "Salve,\r\n\r\nIl seguente ticket \u00e8 stato risolto:\r\n\r\nID Ticket: {{ ticket.ticket }}\r\nCoda: {{ queue.title }}\r\nTitolo: {{ ticket.title }}\r\nAperto: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nInserito da: {{ ticket.submitter_email|default:\"Sconosciuto\" }}\r\nPriorit\u00e0: {{ ticket.get_priority_display }}\r\nStato: {{ ticket.get_status }}\r\nAssegnato a: {{ ticket.get_assigned_to }}\r\nVedi Online: {{ ticket.staff_url }} (richiede login)\r\n\r\nLa descrizione del ticket \u00e8:\r\n\r\n{{ ticket.description }}\r\n\r\nLa risoluzione fornita \u00e8:\r\n\r\n{{ ticket.resolution }}\r\n\r\nLa risoluzione \u00e8 stata inviata al proprietario del ticket, che dovr\u00e0 verificarla prima che il ticket possa essere chiuso.", + "html": "

Salve,

\r\n\r\n

Il seguente ticket \u00e8 stato risolto:

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nCoda: {{ queue.title }}
\r\nTitolo: {{ ticket.title }}
\r\nAperto: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nInserito da: {{ ticket.submitter_email|default:\"Sconosciuto\" }}
\r\nPriorit\u00e0: {{ ticket.get_priority_display }}
\r\nStato: {{ ticket.get_status }}
\r\nAssegnato a: {{ ticket.get_assigned_to }}
\r\nVedi Online per aggiornare questo ticket (richiede login)

\r\n\r\n

Per riferimento, la descrizione originale del ticket era:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

La risoluzione aggiunta era:

\r\n\r\n
{{ ticket.resolution }}
\r\n\r\n

La risoluzione \u00e8 stata inviata al proprietario del ticket, che dovr\u00e0 verificarla prima che il ticket possa essere chiuso.

", + "heading": "Ticket Risolto", + "subject": "(Risolto)" + } + }, + { + "pk": 76, + "model": "helpdesk.emailtemplate", + "fields": { + "locale": "it", + "template_name": "resolved_owner", + "plain_text": "Salve,\r\n\r\nun ticket a te assegnato \u00e8 stato risolto.\r\n\r\nID Ticket: {{ ticket.ticket }}\r\nCoda: {{ queue.title }}\r\nTitolo: {{ ticket.title }}\r\nAperto: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nInserito da: {{ ticket.submitter_email|default:\"Sconosciuto\" }}\r\nPriorit\u00e0: {{ ticket.get_priority_display }}\r\nStato: {{ ticket.get_status }}\r\nAssegnato a: {{ ticket.get_assigned_to }}\r\nVedi Online: {{ ticket.staff_url }} (richiede login)\r\n\r\nLa descrizione del ticket \u00e8:\r\n\r\n{{ ticket.description }}\r\n\r\nLa risoluzione fornita \u00e8:\r\n\r\n{{ ticket.resolution }}\r\n\r\nLa risoluzione \u00e8 stata inviata al proprietario del ticket, che dovr\u00e0 verificarla prima che il ticket possa essere chiuso.", + "html": "

Salve,

\r\n\r\n

Un ticket a te assegnato \u00e8 stato risolto.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nCoda: {{ queue.title }}
\r\nTitolo: {{ ticket.title }}
\r\nAperto: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nInserito da: {{ ticket.submitter_email|default:\"Sconosciuto\" }}
\r\nPriorit\u00e0: {{ ticket.get_priority_display }}
\r\nStato: {{ ticket.get_status }}
\r\nAssegnato a: {{ ticket.get_assigned_to }}
\r\nVedi Online per aggiornare questo ticket (richiede login)

\r\n\r\n

La descrizione del ticket \u00e8:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

La risoluzione fornita \u00e8:

\r\n\r\n
{{ ticket.resolution }}
\r\n\r\n

La risoluzione \u00e8 stata inviata al proprietario del ticket, che dovr\u00e0 verificarla prima che il ticket possa essere chiuso.

", + "heading": "Ticket Risolto", + "subject": "(Risolto)" + } + }, + { + "pk": 77, + "model": "helpdesk.emailtemplate", + "fields": { + "locale": "it", + "template_name": "resolved_submitter", + "plain_text": "Salve,\r\n\r\nHai recentemente inserito un ticket con titolo \"{{ ticket.title }}\". Questa email ti \u00e8 stata inviata per informarti della risoluzione del ticket.\r\n\r\nLa seguente risoluzione \u00e8 stata indicata per il ticket {{ ticket.ticket }}:\r\n\r\n{{ resolution }}\r\n\r\nPuoi per cortesia confermare che questa soluzione risolva i vostri problemi in modo tale da poter chiudere il ticket? Se hai ulteriori domande, o ritieni che la soluzione proposta non sia adeguata, rispondi a questa email mantenendo invariato l'oggetto.\r\n\r\nSe vuoi vedere il ticket online, puoi visitare l'indirizzo {{ ticket.ticket_url }}", + "html": "

Salve,

\r\n\r\n

Hai recentemente inserito un ticket con titolo {{ ticket.title }}. Questa email ti \u00e8 stata inviata per informarti della risoluzione del ticket.

\r\n\r\n

La seguente risoluzione \u00e8 stata indicata per il ticket {{ ticket.ticket }}:

\r\n\r\n
{{ resolution }}
\r\n\r\n

Puoi per cortesia confermare che questa soluzione risolva i vostri problemi in modo tale da poter chiudere il ticket? Se hai ulteriori domande, o ritieni che la soluzione proposta non sia adeguata, rispondi a questa email mantenendo invariato l'oggetto.

\r\n\r\n

Se vuoi vedere il ticket online, puoi visitare l'indirizzo {{ ticket.ticket_url }}.

", + "heading": "Il Tuo Ticket \u00e8 Stato Risolto", + "subject": "(Risolto)" + } + }, + { + "pk": 78, + "model": "helpdesk.emailtemplate", + "fields": { + "locale": "it", + "template_name": "updated_cc", + "plain_text": "Salve,\r\n\r\nQuesta email ti \u00e8 stata inviata per informarti che il ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") per {{ ticket.submitter_email }} \u00e8 stato aggiornato.\r\n\r\nID Ticket: {{ ticket.ticket }}\r\nCoda: {{ queue.title }}\r\nTitolo: {{ ticket.title }}\r\nAperto: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nInserito da: {{ ticket.submitter_email|default:\"Sconosciuto\" }}\r\nPriorit\u00e0: {{ ticket.get_priority_display }}\r\nStato: {{ ticket.get_status }}\r\nAssegnato a: {{ ticket.get_assigned_to }}\r\nVedi Online: {{ ticket.staff_url }} (richiede login)\r\n\r\nDescrizione originale:\r\n\r\n{{ ticket.description }}\r\n\r\nIl seguente commento \u00e8 stato aggiunto:\r\n\r\n{{ comment }}\r\n\r\nQuesta informazione{% if private %} non{% endif %} \u00e8 stata inviata al proprietario del ticket.\r\n\r\nSe vuoi vedere il ticket online, puoi visitare l'indirizzo {{ ticket.staff_url }}.", + "html": "

Salve,

\r\n\r\n

Questa email ti \u00e8 stata inviata per informarti che il ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") per {{ ticket.submitter_email }} \u00e8 stato aggiornato.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nCoda: {{ queue.title }}
\r\nTitolo: {{ ticket.title }}
\r\nAperto: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nInserito da: {{ ticket.submitter_email|default:\"Sconosciuto\" }}
\r\nPriorit\u00e0: {{ ticket.get_priority_display }}
\r\nStato: {{ ticket.get_status }}
\r\nAssegnato a: {{ ticket.get_assigned_to }}
\r\nVedi Online per aggiornare questo ticket (richiede login)

\r\n\r\n

Per riferimento, la descrizione originale era:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

Il seguente commento \u00e8 stato aggiunto:

\r\n\r\n
{{ comment }}
\r\n\r\n

Questa informazione{% if private %} non{% endif %} \u00e8 stata inviata al proprietario del ticket.

", + "heading": "Ticket Aggiornato", + "subject": "(Aggiornato)" + } + }, + { + "pk": 79, + "model": "helpdesk.emailtemplate", + "fields": { + "locale": "it", + "template_name": "updated_owner", + "plain_text": "Salve,\r\n\r\nTi \u00e8 stata inviata questa email per informarti che il ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") per {{ ticket.submitter_email }}, a te assegnato, \u00e8 stato aggiornato.\r\n\r\nID Ticket: {{ ticket.ticket }}\r\nCoda: {{ queue.title }}\r\nTitolo: {{ ticket.title }}\r\nAperto: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nInserito da: {{ ticket.submitter_email|default:\"Sconosciuto\" }}\r\nPriorit\u00e0: {{ ticket.get_priority_display }}\r\nStato: {{ ticket.get_status }}\r\nAssegnato a: {{ ticket.get_assigned_to }}\r\nVedi Online: {{ ticket.staff_url }} (richiede login)\r\n\r\nDescrizione originale:\r\n\r\n{{ ticket.description }}\r\n\r\nIl seguente commento \u00e8 stato aggiunto:\r\n\r\n{{ comment }}\r\n\r\nQuesta informazione{% if private %} non{% endif %} \u00e8 stata inviata al proprietario del ticket.\r\n\r\nSe vuoi vedere il ticket online, puoi visitare l'indirizzo {{ ticket.staff_url }}.", + "html": "

Salve,

\r\n\r\n

Ti \u00e8 stata inviata questa email per informarti che il ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") per {{ ticket.submitter_email }}, a te assegnato, \u00e8 stato aggiornato.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nCoda: {{ queue.title }}
\r\nTitolo: {{ ticket.title }}
\r\nAperto: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nInserito da: {{ ticket.submitter_email|default:\"Sconosciuto\" }}
\r\nPriorit\u00e0: {{ ticket.get_priority_display }}
\r\nStato: {{ ticket.get_status }}
\r\nAssegnato a: {{ ticket.get_assigned_to }}
\r\nVedi Online per aggiornare questo ticket (richiede login)

\r\n\r\n

Per riferimento, la descrizione originale del ticket era:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

Il seguente commento \u00e8 stato aggiunto:

\r\n\r\n
{{ comment }}
\r\n\r\n

Questa informazione{% if private %} non{% endif %} \u00e8 stata inviata al proprietario del ticket.

", + "heading": "Ticket Aggiornato", + "subject": "(Updated)" + } + }, + { + "pk": 80, + "model": "helpdesk.emailtemplate", + "fields": { + "locale": "it", + "template_name": "updated_submitter", + "plain_text": "Salve,\r\n\r\nHai recentemente inserito un ticket con titolo \"{{ ticket.title }}\". Questa email ti \u00e8 stata inviata per informarti di un aggiornamento alla tua richiesta.\r\n\r\nIl seguente commento \u00e8 stato aggiunto al ticket {{ ticket.ticket }}:\r\n\r\n{{ comment }}\r\n\r\nPer fornire informazioni aggiuntive, rispondi a questa email mantenendone l'oggetto invariato. In alternativa, \u00e8 possibile vedere ed aggiornare il ticket online visitando l'indirizzo {{ ticket.ticket_url }}\r\n", + "html": "

Salve,

\r\n\r\n

Hai recentemente inserito un ticket con titolo {{ ticket.title }}. Questa email ti \u00e8 stata inviata per informarti di un aggiornamento alla tua richiesta.

\r\n\r\n

Il seguente commento \u00e8 stato aggiunto al ticket {{ ticket.ticket }}:

\r\n\r\n
{{ comment }}
\r\n\r\n

Per fornire informazioni aggiuntive, rispondi a questa email mantenendone l'oggetto invariato. In alternativa, \u00e8 possibile vedere ed aggiornare il ticket online visitando l'indirizzo {{ ticket.ticket_url }}.

", + "heading": "Il Tuo Ticket \u00e8 Stato Aggiornato", + "subject": "(Aggiornato)" + } + }, + + + + { + "pk": 81, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "assigned_cc", + "html": "

Hola,

\r\n\r\n

Este e-mail es para informar que el Ticket {{ ticket.ticket }} ({{ ticket.title }}) por {{ ticket.submitter_email }} {% if ticket.assigned_to %} ha sido asignado a {{ ticket.assigned_to }}{% else %} no ha sido asignado{% endif %}.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nCola: {{ queue.title }}
\r\nTítulo: {{ ticket.title }}
\r\nCreado: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nRemitente: {{ ticket.submitter_email|default:\"Desconocido\" }}
\r\nPrioridad: {{ ticket.get_priority_display }}
\r\nEstado: {{ ticket.get_status }}
\r\nAsignado a: {{ ticket.get_assigned_to }}
\r\nVer online para actualizar este Ticket (login requerido)

\r\n\r\n

La descripción original es:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "Hola,\r\n\r\nEste e-mail es para informar que el Ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") por {{ ticket.submitter_email }}{% if ticket.assigned_to %} ha sido asignado a {{ ticket.assigned_to }}{% else %} no ha sido asignado{% endif %}.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nCola: {{ queue.title }}\r\nTítulo: {{ ticket.title }}\r\nCreado: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nRemitente: {{ ticket.submitter_email|default:\"Desconocido\" }}\r\nPrioridad: {{ ticket.get_priority_display }}\r\nEstado: {{ ticket.get_status }}\r\nAsignado a: {{ ticket.get_assigned_to }}\r\nVer online: {{ ticket.staff_url }}\r\n\r\nLa descripción original es:\r\n\r\n{{ ticket.description }}\r\n\r\n", + "heading": "Ticket asignado", + "subject": "(Asignado)", + "locale": "es" + } + }, + { + "pk": 82, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "assigned_owner", + "html": "

Hola,

\r\n\r\n

Este e-mail es para informar que el Ticket {{ ticket.ticket }} ({{ ticket.title }}) por {{ ticket.submitter_email }} ha sido asignado a usted.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nCola: {{ queue.title }}
\r\nTítulo: {{ ticket.title }}
\r\nCreado: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nRemitente: {{ ticket.submitter_email|default:\"Desconocido\" }}
\r\nPrioridad: {{ ticket.get_priority_display }}
\r\nEstado: {{ ticket.get_status }}
\r\nAsignado a: USTED
\r\nVer online para actualizar el Ticket (login requerido)

\r\n\r\n

La descripción original es:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "Hola,\r\n\r\nEste e-mail es para informar que el Ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") por {{ ticket.submitter_email }} ha sido asignado a usted.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nCola: {{ queue.title }}\r\nTítulo: {{ ticket.title }}\r\nCreado: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nRemitente: {{ ticket.submitter_email|default:\"Desconocido\" }}\r\nPrioridad: {{ ticket.get_priority_display }}\r\nEstado: {{ ticket.get_status }}\r\nAsignado: USTED\r\nVer online: {{ ticket.staff_url }}\r\n\r\nLa descripción original del ticket es:\r\n\r\n{{ ticket.description }}\r\n\r\n", + "heading": "Le asignaron un Ticket", + "subject": "(Asignado a ud)", + "locale": "es" + } + }, + { + "pk": 83, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "closed_cc", + "html": "

Hola,

\r\n\r\n

El Ticket {{ ticket.title }} ('{{ ticket.title }}'){% if ticket.assigned_to %}, asignado a {{ ticket.get_assigned_to }}{% endif %} ha sido cerrado.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nCola: {{ queue.title }}
\r\nTítulo: {{ ticket.title }}
\r\nCreado: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nRemitente: {{ ticket.submitter_email|default:\"Desconocido\" }}
\r\nPrioridad: {{ ticket.get_priority_display }}
\r\nEstado: {{ ticket.get_status }}
\r\nAsignado a: {{ ticket.get_assigned_to }}
\r\nVer online para actualizar este Ticket (login requerido)

\r\n\r\n

La descripción original es:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

La solución dada fue:

\r\n\r\n
{{ resolution }}
\r\n\r\n

Para ver este Ticket online, por favor visite {{ ticket.staff_url }}.

", + "plain_text": "Hola,\r\n\r\nEl Ticket {{ ticket.title }} (\"{{ ticket.title }}\"){% if ticket.assigned_to %}, asignado a {{ ticket.assigned_to }}{% endif %} ha sido cerrado.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nCola: {{ queue.title }}\r\nTítulo: {{ ticket.title }}\r\nCreado: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nRemitente: {{ ticket.submitter_email|default:\"Desconocido\" }}\r\nPrioridad: {{ ticket.get_priority_display }}\r\nEstado: {{ ticket.get_status }}\r\nAsignado a: {{ ticket.get_assigned_to }}\r\nVer online: {{ ticket.staff_url }} (login requerido)\r\n\r\nLa descripción original es:\r\n\r\n{{ ticket.description }}\r\n\r\nLa solución dada fue:\r\n\r\n{{ resolution }}\r\n\r\n", + "heading": "Ticket cerrado", + "subject": "(Cerrado)", + "locale": "es" + } + }, + { + "pk": 84, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "closed_owner", + "html": "

Hola,

\r\n\r\n

El siguiente Ticket asignado a usted ha sido cerrado.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nCola: {{ queue.title }}
\r\nTítulo: {{ ticket.title }}
\r\nCreado: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nRemitente: {{ ticket.submitter_email|default:\"Desconocido\" }}
\r\nPrioridad: {{ ticket.get_priority_display }}
\r\nEstado: {{ ticket.get_status }}
\r\nAsignado a: {{ ticket.get_assigned_to }}
\r\nVer online para actualizar este Ticket (login requerido)

\r\n\r\n

La descripción original es:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

La solución dada fue:

\r\n\r\n
{{ ticket.resolution }}
", + "plain_text": "Hola,\r\n\r\nEl siguiente Ticket asignado a usted ha sido cerrado.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nCola: {{ queue.title }}\r\nTítulo: {{ ticket.title }}\r\nCreado: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nRemitente: {{ ticket.submitter_email|default:\"Desconocido\" }}\r\nPrioridad: {{ ticket.get_priority_display }}\r\nEstado: {{ ticket.get_status }}\r\nAsignado a: {{ ticket.get_assigned_to }}\r\nVer online: {{ ticket.staff_url }} (login requerido)\r\n\r\nPara ver este Ticket online, por favor visite {{ ticket.staff_url }}.\r\n\r\n", + "heading": "Ticket cerrado", + "subject": "(Cerrado)", + "locale": "es" + } + }, + { + "pk": 85, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "closed_submitter", + "html": "

Hola,

\r\n\r\n

Recientemente usted envió el Ticket {{ ticket.title }}. Este e-mail es para confirmar que el Ticket ha sido cerrado.

\r\n\r\n

La solución dada es:

\r\n\r\n
{{ ticket.resolution }}
\r\n\r\n

Para ver este Ticket online, por favor visite {{ ticket.ticket_url }}. Si cree que se requiere trabajo adicional, por favor déjanoslo saber respondiendo a este correo dejando el asunto intacto.

", + "plain_text": "Hola,\r\n\r\nRecientemente usted envió el Ticket \"{{ ticket.title }}\". Este e-mail es para confirmar que el Ticket ha sido cerrado.\r\n\r\nSi cree que se requiere trabajo adicional, por favor déjanoslo saber respondiendo a este correo dejando el asunto intacto.\r\n\r\nPara ver este Ticket online, por favor visite {{ ticket.ticket_url }}.\r\n\r\nLa solución dada fue:\r\n\r\n{{ ticket.resolution }}\r\n\r\n", + "heading": "Ticket cerrado", + "subject": "(cerrado)", + "locale": "es" + } + }, + { + "pk": 86, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "escalated_cc", + "html": "

Hola,

\r\n\r\n

Este e-mail es para informar que el Ticket {{ ticket.ticket }} ('{{ ticket.title }}') ha sido escalado automáticamente.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nCola: {{ queue.title }}
\r\nTítulo: {{ ticket.title }}
\r\nCreado: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nRemitente: {{ ticket.submitter_email|default:\"Desconocido\" }}
\r\nPrioridad: {{ ticket.get_priority_display }}
\r\nEstado: {{ ticket.get_status }}
\r\nAsignado a: {{ ticket.get_assigned_to }}
\r\nVer online para actualizar este Ticket (login requerido)

\r\n\r\n

La descripción original es:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "Hola,\r\n\r\nEste e-mail es para informar que el Ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") ha sido escalado automáticamente.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nCola: {{ queue.title }}\r\nTítulo: {{ ticket.title }}\r\nCreado: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nRemitente: {{ ticket.submitter_email|default:\"Desconocido\" }}\r\nPrioridad: {{ ticket.get_priority_display }}\r\nEstado: {{ ticket.get_status }}\r\nAsignado a: {{ ticket.get_assigned_to }}\r\nVer online: {{ ticket.staff_url }} (login requerido)\r\n\r\nLa descripción original es:\r\n\r\n{{ ticket.description }}\r\n\r\n", + "heading": "Ticket escalado", + "subject": "(Escalado)", + "locale": "es" + } + }, + { + "pk": 88, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "escalated_owner", + "html": "

Hola,

\r\n\r\n

Un Ticket asignado a usted ha sido automaticamente escalado ya que ha estado abierto por mas tiempo del esperado.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nCola: {{ queue.title }}
\r\nTítulo: {{ ticket.title }}
\r\nCreado: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nRemitente: {{ ticket.submitter_email|default:\"Desconocido\" }}
\r\nPrioridad: {{ ticket.get_priority_display }}
\r\nEstado: {{ ticket.get_status }}
\r\nAsignado a: {{ ticket.get_assigned_to }}
\r\nVer online para actualizar este Ticket (login requerido)

\r\n\r\n

La descripción original es:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "Hola,\r\n\r\nUn Ticket asignado a usted ha sido automaticamente escalado ya que ha estado abierto por mas tiempo del esperado.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nCola: {{ queue.title }}\r\nTítulo: {{ ticket.title }}\r\nCreado: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nRemitente: {{ ticket.submitter_email|default:\"Desconocido\" }}\r\nPrioridad: {{ ticket.get_priority_display }}\r\nEstado: {{ ticket.get_status }}\r\nAsignado a: {{ ticket.get_assigned_to }}\r\nVer online: {{ ticket.staff_url }} (login requerido)\r\n\r\nLa descripción original es::\r\n\r\n{{ ticket.description }}\r\n\r\nPor favor revisar este Ticket e intentar dar una solución tan pronto como sea posible.\r\n\r\n", + "heading": "El Ticket asignado a usted ha sido escalado", + "subject": "(Escalado)", + "locale": "es" + } + }, + { + "pk": 87, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "escalated_submitter", + "html": "

Hola,

\r\n\r\n

Recientemente usted envió el Ticket {{ ticket.title }}. Este e-mail es para informarle que su Ticket ha sido escalado ya que ha estado abierto por mas tiempo del esperado.

\r\n\r\n

Se revisará su Ticket para darle una solución tan pronto como sea posible.

\r\n\r\n

Para ver este Ticket online, por favor visite {{ ticket.ticket_url }}.

", + "plain_text": "Hola,\r\n\r\nRecientemente usted envió el Ticket \"{{ ticket.title }}\". Este e-mail es para informarle que su Ticket ha sido escalado ya que ha estado abierto por mas tiempo del esperado.\r\n\r\nSe revisará su Ticket para darle una solución tan pronto como sea posible.\r\n\r\nPara ver este Ticket online, por favor visite {{ ticket.ticket_url }}.\r\n\r\n", + "heading": "Su Ticket ha sido escalado", + "subject": "(Escalado)", + "locale": "es" + } + }, + { + "pk": 89, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "newticket_cc", + "html": "

Hola,

\r\n\r\n

Este e-mail es para informar que un Ticket ha sido creado.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nCola: {{ queue.title }}
\r\nTítulo: {{ ticket.title }}
\r\nCreado: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nRemitente: {{ ticket.submitter_email|default:\"Desconocido\" }}
\r\nPrioridad: {{ ticket.get_priority_display }}
\r\nEstado: {{ ticket.get_status }}
\r\nVer online para actualizar este Ticket (login requerido)

\r\n\r\n

Descripción:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "Hola,\r\n\r\nEste e-mail es para informar que un Ticket ha sido creado.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nCola: {{ queue.title }}\r\nTítulo: {{ ticket.title }}\r\nCreado: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nRemitente: {{ ticket.submitter_email|default:\"Desconocido\" }}\r\nPrioridad: {{ ticket.get_priority_display }}\r\nEstado: {{ ticket.get_status }}\r\nVer online: {{ ticket.staff_url }} (login requerido)\r\n\r\nDescripción:\r\n{{ ticket.description }}\r\n\r\n", + "heading": "Nuevo Ticket creado", + "subject": "(Creado)", + "locale": "es" + } + }, + { + "pk": 90, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "newticket_submitter", + "html": "

Hola,

\r\n\r\n

Este e-mail es para informar que recibimos su consulta {{ ticket.title }}.

\r\n\r\n

Usted no debe realizar nada en este momento. Su Ticket está identificado con el número {{ ticket.ticket }} y será respondido prontamente.

\r\n\r\n

Si desea enviar detalles adicionales, o si tiene cualquier consulta con respecto a este Ticket por favor incluya el Ticket ID {{ ticket.ticket }} en el asunto. La manera mas fácil de hacerlo es presionando el botón de \"respuesta\" a este mensaje.

\r\n\r\n

Para ver este Ticket online y proveer información adicional, añadir archivos adjuntos o ver actualizaciones recientes, por favor visite {{ ticket.ticket_url }}.

\r\n\r\n

Nosotros trabajaremos en su consulta y la resolveremos tan pronto como sea posible. Usted recibirá actualizaciones y la solución a su consulta a través de este e-mail.

", + "plain_text": "Hola,\r\n\r\nEste e-mail es para informar que recibimos su consulta \"{{ ticket.title }}\". \r\n\r\nUsted no debe realizar nada en este momento. Su Ticket está identificado con el número {{ ticket.ticket }} y será respondido prontamente.\r\n\r\nSi desea enviar detalles adicionales, o si tiene cualquier consulta con respecto a este Ticket por favor incluya el Ticket ID '{{ ticket.ticket }}' en el asunto. La manera mas fácil de hacerlo es presionando el botón de \"respuesta\" a este mensaje.\r\n\r\nPara ver este Ticket online y proveer información adicional, añadir archivos adjuntos o ver actualizaciones recientes, por favor visite {{ ticket.ticket_url }}.\r\n\r\nNosotros trabajaremos en su consulta y la resolveremos tan pronto como sea posible. Usted recibirá actualizaciones y la solución a su consulta a través de este e-mail.\r\n", + "heading": "Su Ticket ha sido creado", + "subject": "(Creado)", + "locale": "es" + } + }, + { + "pk": 91, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "resolved_cc", + "html": "

Hola,

\r\n\r\n

El siguiente Ticket ha sido resuelto.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nCola: {{ queue.title }}
\r\nTítulo: {{ ticket.title }}
\r\nCreado: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nRemitente: {{ ticket.submitter_email|default:\"Desconocido\" }}
\r\nPrioridad: {{ ticket.get_priority_display }}
\r\nEstado: {{ ticket.get_status }}
\r\nAsignado a: {{ ticket.get_assigned_to }}
\r\nVer online para actualizar este Ticket (login requerido)

\r\n\r\n

La descripción original es:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

La solución dada fue:

\r\n\r\n
{{ ticket.resolution }}
\r\n\r\n

Esta solucion ha sido enviada al remitente, quien realizará la verificación antes de que pueda cerrar el Ticket.

", + "plain_text": "Hola,\r\n\r\nEl siguiente Ticket ha sido resuelto:\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nCola: {{ queue.title }}\r\nTítulo: {{ ticket.title }}\r\nCreado: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nRemitente: {{ ticket.submitter_email|default:\"Desconocido\" }}\r\nPrioridad: {{ ticket.get_priority_display }}\r\nEstado: {{ ticket.get_status }}\r\nAsignado a: {{ ticket.get_assigned_to }}\r\nVer online: {{ ticket.staff_url }} (login requerido)\r\n\r\nLa descripción original es:\r\n\r\n{{ ticket.description }}\r\n\r\nLa solución dada fue:\r\n\r\n{{ ticket.resolution }}\r\n\r\nEsta solucion ha sido enviada al remitente, quien realizará la verificación antes de que pueda cerrar el Ticket.\r\n\r\n", + "heading": "Ticket resuelto", + "subject": "(Resuelto)", + "locale": "es" + } + }, + { + "pk": 92, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "resolved_owner", + "html": "

Hola,

\r\n\r\n

Un ticket asignado a usted ha sido resuelto.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nCola: {{ queue.title }}
\r\nTítulo: {{ ticket.title }}
\r\nCreado: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nRemitente: {{ ticket.submitter_email|default:\"Desconocido\" }}
\r\nPrioridad: {{ ticket.get_priority_display }}
\r\nEstado: {{ ticket.get_status }}
\r\nAsignado a: {{ ticket.get_assigned_to }}
\r\nVer online para actualizar este Ticket (login requerido)

\r\n\r\n

La descripción original es:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

La solución dada fue:

\r\n\r\n
{{ ticket.resolution }}
\r\n\r\n

Esta solucion ha sido enviada al remitente, quien realizará la verificación antes de que pueda cerrar el Ticket.

", + "plain_text": "Hola,\r\n\r\nUn ticket asignado a usted ha sido resuelto.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nCola: {{ queue.title }}\r\nTítulo: {{ ticket.title }}\r\nCreado: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nRemitente: {{ ticket.submitter_email|default:\"Desconocido\" }}\r\nPrioridad: {{ ticket.get_priority_display }}\r\nEstado: {{ ticket.get_status }}\r\nAsignado a: {{ ticket.get_assigned_to }}\r\nVer online: {{ ticket.staff_url }} (login requerido)\r\n\r\nLa descripción original es:\r\n\r\n{{ ticket.description }}\r\n\r\nLa solución dada fue:\r\n\r\n{{ ticket.resolution }}\r\n\r\nEsta solución ha sido enviada al remitente, quien realizará la verificación antes de que pueda cerrar el Ticket.\r\n\r\n", + "heading": "Ticket resuelto", + "subject": "(Resuelto)", + "locale": "es" + } + }, + { + "pk": 93, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "resolved_submitter", + "html": "

Hola,

\r\n\r\n

Recientemente usted envió el Ticket {{ ticket.title }}. Este e-mail es para informar que su Ticket ha sido resuelto.

\r\n\r\n

La siguiente solución fue dada a su Ticket {{ ticket.ticket }}:

\r\n\r\n
{{ resolution }}
\r\n\r\n

¿Puede confirmar que esta solución cumple con lo que necesita para cerrar este Ticket? Si tiene otras consultas, o cree que esta solución no es la adecuada, por favor responda este mensaje manteniendo el asunto intacto.

\r\n\r\n

Si desea ver este Ticket online, por favor visite {{ ticket.ticket_url }}.

", + "plain_text": "Hola,\r\n\r\nRecientemente usted envió el Ticket \"{{ ticket.title }}\". Este e-mail es para informar que su Ticket ha sido resuelto.\r\n\r\nLa siguiente solución fue dada a su Ticket {{ ticket.ticket }}:\r\n\r\n{{ resolution }}\r\n\r\n¿Puede confirmar que esta solución cumple con lo que necesita para cerrar este Ticket? Si tiene otras consultas, o cree que esta solución no es la adecuada, por favor responda este mensaje manteniendo el asunto intacto.\r\n\r\nSi desea ver este Ticket online, por favor visite {{ ticket.ticket_url }}\r\n\r\n", + "heading": "Su Ticket ha sido resuelto", + "subject": "(Resuelto)", + "locale": "es" + } + }, + { + "pk": 94, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "updated_cc", + "html": "

Hola,

\r\n\r\n

Este e-mail es para informar que el Ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") por {{ ticket.submitter_email }} ha sido actualizado.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nCola: {{ queue.title }}
\r\nTítulo: {{ ticket.title }}
\r\nCreado: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nRemitente: {{ ticket.submitter_email|default:\"Desconocido\" }}
\r\nPrioridad: {{ ticket.get_priority_display }}
\r\nEstado: {{ ticket.get_status }}
\r\nAsignado a: {{ ticket.get_assigned_to }}
\r\nVer online para actualizar este Ticket (login requerido)

\r\n\r\n

La descripción original es:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

Se agregó el siguiente comentario:

\r\n\r\n
{{ comment }}
\r\n\r\n

Esta información {% if private %}no {% endif %} fue enviada al remitente.

", + "plain_text": "Hola,\r\n\r\nEste e-mail es para informar que el Ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") por {{ ticket.submitter_email }} ha sido actualizado.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nCola: {{ queue.title }}\r\nTítulo: {{ ticket.title }}\r\nCreado: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nRemitente: {{ ticket.submitter_email|default:\"Desconocido\" }}\r\nPrioridad: {{ ticket.get_priority_display }}\r\nEstado: {{ ticket.get_status }}\r\nAsignado a: {{ ticket.get_assigned_to }}\r\nVer online: {{ ticket.staff_url }} (login requerido)\r\n\r\nDescripción:\r\n\r\n{{ ticket.description }}\r\n\r\nSe agregó el siguiente comentario:\r\n\r\n{{ comment }}\r\n\r\nEsta información {% if private %}no {% endif %} fue enviada al remitente.\r\n\r\nSi desea ver este Ticket online, por favor visite {{ ticket.staff_url }}.\r\n\r\n", + "heading": "Ticket actualizado", + "subject": "(Actualizado)", + "locale": "es" + } + }, + { + "pk": 95, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "updated_owner", + "html": "

Hola,

\r\n\r\n

Este e-mail es para informar que el Ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") por {{ ticket.submitter_email }}, que le fue asignado, ha sido actualizado.

\r\n\r\n

\r\nTicket ID: {{ ticket.ticket }}
\r\nCola: {{ queue.title }}
\r\nTítulo: {{ ticket.title }}
\r\nCreado: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\nRemitente: {{ ticket.submitter_email|default:\"Desconocido\" }}
\r\nPrioridad: {{ ticket.get_priority_display }}
\r\nEstado: {{ ticket.get_status }}
\r\nAsignado a: {{ ticket.get_assigned_to }}
\r\nVer online para actualizar este Ticket (login requerido)

\r\n\r\n

La descripción original es:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

Se agregó el siguiente comentario:

\r\n\r\n
{{ comment }}
\r\n\r\n

Esta información {% if private %}no {% endif %} fue enviada al remitente.

", + "plain_text": "Hola,\r\n\r\nEste e-mail es para informar que el Ticket {{ ticket.ticket }} (\"{{ ticket.title }}\") por {{ ticket.submitter_email }}, que le fue asignado, ha sido actualizado.\r\n\r\nTicket ID: {{ ticket.ticket }}\r\nCola: {{ queue.title }}\r\nTítulo: {{ ticket.title }}\r\nCreado: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\nRemitente: {{ ticket.submitter_email|default:\"Desconocido\" }}\r\nPrioridad: {{ ticket.get_priority_display }}\r\nEstado: {{ ticket.get_status }}\r\nAsignado a: {{ ticket.get_assigned_to }}\r\nVer online: {{ ticket.staff_url }} (login requerido)\r\n\r\nDescripción original:\r\n\r\n{{ ticket.description }}\r\n\r\nSe agregó el siguiente comentario:\r\n\r\n{{ comment }}\r\n\r\nEsta información {% if private %}no {% endif %} fue enviada al remitente.\r\n\r\nSi desea ver este Ticket online, por favor visite {{ ticket.staff_url }}\r\n\r\n", + "heading": "Ticket actualizado", + "subject": "(Actualizado)", + "locale": "es" + } + }, + { + "pk": 96, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "updated_submitter", + "html": "

Hola,

\r\n\r\n

Recientemente usted envió el Ticket {{ ticket.title }}. Este correo es para informar que su Ticket ha sido actualizado.

\r\n\r\n

Se agregó el siguiente comentario al Ticket {{ ticket.ticket }}:

\r\n\r\n
{{ comment }}
\r\n\r\n

Si necesita agregar información adicional por favor responda a este mensaje manteniendo el asunto intacto. Por otro lado, usted puede ver y actualizar la información de este Ticket visitando {{ ticket.ticket_url }}.

", + "plain_text": "Hola,\r\n\r\nRecientemente usted envió el Ticket \"{{ ticket.title }}\". Este correo es para informar que su Ticket ha sido actualizado.\r\n\r\nSe agregó el siguiente comentario al Ticket {{ ticket.ticket }}:\r\n\r\n{{ comment }}\r\n\r\nSi necesita agregar información adicional por favor responda a este mensaje manteniendo el asunto intacto. Por otro lado, usted puede ver y actualizar la información de este Ticket visitando {{ ticket.ticket_url }}\r\n\r\n", + "heading": "Su Ticket ha sido actualizado", + "subject": "(Actualizado)", + "locale": "es" + } + }, + { + "pk": 97, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "assigned_cc", + "html": "

您好,

\r\n\r\n

温馨提示, {{ ticket.submitter_email }}的工单 {{ ticket.ticket }} ({{ ticket.title }}) {% if ticket.assigned_to %}已经分配给 {{ ticket.assigned_to }}{% else %}还未分配{% endif %}.

\r\n\r\n

\r\n工单 ID: {{ ticket.ticket }}
\r\n待办: {{ queue.title }}
\r\n标题: {{ ticket.title }}
\r\n已打开: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\n提交人: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\n优先级: {{ ticket.get_priority_display }}
\r\n状态: {{ ticket.get_status }}
\r\n已分配给: {{ ticket.get_assigned_to }}
\r\n在线查看 更新此工单 (需要登录)

\r\n\r\n

原工单描述参考::

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "您好,\r\n\r\n温馨提示, {{ ticket.submitter_email }}提交的工单 {{ ticket.ticket }} (\"{{ ticket.title }}\") 已经 {% if ticket.assigned_to %}分配给 {{ ticket.assigned_to }}{% else %}未分配{% endif %}.\r\n\r\n工单 ID: {{ ticket.ticket }}\r\n待办: {{ queue.title }}\r\n标题: {{ ticket.title }}\r\n已打开: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\n提交人: {{ ticket.submitter_email|default:\"Unknown\" }}\r\n优先级:{{ ticket.get_priority_display }}\r\n状态: {{ ticket.get_status }}\r\n已分配给: {{ ticket.get_assigned_to }}\r\n在线查看: {{ ticket.staff_url }}\r\n\r\n原始描述为:\r\n\r\n{{ ticket.description }}\r\n\r\n", + "heading": "工单已分配", + "subject": "(已分配)", + "locale": "zh" + } + }, + { + "pk": 98, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "assigned_owner", + "html": "

您好,

\r\n\r\n

温馨提示, 提交者{{ ticket.submitter_email }}的工单 {{ ticket.ticket }} ({{ ticket.title }}) 已经分配给 you.

\r\n\r\n

\r\n工单 ID: {{ ticket.ticket }}
\r\n待办: {{ queue.title }}
\r\n标题: {{ ticket.title }}
\r\n已打开: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\n提交人: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\n优先级: {{ ticket.get_priority_display }}
\r\n状态: {{ ticket.get_status }}
\r\n已分配给: YOU
\r\n在线查看 更新此工单 (需要登录)

\r\n\r\n

原工单描述参考::

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "您好,\r\n\r\n温馨提示, 工单 提交者{{ ticket.submitter_email }}的工单{{ ticket.ticket }} 已经 分配给 you.\r\n\r\n工单 ID: {{ ticket.ticket }}\r\n待办: {{ queue.title }}\r\n标题: {{ ticket.title }}\r\n已打开: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\n提交人: {{ ticket.submitter_email|default:\"Unknown\" }}\r\n优先级:{{ ticket.get_priority_display }}\r\n状态: {{ ticket.get_status }}\r\n已分配给: YOU\r\n在线查看: {{ ticket.staff_url }}\r\n\r\n原始描述为:\r\n\r\n{{ ticket.description }}\r\n\r\n", + "heading": "工单已分配给您", + "subject": "(已分配给您)", + "locale": "zh" + } + }, + { + "pk": 99, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "closed_cc", + "html": "

您好,

\r\n\r\n

工单 {{ ticket.title }} ('{{ ticket.title }}'){% if ticket.assigned_to %}, 分配给 {{ ticket.get_assigned_to }}{% endif %} 已经 关闭

\r\n\r\n

\r\n工单 ID: {{ ticket.ticket }}
\r\n待办: {{ queue.title }}
\r\n标题: {{ ticket.title }}
\r\n已打开: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\n提交人: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\n优先级: {{ ticket.get_priority_display }}
\r\n状态: {{ ticket.get_status }}
\r\n已分配给: {{ ticket.get_assigned_to }}
\r\n在线查看 更新此工单 (需要登录)

\r\n\r\n

原工单描述参考::

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

提供的解决方案为:

\r\n\r\n
{{ resolution }}
\r\n\r\n

如果您想在线查看, 可以访问 {{ ticket.staff_url }}.

", + "plain_text": "您好,\r\n\r\n工单 {{ ticket.title }} (\"{{ ticket.title }}\"){% if ticket.assigned_to %}, 分配给 {{ ticket.assigned_to }}{% endif %} 已经 关闭\r\n\r\n工单 ID: {{ ticket.ticket }}\r\n待办: {{ queue.title }}\r\n标题: {{ ticket.title }}\r\n已打开: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\n提交人: {{ ticket.submitter_email|default:\"Unknown\" }}\r\n优先级:{{ ticket.get_priority_display }}\r\n状态: {{ ticket.get_status }}\r\n已分配给: {{ ticket.get_assigned_to }}\r\n在线查看: {{ ticket.staff_url }} (需要登录)\r\n\r\n原始描述为:\r\n\r\n{{ ticket.description }}\r\n\r\n提供的解决方案为:\r\n\r\n{{ resolution }}\r\n\r\n", + "heading": "工单已关闭", + "subject": "(已关闭)", + "locale": "zh" + } + }, + { + "pk": 100, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "closed_owner", + "html": "

您好,

\r\n\r\n

以下分配给您的工单, 已经关闭

\r\n\r\n

\r\n工单 ID: {{ ticket.ticket }}
\r\n待办: {{ queue.title }}
\r\n标题: {{ ticket.title }}
\r\n已打开: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\n提交人: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\n优先级: {{ ticket.get_priority_display }}
\r\n状态: {{ ticket.get_status }}
\r\n已分配给: {{ ticket.get_assigned_to }}
\r\n在线查看 更新此工单 (需要登录)

\r\n\r\n

原工单描述参考::

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

提供的解决方案为:

\r\n\r\n
{{ ticket.resolution }}
", + "plain_text": "您好,\r\n\r\n以下分配给您的工单, 已经关闭\r\n\r\n工单 ID: {{ ticket.ticket }}\r\n待办: {{ queue.title }}\r\n标题: {{ ticket.title }}\r\n已打开: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\n提交人: {{ ticket.submitter_email|default:\"Unknown\" }}\r\n优先级:{{ ticket.get_priority_display }}\r\n状态: {{ ticket.get_status }}\r\n已分配给: {{ ticket.get_assigned_to }}\r\n在线查看: {{ ticket.staff_url }} (需要登录)\r\n\r\n如果您想在线查看, 可以访问 {{ ticket.staff_url }}.\r\n\r\n", + "heading": "工单已关闭", + "subject": "(已关闭)", + "locale": "zh" + } + }, + { + "pk": 101, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "closed_submitter", + "html": "

您好,

\r\n\r\n

您最近记录了主题为{{ ticket.title }}的工单. 本邮件确认工单已经 关闭

\r\n\r\n

已提供的方案为:

\r\n\r\n
{{ ticket.resolution }}
\r\n\r\n

如果您想在线查看, 可以访问 {{ ticket.ticket_url }}. 如果您认为还需要后续工作, 请用原标题回复此邮件.

", + "plain_text": "您好,\r\n\r\n您最近记录了主题为\"{{ ticket.title }}\"的工单. 本邮件确认工单已经 关闭\r\n\r\nI如果您认为还需要后续工作, 请用原标题回复此邮件.\r\n\r\n如果您想在线查看, 可以访问 {{ ticket.ticket_url }}.\r\n\r\n提供的解决方案为:\r\n\r\n{{ ticket.resolution }}\r\n\r\n", + "heading": "工单已关闭", + "subject": "(已关闭)", + "locale": "zh" + } + }, + { + "pk": 102, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "escalated_cc", + "html": "

您好,

\r\n\r\n

温馨提示, 工单 {{ ticket.ticket }} ('{{ ticket.title }}') 已经 自动提升优先级.

\r\n\r\n

\r\n工单 ID: {{ ticket.ticket }}
\r\n待办: {{ queue.title }}
\r\n标题: {{ ticket.title }}
\r\n已打开: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\n提交人: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\n优先级: {{ ticket.get_priority_display }}
\r\n状态: {{ ticket.get_status }}
\r\n已分配给: {{ ticket.get_assigned_to }}
\r\n在线查看 更新此工单 (需要登录)

\r\n\r\n

原工单描述参考::

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "您好,\r\n\r\n温馨提示, 工单 {{ ticket.ticket }} (\"{{ ticket.title }}\") 已经自动提升优先级.\r\n\r\n工单 ID: {{ ticket.ticket }}\r\n待办: {{ queue.title }}\r\n标题: {{ ticket.title }}\r\n已打开: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\n提交人: {{ ticket.submitter_email|default:\"Unknown\" }}\r\n优先级:{{ ticket.get_priority_display }}\r\n状态: {{ ticket.get_status }}\r\n已分配给: {{ ticket.get_assigned_to }}\r\n在线查看: {{ ticket.staff_url }} (需要登录)\r\n\r\n原始描述为:\r\n\r\n{{ ticket.description }}\r\n\r\n", + "heading": "工单 已经提升优先级", + "subject": "(已经提升优先级)", + "locale": "zh" + } + }, + { + "pk": 103, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "escalated_owner", + "html": "

您好,

\r\n\r\n

A 当前分配给您的工单已经自动提升优先级 as it 已经 打开时间超过预期.

\r\n\r\n

\r\n工单 ID: {{ ticket.ticket }}
\r\n待办: {{ queue.title }}
\r\n标题: {{ ticket.title }}
\r\n已打开: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\n提交人: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\n优先级: {{ ticket.get_priority_display }}
\r\n状态: {{ ticket.get_status }}
\r\n已分配给: {{ ticket.get_assigned_to }}
\r\n在线查看 更新此工单 (需要登录)

\r\n\r\n

原工单描述参考::

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "您好,\r\n\r\nA 分配给您的当前工单已经自动提升优先级, 因为打开时间已经超过预期.\r\n\r\n工单 ID: {{ ticket.ticket }}\r\n待办: {{ queue.title }}\r\n标题: {{ ticket.title }}\r\n已打开: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\n提交人: {{ ticket.submitter_email|default:\"Unknown\" }}\r\n优先级:{{ ticket.get_priority_display }}\r\n状态: {{ ticket.get_status }}\r\n已分配给: {{ ticket.get_assigned_to }}\r\n在线查看: {{ ticket.staff_url }} (需要登录)\r\n\r\n原始描述为:\r\n\r\n{{ ticket.description }}\r\n\r\n请查看此工单并尽快提供解决方案.\r\n\r\n", + "heading": "工单 已分配给 您 已经提升优先级", + "subject": "(已经提升优先级)", + "locale": "zh" + } + }, + { + "pk": 104, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "escalated_submitter", + "html": "

您好,

\r\n\r\n

您最近记录了主题为{{ ticket.title }}的工单. 本邮件是想提醒您工单自动升级, 因为已经 打开时间超过预期.

\r\n\r\n

我们将尽快查看并提供解决方案.

\r\n\r\n

如果您想在线查看, 可以访问 {{ ticket.ticket_url }}.

", + "plain_text": "您好,\r\n\r\n您最近为我们记录了一个标题为 \"{{ ticket.title }}\" 的工单. 本邮件是想提醒您工单自动升级, 因为已经打开时间超过预期.\r\n\r\n我们将尽快查看并提供解决方案.\r\n\r\n如果您想在线查看, 可以访问 {{ ticket.ticket_url }}.\r\n\r\n", + "heading": "您的 工单 已经 已经提升优先级", + "subject": "(已经提升优先级)", + "locale": "zh" + } + }, + { + "pk": 105, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "newticket_cc", + "html": "

您好,

\r\n\r\n

温馨提示: 新工单已经打开.

\r\n\r\n

\r\n工单 ID: {{ ticket.ticket }}
\r\n待办: {{ queue.title }}
\r\n标题: {{ ticket.title }}
\r\n已打开: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\n提交人: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\n优先级: {{ ticket.get_priority_display }}
\r\n状态: {{ ticket.get_status }}
\r\n在线查看 更新此工单 (需要登录)

\r\n\r\n

Description:

\r\n\r\n
{{ ticket.description|linebreaksbr }}
", + "plain_text": "您好,\r\n\r\n温馨提示: 新工单已经 打开.\r\n\r\n工单 ID: {{ ticket.ticket }}\r\n待办: {{ queue.title }}\r\n标题: {{ ticket.title }}\r\n已打开: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\n提交人: {{ ticket.submitter_email|default:\"Unknown\" }}\r\n优先级:{{ ticket.get_priority_display }}\r\n状态: {{ ticket.get_status }}\r\n在线查看: {{ ticket.staff_url }} (需要登录)\r\n\r\nDescription:\r\n{{ ticket.description }}\r\n\r\n", + "heading": "新工单已打开", + "subject": "(已打开)", + "locale": "zh" + } + }, + { + "pk": 106, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "newticket_submitter", + "html": "

您好,

\r\n\r\n

温馨提示: 我们已收到您主题为 {{ ticket.title }}.

\r\n\r\n

您当前什么都不用做. 您的工单 已经 分配编号 {{ ticket.ticket }} 且将很快收到回复.

\r\n\r\n

如果您想告诉我们更多详情, 或者要查询此工单, 请在主题带上工单id {{ ticket.ticket }} . 最简单就是直接点这个消息的 \"回复\" 按钮.

\r\n\r\n

如果您希望在线查看并提供此工单的更多信息, 附加文件或者查看最近更新, 您可以访问 {{ ticket.ticket_url }}.

\r\n\r\n

我们将调查您的问题并尽快解决. 您将通过此邮箱收到后续更新和解决方案.

", + "plain_text": "您好,\r\n\r\n温馨提示: 我们已经收到您主题为 \"{{ ticket.title }}\" 的查询. \r\n\r\n您当前什么都不用做. 您的工单已经分配编号 {{ ticket.ticket }} 且将很快收到回复.\r\n\r\n如果您想告诉我们更多详情, 或者要查询此工单, 请在主题带上工单id '{{ ticket.ticket }}' . 最简单方式就是按下此消息 \"回复\" .\r\n\r\n如果您希望在线查看并提供此工单的更多信息, 附加文件或者查看最近更新, 您可以访问 {{ ticket.ticket_url }}.\r\n\r\n我们将调查您的问题并尽快解决. 您将通过此邮箱收到后续更新和解决方案.\r\n", + "heading": "您的工单已经打开", + "subject": "(已打开)", + "locale": "zh" + } + }, + { + "pk": 107, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "resolved_cc", + "html": "

您好,

\r\n\r\n

以下工单 已经 解决.

\r\n\r\n

\r\n工单 ID: {{ ticket.ticket }}
\r\n待办: {{ queue.title }}
\r\n标题: {{ ticket.title }}
\r\n已打开: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\n提交人: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\n优先级: {{ ticket.get_priority_display }}
\r\n状态: {{ ticket.get_status }}
\r\n已分配给: {{ ticket.get_assigned_to }}
\r\n在线查看 更新此工单 (需要登录)

\r\n\r\n

原工单描述参考::

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

增加的解决方案为:

\r\n\r\n
{{ ticket.resolution }}
\r\n\r\n

此方案已经 邮件发送给提交者, 在您关闭之前需要他先确认.

", + "plain_text": "您好,\r\n\r\n以下工单 已经 解决:\r\n\r\n工单 ID: {{ ticket.ticket }}\r\n待办: {{ queue.title }}\r\n标题: {{ ticket.title }}\r\n已打开: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\n提交人: {{ ticket.submitter_email|default:\"Unknown\" }}\r\n优先级:{{ ticket.get_priority_display }}\r\n状态: {{ ticket.get_status }}\r\n已分配给: {{ ticket.get_assigned_to }}\r\n在线查看: {{ ticket.staff_url }} (需要登录)\r\n\r\n原始描述为:\r\n\r\n{{ ticket.description }}\r\n\r\n提供的解决方案为:\r\n\r\n{{ ticket.resolution }}\r\n\r\n此方案已经 邮件发送给提交者, 在您关闭之前需要他先确认.\r\n\r\n", + "heading": "工单 解决", + "subject": "(解决)", + "locale": "zh" + } + }, + { + "pk": 108, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "resolved_owner", + "html": "

您好,

\r\n\r\n

A 当前分配给您的工单已经 解决.

\r\n\r\n

\r\n工单 ID: {{ ticket.ticket }}
\r\n待办: {{ queue.title }}
\r\n标题: {{ ticket.title }}
\r\n已打开: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\n提交人: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\n优先级: {{ ticket.get_priority_display }}
\r\n状态: {{ ticket.get_status }}
\r\n已分配给: {{ ticket.get_assigned_to }}
\r\n在线查看 更新此工单 (需要登录)

\r\n\r\n

原工单描述参考::

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

增加的解决方案为:

\r\n\r\n
{{ ticket.resolution }}
\r\n\r\n

此方案已经 邮件发送给提交者, 在您关闭之前需要他先确认.

", + "plain_text": "您好,\r\n\r\nA 当前分配给您的工单已经 解决.\r\n\r\n工单 ID: {{ ticket.ticket }}\r\n待办: {{ queue.title }}\r\n标题: {{ ticket.title }}\r\n已打开: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\n提交人: {{ ticket.submitter_email|default:\"Unknown\" }}\r\n优先级:{{ ticket.get_priority_display }}\r\n状态: {{ ticket.get_status }}\r\n已分配给: {{ ticket.get_assigned_to }}\r\n在线查看: {{ ticket.staff_url }} (需要登录)\r\n\r\n原始描述为:\r\n\r\n{{ ticket.description }}\r\n\r\n提供的方案为:\r\n\r\n{{ ticket.resolution }}\r\n\r\n此方案已经 邮件发送给提交者, 在您关闭之前需要他先确认.\r\n\r\n", + "heading": "工单 解决", + "subject": "(解决)", + "locale": "zh" + } + }, + { + "pk": 109, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "resolved_submitter", + "html": "

您好,

\r\n\r\n

您最近记录了主题为{{ ticket.title }}的工单. 此邮件是要告知您解决方案.

\r\n\r\n

工单添加了以下解决方案 {{ ticket.ticket }}:

\r\n\r\n
{{ resolution }}
\r\n\r\n

请您确认下此解决方案是否解决了您的问题, 这样我们可以关闭此工单? 如果有更多问题或者认为方案不够充分,, 请继续使用邮件的主题回复此邮件.

\r\n\r\n

如果您想在线查看, 可以访问 {{ ticket.ticket_url }}.

", + "plain_text": "您好,\r\n\r\n您最近记录了主题为\"{{ ticket.title }}\"的工单. 此邮件是要告知您解决方案.\r\n\r\n工单添加了以下解决方案 {{ ticket.ticket }}:\r\n\r\n{{ resolution }}\r\n\r\n请您确认下此解决方案是否解决了您的问题, 这样我们可以关闭此工单? 如果有更多问题或者认为方案不够充分,, 请继续使用邮件的主题回复此邮件.\r\n\r\n如果您想在线查看, 可以访问 {{ ticket.ticket_url }}\r\n\r\n", + "heading": "您的 工单 已经 解决", + "subject": "(解决)", + "locale": "zh" + } + }, + { + "pk": 110, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "updated_cc", + "html": "

您好,

\r\n\r\n

温馨提示, {{ ticket.submitter_email }} 的工单 {{ ticket.ticket }} (\"{{ ticket.title }}\") 已经更新.

\r\n\r\n

\r\n工单 ID: {{ ticket.ticket }}
\r\n待办: {{ queue.title }}
\r\n标题: {{ ticket.title }}
\r\n已打开: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\n提交人: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\n优先级: {{ ticket.get_priority_display }}
\r\n状态: {{ ticket.get_status }}
\r\n已分配给: {{ ticket.get_assigned_to }}
\r\n在线查看 更新此工单 (需要登录)

\r\n\r\n

原工单描述参考::

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

已添加以下评论:

\r\n\r\n
{{ comment }}
\r\n\r\n

本信息 {% if private %} 还没有 {% else %} 已经 {% endif %} 邮件发送给提交者.

", + "plain_text": "您好,\r\n\r\n温馨提示, 提交者{{ ticket.submitter_email }}的工单{{ ticket.ticket }} 已经更新.\r\n\r\n工单 ID: {{ ticket.ticket }}\r\n待办: {{ queue.title }}\r\n标题: {{ ticket.title }}\r\n已打开: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\n提交人: {{ ticket.submitter_email|default:\"Unknown\" }}\r\n优先级:{{ ticket.get_priority_display }}\r\n状态: {{ ticket.get_status }}\r\n已分配给: {{ ticket.get_assigned_to }}\r\n在线查看: {{ ticket.staff_url }} (需要登录)\r\n\r\n原始描述:\r\n\r\n{{ ticket.description }}\r\n\r\n已添加以下评论:\r\n\r\n{{ comment }}\r\n\r\n本信息 {% if private %}还没有{% else %} 已经 {% endif %} 邮件发送给提交者.\r\n\r\n如果您想在线查看, 可以访问 {{ ticket.staff_url }}.\r\n\r\n", + "heading": "工单已更新", + "subject": "(已更新)", + "locale": "zh" + } + }, + { + "pk": 111, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "updated_owner", + "html": "

您好,

\r\n\r\n

温馨提示, 分配给您,提交者{{ ticket.submitter_email }}的工单{{ ticket.ticket }}, 已经更新.

\r\n\r\n

\r\n工单 ID: {{ ticket.ticket }}
\r\n待办: {{ queue.title }}
\r\n标题: {{ ticket.title }}
\r\n已打开: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}
\r\n提交人: {{ ticket.submitter_email|default:\"Unknown\" }}
\r\n优先级: {{ ticket.get_priority_display }}
\r\n状态: {{ ticket.get_status }}
\r\n已分配给: {{ ticket.get_assigned_to }}
\r\n在线查看 更新此工单 (需要登录)

\r\n\r\n

原工单描述参考::

\r\n\r\n
{{ ticket.description|linebreaksbr }}
\r\n\r\n

已添加以下评论:

\r\n\r\n
{{ comment }}
\r\n\r\n

本信息 {% if private %} 还未 {% else %} 已经 {% endif %} been 邮件发送给提交者.

", + "plain_text": "您好,\r\n\r\n温馨提示, 提交者分配给{{ ticket.submitter_email }} 您的工单 {{ ticket.ticket }} (\"{{ ticket.title }}\") , 已经更新.\r\n\r\n工单 ID: {{ ticket.ticket }}\r\n待办: {{ queue.title }}\r\n标题: {{ ticket.title }}\r\n已打开: {{ ticket.created|date:\"l N jS Y, \\a\\t P\" }}\r\n提交人: {{ ticket.submitter_email|default:\"Unknown\" }}\r\n优先级:{{ ticket.get_priority_display }}\r\n状态: {{ ticket.get_status }}\r\n已分配给: {{ ticket.get_assigned_to }}\r\n在线查看: {{ ticket.staff_url }} (需要登录)\r\n\r\n原始描述:\r\n\r\n{{ ticket.description }}\r\n\r\n添加了一下评论:\r\n\r\n{{ comment }}\r\n\r\n本信息 {% if private %}还没有 {% endif %} 邮件发送给提交者.\r\n\r\n如果您想在线查看, 可以访问 {{ ticket.staff_url }}\r\n\r\n", + "heading": "工单已更新", + "subject": "(已更新)", + "locale": "zh" + } + }, + { + "pk": 112, + "model": "helpdesk.emailtemplate", + "fields": { + "template_name": "updated_submitter", + "html": "

您好,

\r\n\r\n

您最近记录了主题为{{ ticket.title }}的工单. 此邮件是告知您工单的更新.

\r\n\r\n

工单添加了以下评论 {{ ticket.ticket }}:

\r\n\r\n
{{ comment }}
\r\n\r\n

如果你需要提供更多信息, 请继续使用邮件的主题回复此邮件. 或者您可以在线查看和更新此工单 {{ ticket.ticket_url }}.

", + "plain_text": "您好,\r\n\r\n您最近记录了主题为\"{{ ticket.title }}\"的工单. 此邮件是告知您工单的更新.\r\n\r\n工单添加了以下评论 {{ ticket.ticket }}:\r\n\r\n{{ comment }}\r\n\r\n如果你需要提供更多信息, 请继续使用邮件的主题回复此邮件. 或者您可以在线查看和更新此工单 {{ ticket.ticket_url }}\r\n\r\n", + "heading": "您的工单已经更新", + "subject": "(已更新)", + "locale": "zh" + } + } + ] diff --git a/build/lib/helpdesk/forms.py b/build/lib/helpdesk/forms.py new file mode 100644 index 00000000..e9d4ef64 --- /dev/null +++ b/build/lib/helpdesk/forms.py @@ -0,0 +1,494 @@ +""" +django-helpdesk - A Django powered ticket tracker for small enterprise. + +(c) Copyright 2008 Jutda. All Rights Reserved. See LICENSE for details. + +forms.py - Definitions of newforms-based forms for creating and maintaining + tickets. +""" + + +from django.core.exceptions import ObjectDoesNotExist +from django.utils.six import StringIO +from django import forms +from django.forms import widgets +from django.conf import settings +from django.utils.translation import ugettext_lazy as _ +from django.contrib.auth import get_user_model +from django.utils import timezone + +from helpdesk.lib import send_templated_mail, safe_template_context, process_attachments +from helpdesk.models import (Ticket, Queue, FollowUp, Attachment, IgnoreEmail, TicketCC, + CustomField, TicketCustomFieldValue, TicketDependency) +from helpdesk import settings as helpdesk_settings + +User = get_user_model() + +CUSTOMFIELD_TO_FIELD_DICT = { + # Store the immediate equivalences here + 'boolean': forms.BooleanField, + 'date': forms.DateField, + 'time': forms.TimeField, + 'datetime': forms.DateTimeField, + 'email': forms.EmailField, + 'url': forms.URLField, + 'ipaddress': forms.GenericIPAddressField, + 'slug': forms.SlugField, +} + + +class CustomFieldMixin(object): + """ + Mixin that provides a method to turn CustomFields into an actual field + """ + + def customfield_to_field(self, field, instanceargs): + # if-elif branches start with special cases + if field.data_type == 'varchar': + fieldclass = forms.CharField + instanceargs['max_length'] = field.max_length + elif field.data_type == 'text': + fieldclass = forms.CharField + instanceargs['widget'] = forms.Textarea + instanceargs['max_length'] = field.max_length + elif field.data_type == 'integer': + fieldclass = forms.IntegerField + elif field.data_type == 'decimal': + fieldclass = forms.DecimalField + instanceargs['decimal_places'] = field.decimal_places + instanceargs['max_digits'] = field.max_length + elif field.data_type == 'list': + fieldclass = forms.ChoiceField + choices = field.choices_as_array + if field.empty_selection_list: + choices.insert(0, ('', '---------')) + instanceargs['choices'] = choices + else: + # Try to use the immediate equivalences dictionary + try: + fieldclass = CUSTOMFIELD_TO_FIELD_DICT[field.data_type] + except KeyError: + # The data_type was not found anywhere + raise NameError("Unrecognized data_type %s" % field.data_type) + + self.fields['custom_%s' % field.name] = fieldclass(**instanceargs) + + +class EditTicketForm(CustomFieldMixin, forms.ModelForm): + + class Meta: + model = Ticket + exclude = ('created', 'modified', 'status', 'on_hold', 'resolution', 'last_escalation', 'assigned_to') + + def __init__(self, *args, **kwargs): + """ + Add any custom fields that are defined to the form + """ + super(EditTicketForm, self).__init__(*args, **kwargs) + + for field in CustomField.objects.all(): + try: + current_value = TicketCustomFieldValue.objects.get(ticket=self.instance, field=field) + initial_value = current_value.value + except TicketCustomFieldValue.DoesNotExist: + initial_value = None + instanceargs = { + 'label': field.label, + 'help_text': field.help_text, + 'required': field.required, + 'initial': initial_value, + } + + self.customfield_to_field(field, instanceargs) + + def save(self, *args, **kwargs): + + for field, value in self.cleaned_data.items(): + if field.startswith('custom_'): + field_name = field.replace('custom_', '', 1) + customfield = CustomField.objects.get(name=field_name) + try: + cfv = TicketCustomFieldValue.objects.get(ticket=self.instance, field=customfield) + except ObjectDoesNotExist: + cfv = TicketCustomFieldValue(ticket=self.instance, field=customfield) + cfv.value = value + cfv.save() + + return super(EditTicketForm, self).save(*args, **kwargs) + + +class EditFollowUpForm(forms.ModelForm): + + class Meta: + model = FollowUp + exclude = ('date', 'user',) + + def __init__(self, *args, **kwargs): + """Filter not openned tickets here.""" + super(EditFollowUpForm, self).__init__(*args, **kwargs) + self.fields["ticket"].queryset = Ticket.objects.filter(status__in=(Ticket.OPEN_STATUS, Ticket.REOPENED_STATUS)) + + +class AbstractTicketForm(CustomFieldMixin, forms.Form): + """ + Contain all the common code and fields between "TicketForm" and + "PublicTicketForm". This Form is not intended to be used directly. + """ + queue = forms.ChoiceField( + widget=forms.Select(attrs={'class': 'form-control'}), + label=_('Queue'), + required=True, + choices=() + ) + + title = forms.CharField( + max_length=100, + required=True, + widget=forms.TextInput(attrs={'class': 'form-control'}), + label=_('Summary of the problem'), + ) + + body = forms.CharField( + widget=forms.Textarea(attrs={'class': 'form-control'}), + label=_('Description of your issue'), + required=True, + help_text=_('Please be as descriptive as possible and include all details'), + ) + + priority = forms.ChoiceField( + widget=forms.Select(attrs={'class': 'form-control'}), + choices=Ticket.PRIORITY_CHOICES, + required=True, + initial='3', + label=_('Priority'), + help_text=_("Please select a priority carefully. If unsure, leave it as '3'."), + ) + + due_date = forms.DateTimeField( + widget=forms.TextInput(attrs={'class': 'form-control'}), + required=False, + label=_('Due on'), + ) + + attachment = forms.FileField( + required=False, + label=_('Attach File'), + help_text=_('You can attach a file such as a document or screenshot to this ticket.'), + ) + + def _add_form_custom_fields(self, staff_only_filter=None): + if staff_only_filter is None: + queryset = CustomField.objects.all() + else: + queryset = CustomField.objects.filter(staff_only=staff_only_filter) + + for field in queryset: + instanceargs = { + 'label': field.label, + 'help_text': field.help_text, + 'required': field.required, + } + + self.customfield_to_field(field, instanceargs) + + def _create_ticket(self): + queue = Queue.objects.get(id=int(self.cleaned_data['queue'])) + + ticket = Ticket(title=self.cleaned_data['title'], + submitter_email=self.cleaned_data['submitter_email'], + created=timezone.now(), + status=Ticket.OPEN_STATUS, + queue=queue, + description=self.cleaned_data['body'], + priority=self.cleaned_data['priority'], + due_date=self.cleaned_data['due_date'], + ) + + return ticket, queue + + def _create_custom_fields(self, ticket): + for field, value in self.cleaned_data.items(): + if field.startswith('custom_'): + field_name = field.replace('custom_', '', 1) + custom_field = CustomField.objects.get(name=field_name) + cfv = TicketCustomFieldValue(ticket=ticket, + field=custom_field, + value=value) + cfv.save() + + def _create_follow_up(self, ticket, title, user=None): + followup = FollowUp(ticket=ticket, + title=title, + date=timezone.now(), + public=True, + comment=self.cleaned_data['body'], + ) + if user: + followup.user = user + return followup + + def _attach_files_to_follow_up(self, followup): + files = self.cleaned_data['attachment'] + if files: + files = process_attachments(followup, [files]) + return files + + @staticmethod + def _send_messages(ticket, queue, followup, files, user=None): + context = safe_template_context(ticket) + context['comment'] = followup.comment + + messages_sent_to = [] + + if ticket.submitter_email: + send_templated_mail( + 'newticket_submitter', + context, + recipients=ticket.submitter_email, + sender=queue.from_address, + fail_silently=True, + files=files, + ) + messages_sent_to.append(ticket.submitter_email) + + if ticket.assigned_to and \ + ticket.assigned_to != user and \ + ticket.assigned_to.usersettings_helpdesk.settings.get('email_on_ticket_assign', False) and \ + ticket.assigned_to.email and \ + ticket.assigned_to.email not in messages_sent_to: + send_templated_mail( + 'assigned_owner', + context, + recipients=ticket.assigned_to.email, + sender=queue.from_address, + fail_silently=True, + files=files, + ) + messages_sent_to.append(ticket.assigned_to.email) + + if queue.new_ticket_cc and queue.new_ticket_cc not in messages_sent_to: + send_templated_mail( + 'newticket_cc', + context, + recipients=queue.new_ticket_cc, + sender=queue.from_address, + fail_silently=True, + files=files, + ) + messages_sent_to.append(queue.new_ticket_cc) + + if queue.updated_ticket_cc and \ + queue.updated_ticket_cc != queue.new_ticket_cc and \ + queue.updated_ticket_cc not in messages_sent_to: + send_templated_mail( + 'newticket_cc', + context, + recipients=queue.updated_ticket_cc, + sender=queue.from_address, + fail_silently=True, + files=files, + ) + + +class TicketForm(AbstractTicketForm): + """ + Ticket Form creation for registered users. + """ + submitter_email = forms.EmailField( + required=False, + label=_('Submitter E-Mail Address'), + widget=forms.TextInput(attrs={'class': 'form-control'}), + help_text=_('This e-mail address will receive copies of all public ' + 'updates to this ticket.'), + ) + + assigned_to = forms.ChoiceField( + widget=forms.Select(attrs={'class': 'form-control'}), + choices=(), + required=False, + label=_('Case owner'), + help_text=_('If you select an owner other than yourself, they\'ll be ' + 'e-mailed details of this ticket immediately.'), + ) + + def __init__(self, *args, **kwargs): + """ + Add any custom fields that are defined to the form. + """ + super(TicketForm, self).__init__(*args, **kwargs) + self._add_form_custom_fields() + + def save(self, user=None): + """ + Writes and returns a Ticket() object + """ + + ticket, queue = self._create_ticket() + if self.cleaned_data['assigned_to']: + try: + u = User.objects.get(id=self.cleaned_data['assigned_to']) + ticket.assigned_to = u + except User.DoesNotExist: + ticket.assigned_to = None + ticket.save() + + self._create_custom_fields(ticket) + + if self.cleaned_data['assigned_to']: + title = _('Ticket Opened & Assigned to %(name)s') % { + 'name': ticket.get_assigned_to or _("") + } + else: + title = _('Ticket Opened') + followup = self._create_follow_up(ticket, title=title, user=user) + followup.save() + + files = self._attach_files_to_follow_up(followup) + self._send_messages(ticket=ticket, + queue=queue, + followup=followup, + files=files, + user=user) + return ticket + + +class PublicTicketForm(AbstractTicketForm): + """ + Ticket Form creation for all users (public-facing). + """ + submitter_email = forms.EmailField( + widget=forms.TextInput(attrs={'class': 'form-control'}), + required=True, + label=_('Your E-Mail Address'), + help_text=_('We will e-mail you when your ticket is updated.'), + ) + + def __init__(self, *args, **kwargs): + """ + Add any (non-staff) custom fields that are defined to the form + """ + super(PublicTicketForm, self).__init__(*args, **kwargs) + + if hasattr(settings, 'HELPDESK_PUBLIC_TICKET_QUEUE'): + self.fields['queue'].widget = forms.HiddenInput() + if hasattr(settings, 'HELPDESK_PUBLIC_TICKET_PRIORITY'): + self.fields['priority'].widget = forms.HiddenInput() + if hasattr(settings, 'HELPDESK_PUBLIC_TICKET_DUE_DATE'): + self.fields['due_date'].widget = forms.HiddenInput() + + self._add_form_custom_fields(False) + + def save(self): + """ + Writes and returns a Ticket() object + """ + ticket, queue = self._create_ticket() + if queue.default_owner and not ticket.assigned_to: + ticket.assigned_to = queue.default_owner + ticket.save() + + self._create_custom_fields(ticket) + + followup = self._create_follow_up(ticket, title=_('Ticket Opened Via Web')) + followup.save() + + files = self._attach_files_to_follow_up(followup) + self._send_messages(ticket=ticket, + queue=queue, + followup=followup, + files=files) + return ticket + + +class UserSettingsForm(forms.Form): + login_view_ticketlist = forms.BooleanField( + label=_('Show Ticket List on Login?'), + help_text=_('Display the ticket list upon login? Otherwise, the dashboard is shown.'), + required=False, + ) + + email_on_ticket_change = forms.BooleanField( + label=_('E-mail me on ticket change?'), + help_text=_('If you\'re the ticket owner and the ticket is changed via the web by somebody else, do you want to receive an e-mail?'), + required=False, + ) + + email_on_ticket_assign = forms.BooleanField( + label=_('E-mail me when assigned a ticket?'), + help_text=_('If you are assigned a ticket via the web, do you want to receive an e-mail?'), + required=False, + ) + + tickets_per_page = forms.ChoiceField( + label=_('Number of tickets to show per page'), + help_text=_('How many tickets do you want to see on the Ticket List page?'), + required=False, + choices=((10, '10'), (25, '25'), (50, '50'), (100, '100')), + ) + + use_email_as_submitter = forms.BooleanField( + label=_('Use my e-mail address when submitting tickets?'), + help_text=_('When you submit a ticket, do you want to automatically ' + 'use your e-mail address as the submitter address? You ' + 'can type a different e-mail address when entering the ' + 'ticket if needed, this option only changes the default.'), + required=False, + ) + + +class EmailIgnoreForm(forms.ModelForm): + + class Meta: + model = IgnoreEmail + exclude = [] + + +class TicketCCForm(forms.ModelForm): + ''' Adds either an email address or helpdesk user as a CC on a Ticket. Used for processing POST requests. ''' + + class Meta: + model = TicketCC + exclude = ('ticket',) + + def __init__(self, *args, **kwargs): + super(TicketCCForm, self).__init__(*args, **kwargs) + if helpdesk_settings.HELPDESK_STAFF_ONLY_TICKET_CC: + users = User.objects.filter(is_active=True, is_staff=True).order_by(User.USERNAME_FIELD) + else: + users = User.objects.filter(is_active=True).order_by(User.USERNAME_FIELD) + self.fields['user'].queryset = users + + +class TicketCCUserForm(forms.ModelForm): + ''' Adds a helpdesk user as a CC on a Ticket ''' + + def __init__(self, *args, **kwargs): + super(TicketCCUserForm, self).__init__(*args, **kwargs) + if helpdesk_settings.HELPDESK_STAFF_ONLY_TICKET_CC: + users = User.objects.filter(is_active=True, is_staff=True).order_by(User.USERNAME_FIELD) + else: + users = User.objects.filter(is_active=True).order_by(User.USERNAME_FIELD) + self.fields['user'].queryset = users + + class Meta: + model = TicketCC + exclude = ('ticket', 'email',) + + +class TicketCCEmailForm(forms.ModelForm): + ''' Adds an email address as a CC on a Ticket ''' + + def __init__(self, *args, **kwargs): + super(TicketCCEmailForm, self).__init__(*args, **kwargs) + + class Meta: + model = TicketCC + exclude = ('ticket', 'user',) + + +class TicketDependencyForm(forms.ModelForm): + ''' Adds a different ticket as a dependency for this Ticket ''' + + class Meta: + model = TicketDependency + exclude = ('ticket',) diff --git a/build/lib/helpdesk/lib.py b/build/lib/helpdesk/lib.py new file mode 100644 index 00000000..72be2f23 --- /dev/null +++ b/build/lib/helpdesk/lib.py @@ -0,0 +1,334 @@ +""" +django-helpdesk - A Django powered ticket tracker for small enterprise. + +(c) Copyright 2008 Jutda. All Rights Reserved. See LICENSE for details. + +lib.py - Common functions (eg multipart e-mail) +""" + +import logging +import mimetypes +import os +from smtplib import SMTPException + +try: + # Python 2 support + from base64 import urlsafe_b64encode as b64encode +except ImportError: + # Python 3 support + from base64 import encodebytes as b64encode +try: + # Python 2 support + from base64 import urlsafe_b64decode as b64decode +except ImportError: + # Python 3 support + from base64 import decodebytes as b64decode + +from django.conf import settings +from django.db.models import Q +from django.utils import six +from django.utils.encoding import smart_text +from django.utils.safestring import mark_safe + +from helpdesk.models import Attachment, EmailTemplate + +logger = logging.getLogger('helpdesk') + + +def send_templated_mail(template_name, + context, + recipients, + sender=None, + bcc=None, + fail_silently=False, + files=None): + """ + send_templated_mail() is a wrapper around Django's e-mail routines that + allows us to easily send multipart (text/plain & text/html) e-mails using + templates that are stored in the database. This lets the admin provide + both a text and a HTML template for each message. + + template_name is the slug of the template to use for this message (see + models.EmailTemplate) + + context is a dictionary to be used when rendering the template + + recipients can be either a string, eg 'a@b.com', or a list of strings. + + sender should contain a string, eg 'My Site '. If you leave it + blank, it'll use settings.DEFAULT_FROM_EMAIL as a fallback. + + bcc is an optional list of addresses that will receive this message as a + blind carbon copy. + + fail_silently is passed to Django's mail routine. Set to 'True' to ignore + any errors at send time. + + files can be a list of tuples. Each tuple should be a filename to attach, + along with the File objects to be read. files can be blank. + + """ + from django.core.mail import EmailMultiAlternatives + from django.template import engines + from_string = engines['django'].from_string + + from helpdesk.models import EmailTemplate + from helpdesk.settings import HELPDESK_EMAIL_SUBJECT_TEMPLATE, \ + HELPDESK_EMAIL_FALLBACK_LOCALE + + locale = context['queue'].get('locale') or HELPDESK_EMAIL_FALLBACK_LOCALE + + try: + t = EmailTemplate.objects.get(template_name__iexact=template_name, locale=locale) + except EmailTemplate.DoesNotExist: + try: + t = EmailTemplate.objects.get(template_name__iexact=template_name, locale__isnull=True) + except EmailTemplate.DoesNotExist: + logger.warning('template "%s" does not exist, no mail sent', template_name) + return # just ignore if template doesn't exist + + subject_part = from_string( + HELPDESK_EMAIL_SUBJECT_TEMPLATE % { + "subject": t.subject + }).render(context).replace('\n', '').replace('\r', '') + + footer_file = os.path.join('helpdesk', locale, 'email_text_footer.txt') + + text_part = from_string( + "%s{%% include '%s' %%}" % (t.plain_text, footer_file) + ).render(context) + + email_html_base_file = os.path.join('helpdesk', locale, 'email_html_base.html') + # keep new lines in html emails + if 'comment' in context: + context['comment'] = mark_safe(context['comment'].replace('\r\n', '
')) + + html_part = from_string( + "{%% extends '%s' %%}{%% block title %%}" + "%s" + "{%% endblock %%}{%% block content %%}%s{%% endblock %%}" % + (email_html_base_file, t.heading, t.html) + ).render(context) + + if isinstance(recipients, str): + if recipients.find(','): + recipients = recipients.split(',') + elif type(recipients) != list: + recipients = [recipients] + + msg = EmailMultiAlternatives(subject_part, text_part, + sender or settings.DEFAULT_FROM_EMAIL, + recipients, bcc=bcc) + msg.attach_alternative(html_part, "text/html") + + if files: + for filename, filefield in files: + mime = mimetypes.guess_type(filename) + if mime[0] is not None and mime[0] == "text/plain": + with open(filefield.path, 'r') as attachedfile: + content = attachedfile.read() + msg.attach(filename, content) + else: + if six.PY3: + msg.attach_file(filefield.path) + else: + with open(filefield.path, 'rb') as attachedfile: + content = attachedfile.read() + msg.attach(filename, content) + + logger.debug('Sending email to: {!r}'.format(recipients)) + + try: + return msg.send() + except SMTPException as e: + logger.exception('SMTPException raised while sending email to {}'.format(recipients)) + if not fail_silently: + raise e + return 0 + + +def query_to_dict(results, descriptions): + """ + Replacement method for cursor.dictfetchall() as that method no longer + exists in psycopg2, and I'm guessing in other backends too. + + Converts the results of a raw SQL query into a list of dictionaries, suitable + for use in templates etc. + """ + + output = [] + for data in results: + row = {} + i = 0 + for column in descriptions: + row[column[0]] = data[i] + i += 1 + + output.append(row) + return output + + +def apply_query(queryset, params): + """ + Apply a dict-based set of filters & parameters to a queryset. + + queryset is a Django queryset, eg MyModel.objects.all() or + MyModel.objects.filter(user=request.user) + + params is a dictionary that contains the following: + filtering: A dict of Django ORM filters, eg: + {'user__id__in': [1, 3, 103], 'title__contains': 'foo'} + + search_string: A freetext search string + + sorting: The name of the column to sort by + """ + for key in params['filtering'].keys(): + filter = {key: params['filtering'][key]} + queryset = queryset.filter(**filter) + + search = params.get('search_string', None) + if search: + qset = ( + Q(title__icontains=search) | + Q(description__icontains=search) | + Q(resolution__icontains=search) | + Q(submitter_email__icontains=search) + ) + + queryset = queryset.filter(qset) + + sorting = params.get('sorting', None) + if sorting: + sortreverse = params.get('sortreverse', None) + if sortreverse: + sorting = "-%s" % sorting + queryset = queryset.order_by(sorting) + + return queryset + + +def ticket_template_context(ticket): + context = {} + + for field in ('title', 'created', 'modified', 'submitter_email', + 'status', 'get_status_display', 'on_hold', 'description', + 'resolution', 'priority', 'get_priority_display', + 'last_escalation', 'ticket', 'ticket_for_url', + 'get_status', 'ticket_url', 'staff_url', '_get_assigned_to' + ): + attr = getattr(ticket, field, None) + if callable(attr): + context[field] = '%s' % attr() + else: + context[field] = attr + context['assigned_to'] = context['_get_assigned_to'] + + return context + + +def queue_template_context(queue): + context = {} + + for field in ('title', 'slug', 'email_address', 'from_address', 'locale'): + attr = getattr(queue, field, None) + if callable(attr): + context[field] = attr() + else: + context[field] = attr + + return context + + +def safe_template_context(ticket): + """ + Return a dictionary that can be used as a template context to render + comments and other details with ticket or queue parameters. Note that + we don't just provide the Ticket & Queue objects to the template as + they could reveal confidential information. Just imagine these two options: + * {{ ticket.queue.email_box_password }} + * {{ ticket.assigned_to.password }} + + Ouch! + + The downside to this is that if we make changes to the model, we will also + have to update this code. Perhaps we can find a better way in the future. + """ + + context = { + 'queue': queue_template_context(ticket.queue), + 'ticket': ticket_template_context(ticket), + } + context['ticket']['queue'] = context['queue'] + + return context + + +def text_is_spam(text, request): + # Based on a blog post by 'sciyoshi': + # http://sciyoshi.com/blog/2008/aug/27/using-akismet-djangos-new-comments-framework/ + # This will return 'True' is the given text is deemed to be spam, or + # False if it is not spam. If it cannot be checked for some reason, we + # assume it isn't spam. + from django.contrib.sites.models import Site + from django.core.exceptions import ImproperlyConfigured + try: + from helpdesk.akismet import Akismet + except ImportError: + return False + try: + site = Site.objects.get_current() + except ImproperlyConfigured: + site = Site(domain='configure-django-sites.com') + + ak = Akismet( + blog_url='http://%s/' % site.domain, + agent='django-helpdesk', + ) + + if hasattr(settings, 'TYPEPAD_ANTISPAM_API_KEY'): + ak.setAPIKey(key=settings.TYPEPAD_ANTISPAM_API_KEY) + ak.baseurl = 'api.antispam.typepad.com/1.1/' + elif hasattr(settings, 'AKISMET_API_KEY'): + ak.setAPIKey(key=settings.AKISMET_API_KEY) + else: + return False + + if ak.verify_key(): + ak_data = { + 'user_ip': request.META.get('REMOTE_ADDR', '127.0.0.1'), + 'user_agent': request.META.get('HTTP_USER_AGENT', ''), + 'referrer': request.META.get('HTTP_REFERER', ''), + 'comment_type': 'comment', + 'comment_author': '', + } + + return ak.comment_check(smart_text(text), data=ak_data) + + return False + + +def process_attachments(followup, attached_files): + max_email_attachment_size = getattr(settings, 'MAX_EMAIL_ATTACHMENT_SIZE', 512000) + attachments = [] + + for attached in attached_files: + if attached.size: + filename = smart_text(attached.name) + att = Attachment( + followup=followup, + file=attached, + filename=filename, + mime_type=attached.content_type or + mimetypes.guess_type(filename, strict=False)[0] or + 'application/octet-stream', + size=attached.size, + ) + att.save() + + if attached.size < max_email_attachment_size: + # Only files smaller than 512kb (or as defined in + # settings.MAX_EMAIL_ATTACHMENT_SIZE) are sent via email. + attachments.append([filename, att.file]) + + return attachments diff --git a/build/lib/helpdesk/locale/ar/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/ar/LC_MESSAGES/django.mo new file mode 100644 index 00000000..d01ea94c Binary files /dev/null and b/build/lib/helpdesk/locale/ar/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/ar/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/ar/LC_MESSAGES/django.po new file mode 100644 index 00000000..5a571893 --- /dev/null +++ b/build/lib/helpdesk/locale/ar/LC_MESSAGES/django.po @@ -0,0 +1,2321 @@ +# django-helpdesk Arabic language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Beshoy Atef , 2013 +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2012-08-07 20:40+1000\n" +"PO-Revision-Date: 2013-11-20 11:07+0000\n" +"Last-Translator: Beshoy Atef \n" +"Language-Team: Arabic (http://www.transifex.com/projects/p/django-helpdesk/language/ar/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ar\n" +"Plural-Forms: nplurals=6; plural=n==0 ? 0 : n==1 ? 1 : n==2 ? 2 : n%100>=3 && n%100<=10 ? 3 : n%100>=11 && n%100<=99 ? 4 : 5;\n" + +#: forms.py:113 forms.py:360 models.py:262 +#: templates/helpdesk/dashboard.html:11 templates/helpdesk/dashboard.html:37 +#: templates/helpdesk/dashboard.html:57 templates/helpdesk/dashboard.html:77 +#: templates/helpdesk/dashboard.html:99 templates/helpdesk/rss_list.html:23 +#: templates/helpdesk/ticket_list.html:56 +#: templates/helpdesk/ticket_list.html:78 +#: templates/helpdesk/ticket_list.html:199 views/staff.py:976 +#: views/staff.py:982 views/staff.py:988 +msgid "Queue" +msgstr "" + +#: forms.py:122 +msgid "Summary of the problem" +msgstr "ملخص لبعض المشاكل" + +#: forms.py:127 +msgid "Submitter E-Mail Address" +msgstr "مرسل العنوان البريدى للشكوة " + +#: forms.py:129 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "" + +#: forms.py:135 +msgid "Description of Issue" +msgstr "وصف المشكلة" + +#: forms.py:142 +msgid "Case owner" +msgstr "مالك الحالة" + +#: forms.py:143 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "اذا قمت باختيار مالك اخر غيرك , سوف يتم ارسال رسالة الدعم الخاصة بة عبر البريد الالكترونى خلال لحظات" + +#: forms.py:151 models.py:322 management/commands/escalate_tickets.py:149 +#: templates/helpdesk/public_view_ticket.html:21 +#: templates/helpdesk/ticket.html:176 +#: templates/helpdesk/ticket_desc_table.html:31 +#: templates/helpdesk/ticket_list.html:84 views/staff.py:355 +msgid "Priority" +msgstr "الاولوية" + +#: forms.py:152 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "رجاء اختيار الاولوية بحرص , فى حالة عدم التأكد , اتركها 3" + +#: forms.py:159 forms.py:397 models.py:330 templates/helpdesk/ticket.html:178 +#: views/staff.py:365 +msgid "Due on" +msgstr "" + +#: forms.py:171 forms.py:402 +msgid "Attach File" +msgstr "اضافة ملف" + +#: forms.py:172 forms.py:403 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "يمكنك اضافة ملف كملف نصى او صورة الى تذكرة الدعم" + +#: forms.py:180 templates/helpdesk/public_view_ticket.html:33 +#: templates/helpdesk/ticket.html:182 +#: templates/helpdesk/ticket_desc_table.html:42 +#: templates/helpdesk/ticket_list.html:61 +#: templates/helpdesk/ticket_list.html:199 views/staff.py:376 +msgid "Tags" +msgstr "الكلمات الدلالية" + +#: forms.py:181 +msgid "" +"Words, separated by spaces, or phrases separated by commas. These should " +"communicate significant characteristics of this ticket" +msgstr "الكلمات، مفصولة بمسافات، أو عبارات مفصولة بفواصل. وينبغي لهذه التواصل خصائص هامة لتذكرة الدعم هذة" + +#: forms.py:275 +msgid "Ticket Opened" +msgstr "تذاكر الدعم المفتوحة" + +#: forms.py:282 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "التذكرة مفتوحة و منسوبة الى %(name)s" + +#: forms.py:369 +msgid "Summary of your query" +msgstr "ملخص الاستعلام الخاص بك" + +#: forms.py:374 +msgid "Your E-Mail Address" +msgstr "بريدك الالكترونى" + +#: forms.py:375 +msgid "We will e-mail you when your ticket is updated." +msgstr "سنقوم بمراسلتك عند تعديل تذكرة الدعم الخاصة بك" + +#: forms.py:380 +msgid "Description of your issue" +msgstr "وصف المشكلة الخاصة بك" + +#: forms.py:382 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "رجاء جعل الوصف تفصيليا متضمن اى تفاصيل ربما نحتاجها لمعالجة الاستعلام الخاص بك" + +#: forms.py:390 +msgid "Urgency" +msgstr "الاهمية" + +#: forms.py:391 +msgid "Please select a priority carefully." +msgstr "رجاء اختيار الاولوية بحرص" + +#: forms.py:486 +msgid "Ticket Opened Via Web" +msgstr "تم فتح تذكرة الدعم عن طريق الويب" + +#: forms.py:553 +msgid "Show Ticket List on Login?" +msgstr "مشاهدة قائمة تذاكر الدعم عند الدخول؟" + +#: forms.py:554 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "" + +#: forms.py:559 +msgid "E-mail me on ticket change?" +msgstr "راسلنى عند تغيير تذكرة الدعم ؟" + +#: forms.py:560 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "اذا كنت انت صاحب تذكرة الدعم و قام شخص اخر بتغيير التذكرة عن طريق الويب هل تريد ان تتلقى بريد الكترونى ؟" + +#: forms.py:565 +msgid "E-mail me when assigned a ticket?" +msgstr "ارسال بريد الكترونى عند تعيين تذكرة للدعم ؟" + +#: forms.py:566 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "اذا قمت بتعيين تذكرة عن طريق الويب هل تريد استقبال بريد الكترونى ؟" + +#: forms.py:571 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "" + +#: forms.py:572 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:577 +msgid "Number of tickets to show per page" +msgstr "عدد التذاكر لللعرض فى صفحة واحدة" + +#: forms.py:578 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "كم عدد تذاكر الدعم الذى تريد رؤيتها فىقائمة التذاكر هذة ؟" + +#: forms.py:585 +msgid "Use my e-mail address when submitting tickets?" +msgstr "استتخدام البريد الاكترونى عند ارسال التذاكر ؟" + +#: forms.py:586 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "" + +#: models.py:32 models.py:256 models.py:490 models.py:787 models.py:821 +#: templates/helpdesk/dashboard.html:37 templates/helpdesk/dashboard.html:57 +#: templates/helpdesk/dashboard.html:77 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/ticket.html:170 templates/helpdesk/ticket_list.html:75 +#: templates/helpdesk/ticket_list.html:199 views/staff.py:345 +msgid "Title" +msgstr "عنوان" + +#: models.py:37 models.py:792 models.py:1162 +msgid "Slug" +msgstr "" + +#: models.py:38 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "" + +#: models.py:43 models.py:1015 models.py:1085 models.py:1159 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "عنولن البريد الالكترونى" + +#: models.py:46 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "" + +#: models.py:52 models.py:766 +msgid "Locale" +msgstr "موضع" + +#: models.py:56 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "" + +#: models.py:60 +msgid "Allow Public Submission?" +msgstr "السماح بالارسال العام" + +#: models.py:63 +msgid "Should this queue be listed on the public submission form?" +msgstr "هل ينبغي إدراج قائمة الانتظار هذه على استمارة التقديم العام؟" + +#: models.py:68 +msgid "Allow E-Mail Submission?" +msgstr "السماح بارسال بريد الكترونى ؟" + +#: models.py:71 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "" + +#: models.py:76 +msgid "Escalation Days" +msgstr "أيام التصعيد" + +#: models.py:79 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "" + +#: models.py:84 +msgid "New Ticket CC Address" +msgstr "" + +#: models.py:88 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "" + +#: models.py:94 +msgid "Updated Ticket CC Address" +msgstr "" + +#: models.py:98 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "" + +#: models.py:105 +msgid "E-Mail Box Type" +msgstr "كتابة صندزق البريد الالكترونى " + +#: models.py:107 +msgid "POP 3" +msgstr "" + +#: models.py:107 +msgid "IMAP" +msgstr "" + +#: models.py:110 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "" + +#: models.py:115 +msgid "E-Mail Hostname" +msgstr "" + +#: models.py:119 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "" + +#: models.py:124 +msgid "E-Mail Port" +msgstr "" + +#: models.py:127 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "" + +#: models.py:133 +msgid "Use SSL for E-Mail?" +msgstr "" + +#: models.py:136 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "" + +#: models.py:141 +msgid "E-Mail Username" +msgstr "" + +#: models.py:145 +msgid "Username for accessing this mailbox." +msgstr "" + +#: models.py:149 +msgid "E-Mail Password" +msgstr "" + +#: models.py:153 +msgid "Password for the above username" +msgstr "" + +#: models.py:157 +msgid "IMAP Folder" +msgstr "" + +#: models.py:161 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "" + +#: models.py:168 +msgid "E-Mail Check Interval" +msgstr "" + +#: models.py:169 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "" + +#: models.py:240 templates/helpdesk/dashboard.html:11 +#: templates/helpdesk/ticket.html:130 +msgid "Open" +msgstr "" + +#: models.py:241 templates/helpdesk/ticket.html:136 +#: templates/helpdesk/ticket.html.py:142 templates/helpdesk/ticket.html:147 +#: templates/helpdesk/ticket.html.py:151 +msgid "Reopened" +msgstr "" + +#: models.py:242 templates/helpdesk/dashboard.html:11 +#: templates/helpdesk/ticket.html:131 templates/helpdesk/ticket.html.py:137 +#: templates/helpdesk/ticket.html:143 +msgid "Resolved" +msgstr "" + +#: models.py:243 templates/helpdesk/dashboard.html:11 +#: templates/helpdesk/ticket.html:132 templates/helpdesk/ticket.html.py:138 +#: templates/helpdesk/ticket.html:144 templates/helpdesk/ticket.html.py:148 +msgid "Closed" +msgstr "" + +#: models.py:244 templates/helpdesk/ticket.html:133 +#: templates/helpdesk/ticket.html.py:139 templates/helpdesk/ticket.html:152 +msgid "Duplicate" +msgstr "" + +#: models.py:248 +msgid "1. Critical" +msgstr "" + +#: models.py:249 +msgid "2. High" +msgstr "" + +#: models.py:250 +msgid "3. Normal" +msgstr "" + +#: models.py:251 +msgid "4. Low" +msgstr "" + +#: models.py:252 +msgid "5. Very Low" +msgstr "" + +#: models.py:266 templates/helpdesk/dashboard.html:77 +#: templates/helpdesk/ticket_list.html:72 +#: templates/helpdesk/ticket_list.html:199 +msgid "Created" +msgstr "" + +#: models.py:268 +msgid "Date this ticket was first created" +msgstr "" + +#: models.py:272 +msgid "Modified" +msgstr "" + +#: models.py:274 +msgid "Date this ticket was most recently changed." +msgstr "" + +#: models.py:278 templates/helpdesk/public_view_ticket.html:16 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Submitter E-Mail" +msgstr "" + +#: models.py:281 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "" + +#: models.py:290 +msgid "Assigned to" +msgstr "" + +#: models.py:294 templates/helpdesk/dashboard.html:37 +#: templates/helpdesk/dashboard.html:57 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/ticket_list.html:57 +#: templates/helpdesk/ticket_list.html:81 +#: templates/helpdesk/ticket_list.html:199 +msgid "Status" +msgstr "" + +#: models.py:300 +msgid "On Hold" +msgstr "" + +#: models.py:303 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "" + +#: models.py:308 models.py:796 templates/helpdesk/public_view_ticket.html:39 +#: templates/helpdesk/ticket_desc_table.html:67 +msgid "Description" +msgstr "" + +#: models.py:311 +msgid "The content of the customers query." +msgstr "" + +#: models.py:315 templates/helpdesk/public_view_ticket.html:46 +#: templates/helpdesk/ticket_desc_table.html:74 +msgid "Resolution" +msgstr "" + +#: models.py:318 +msgid "The resolution provided to the customer by our staff." +msgstr "" + +#: models.py:326 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "" + +#: models.py:339 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "" + +#: models.py:348 templates/helpdesk/ticket_desc_table.html:22 +#: views/feeds.py:91 views/feeds.py:117 views/feeds.py:169 views/staff.py:302 +msgid "Unassigned" +msgstr "" + +#: models.py:387 +msgid " - On Hold" +msgstr "" + +#: models.py:481 models.py:1073 models.py:1231 models.py:1256 +#: templates/helpdesk/public_homepage.html:26 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "" + +#: models.py:485 models.py:714 models.py:1008 models.py:1156 +msgid "Date" +msgstr "" + +#: models.py:497 views/staff.py:316 +msgid "Comment" +msgstr "" + +#: models.py:503 +msgid "Public" +msgstr "" + +#: models.py:506 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "" + +#: models.py:514 models.py:888 models.py:1081 views/staff.py:952 +#: views/staff.py:958 views/staff.py:964 views/staff.py:970 +msgid "User" +msgstr "" + +#: models.py:518 templates/helpdesk/ticket.html:127 +msgid "New Status" +msgstr "" + +#: models.py:522 +msgid "If the status was changed, what was it changed to?" +msgstr "" + +#: models.py:551 models.py:608 +msgid "Follow-up" +msgstr "" + +#: models.py:555 models.py:1236 +msgid "Field" +msgstr "" + +#: models.py:560 +msgid "Old Value" +msgstr "" + +#: models.py:566 +msgid "New Value" +msgstr "" + +#: models.py:574 +msgid "removed" +msgstr "" + +#: models.py:576 +#, python-format +msgid "set to %s" +msgstr "" + +#: models.py:578 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "" + +#: models.py:612 +msgid "File" +msgstr "" + +#: models.py:617 +msgid "Filename" +msgstr "" + +#: models.py:622 +msgid "MIME Type" +msgstr "" + +#: models.py:627 +msgid "Size" +msgstr "" + +#: models.py:628 +msgid "Size of this file in bytes" +msgstr "" + +#: models.py:663 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "" + +#: models.py:668 models.py:709 models.py:1003 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "" + +#: models.py:670 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "" + +#: models.py:675 +msgid "Body" +msgstr "" + +#: models.py:676 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "" + +#: models.py:703 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "" + +#: models.py:715 +msgid "Date on which escalation should not happen" +msgstr "" + +#: models.py:732 +msgid "Template Name" +msgstr "" + +#: models.py:737 +msgid "Subject" +msgstr "" + +#: models.py:739 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "" + +#: models.py:745 +msgid "Heading" +msgstr "" + +#: models.py:747 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "" + +#: models.py:753 +msgid "Plain Text" +msgstr "" + +#: models.py:754 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "" + +#: models.py:760 +msgid "HTML" +msgstr "" + +#: models.py:761 +msgid "The same context is available here as in plain_text, above." +msgstr "" + +#: models.py:770 +msgid "Locale of this template." +msgstr "" + +#: models.py:817 templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Category" +msgstr "" + +#: models.py:826 +msgid "Question" +msgstr "" + +#: models.py:830 +msgid "Answer" +msgstr "" + +#: models.py:834 +msgid "Votes" +msgstr "" + +#: models.py:835 +msgid "Total number of votes cast for this item" +msgstr "" + +#: models.py:840 +msgid "Positive Votes" +msgstr "" + +#: models.py:841 +msgid "Number of votes for this item which were POSITIVE." +msgstr "" + +#: models.py:846 +msgid "Last Updated" +msgstr "" + +#: models.py:847 +msgid "The date on which this question was most recently changed." +msgstr "" + +#: models.py:861 +msgid "Unrated" +msgstr "" + +#: models.py:892 templates/helpdesk/ticket_list.html:158 +msgid "Query Name" +msgstr "" + +#: models.py:894 +msgid "User-provided name for this query" +msgstr "" + +#: models.py:898 +msgid "Shared With Other Users?" +msgstr "" + +#: models.py:901 +msgid "Should other users see this query?" +msgstr "" + +#: models.py:905 +msgid "Search Query" +msgstr "" + +#: models.py:906 +msgid "Pickled query object. Be wary changing this." +msgstr "" + +#: models.py:927 +msgid "Settings Dictionary" +msgstr "" + +#: models.py:928 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "" + +#: models.py:997 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "" + +#: models.py:1009 +msgid "Date on which this e-mail address was added" +msgstr "" + +#: models.py:1017 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "" + +#: models.py:1022 +msgid "Save Emails in Mailbox?" +msgstr "" + +#: models.py:1025 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "" + +#: models.py:1080 +msgid "User who wishes to receive updates for this ticket." +msgstr "" + +#: models.py:1088 +msgid "For non-user followers, enter their e-mail address" +msgstr "" + +#: models.py:1092 +msgid "Can View Ticket?" +msgstr "" + +#: models.py:1094 +msgid "Can this CC login to view the ticket details?" +msgstr "" + +#: models.py:1098 +msgid "Can Update Ticket?" +msgstr "" + +#: models.py:1100 +msgid "Can this CC login and update the ticket?" +msgstr "" + +#: models.py:1131 +msgid "Field Name" +msgstr "" + +#: models.py:1132 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "" + +#: models.py:1137 +msgid "Label" +msgstr "" + +#: models.py:1139 +msgid "The display label for this field" +msgstr "" + +#: models.py:1143 +msgid "Help Text" +msgstr "" + +#: models.py:1144 +msgid "Shown to the user when editing the ticket" +msgstr "" + +#: models.py:1150 +msgid "Character (single line)" +msgstr "" + +#: models.py:1151 +msgid "Text (multi-line)" +msgstr "" + +#: models.py:1152 +msgid "Integer" +msgstr "" + +#: models.py:1153 +msgid "Decimal" +msgstr "" + +#: models.py:1154 +msgid "List" +msgstr "" + +#: models.py:1155 +msgid "Boolean (checkbox yes/no)" +msgstr "" + +#: models.py:1157 +msgid "Time" +msgstr "" + +#: models.py:1158 +msgid "Date & Time" +msgstr "" + +#: models.py:1160 +msgid "URL" +msgstr "" + +#: models.py:1161 +msgid "IP Address" +msgstr "" + +#: models.py:1166 +msgid "Data Type" +msgstr "" + +#: models.py:1168 +msgid "Allows you to restrict the data entered into this field" +msgstr "" + +#: models.py:1173 +msgid "Maximum Length (characters)" +msgstr "" + +#: models.py:1179 +msgid "Decimal Places" +msgstr "" + +#: models.py:1180 +msgid "Only used for decimal fields" +msgstr "" + +#: models.py:1186 +msgid "Add empty first choice to List?" +msgstr "" + +#: models.py:1187 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "" + +#: models.py:1191 +msgid "List Values" +msgstr "" + +#: models.py:1192 +msgid "For list fields only. Enter one option per line." +msgstr "" + +#: models.py:1198 +msgid "Ordering" +msgstr "" + +#: models.py:1199 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "" + +#: models.py:1213 +msgid "Required?" +msgstr "" + +#: models.py:1214 +msgid "Does the user have to enter a value for this field?" +msgstr "" + +#: models.py:1218 +msgid "Staff Only?" +msgstr "" + +#: models.py:1219 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "" + +#: models.py:1262 +msgid "Depends On Ticket" +msgstr "" + +#: management/commands/create_usersettings.py:21 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "" + +#: management/commands/escalate_tickets.py:143 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "" + +#: management/commands/get_email.py:151 +msgid "Created from e-mail" +msgstr "" + +#: management/commands/get_email.py:155 +msgid "Unknown Sender" +msgstr "" + +#: management/commands/get_email.py:209 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "" + +#: management/commands/get_email.py:213 +msgid "email_html_body.html" +msgstr "" + +#: management/commands/get_email.py:256 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:264 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:322 +msgid " (Reopened)" +msgstr "" + +#: management/commands/get_email.py:324 +msgid " (Updated)" +msgstr "" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"Powered by django-" +"helpdesk." +msgstr "" + +#: templates/helpdesk/attribution.html:4 +msgid "For technical support please contact:" +msgstr "" + +#: templates/helpdesk/base.html:9 +msgid "Powered by django-helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:19 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:23 templates/helpdesk/rss_list.html:28 +msgid "My Open Tickets" +msgstr "" + +#: templates/helpdesk/base.html:20 +msgid "All Recent Activity" +msgstr "" + +#: templates/helpdesk/base.html:21 templates/helpdesk/dashboard.html:76 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "" + +#: templates/helpdesk/base.html:101 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:14 +msgid "Helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:111 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:27 templates/helpdesk/rss_list.html:28 +msgid "RSS Icon" +msgstr "" + +#: templates/helpdesk/base.html:111 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "" + +#: templates/helpdesk/base.html:112 +msgid "API" +msgstr "" + +#: templates/helpdesk/base.html:113 +msgid "User Settings" +msgstr "" + +#: templates/helpdesk/base.html:115 +msgid "Change Language" +msgstr "" + +#: templates/helpdesk/base.html:117 +msgid "System Settings" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:144 +msgid "Delete Saved Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:5 +#, python-format +msgid "" +"\n" +"

Delete Query

\n" +"\n" +"

Are you sure you want to delete this saved filter (%(query_title)s)? To re-create it, you will need to manually re-filter your ticket listing.

\n" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"\n" +"

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.

\n" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:15 +#: templates/helpdesk/delete_ticket.html:11 +msgid "No, Don't Delete It" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:17 +#: templates/helpdesk/delete_ticket.html:13 +msgid "Yes - Delete It" +msgstr "" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:6 +msgid "" +"

Submit a Ticket

\n" +"\n" +"

Unless otherwise stated, all fields are required. Please provide as descriptive a title and description as possible.

" +msgstr "" + +#: templates/helpdesk/create_ticket.html:17 +#: templates/helpdesk/edit_ticket.html:19 +#: templates/helpdesk/public_homepage.html:50 +msgid "(Optional)" +msgstr "" + +#: templates/helpdesk/create_ticket.html:26 +#: templates/helpdesk/public_homepage.html:59 +msgid "Submit Ticket" +msgstr "" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "" + +#: templates/helpdesk/dashboard.html:10 +msgid "Helpdesk Summary" +msgstr "" + +#: templates/helpdesk/dashboard.html:25 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "" + +#: templates/helpdesk/dashboard.html:27 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see your own " +"tickets, and those tickets that have no owner. Why not pick up an orphan " +"ticket and sort it out for a customer?" +msgstr "" + +#: templates/helpdesk/dashboard.html:36 +msgid "All Tickets submitted by you" +msgstr "" + +#: templates/helpdesk/dashboard.html:37 templates/helpdesk/dashboard.html:57 +#: templates/helpdesk/dashboard.html:77 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/ticket_list.html:199 +msgid "Pr" +msgstr "" + +#: templates/helpdesk/dashboard.html:37 templates/helpdesk/dashboard.html:57 +#: templates/helpdesk/dashboard.html:99 +msgid "Last Update" +msgstr "" + +#: templates/helpdesk/dashboard.html:56 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "" + +#: templates/helpdesk/dashboard.html:69 +msgid "You have no tickets assigned to you." +msgstr "" + +#: templates/helpdesk/dashboard.html:76 +msgid "(pick up a ticket if you start to work on it)" +msgstr "" + +#: templates/helpdesk/dashboard.html:85 +#: templates/helpdesk/ticket_desc_table.html:22 +msgid "Take" +msgstr "" + +#: templates/helpdesk/dashboard.html:85 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:234 +msgid "Delete" +msgstr "" + +#: templates/helpdesk/dashboard.html:89 +msgid "There are no unassigned tickets." +msgstr "" + +#: templates/helpdesk/dashboard.html:98 +msgid "Closed & resolved Tickets you used to work on" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:3 +msgid "Delete Ticket" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket

\n" +"\n" +"

Are you sure you want to delete this ticket (%(ticket_title)s)? All traces of the ticket, including followups, attachments, and updates will be irreversably removed.

\n" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:6 +msgid "" +"

Edit a Ticket

\n" +"\n" +"

Unless otherwise stated, all fields are required. Please provide as descriptive a title and description as possible.

\n" +"\n" +"

Note: Editing a ticket does not send an e-mail to the ticket owner or submitter. No new details should be entered, this form should only be used to fix incorrect details or clean up the submission.

" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:28 +msgid "Save Changes" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:5 +msgid "" +"\n" +"

Ignore E-Mail Address

\n" +"\n" +"

To ignore an e-mail address and prevent any emails from that address creating tickets automatically, enter the e-mail address below.

\n" +"\n" +"

You can either enter a whole e-mail address such as email@domain.com or a portion of an e-mail address with a wildcard, such as *@domain.com or user@*.

" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:5 +#, python-format +msgid "" +"\n" +"

Un-Ignore E-Mail Address

\n" +"\n" +"

Are you sure you wish to stop removing this email address (%(email_address)s) and allow their e-mails to automatically create tickets in your system? You can re-add this e-mail address at any time.

\n" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:11 +msgid "Keep Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:13 +msgid "Stop Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:232 +msgid "All" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "" + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:11 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "" + +#: templates/helpdesk/kb_category.html:12 +msgid "Article" +msgstr "" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:11 +#: templates/helpdesk/navigation.html:33 +msgid "Knowledgebase" +msgstr "" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "" + +#: templates/helpdesk/kb_index.html:9 +#: templates/helpdesk/public_homepage.html:9 +msgid "Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:13 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "" + +#: templates/helpdesk/kb_item.html:15 +msgid "Feedback" +msgstr "" + +#: templates/helpdesk/kb_item.html:17 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "" + +#: templates/helpdesk/kb_item.html:20 +msgid "This article was useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:21 +msgid "This article was not useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:24 +msgid "The results of voting by other readers of this article are below:" +msgstr "" + +#: templates/helpdesk/kb_item.html:27 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:28 +#, python-format +msgid "Votes: %(votes)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:29 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "" + +#: templates/helpdesk/navigation.html:4 +msgid "Dashboard" +msgstr "" + +#: templates/helpdesk/navigation.html:5 +#: templates/helpdesk/ticket_list.html:198 +msgid "Tickets" +msgstr "" + +#: templates/helpdesk/navigation.html:6 +msgid "New Ticket" +msgstr "" + +#: templates/helpdesk/navigation.html:8 +msgid "Stats" +msgstr "" + +#: templates/helpdesk/navigation.html:14 +#: templates/helpdesk/ticket_list.html:46 +msgid "Load Saved Query" +msgstr "" + +#: templates/helpdesk/navigation.html:25 templates/helpdesk/navigation.html:35 +msgid "Logout" +msgstr "" + +#: templates/helpdesk/navigation.html:26 +msgid "Search..." +msgstr "" + +#: templates/helpdesk/navigation.html:26 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "" + +#: templates/helpdesk/navigation.html:31 +msgid "Submit A Ticket" +msgstr "" + +#: templates/helpdesk/navigation.html:35 +msgid "Log In" +msgstr "" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:21 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "" + +#: templates/helpdesk/public_homepage.html:29 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "" + +#: templates/helpdesk/public_homepage.html:33 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "" + +#: templates/helpdesk/public_homepage.html:39 +msgid "Submit a Ticket" +msgstr "" + +#: templates/helpdesk/public_homepage.html:41 +msgid "" +"All fields are required. Please provide as descriptive a title and " +"description as possible." +msgstr "" + +#: templates/helpdesk/public_homepage.html:67 +msgid "Please use button at upper right to login first." +msgstr "" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"

Sorry, but there has been an error trying to submit your ticket.

\n" +"\n" +"

Our system has marked your submission as spam, so we are unable to save it. If this is not spam, please press back and re-type your message. Be careful to avoid sounding 'spammy', and if you have heaps of links please try removing them if possible.

\n" +"\n" +"

We are sorry for any inconvenience, however this check is required to avoid our helpdesk resources being overloaded by spammers.

\n" +msgstr "" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:8 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:11 +#: templates/helpdesk/ticket_desc_table.html:16 +msgid "Submitted On" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:46 +#: templates/helpdesk/ticket_desc_table.html:74 +msgid "Accept" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:46 +#: templates/helpdesk/ticket_desc_table.html:74 +msgid "Accept and Close" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:55 +#: templates/helpdesk/ticket.html:64 +msgid "Follow-Ups" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:63 +#: templates/helpdesk/ticket.html:92 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "" + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "" + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "" + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "" + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "" + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "" + +#: templates/helpdesk/rss_list.html:22 +msgid "Per-Queue Feeds" +msgstr "" + +#: templates/helpdesk/rss_list.html:23 +msgid "All Open Tickets" +msgstr "" + +#: templates/helpdesk/rss_list.html:27 +msgid "Open Tickets" +msgstr "" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "" + +#: templates/helpdesk/system_settings.html:5 +msgid "" +"\n" +"

System Settings

\n" +"\n" +"

The following items can be maintained by you or other superusers:

" +msgstr "" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:197 +msgid "Add Another File" +msgstr "" + +#: templates/helpdesk/ticket.html:71 templates/helpdesk/ticket.html.py:81 +msgid "Private" +msgstr "" + +#: templates/helpdesk/ticket.html:111 +msgid "Respond to this ticket" +msgstr "" + +#: templates/helpdesk/ticket.html:118 +msgid "Use a Pre-set Reply" +msgstr "" + +#: templates/helpdesk/ticket.html:120 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "" + +#: templates/helpdesk/ticket.html:123 +msgid "Comment / Resolution" +msgstr "" + +#: templates/helpdesk/ticket.html:125 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "" + +#: templates/helpdesk/ticket.html:158 +msgid "Is this update public?" +msgstr "" + +#: templates/helpdesk/ticket.html:160 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "" + +#: templates/helpdesk/ticket.html:164 +msgid "Change Further Details »" +msgstr "" + +#: templates/helpdesk/ticket.html:173 templates/helpdesk/ticket_list.html:55 +#: templates/helpdesk/ticket_list.html:87 +#: templates/helpdesk/ticket_list.html:199 +msgid "Owner" +msgstr "" + +#: templates/helpdesk/ticket.html:174 +msgid "Unassign" +msgstr "" + +#: templates/helpdesk/ticket.html:190 +msgid "Attach File(s) »" +msgstr "" + +#: templates/helpdesk/ticket.html:196 +msgid "Attach a File" +msgstr "" + +#: templates/helpdesk/ticket.html:204 +msgid "Update This Ticket" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:11 +msgid "Unhold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:11 +msgid "Hold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:13 +#, python-format +msgid "Queue: %(queue)s" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:21 +msgid "Assigned To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:27 +msgid "Ignore" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:36 +msgid "Copies To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Manage" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:48 +msgid "Dependencies" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:50 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:51 +msgid "Remove Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:54 +msgid "This ticket has no dependencies." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:56 +msgid "Add Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:56 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "" + +#: templates/helpdesk/ticket_list.html:2 +msgid "Ticket Listing" +msgstr "" + +#: templates/helpdesk/ticket_list.html:41 +msgid "Query Options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:43 +msgid "Save This Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:51 +msgid "Change Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:54 +#: templates/helpdesk/ticket_list.html:69 +msgid "Sorting" +msgstr "" + +#: templates/helpdesk/ticket_list.html:58 +#: templates/helpdesk/ticket_list.html:137 +msgid "Keywords" +msgstr "" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Date Range" +msgstr "" + +#: templates/helpdesk/ticket_list.html:90 +msgid "Reverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:92 +msgid "Ordering applied to tickets" +msgstr "" + +#: templates/helpdesk/ticket_list.html:97 +msgid "Owner(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:101 +msgid "(ME)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:105 +msgid "Ctrl-Click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:110 +msgid "Queue(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:111 +#: templates/helpdesk/ticket_list.html:117 +#: templates/helpdesk/ticket_list.html:131 +msgid "Ctrl-click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:116 +msgid "Status(es)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:122 +msgid "Date (From)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:123 +msgid "Date (To)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:124 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "" + +#: templates/helpdesk/ticket_list.html:130 +msgid "Tag(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:138 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "" + +#: templates/helpdesk/ticket_list.html:142 +msgid "Apply Filter" +msgstr "" + +#: templates/helpdesk/ticket_list.html:144 +#, python-format +msgid "You are currently viewing saved query %(query_name)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:147 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "" + +#: templates/helpdesk/ticket_list.html:154 +#: templates/helpdesk/ticket_list.html:169 +msgid "Save Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:160 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "" + +#: templates/helpdesk/ticket_list.html:162 +msgid "Shared?" +msgstr "" + +#: templates/helpdesk/ticket_list.html:163 +msgid "Yes, share this query with other users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:164 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:176 +msgid "Use Saved Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:178 +msgid "Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:183 +msgid "Run Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:213 +msgid "No Tickets Match Your Selection" +msgstr "" + +#: templates/helpdesk/ticket_list.html:219 +msgid "Previous" +msgstr "" + +#: templates/helpdesk/ticket_list.html:223 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:227 +msgid "Next" +msgstr "" + +#: templates/helpdesk/ticket_list.html:232 +msgid "Select:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:232 +msgid "None" +msgstr "" + +#: templates/helpdesk/ticket_list.html:232 +msgid "Inverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:234 +msgid "With Selected Tickets:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Take (Assign to me)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Close" +msgstr "" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Close (Don't Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Close (Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Assign To" +msgstr "" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Nobody (Unassign)" +msgstr "" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "" + +#: templates/helpdesk/user_settings.html:14 +msgid "" +"\n" +"

User Settings

\n" +"\n" +"

Use the following options to change the way your helpdesk system works for you. These settings do not impact any other user.

\n" +msgstr "" + +#: templates/helpdesk/user_settings.html:29 +msgid "Save Options" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "" + +#: templates/helpdesk/registration/login.html:9 +#: templates/helpdesk/registration/login.html:21 +msgid "Login" +msgstr "" + +#: templates/helpdesk/registration/login.html:11 +msgid "" +"To log in and begin responding to cases, simply enter your username and " +"password below." +msgstr "" + +#: templates/helpdesk/registration/login.html:14 +msgid "Your username and password didn't match. Please try again." +msgstr "" + +#: templates/helpdesk/registration/login.html:16 +msgid "Username" +msgstr "" + +#: templates/helpdesk/registration/login.html:18 +msgid "Password" +msgstr "" + +#: views/feeds.py:35 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:40 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:46 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:51 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:98 +msgid "Helpdesk: Unassigned Tickets" +msgstr "" + +#: views/feeds.py:99 +msgid "Unassigned Open and Reopened tickets" +msgstr "" + +#: views/feeds.py:124 +msgid "Helpdesk: Recent Followups" +msgstr "" + +#: views/feeds.py:125 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "" + +#: views/feeds.py:140 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "" + +#: views/feeds.py:145 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "" + +#: views/public.py:91 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "" + +#: views/public.py:109 +msgid "Submitter accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:218 +msgid "Accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:246 +msgid "Sorry, you need to login to do that." +msgstr "" + +#: views/staff.py:295 +#, python-format +msgid "Assigned to %(username)s" +msgstr "" + +#: views/staff.py:318 +msgid "Updated" +msgstr "" + +#: views/staff.py:496 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "" + +#: views/staff.py:501 +msgid "Unassigned in bulk update" +msgstr "" + +#: views/staff.py:506 views/staff.py:511 +msgid "Closed in bulk update" +msgstr "" + +#: views/staff.py:732 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "" + +#: views/staff.py:843 +msgid "Ticket taken off hold" +msgstr "" + +#: views/staff.py:846 +msgid "Ticket placed on hold" +msgstr "" + +#: views/staff.py:914 +msgid "Jan" +msgstr "" + +#: views/staff.py:915 +msgid "Feb" +msgstr "" + +#: views/staff.py:916 +msgid "Mar" +msgstr "" + +#: views/staff.py:917 +msgid "Apr" +msgstr "" + +#: views/staff.py:918 +msgid "May" +msgstr "" + +#: views/staff.py:919 +msgid "Jun" +msgstr "" + +#: views/staff.py:920 +msgid "Jul" +msgstr "" + +#: views/staff.py:921 +msgid "Aug" +msgstr "" + +#: views/staff.py:922 +msgid "Sep" +msgstr "" + +#: views/staff.py:923 +msgid "Oct" +msgstr "" + +#: views/staff.py:924 +msgid "Nov" +msgstr "" + +#: views/staff.py:925 +msgid "Dec" +msgstr "" + +#: views/staff.py:951 +msgid "User by Priority" +msgstr "" + +#: views/staff.py:957 +msgid "User by Queue" +msgstr "" + +#: views/staff.py:963 +msgid "User by Status" +msgstr "" + +#: views/staff.py:969 +msgid "User by Month" +msgstr "" + +#: views/staff.py:975 +msgid "Queue by Priority" +msgstr "" + +#: views/staff.py:981 +msgid "Queue by Status" +msgstr "" + +#: views/staff.py:987 +msgid "Queue by Month" +msgstr "" diff --git a/build/lib/helpdesk/locale/ca/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/ca/LC_MESSAGES/django.mo new file mode 100644 index 00000000..cdc2608d Binary files /dev/null and b/build/lib/helpdesk/locale/ca/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/ca/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/ca/LC_MESSAGES/django.po new file mode 100644 index 00000000..1c6feebb --- /dev/null +++ b/build/lib/helpdesk/locale/ca/LC_MESSAGES/django.po @@ -0,0 +1,2393 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2014-07-26 14:14+0200\n" +"PO-Revision-Date: 2011-02-06 23:10+0000\n" +"Last-Translator: Ross Poulton \n" +"Language-Team: Catalan (http://www.transifex.com/rossp/django-helpdesk/language/ca/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: ca\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: forms.py:128 forms.py:328 models.py:190 models.py:267 +#: templates/helpdesk/dashboard.html:15 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/dashboard.html:124 templates/helpdesk/rss_list.html:24 +#: templates/helpdesk/ticket_list.html:69 +#: templates/helpdesk/ticket_list.html:88 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:1032 +#: views/staff.py:1038 views/staff.py:1044 views/staff.py:1050 +msgid "Queue" +msgstr "" + +#: forms.py:137 +msgid "Summary of the problem" +msgstr "" + +#: forms.py:142 +msgid "Submitter E-Mail Address" +msgstr "" + +#: forms.py:144 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "" + +#: forms.py:150 +msgid "Description of Issue" +msgstr "" + +#: forms.py:157 +msgid "Case owner" +msgstr "" + +#: forms.py:158 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "" + +#: forms.py:166 models.py:327 management/commands/escalate_tickets.py:154 +#: templates/helpdesk/public_view_ticket.html:23 +#: templates/helpdesk/ticket.html:184 +#: templates/helpdesk/ticket_desc_table.html:47 +#: templates/helpdesk/ticket_list.html:94 views/staff.py:429 +msgid "Priority" +msgstr "" + +#: forms.py:167 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "" + +#: forms.py:174 forms.py:365 models.py:335 templates/helpdesk/ticket.html:186 +#: views/staff.py:439 +msgid "Due on" +msgstr "" + +#: forms.py:186 forms.py:370 +msgid "Attach File" +msgstr "" + +#: forms.py:187 forms.py:371 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "" + +#: forms.py:240 +msgid "Ticket Opened" +msgstr "" + +#: forms.py:247 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "" + +#: forms.py:337 +msgid "Summary of your query" +msgstr "" + +#: forms.py:342 +msgid "Your E-Mail Address" +msgstr "" + +#: forms.py:343 +msgid "We will e-mail you when your ticket is updated." +msgstr "" + +#: forms.py:348 +msgid "Description of your issue" +msgstr "" + +#: forms.py:350 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "" + +#: forms.py:358 +msgid "Urgency" +msgstr "" + +#: forms.py:359 +msgid "Please select a priority carefully." +msgstr "" + +#: forms.py:419 +msgid "Ticket Opened Via Web" +msgstr "" + +#: forms.py:486 +msgid "Show Ticket List on Login?" +msgstr "" + +#: forms.py:487 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "" + +#: forms.py:492 +msgid "E-mail me on ticket change?" +msgstr "" + +#: forms.py:493 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:498 +msgid "E-mail me when assigned a ticket?" +msgstr "" + +#: forms.py:499 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:504 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "" + +#: forms.py:505 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:510 +msgid "Number of tickets to show per page" +msgstr "" + +#: forms.py:511 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "" + +#: forms.py:518 +msgid "Use my e-mail address when submitting tickets?" +msgstr "" + +#: forms.py:519 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "" + +#: models.py:35 models.py:261 models.py:503 models.py:817 models.py:853 +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket.html:178 templates/helpdesk/ticket_list.html:85 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:419 +msgid "Title" +msgstr "" + +#: models.py:40 models.py:822 models.py:1206 +msgid "Slug" +msgstr "" + +#: models.py:41 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "" + +#: models.py:46 models.py:1054 models.py:1129 models.py:1203 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "" + +#: models.py:49 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "" + +#: models.py:55 models.py:794 +msgid "Locale" +msgstr "" + +#: models.py:59 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "" + +#: models.py:63 +msgid "Allow Public Submission?" +msgstr "" + +#: models.py:66 +msgid "Should this queue be listed on the public submission form?" +msgstr "" + +#: models.py:71 +msgid "Allow E-Mail Submission?" +msgstr "" + +#: models.py:74 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "" + +#: models.py:79 +msgid "Escalation Days" +msgstr "" + +#: models.py:82 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "" + +#: models.py:87 +msgid "New Ticket CC Address" +msgstr "" + +#: models.py:91 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "" + +#: models.py:97 +msgid "Updated Ticket CC Address" +msgstr "" + +#: models.py:101 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "" + +#: models.py:108 +msgid "E-Mail Box Type" +msgstr "" + +#: models.py:110 +msgid "POP 3" +msgstr "" + +#: models.py:110 +msgid "IMAP" +msgstr "" + +#: models.py:113 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "" + +#: models.py:118 +msgid "E-Mail Hostname" +msgstr "" + +#: models.py:122 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "" + +#: models.py:127 +msgid "E-Mail Port" +msgstr "" + +#: models.py:130 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "" + +#: models.py:136 +msgid "Use SSL for E-Mail?" +msgstr "" + +#: models.py:139 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "" + +#: models.py:144 +msgid "E-Mail Username" +msgstr "" + +#: models.py:148 +msgid "Username for accessing this mailbox." +msgstr "" + +#: models.py:152 +msgid "E-Mail Password" +msgstr "" + +#: models.py:156 +msgid "Password for the above username" +msgstr "" + +#: models.py:160 +msgid "IMAP Folder" +msgstr "" + +#: models.py:164 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "" + +#: models.py:171 +msgid "E-Mail Check Interval" +msgstr "" + +#: models.py:172 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "" + +#: models.py:191 templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "" + +#: models.py:245 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:138 +msgid "Open" +msgstr "" + +#: models.py:246 templates/helpdesk/ticket.html:144 +#: templates/helpdesk/ticket.html.py:150 templates/helpdesk/ticket.html:155 +#: templates/helpdesk/ticket.html.py:159 +msgid "Reopened" +msgstr "" + +#: models.py:247 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:139 templates/helpdesk/ticket.html.py:145 +#: templates/helpdesk/ticket.html:151 +msgid "Resolved" +msgstr "" + +#: models.py:248 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:140 templates/helpdesk/ticket.html.py:146 +#: templates/helpdesk/ticket.html:152 templates/helpdesk/ticket.html.py:156 +msgid "Closed" +msgstr "" + +#: models.py:249 templates/helpdesk/ticket.html:141 +#: templates/helpdesk/ticket.html.py:147 templates/helpdesk/ticket.html:160 +msgid "Duplicate" +msgstr "" + +#: models.py:253 +msgid "1. Critical" +msgstr "" + +#: models.py:254 +msgid "2. High" +msgstr "" + +#: models.py:255 +msgid "3. Normal" +msgstr "" + +#: models.py:256 +msgid "4. Low" +msgstr "" + +#: models.py:257 +msgid "5. Very Low" +msgstr "" + +#: models.py:271 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/ticket_list.html:82 +#: templates/helpdesk/ticket_list.html:225 +msgid "Created" +msgstr "" + +#: models.py:273 +msgid "Date this ticket was first created" +msgstr "" + +#: models.py:277 +msgid "Modified" +msgstr "" + +#: models.py:279 +msgid "Date this ticket was most recently changed." +msgstr "" + +#: models.py:283 templates/helpdesk/public_view_ticket.html:18 +#: templates/helpdesk/ticket_desc_table.html:42 +msgid "Submitter E-Mail" +msgstr "" + +#: models.py:286 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "" + +#: models.py:295 +msgid "Assigned to" +msgstr "" + +#: models.py:299 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:70 +#: templates/helpdesk/ticket_list.html:91 +#: templates/helpdesk/ticket_list.html:225 +msgid "Status" +msgstr "" + +#: models.py:305 +msgid "On Hold" +msgstr "" + +#: models.py:308 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "" + +#: models.py:313 models.py:826 templates/helpdesk/public_view_ticket.html:41 +#: templates/helpdesk/ticket_desc_table.html:19 +msgid "Description" +msgstr "" + +#: models.py:316 +msgid "The content of the customers query." +msgstr "" + +#: models.py:320 templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Resolution" +msgstr "" + +#: models.py:323 +msgid "The resolution provided to the customer by our staff." +msgstr "" + +#: models.py:331 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "" + +#: models.py:344 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "" + +#: models.py:353 templates/helpdesk/ticket_desc_table.html:38 +#: views/feeds.py:95 views/feeds.py:121 views/feeds.py:173 views/staff.py:376 +msgid "Unassigned" +msgstr "" + +#: models.py:392 +msgid " - On Hold" +msgstr "" + +#: models.py:394 +msgid " - Open dependencies" +msgstr "" + +#: models.py:448 models.py:494 models.py:1117 models.py:1280 models.py:1309 +#: templates/helpdesk/public_homepage.html:78 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "" + +#: models.py:449 templates/helpdesk/navigation.html:17 +#: templates/helpdesk/ticket_list.html:2 +#: templates/helpdesk/ticket_list.html:224 +msgid "Tickets" +msgstr "" + +#: models.py:498 models.py:738 models.py:1047 models.py:1200 +msgid "Date" +msgstr "" + +#: models.py:510 views/staff.py:390 +msgid "Comment" +msgstr "" + +#: models.py:516 +msgid "Public" +msgstr "" + +#: models.py:519 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "" + +#: models.py:527 models.py:922 models.py:1125 views/staff.py:1008 +#: views/staff.py:1014 views/staff.py:1020 views/staff.py:1026 +msgid "User" +msgstr "" + +#: models.py:531 templates/helpdesk/ticket.html:135 +msgid "New Status" +msgstr "" + +#: models.py:535 +msgid "If the status was changed, what was it changed to?" +msgstr "" + +#: models.py:542 models.py:566 models.py:628 +msgid "Follow-up" +msgstr "" + +#: models.py:543 +msgid "Follow-ups" +msgstr "" + +#: models.py:570 models.py:1285 +msgid "Field" +msgstr "" + +#: models.py:575 +msgid "Old Value" +msgstr "" + +#: models.py:581 +msgid "New Value" +msgstr "" + +#: models.py:589 +msgid "removed" +msgstr "" + +#: models.py:591 +#, python-format +msgid "set to %s" +msgstr "" + +#: models.py:593 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "" + +#: models.py:600 +msgid "Ticket change" +msgstr "" + +#: models.py:601 +msgid "Ticket changes" +msgstr "" + +#: models.py:632 +msgid "File" +msgstr "" + +#: models.py:637 +msgid "Filename" +msgstr "" + +#: models.py:642 +msgid "MIME Type" +msgstr "" + +#: models.py:647 +msgid "Size" +msgstr "" + +#: models.py:648 +msgid "Size of this file in bytes" +msgstr "" + +#: models.py:665 +msgid "Attachment" +msgstr "" + +#: models.py:666 +msgid "Attachments" +msgstr "" + +#: models.py:685 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "" + +#: models.py:690 models.py:733 models.py:1042 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "" + +#: models.py:692 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "" + +#: models.py:697 +msgid "Body" +msgstr "" + +#: models.py:698 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "" + +#: models.py:705 +msgid "Pre-set reply" +msgstr "" + +#: models.py:706 +msgid "Pre-set replies" +msgstr "" + +#: models.py:727 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "" + +#: models.py:739 +msgid "Date on which escalation should not happen" +msgstr "" + +#: models.py:746 +msgid "Escalation exclusion" +msgstr "" + +#: models.py:747 +msgid "Escalation exclusions" +msgstr "" + +#: models.py:760 +msgid "Template Name" +msgstr "" + +#: models.py:765 +msgid "Subject" +msgstr "" + +#: models.py:767 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "" + +#: models.py:773 +msgid "Heading" +msgstr "" + +#: models.py:775 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "" + +#: models.py:781 +msgid "Plain Text" +msgstr "" + +#: models.py:782 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "" + +#: models.py:788 +msgid "HTML" +msgstr "" + +#: models.py:789 +msgid "The same context is available here as in plain_text, above." +msgstr "" + +#: models.py:798 +msgid "Locale of this template." +msgstr "" + +#: models.py:806 +msgid "e-mail template" +msgstr "" + +#: models.py:807 +msgid "e-mail templates" +msgstr "" + +#: models.py:834 +msgid "Knowledge base category" +msgstr "" + +#: models.py:835 +msgid "Knowledge base categories" +msgstr "" + +#: models.py:849 templates/helpdesk/kb_index.html:11 +#: templates/helpdesk/public_homepage.html:11 +msgid "Category" +msgstr "" + +#: models.py:858 +msgid "Question" +msgstr "" + +#: models.py:862 +msgid "Answer" +msgstr "" + +#: models.py:866 +msgid "Votes" +msgstr "" + +#: models.py:867 +msgid "Total number of votes cast for this item" +msgstr "" + +#: models.py:872 +msgid "Positive Votes" +msgstr "" + +#: models.py:873 +msgid "Number of votes for this item which were POSITIVE." +msgstr "" + +#: models.py:878 +msgid "Last Updated" +msgstr "" + +#: models.py:879 +msgid "The date on which this question was most recently changed." +msgstr "" + +#: models.py:893 +msgid "Unrated" +msgstr "" + +#: models.py:901 +msgid "Knowledge base item" +msgstr "" + +#: models.py:902 +msgid "Knowledge base items" +msgstr "" + +#: models.py:926 templates/helpdesk/ticket_list.html:170 +msgid "Query Name" +msgstr "" + +#: models.py:928 +msgid "User-provided name for this query" +msgstr "" + +#: models.py:932 +msgid "Shared With Other Users?" +msgstr "" + +#: models.py:935 +msgid "Should other users see this query?" +msgstr "" + +#: models.py:939 +msgid "Search Query" +msgstr "" + +#: models.py:940 +msgid "Pickled query object. Be wary changing this." +msgstr "" + +#: models.py:950 +msgid "Saved search" +msgstr "" + +#: models.py:951 +msgid "Saved searches" +msgstr "" + +#: models.py:966 +msgid "Settings Dictionary" +msgstr "" + +#: models.py:967 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "" + +#: models.py:993 +msgid "User Setting" +msgstr "" + +#: models.py:994 templates/helpdesk/navigation.html:37 +#: templates/helpdesk/user_settings.html:6 +msgid "User Settings" +msgstr "" + +#: models.py:1036 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "" + +#: models.py:1048 +msgid "Date on which this e-mail address was added" +msgstr "" + +#: models.py:1056 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "" + +#: models.py:1061 +msgid "Save Emails in Mailbox?" +msgstr "" + +#: models.py:1064 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "" + +#: models.py:1101 +msgid "Ignored e-mail address" +msgstr "" + +#: models.py:1102 +msgid "Ignored e-mail addresses" +msgstr "" + +#: models.py:1124 +msgid "User who wishes to receive updates for this ticket." +msgstr "" + +#: models.py:1132 +msgid "For non-user followers, enter their e-mail address" +msgstr "" + +#: models.py:1136 +msgid "Can View Ticket?" +msgstr "" + +#: models.py:1138 +msgid "Can this CC login to view the ticket details?" +msgstr "" + +#: models.py:1142 +msgid "Can Update Ticket?" +msgstr "" + +#: models.py:1144 +msgid "Can this CC login and update the ticket?" +msgstr "" + +#: models.py:1175 +msgid "Field Name" +msgstr "" + +#: models.py:1176 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "" + +#: models.py:1181 +msgid "Label" +msgstr "" + +#: models.py:1183 +msgid "The display label for this field" +msgstr "" + +#: models.py:1187 +msgid "Help Text" +msgstr "" + +#: models.py:1188 +msgid "Shown to the user when editing the ticket" +msgstr "" + +#: models.py:1194 +msgid "Character (single line)" +msgstr "" + +#: models.py:1195 +msgid "Text (multi-line)" +msgstr "" + +#: models.py:1196 +msgid "Integer" +msgstr "" + +#: models.py:1197 +msgid "Decimal" +msgstr "" + +#: models.py:1198 +msgid "List" +msgstr "" + +#: models.py:1199 +msgid "Boolean (checkbox yes/no)" +msgstr "" + +#: models.py:1201 +msgid "Time" +msgstr "" + +#: models.py:1202 +msgid "Date & Time" +msgstr "" + +#: models.py:1204 +msgid "URL" +msgstr "" + +#: models.py:1205 +msgid "IP Address" +msgstr "" + +#: models.py:1210 +msgid "Data Type" +msgstr "" + +#: models.py:1212 +msgid "Allows you to restrict the data entered into this field" +msgstr "" + +#: models.py:1217 +msgid "Maximum Length (characters)" +msgstr "" + +#: models.py:1223 +msgid "Decimal Places" +msgstr "" + +#: models.py:1224 +msgid "Only used for decimal fields" +msgstr "" + +#: models.py:1230 +msgid "Add empty first choice to List?" +msgstr "" + +#: models.py:1232 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "" + +#: models.py:1236 +msgid "List Values" +msgstr "" + +#: models.py:1237 +msgid "For list fields only. Enter one option per line." +msgstr "" + +#: models.py:1243 +msgid "Ordering" +msgstr "" + +#: models.py:1244 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "" + +#: models.py:1258 +msgid "Required?" +msgstr "" + +#: models.py:1259 +msgid "Does the user have to enter a value for this field?" +msgstr "" + +#: models.py:1263 +msgid "Staff Only?" +msgstr "" + +#: models.py:1264 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "" + +#: models.py:1273 +msgid "Custom field" +msgstr "" + +#: models.py:1274 +msgid "Custom fields" +msgstr "" + +#: models.py:1297 +msgid "Ticket custom field value" +msgstr "" + +#: models.py:1298 +msgid "Ticket custom field values" +msgstr "" + +#: models.py:1315 +msgid "Depends On Ticket" +msgstr "" + +#: models.py:1324 +msgid "Ticket dependency" +msgstr "" + +#: models.py:1325 +msgid "Ticket dependencies" +msgstr "" + +#: management/commands/create_usersettings.py:25 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "" + +#: management/commands/escalate_tickets.py:148 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "" + +#: management/commands/get_email.py:158 +msgid "Created from e-mail" +msgstr "" + +#: management/commands/get_email.py:162 +msgid "Unknown Sender" +msgstr "" + +#: management/commands/get_email.py:216 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "" + +#: management/commands/get_email.py:220 +msgid "email_html_body.html" +msgstr "" + +#: management/commands/get_email.py:263 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:271 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:329 +msgid " (Reopened)" +msgstr "" + +#: management/commands/get_email.py:331 +msgid " (Updated)" +msgstr "" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"django-helpdesk." +msgstr "" + +#: templates/helpdesk/base.html:10 +msgid "Powered by django-helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:20 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:24 templates/helpdesk/rss_list.html:31 +msgid "My Open Tickets" +msgstr "" + +#: templates/helpdesk/base.html:21 +msgid "All Recent Activity" +msgstr "" + +#: templates/helpdesk/base.html:22 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "" + +#: templates/helpdesk/base.html:52 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:18 +msgid "Helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:30 templates/helpdesk/rss_list.html:31 +msgid "RSS Icon" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "" + +#: templates/helpdesk/base.html:63 +msgid "API" +msgstr "" + +#: templates/helpdesk/base.html:64 templates/helpdesk/system_settings.html:6 +msgid "System Settings" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:146 +msgid "Delete Saved Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:6 +msgid "Delete Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this saved filter " +"(%(query_title)s)? To re-create it, you will need to manually re-" +"filter your ticket listing." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"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." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:14 +#: templates/helpdesk/delete_ticket.html:10 +msgid "No, Don't Delete It" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:16 +#: templates/helpdesk/delete_ticket.html:12 +msgid "Yes - Delete It" +msgstr "" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/navigation.html:65 templates/helpdesk/navigation.html:68 +#: templates/helpdesk/public_homepage.html:27 +msgid "Submit a Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +#: templates/helpdesk/public_homepage.html:28 +msgid "Please provide as descriptive a title and description as possible." +msgstr "" + +#: templates/helpdesk/create_ticket.html:30 +#: templates/helpdesk/public_homepage.html:55 +msgid "Submit Ticket" +msgstr "" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "" + +#: templates/helpdesk/dashboard.html:9 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "" + +#: templates/helpdesk/dashboard.html:14 +msgid "Helpdesk Summary" +msgstr "" + +#: templates/helpdesk/dashboard.html:36 +msgid "Current Ticket Stats" +msgstr "" + +#: templates/helpdesk/dashboard.html:37 +msgid "Average number of days until ticket is closed (all tickets): " +msgstr "" + +#: templates/helpdesk/dashboard.html:38 +msgid "" +"Average number of days until ticket is closed (tickets opened in last 60 " +"days): " +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "Click" +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "for detailed average by month." +msgstr "" + +#: templates/helpdesk/dashboard.html:40 +msgid "Distribution of open tickets, grouped by time period:" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Days since opened" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Number of open tickets" +msgstr "" + +#: templates/helpdesk/dashboard.html:57 +msgid "All Tickets submitted by you" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:225 +msgid "Pr" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:124 +msgid "Last Update" +msgstr "" + +#: templates/helpdesk/dashboard.html:77 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "" + +#: templates/helpdesk/dashboard.html:92 +msgid "You have no tickets assigned to you." +msgstr "" + +#: templates/helpdesk/dashboard.html:99 +msgid "(pick up a ticket if you start to work on it)" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/ticket_desc_table.html:38 +msgid "Take" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:262 +msgid "Delete" +msgstr "" + +#: templates/helpdesk/dashboard.html:114 +msgid "There are no unassigned tickets." +msgstr "" + +#: templates/helpdesk/dashboard.html:123 +msgid "Closed & resolved Tickets you used to work on" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:3 +#: templates/helpdesk/delete_ticket.html:6 +msgid "Delete Ticket" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this ticket (%(ticket_title)s)? All" +" traces of the ticket, including followups, attachments, and updates will be" +" irreversibly removed." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:9 +msgid "Edit a Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "Note" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "" +"Editing a ticket does not send an e-mail to the ticket owner or " +"submitter. No new details should be entered, this form should only be used " +"to fix incorrect details or clean up the submission." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:33 +msgid "Save Changes" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:6 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:8 +msgid "" +"To ignore an e-mail address and prevent any emails from that address " +"creating tickets automatically, enter the e-mail address below." +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:10 +msgid "" +"You can either enter a whole e-mail address such as " +"email@domain.com or a portion of an e-mail address with a wildcard," +" such as *@domain.com or user@*." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:6 +msgid "Un-Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:8 +#, python-format +msgid "" +"Are you sure you wish to stop removing this email address " +"(%(email_address)s) and allow their e-mails to automatically create" +" tickets in your system? You can re-add this e-mail address at any time." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:10 +msgid "Keep Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:12 +msgid "Stop Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:260 +msgid "All" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "" + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:12 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "" + +#: templates/helpdesk/kb_category.html:13 +msgid "Article" +msgstr "" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:21 +#: templates/helpdesk/navigation.html:71 +msgid "Knowledgebase" +msgstr "" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "" + +#: templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:16 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "" + +#: templates/helpdesk/kb_item.html:18 +msgid "Feedback" +msgstr "" + +#: templates/helpdesk/kb_item.html:20 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "" + +#: templates/helpdesk/kb_item.html:23 +msgid "This article was useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:24 +msgid "This article was not useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:27 +msgid "The results of voting by other readers of this article are below:" +msgstr "" + +#: templates/helpdesk/kb_item.html:30 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:31 +#, python-format +msgid "Votes: %(votes)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:32 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "" + +#: templates/helpdesk/navigation.html:16 templates/helpdesk/navigation.html:64 +msgid "Dashboard" +msgstr "" + +#: templates/helpdesk/navigation.html:18 +msgid "New Ticket" +msgstr "" + +#: templates/helpdesk/navigation.html:19 +msgid "Stats" +msgstr "" + +#: templates/helpdesk/navigation.html:24 +msgid "Saved Query" +msgstr "" + +#: templates/helpdesk/navigation.html:39 +msgid "Change password" +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Search..." +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Logout" +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Log In" +msgstr "" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:73 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "" + +#: templates/helpdesk/public_homepage.html:28 +msgid "All fields are required." +msgstr "" + +#: templates/helpdesk/public_homepage.html:66 +msgid "Please use button at upper right to login first." +msgstr "" + +#: templates/helpdesk/public_homepage.html:82 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "" + +#: templates/helpdesk/public_homepage.html:86 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:5 +msgid "Sorry, but there has been an error trying to submit your ticket." +msgstr "" + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"Our system has marked your submission as spam, so we are " +"unable to save it. If this is not spam, please press back and re-type your " +"message. Be careful to avoid sounding 'spammy', and if you have heaps of " +"links please try removing them if possible." +msgstr "" + +#: templates/helpdesk/public_spam.html:7 +msgid "" +"We are sorry for any inconvenience, however this check is required to avoid " +"our helpdesk resources being overloaded by spammers." +msgstr "" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:9 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:13 +#: templates/helpdesk/ticket_desc_table.html:32 +msgid "Submitted On" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:35 +msgid "Tags" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept and Close" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:57 +#: templates/helpdesk/ticket.html:66 +msgid "Follow-Ups" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:65 +#: templates/helpdesk/ticket.html:100 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "" + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "" + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:27 views/staff.py:1049 +msgid "Days until ticket closed by Month" +msgstr "" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "" + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "" + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "" + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "" + +#: templates/helpdesk/rss_list.html:23 +msgid "Per-Queue Feeds" +msgstr "" + +#: templates/helpdesk/rss_list.html:24 +msgid "All Open Tickets" +msgstr "" + +#: templates/helpdesk/rss_list.html:30 +msgid "Open Tickets" +msgstr "" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "" + +#: templates/helpdesk/system_settings.html:8 +msgid "The following items can be maintained by you or other superusers:" +msgstr "" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:200 +msgid "Add Another File" +msgstr "" + +#: templates/helpdesk/ticket.html:73 templates/helpdesk/ticket.html.py:86 +msgid "Private" +msgstr "" + +#: templates/helpdesk/ticket.html:119 +msgid "Respond to this ticket" +msgstr "" + +#: templates/helpdesk/ticket.html:126 +msgid "Use a Pre-set Reply" +msgstr "" + +#: templates/helpdesk/ticket.html:126 templates/helpdesk/ticket.html.py:166 +msgid "(Optional)" +msgstr "" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "" + +#: templates/helpdesk/ticket.html:131 +msgid "Comment / Resolution" +msgstr "" + +#: templates/helpdesk/ticket.html:133 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "" + +#: templates/helpdesk/ticket.html:136 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "" + +#: templates/helpdesk/ticket.html:166 +msgid "Is this update public?" +msgstr "" + +#: templates/helpdesk/ticket.html:168 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "" + +#: templates/helpdesk/ticket.html:172 +msgid "Change Further Details »" +msgstr "" + +#: templates/helpdesk/ticket.html:181 templates/helpdesk/ticket_list.html:68 +#: templates/helpdesk/ticket_list.html:97 +#: templates/helpdesk/ticket_list.html:225 +msgid "Owner" +msgstr "" + +#: templates/helpdesk/ticket.html:182 +msgid "Unassign" +msgstr "" + +#: templates/helpdesk/ticket.html:193 +msgid "Attach File(s) »" +msgstr "" + +#: templates/helpdesk/ticket.html:199 +msgid "Attach a File" +msgstr "" + +#: templates/helpdesk/ticket.html:207 +msgid "Update This Ticket" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Unhold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Hold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:9 +#, python-format +msgid "Queue: %(queue)s" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Assigned To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:43 +msgid "Ignore" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:52 +msgid "Copies To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Manage" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Subscribe" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to subscribe yourself to this ticket, if you want to receive an " +"e-mail whenever this ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:57 +msgid "Dependencies" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:59 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:60 +msgid "Remove Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "This ticket has no dependencies." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "Add Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Change Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:67 +#: templates/helpdesk/ticket_list.html:79 +msgid "Sorting" +msgstr "" + +#: templates/helpdesk/ticket_list.html:71 +#: templates/helpdesk/ticket_list.html:139 +msgid "Keywords" +msgstr "" + +#: templates/helpdesk/ticket_list.html:72 +msgid "Date Range" +msgstr "" + +#: templates/helpdesk/ticket_list.html:100 +msgid "Reverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:102 +msgid "Ordering applied to tickets" +msgstr "" + +#: templates/helpdesk/ticket_list.html:107 +msgid "Owner(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:111 +msgid "(ME)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:115 +msgid "Ctrl-Click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:120 +msgid "Queue(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:121 +#: templates/helpdesk/ticket_list.html:127 +msgid "Ctrl-click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:126 +msgid "Status(es)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:132 +msgid "Date (From)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:133 +msgid "Date (To)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:134 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "" + +#: templates/helpdesk/ticket_list.html:140 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "" + +#: templates/helpdesk/ticket_list.html:144 +msgid "Apply Filter" +msgstr "" + +#: templates/helpdesk/ticket_list.html:146 +#, python-format +msgid "You are currently viewing saved query \"%(query_name)s\"." +msgstr "" + +#: templates/helpdesk/ticket_list.html:149 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "" + +#: templates/helpdesk/ticket_list.html:162 +#: templates/helpdesk/ticket_list.html:181 +msgid "Save Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:172 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "" + +#: templates/helpdesk/ticket_list.html:174 +msgid "Shared?" +msgstr "" + +#: templates/helpdesk/ticket_list.html:175 +msgid "Yes, share this query with other users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:176 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:195 +msgid "Use Saved Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:202 +msgid "Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:207 +msgid "Run Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:240 +msgid "No Tickets Match Your Selection" +msgstr "" + +#: templates/helpdesk/ticket_list.html:247 +msgid "Previous" +msgstr "" + +#: templates/helpdesk/ticket_list.html:251 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:255 +msgid "Next" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Select:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "None" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Inverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "With Selected Tickets:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Take (Assign to me)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Don't Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Assign To" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Nobody (Unassign)" +msgstr "" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "" + +#: templates/helpdesk/user_settings.html:8 +msgid "" +"Use the following options to change the way your helpdesk system works for " +"you. These settings do not impact any other user." +msgstr "" + +#: templates/helpdesk/user_settings.html:14 +msgid "Save Options" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "" + +#: templates/helpdesk/registration/login.html:14 +msgid "To log in simply enter your username and password below." +msgstr "" + +#: templates/helpdesk/registration/login.html:17 +msgid "Your username and password didn't match. Please try again." +msgstr "" + +#: templates/helpdesk/registration/login.html:20 +msgid "Login" +msgstr "" + +#: views/feeds.py:39 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:44 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:50 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:55 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:102 +msgid "Helpdesk: Unassigned Tickets" +msgstr "" + +#: views/feeds.py:103 +msgid "Unassigned Open and Reopened tickets" +msgstr "" + +#: views/feeds.py:128 +msgid "Helpdesk: Recent Followups" +msgstr "" + +#: views/feeds.py:129 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "" + +#: views/feeds.py:144 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "" + +#: views/feeds.py:149 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "" + +#: views/public.py:89 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "" + +#: views/public.py:107 +msgid "Submitter accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:235 +msgid "Accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:369 +#, python-format +msgid "Assigned to %(username)s" +msgstr "" + +#: views/staff.py:392 +msgid "Updated" +msgstr "" + +#: views/staff.py:577 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "" + +#: views/staff.py:582 +msgid "Unassigned in bulk update" +msgstr "" + +#: views/staff.py:587 views/staff.py:592 +msgid "Closed in bulk update" +msgstr "" + +#: views/staff.py:806 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "" + +#: views/staff.py:910 +msgid "Ticket taken off hold" +msgstr "" + +#: views/staff.py:913 +msgid "Ticket placed on hold" +msgstr "" + +#: views/staff.py:1007 +msgid "User by Priority" +msgstr "" + +#: views/staff.py:1013 +msgid "User by Queue" +msgstr "" + +#: views/staff.py:1019 +msgid "User by Status" +msgstr "" + +#: views/staff.py:1025 +msgid "User by Month" +msgstr "" + +#: views/staff.py:1031 +msgid "Queue by Priority" +msgstr "" + +#: views/staff.py:1037 +msgid "Queue by Status" +msgstr "" + +#: views/staff.py:1043 +msgid "Queue by Month" +msgstr "" diff --git a/build/lib/helpdesk/locale/cs/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/cs/LC_MESSAGES/django.mo new file mode 100644 index 00000000..5057b8bd Binary files /dev/null and b/build/lib/helpdesk/locale/cs/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/cs/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/cs/LC_MESSAGES/django.po new file mode 100644 index 00000000..9d4c81fc --- /dev/null +++ b/build/lib/helpdesk/locale/cs/LC_MESSAGES/django.po @@ -0,0 +1,2393 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2014-07-26 14:14+0200\n" +"PO-Revision-Date: 2014-08-01 09:58+0000\n" +"Last-Translator: Ross Poulton \n" +"Language-Team: Czech (http://www.transifex.com/projects/p/django-helpdesk/language/cs/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: cs\n" +"Plural-Forms: nplurals=3; plural=(n==1) ? 0 : (n>=2 && n<=4) ? 1 : 2;\n" + +#: forms.py:128 forms.py:328 models.py:190 models.py:267 +#: templates/helpdesk/dashboard.html:15 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/dashboard.html:124 templates/helpdesk/rss_list.html:24 +#: templates/helpdesk/ticket_list.html:69 +#: templates/helpdesk/ticket_list.html:88 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:1032 +#: views/staff.py:1038 views/staff.py:1044 views/staff.py:1050 +msgid "Queue" +msgstr "" + +#: forms.py:137 +msgid "Summary of the problem" +msgstr "" + +#: forms.py:142 +msgid "Submitter E-Mail Address" +msgstr "" + +#: forms.py:144 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "" + +#: forms.py:150 +msgid "Description of Issue" +msgstr "" + +#: forms.py:157 +msgid "Case owner" +msgstr "" + +#: forms.py:158 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "" + +#: forms.py:166 models.py:327 management/commands/escalate_tickets.py:154 +#: templates/helpdesk/public_view_ticket.html:23 +#: templates/helpdesk/ticket.html:184 +#: templates/helpdesk/ticket_desc_table.html:47 +#: templates/helpdesk/ticket_list.html:94 views/staff.py:429 +msgid "Priority" +msgstr "" + +#: forms.py:167 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "" + +#: forms.py:174 forms.py:365 models.py:335 templates/helpdesk/ticket.html:186 +#: views/staff.py:439 +msgid "Due on" +msgstr "" + +#: forms.py:186 forms.py:370 +msgid "Attach File" +msgstr "" + +#: forms.py:187 forms.py:371 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "" + +#: forms.py:240 +msgid "Ticket Opened" +msgstr "" + +#: forms.py:247 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "" + +#: forms.py:337 +msgid "Summary of your query" +msgstr "" + +#: forms.py:342 +msgid "Your E-Mail Address" +msgstr "" + +#: forms.py:343 +msgid "We will e-mail you when your ticket is updated." +msgstr "" + +#: forms.py:348 +msgid "Description of your issue" +msgstr "" + +#: forms.py:350 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "" + +#: forms.py:358 +msgid "Urgency" +msgstr "" + +#: forms.py:359 +msgid "Please select a priority carefully." +msgstr "" + +#: forms.py:419 +msgid "Ticket Opened Via Web" +msgstr "" + +#: forms.py:486 +msgid "Show Ticket List on Login?" +msgstr "" + +#: forms.py:487 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "" + +#: forms.py:492 +msgid "E-mail me on ticket change?" +msgstr "" + +#: forms.py:493 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:498 +msgid "E-mail me when assigned a ticket?" +msgstr "" + +#: forms.py:499 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:504 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "" + +#: forms.py:505 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:510 +msgid "Number of tickets to show per page" +msgstr "" + +#: forms.py:511 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "" + +#: forms.py:518 +msgid "Use my e-mail address when submitting tickets?" +msgstr "" + +#: forms.py:519 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "" + +#: models.py:35 models.py:261 models.py:503 models.py:817 models.py:853 +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket.html:178 templates/helpdesk/ticket_list.html:85 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:419 +msgid "Title" +msgstr "" + +#: models.py:40 models.py:822 models.py:1206 +msgid "Slug" +msgstr "" + +#: models.py:41 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "" + +#: models.py:46 models.py:1054 models.py:1129 models.py:1203 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "" + +#: models.py:49 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "" + +#: models.py:55 models.py:794 +msgid "Locale" +msgstr "" + +#: models.py:59 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "" + +#: models.py:63 +msgid "Allow Public Submission?" +msgstr "" + +#: models.py:66 +msgid "Should this queue be listed on the public submission form?" +msgstr "" + +#: models.py:71 +msgid "Allow E-Mail Submission?" +msgstr "" + +#: models.py:74 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "" + +#: models.py:79 +msgid "Escalation Days" +msgstr "" + +#: models.py:82 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "" + +#: models.py:87 +msgid "New Ticket CC Address" +msgstr "" + +#: models.py:91 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "" + +#: models.py:97 +msgid "Updated Ticket CC Address" +msgstr "" + +#: models.py:101 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "" + +#: models.py:108 +msgid "E-Mail Box Type" +msgstr "" + +#: models.py:110 +msgid "POP 3" +msgstr "" + +#: models.py:110 +msgid "IMAP" +msgstr "" + +#: models.py:113 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "" + +#: models.py:118 +msgid "E-Mail Hostname" +msgstr "" + +#: models.py:122 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "" + +#: models.py:127 +msgid "E-Mail Port" +msgstr "" + +#: models.py:130 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "" + +#: models.py:136 +msgid "Use SSL for E-Mail?" +msgstr "" + +#: models.py:139 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "" + +#: models.py:144 +msgid "E-Mail Username" +msgstr "" + +#: models.py:148 +msgid "Username for accessing this mailbox." +msgstr "" + +#: models.py:152 +msgid "E-Mail Password" +msgstr "" + +#: models.py:156 +msgid "Password for the above username" +msgstr "" + +#: models.py:160 +msgid "IMAP Folder" +msgstr "" + +#: models.py:164 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "" + +#: models.py:171 +msgid "E-Mail Check Interval" +msgstr "" + +#: models.py:172 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "" + +#: models.py:191 templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "" + +#: models.py:245 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:138 +msgid "Open" +msgstr "" + +#: models.py:246 templates/helpdesk/ticket.html:144 +#: templates/helpdesk/ticket.html.py:150 templates/helpdesk/ticket.html:155 +#: templates/helpdesk/ticket.html.py:159 +msgid "Reopened" +msgstr "" + +#: models.py:247 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:139 templates/helpdesk/ticket.html.py:145 +#: templates/helpdesk/ticket.html:151 +msgid "Resolved" +msgstr "" + +#: models.py:248 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:140 templates/helpdesk/ticket.html.py:146 +#: templates/helpdesk/ticket.html:152 templates/helpdesk/ticket.html.py:156 +msgid "Closed" +msgstr "" + +#: models.py:249 templates/helpdesk/ticket.html:141 +#: templates/helpdesk/ticket.html.py:147 templates/helpdesk/ticket.html:160 +msgid "Duplicate" +msgstr "" + +#: models.py:253 +msgid "1. Critical" +msgstr "" + +#: models.py:254 +msgid "2. High" +msgstr "" + +#: models.py:255 +msgid "3. Normal" +msgstr "" + +#: models.py:256 +msgid "4. Low" +msgstr "" + +#: models.py:257 +msgid "5. Very Low" +msgstr "" + +#: models.py:271 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/ticket_list.html:82 +#: templates/helpdesk/ticket_list.html:225 +msgid "Created" +msgstr "" + +#: models.py:273 +msgid "Date this ticket was first created" +msgstr "" + +#: models.py:277 +msgid "Modified" +msgstr "" + +#: models.py:279 +msgid "Date this ticket was most recently changed." +msgstr "" + +#: models.py:283 templates/helpdesk/public_view_ticket.html:18 +#: templates/helpdesk/ticket_desc_table.html:42 +msgid "Submitter E-Mail" +msgstr "" + +#: models.py:286 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "" + +#: models.py:295 +msgid "Assigned to" +msgstr "" + +#: models.py:299 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:70 +#: templates/helpdesk/ticket_list.html:91 +#: templates/helpdesk/ticket_list.html:225 +msgid "Status" +msgstr "" + +#: models.py:305 +msgid "On Hold" +msgstr "" + +#: models.py:308 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "" + +#: models.py:313 models.py:826 templates/helpdesk/public_view_ticket.html:41 +#: templates/helpdesk/ticket_desc_table.html:19 +msgid "Description" +msgstr "" + +#: models.py:316 +msgid "The content of the customers query." +msgstr "" + +#: models.py:320 templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Resolution" +msgstr "" + +#: models.py:323 +msgid "The resolution provided to the customer by our staff." +msgstr "" + +#: models.py:331 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "" + +#: models.py:344 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "" + +#: models.py:353 templates/helpdesk/ticket_desc_table.html:38 +#: views/feeds.py:95 views/feeds.py:121 views/feeds.py:173 views/staff.py:376 +msgid "Unassigned" +msgstr "" + +#: models.py:392 +msgid " - On Hold" +msgstr "" + +#: models.py:394 +msgid " - Open dependencies" +msgstr "" + +#: models.py:448 models.py:494 models.py:1117 models.py:1280 models.py:1309 +#: templates/helpdesk/public_homepage.html:78 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "" + +#: models.py:449 templates/helpdesk/navigation.html:17 +#: templates/helpdesk/ticket_list.html:2 +#: templates/helpdesk/ticket_list.html:224 +msgid "Tickets" +msgstr "" + +#: models.py:498 models.py:738 models.py:1047 models.py:1200 +msgid "Date" +msgstr "" + +#: models.py:510 views/staff.py:390 +msgid "Comment" +msgstr "" + +#: models.py:516 +msgid "Public" +msgstr "" + +#: models.py:519 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "" + +#: models.py:527 models.py:922 models.py:1125 views/staff.py:1008 +#: views/staff.py:1014 views/staff.py:1020 views/staff.py:1026 +msgid "User" +msgstr "" + +#: models.py:531 templates/helpdesk/ticket.html:135 +msgid "New Status" +msgstr "" + +#: models.py:535 +msgid "If the status was changed, what was it changed to?" +msgstr "" + +#: models.py:542 models.py:566 models.py:628 +msgid "Follow-up" +msgstr "" + +#: models.py:543 +msgid "Follow-ups" +msgstr "" + +#: models.py:570 models.py:1285 +msgid "Field" +msgstr "" + +#: models.py:575 +msgid "Old Value" +msgstr "" + +#: models.py:581 +msgid "New Value" +msgstr "" + +#: models.py:589 +msgid "removed" +msgstr "" + +#: models.py:591 +#, python-format +msgid "set to %s" +msgstr "" + +#: models.py:593 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "" + +#: models.py:600 +msgid "Ticket change" +msgstr "" + +#: models.py:601 +msgid "Ticket changes" +msgstr "" + +#: models.py:632 +msgid "File" +msgstr "" + +#: models.py:637 +msgid "Filename" +msgstr "" + +#: models.py:642 +msgid "MIME Type" +msgstr "" + +#: models.py:647 +msgid "Size" +msgstr "" + +#: models.py:648 +msgid "Size of this file in bytes" +msgstr "" + +#: models.py:665 +msgid "Attachment" +msgstr "" + +#: models.py:666 +msgid "Attachments" +msgstr "" + +#: models.py:685 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "" + +#: models.py:690 models.py:733 models.py:1042 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "" + +#: models.py:692 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "" + +#: models.py:697 +msgid "Body" +msgstr "" + +#: models.py:698 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "" + +#: models.py:705 +msgid "Pre-set reply" +msgstr "" + +#: models.py:706 +msgid "Pre-set replies" +msgstr "" + +#: models.py:727 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "" + +#: models.py:739 +msgid "Date on which escalation should not happen" +msgstr "" + +#: models.py:746 +msgid "Escalation exclusion" +msgstr "" + +#: models.py:747 +msgid "Escalation exclusions" +msgstr "" + +#: models.py:760 +msgid "Template Name" +msgstr "" + +#: models.py:765 +msgid "Subject" +msgstr "" + +#: models.py:767 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "" + +#: models.py:773 +msgid "Heading" +msgstr "" + +#: models.py:775 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "" + +#: models.py:781 +msgid "Plain Text" +msgstr "" + +#: models.py:782 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "" + +#: models.py:788 +msgid "HTML" +msgstr "" + +#: models.py:789 +msgid "The same context is available here as in plain_text, above." +msgstr "" + +#: models.py:798 +msgid "Locale of this template." +msgstr "" + +#: models.py:806 +msgid "e-mail template" +msgstr "" + +#: models.py:807 +msgid "e-mail templates" +msgstr "" + +#: models.py:834 +msgid "Knowledge base category" +msgstr "" + +#: models.py:835 +msgid "Knowledge base categories" +msgstr "" + +#: models.py:849 templates/helpdesk/kb_index.html:11 +#: templates/helpdesk/public_homepage.html:11 +msgid "Category" +msgstr "" + +#: models.py:858 +msgid "Question" +msgstr "" + +#: models.py:862 +msgid "Answer" +msgstr "" + +#: models.py:866 +msgid "Votes" +msgstr "" + +#: models.py:867 +msgid "Total number of votes cast for this item" +msgstr "" + +#: models.py:872 +msgid "Positive Votes" +msgstr "" + +#: models.py:873 +msgid "Number of votes for this item which were POSITIVE." +msgstr "" + +#: models.py:878 +msgid "Last Updated" +msgstr "" + +#: models.py:879 +msgid "The date on which this question was most recently changed." +msgstr "" + +#: models.py:893 +msgid "Unrated" +msgstr "" + +#: models.py:901 +msgid "Knowledge base item" +msgstr "" + +#: models.py:902 +msgid "Knowledge base items" +msgstr "" + +#: models.py:926 templates/helpdesk/ticket_list.html:170 +msgid "Query Name" +msgstr "" + +#: models.py:928 +msgid "User-provided name for this query" +msgstr "" + +#: models.py:932 +msgid "Shared With Other Users?" +msgstr "" + +#: models.py:935 +msgid "Should other users see this query?" +msgstr "" + +#: models.py:939 +msgid "Search Query" +msgstr "" + +#: models.py:940 +msgid "Pickled query object. Be wary changing this." +msgstr "" + +#: models.py:950 +msgid "Saved search" +msgstr "" + +#: models.py:951 +msgid "Saved searches" +msgstr "" + +#: models.py:966 +msgid "Settings Dictionary" +msgstr "" + +#: models.py:967 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "" + +#: models.py:993 +msgid "User Setting" +msgstr "" + +#: models.py:994 templates/helpdesk/navigation.html:37 +#: templates/helpdesk/user_settings.html:6 +msgid "User Settings" +msgstr "" + +#: models.py:1036 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "" + +#: models.py:1048 +msgid "Date on which this e-mail address was added" +msgstr "" + +#: models.py:1056 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "" + +#: models.py:1061 +msgid "Save Emails in Mailbox?" +msgstr "" + +#: models.py:1064 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "" + +#: models.py:1101 +msgid "Ignored e-mail address" +msgstr "" + +#: models.py:1102 +msgid "Ignored e-mail addresses" +msgstr "" + +#: models.py:1124 +msgid "User who wishes to receive updates for this ticket." +msgstr "" + +#: models.py:1132 +msgid "For non-user followers, enter their e-mail address" +msgstr "" + +#: models.py:1136 +msgid "Can View Ticket?" +msgstr "" + +#: models.py:1138 +msgid "Can this CC login to view the ticket details?" +msgstr "" + +#: models.py:1142 +msgid "Can Update Ticket?" +msgstr "" + +#: models.py:1144 +msgid "Can this CC login and update the ticket?" +msgstr "" + +#: models.py:1175 +msgid "Field Name" +msgstr "" + +#: models.py:1176 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "" + +#: models.py:1181 +msgid "Label" +msgstr "" + +#: models.py:1183 +msgid "The display label for this field" +msgstr "" + +#: models.py:1187 +msgid "Help Text" +msgstr "" + +#: models.py:1188 +msgid "Shown to the user when editing the ticket" +msgstr "" + +#: models.py:1194 +msgid "Character (single line)" +msgstr "" + +#: models.py:1195 +msgid "Text (multi-line)" +msgstr "" + +#: models.py:1196 +msgid "Integer" +msgstr "" + +#: models.py:1197 +msgid "Decimal" +msgstr "" + +#: models.py:1198 +msgid "List" +msgstr "" + +#: models.py:1199 +msgid "Boolean (checkbox yes/no)" +msgstr "" + +#: models.py:1201 +msgid "Time" +msgstr "" + +#: models.py:1202 +msgid "Date & Time" +msgstr "" + +#: models.py:1204 +msgid "URL" +msgstr "" + +#: models.py:1205 +msgid "IP Address" +msgstr "" + +#: models.py:1210 +msgid "Data Type" +msgstr "" + +#: models.py:1212 +msgid "Allows you to restrict the data entered into this field" +msgstr "" + +#: models.py:1217 +msgid "Maximum Length (characters)" +msgstr "" + +#: models.py:1223 +msgid "Decimal Places" +msgstr "" + +#: models.py:1224 +msgid "Only used for decimal fields" +msgstr "" + +#: models.py:1230 +msgid "Add empty first choice to List?" +msgstr "" + +#: models.py:1232 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "" + +#: models.py:1236 +msgid "List Values" +msgstr "" + +#: models.py:1237 +msgid "For list fields only. Enter one option per line." +msgstr "" + +#: models.py:1243 +msgid "Ordering" +msgstr "" + +#: models.py:1244 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "" + +#: models.py:1258 +msgid "Required?" +msgstr "" + +#: models.py:1259 +msgid "Does the user have to enter a value for this field?" +msgstr "" + +#: models.py:1263 +msgid "Staff Only?" +msgstr "" + +#: models.py:1264 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "" + +#: models.py:1273 +msgid "Custom field" +msgstr "" + +#: models.py:1274 +msgid "Custom fields" +msgstr "" + +#: models.py:1297 +msgid "Ticket custom field value" +msgstr "" + +#: models.py:1298 +msgid "Ticket custom field values" +msgstr "" + +#: models.py:1315 +msgid "Depends On Ticket" +msgstr "" + +#: models.py:1324 +msgid "Ticket dependency" +msgstr "" + +#: models.py:1325 +msgid "Ticket dependencies" +msgstr "" + +#: management/commands/create_usersettings.py:25 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "" + +#: management/commands/escalate_tickets.py:148 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "" + +#: management/commands/get_email.py:158 +msgid "Created from e-mail" +msgstr "" + +#: management/commands/get_email.py:162 +msgid "Unknown Sender" +msgstr "" + +#: management/commands/get_email.py:216 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "" + +#: management/commands/get_email.py:220 +msgid "email_html_body.html" +msgstr "" + +#: management/commands/get_email.py:263 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:271 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:329 +msgid " (Reopened)" +msgstr "" + +#: management/commands/get_email.py:331 +msgid " (Updated)" +msgstr "" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"django-helpdesk." +msgstr "" + +#: templates/helpdesk/base.html:10 +msgid "Powered by django-helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:20 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:24 templates/helpdesk/rss_list.html:31 +msgid "My Open Tickets" +msgstr "" + +#: templates/helpdesk/base.html:21 +msgid "All Recent Activity" +msgstr "" + +#: templates/helpdesk/base.html:22 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "" + +#: templates/helpdesk/base.html:52 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:18 +msgid "Helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:30 templates/helpdesk/rss_list.html:31 +msgid "RSS Icon" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "" + +#: templates/helpdesk/base.html:63 +msgid "API" +msgstr "" + +#: templates/helpdesk/base.html:64 templates/helpdesk/system_settings.html:6 +msgid "System Settings" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:146 +msgid "Delete Saved Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:6 +msgid "Delete Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this saved filter " +"(%(query_title)s)? To re-create it, you will need to manually re-" +"filter your ticket listing." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"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." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:14 +#: templates/helpdesk/delete_ticket.html:10 +msgid "No, Don't Delete It" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:16 +#: templates/helpdesk/delete_ticket.html:12 +msgid "Yes - Delete It" +msgstr "" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/navigation.html:65 templates/helpdesk/navigation.html:68 +#: templates/helpdesk/public_homepage.html:27 +msgid "Submit a Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +#: templates/helpdesk/public_homepage.html:28 +msgid "Please provide as descriptive a title and description as possible." +msgstr "" + +#: templates/helpdesk/create_ticket.html:30 +#: templates/helpdesk/public_homepage.html:55 +msgid "Submit Ticket" +msgstr "" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "" + +#: templates/helpdesk/dashboard.html:9 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "" + +#: templates/helpdesk/dashboard.html:14 +msgid "Helpdesk Summary" +msgstr "" + +#: templates/helpdesk/dashboard.html:36 +msgid "Current Ticket Stats" +msgstr "" + +#: templates/helpdesk/dashboard.html:37 +msgid "Average number of days until ticket is closed (all tickets): " +msgstr "" + +#: templates/helpdesk/dashboard.html:38 +msgid "" +"Average number of days until ticket is closed (tickets opened in last 60 " +"days): " +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "Click" +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "for detailed average by month." +msgstr "" + +#: templates/helpdesk/dashboard.html:40 +msgid "Distribution of open tickets, grouped by time period:" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Days since opened" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Number of open tickets" +msgstr "" + +#: templates/helpdesk/dashboard.html:57 +msgid "All Tickets submitted by you" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:225 +msgid "Pr" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:124 +msgid "Last Update" +msgstr "" + +#: templates/helpdesk/dashboard.html:77 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "" + +#: templates/helpdesk/dashboard.html:92 +msgid "You have no tickets assigned to you." +msgstr "" + +#: templates/helpdesk/dashboard.html:99 +msgid "(pick up a ticket if you start to work on it)" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/ticket_desc_table.html:38 +msgid "Take" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:262 +msgid "Delete" +msgstr "" + +#: templates/helpdesk/dashboard.html:114 +msgid "There are no unassigned tickets." +msgstr "" + +#: templates/helpdesk/dashboard.html:123 +msgid "Closed & resolved Tickets you used to work on" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:3 +#: templates/helpdesk/delete_ticket.html:6 +msgid "Delete Ticket" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this ticket (%(ticket_title)s)? All" +" traces of the ticket, including followups, attachments, and updates will be" +" irreversibly removed." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:9 +msgid "Edit a Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "Note" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "" +"Editing a ticket does not send an e-mail to the ticket owner or " +"submitter. No new details should be entered, this form should only be used " +"to fix incorrect details or clean up the submission." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:33 +msgid "Save Changes" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:6 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:8 +msgid "" +"To ignore an e-mail address and prevent any emails from that address " +"creating tickets automatically, enter the e-mail address below." +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:10 +msgid "" +"You can either enter a whole e-mail address such as " +"email@domain.com or a portion of an e-mail address with a wildcard," +" such as *@domain.com or user@*." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:6 +msgid "Un-Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:8 +#, python-format +msgid "" +"Are you sure you wish to stop removing this email address " +"(%(email_address)s) and allow their e-mails to automatically create" +" tickets in your system? You can re-add this e-mail address at any time." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:10 +msgid "Keep Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:12 +msgid "Stop Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:260 +msgid "All" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "" + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:12 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "" + +#: templates/helpdesk/kb_category.html:13 +msgid "Article" +msgstr "" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:21 +#: templates/helpdesk/navigation.html:71 +msgid "Knowledgebase" +msgstr "" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "" + +#: templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:16 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "" + +#: templates/helpdesk/kb_item.html:18 +msgid "Feedback" +msgstr "" + +#: templates/helpdesk/kb_item.html:20 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "" + +#: templates/helpdesk/kb_item.html:23 +msgid "This article was useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:24 +msgid "This article was not useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:27 +msgid "The results of voting by other readers of this article are below:" +msgstr "" + +#: templates/helpdesk/kb_item.html:30 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:31 +#, python-format +msgid "Votes: %(votes)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:32 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "" + +#: templates/helpdesk/navigation.html:16 templates/helpdesk/navigation.html:64 +msgid "Dashboard" +msgstr "" + +#: templates/helpdesk/navigation.html:18 +msgid "New Ticket" +msgstr "" + +#: templates/helpdesk/navigation.html:19 +msgid "Stats" +msgstr "" + +#: templates/helpdesk/navigation.html:24 +msgid "Saved Query" +msgstr "" + +#: templates/helpdesk/navigation.html:39 +msgid "Change password" +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Search..." +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Logout" +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Log In" +msgstr "" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:73 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "" + +#: templates/helpdesk/public_homepage.html:28 +msgid "All fields are required." +msgstr "" + +#: templates/helpdesk/public_homepage.html:66 +msgid "Please use button at upper right to login first." +msgstr "" + +#: templates/helpdesk/public_homepage.html:82 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "" + +#: templates/helpdesk/public_homepage.html:86 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:5 +msgid "Sorry, but there has been an error trying to submit your ticket." +msgstr "" + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"Our system has marked your submission as spam, so we are " +"unable to save it. If this is not spam, please press back and re-type your " +"message. Be careful to avoid sounding 'spammy', and if you have heaps of " +"links please try removing them if possible." +msgstr "" + +#: templates/helpdesk/public_spam.html:7 +msgid "" +"We are sorry for any inconvenience, however this check is required to avoid " +"our helpdesk resources being overloaded by spammers." +msgstr "" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:9 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:13 +#: templates/helpdesk/ticket_desc_table.html:32 +msgid "Submitted On" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:35 +msgid "Tags" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept and Close" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:57 +#: templates/helpdesk/ticket.html:66 +msgid "Follow-Ups" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:65 +#: templates/helpdesk/ticket.html:100 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "" + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "" + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:27 views/staff.py:1049 +msgid "Days until ticket closed by Month" +msgstr "" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "" + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "" + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "" + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "" + +#: templates/helpdesk/rss_list.html:23 +msgid "Per-Queue Feeds" +msgstr "" + +#: templates/helpdesk/rss_list.html:24 +msgid "All Open Tickets" +msgstr "" + +#: templates/helpdesk/rss_list.html:30 +msgid "Open Tickets" +msgstr "" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "" + +#: templates/helpdesk/system_settings.html:8 +msgid "The following items can be maintained by you or other superusers:" +msgstr "" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:200 +msgid "Add Another File" +msgstr "" + +#: templates/helpdesk/ticket.html:73 templates/helpdesk/ticket.html.py:86 +msgid "Private" +msgstr "" + +#: templates/helpdesk/ticket.html:119 +msgid "Respond to this ticket" +msgstr "" + +#: templates/helpdesk/ticket.html:126 +msgid "Use a Pre-set Reply" +msgstr "" + +#: templates/helpdesk/ticket.html:126 templates/helpdesk/ticket.html.py:166 +msgid "(Optional)" +msgstr "" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "" + +#: templates/helpdesk/ticket.html:131 +msgid "Comment / Resolution" +msgstr "" + +#: templates/helpdesk/ticket.html:133 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "" + +#: templates/helpdesk/ticket.html:136 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "" + +#: templates/helpdesk/ticket.html:166 +msgid "Is this update public?" +msgstr "" + +#: templates/helpdesk/ticket.html:168 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "" + +#: templates/helpdesk/ticket.html:172 +msgid "Change Further Details »" +msgstr "" + +#: templates/helpdesk/ticket.html:181 templates/helpdesk/ticket_list.html:68 +#: templates/helpdesk/ticket_list.html:97 +#: templates/helpdesk/ticket_list.html:225 +msgid "Owner" +msgstr "" + +#: templates/helpdesk/ticket.html:182 +msgid "Unassign" +msgstr "" + +#: templates/helpdesk/ticket.html:193 +msgid "Attach File(s) »" +msgstr "" + +#: templates/helpdesk/ticket.html:199 +msgid "Attach a File" +msgstr "" + +#: templates/helpdesk/ticket.html:207 +msgid "Update This Ticket" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Unhold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Hold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:9 +#, python-format +msgid "Queue: %(queue)s" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Assigned To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:43 +msgid "Ignore" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:52 +msgid "Copies To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Manage" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Subscribe" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to subscribe yourself to this ticket, if you want to receive an " +"e-mail whenever this ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:57 +msgid "Dependencies" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:59 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:60 +msgid "Remove Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "This ticket has no dependencies." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "Add Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Change Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:67 +#: templates/helpdesk/ticket_list.html:79 +msgid "Sorting" +msgstr "" + +#: templates/helpdesk/ticket_list.html:71 +#: templates/helpdesk/ticket_list.html:139 +msgid "Keywords" +msgstr "" + +#: templates/helpdesk/ticket_list.html:72 +msgid "Date Range" +msgstr "" + +#: templates/helpdesk/ticket_list.html:100 +msgid "Reverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:102 +msgid "Ordering applied to tickets" +msgstr "" + +#: templates/helpdesk/ticket_list.html:107 +msgid "Owner(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:111 +msgid "(ME)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:115 +msgid "Ctrl-Click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:120 +msgid "Queue(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:121 +#: templates/helpdesk/ticket_list.html:127 +msgid "Ctrl-click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:126 +msgid "Status(es)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:132 +msgid "Date (From)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:133 +msgid "Date (To)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:134 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "" + +#: templates/helpdesk/ticket_list.html:140 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "" + +#: templates/helpdesk/ticket_list.html:144 +msgid "Apply Filter" +msgstr "" + +#: templates/helpdesk/ticket_list.html:146 +#, python-format +msgid "You are currently viewing saved query \"%(query_name)s\"." +msgstr "" + +#: templates/helpdesk/ticket_list.html:149 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "" + +#: templates/helpdesk/ticket_list.html:162 +#: templates/helpdesk/ticket_list.html:181 +msgid "Save Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:172 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "" + +#: templates/helpdesk/ticket_list.html:174 +msgid "Shared?" +msgstr "" + +#: templates/helpdesk/ticket_list.html:175 +msgid "Yes, share this query with other users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:176 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:195 +msgid "Use Saved Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:202 +msgid "Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:207 +msgid "Run Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:240 +msgid "No Tickets Match Your Selection" +msgstr "" + +#: templates/helpdesk/ticket_list.html:247 +msgid "Previous" +msgstr "" + +#: templates/helpdesk/ticket_list.html:251 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:255 +msgid "Next" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Select:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "None" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Inverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "With Selected Tickets:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Take (Assign to me)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Don't Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Assign To" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Nobody (Unassign)" +msgstr "" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "" + +#: templates/helpdesk/user_settings.html:8 +msgid "" +"Use the following options to change the way your helpdesk system works for " +"you. These settings do not impact any other user." +msgstr "" + +#: templates/helpdesk/user_settings.html:14 +msgid "Save Options" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "" + +#: templates/helpdesk/registration/login.html:14 +msgid "To log in simply enter your username and password below." +msgstr "" + +#: templates/helpdesk/registration/login.html:17 +msgid "Your username and password didn't match. Please try again." +msgstr "" + +#: templates/helpdesk/registration/login.html:20 +msgid "Login" +msgstr "" + +#: views/feeds.py:39 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:44 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:50 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:55 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:102 +msgid "Helpdesk: Unassigned Tickets" +msgstr "" + +#: views/feeds.py:103 +msgid "Unassigned Open and Reopened tickets" +msgstr "" + +#: views/feeds.py:128 +msgid "Helpdesk: Recent Followups" +msgstr "" + +#: views/feeds.py:129 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "" + +#: views/feeds.py:144 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "" + +#: views/feeds.py:149 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "" + +#: views/public.py:89 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "" + +#: views/public.py:107 +msgid "Submitter accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:235 +msgid "Accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:369 +#, python-format +msgid "Assigned to %(username)s" +msgstr "" + +#: views/staff.py:392 +msgid "Updated" +msgstr "" + +#: views/staff.py:577 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "" + +#: views/staff.py:582 +msgid "Unassigned in bulk update" +msgstr "" + +#: views/staff.py:587 views/staff.py:592 +msgid "Closed in bulk update" +msgstr "" + +#: views/staff.py:806 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "" + +#: views/staff.py:910 +msgid "Ticket taken off hold" +msgstr "" + +#: views/staff.py:913 +msgid "Ticket placed on hold" +msgstr "" + +#: views/staff.py:1007 +msgid "User by Priority" +msgstr "" + +#: views/staff.py:1013 +msgid "User by Queue" +msgstr "" + +#: views/staff.py:1019 +msgid "User by Status" +msgstr "" + +#: views/staff.py:1025 +msgid "User by Month" +msgstr "" + +#: views/staff.py:1031 +msgid "Queue by Priority" +msgstr "" + +#: views/staff.py:1037 +msgid "Queue by Status" +msgstr "" + +#: views/staff.py:1043 +msgid "Queue by Month" +msgstr "" diff --git a/build/lib/helpdesk/locale/de/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/de/LC_MESSAGES/django.mo new file mode 100644 index 00000000..1eb489d0 Binary files /dev/null and b/build/lib/helpdesk/locale/de/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/de/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/de/LC_MESSAGES/django.po new file mode 100644 index 00000000..4cd08e31 --- /dev/null +++ b/build/lib/helpdesk/locale/de/LC_MESSAGES/django.po @@ -0,0 +1,2398 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Translators: +# Fabian Affolter , 2013 +# Jannis Leidel , 2011 +# Marc-Stefan Cassola , 2011 +# Ross Poulton , 2011 +# Horst Gutmann , 2012 +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2014-07-26 14:14+0200\n" +"PO-Revision-Date: 2014-08-01 09:58+0000\n" +"Last-Translator: Ross Poulton \n" +"Language-Team: German (http://www.transifex.com/projects/p/django-helpdesk/language/de/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: de\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: forms.py:128 forms.py:328 models.py:190 models.py:267 +#: templates/helpdesk/dashboard.html:15 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/dashboard.html:124 templates/helpdesk/rss_list.html:24 +#: templates/helpdesk/ticket_list.html:69 +#: templates/helpdesk/ticket_list.html:88 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:1032 +#: views/staff.py:1038 views/staff.py:1044 views/staff.py:1050 +msgid "Queue" +msgstr "Ticketsammlung" + +#: forms.py:137 +msgid "Summary of the problem" +msgstr "Zusammenfassung des Problems" + +#: forms.py:142 +msgid "Submitter E-Mail Address" +msgstr "E-Mail-Adresse des Erstellers" + +#: forms.py:144 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "Alle öffentlichen Ticket-Updates werden an diese E-Mail-Adresse geschickt" + +#: forms.py:150 +msgid "Description of Issue" +msgstr "Problembeschreibung" + +#: forms.py:157 +msgid "Case owner" +msgstr "Verantwortlicher" + +#: forms.py:158 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "Wenn Sie andere Verantwortliche als sich selbst auswählen, werden diese sofort per E-Mail mit den Details zum Ticket benachrichtigt." + +#: forms.py:166 models.py:327 management/commands/escalate_tickets.py:154 +#: templates/helpdesk/public_view_ticket.html:23 +#: templates/helpdesk/ticket.html:184 +#: templates/helpdesk/ticket_desc_table.html:47 +#: templates/helpdesk/ticket_list.html:94 views/staff.py:429 +msgid "Priority" +msgstr "Priorität" + +#: forms.py:167 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "Wählen Sie die Priorität mit Bedacht. Im Zweifel lassen Sie sie bei '3'." + +#: forms.py:174 forms.py:365 models.py:335 templates/helpdesk/ticket.html:186 +#: views/staff.py:439 +msgid "Due on" +msgstr "Fällig am" + +#: forms.py:186 forms.py:370 +msgid "Attach File" +msgstr "Datei anhängen" + +#: forms.py:187 forms.py:371 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "Sie können eine Datei (z.B. ein Dokument oder ein Bildschirmphoto) an das Ticket anhängen." + +#: forms.py:240 +msgid "Ticket Opened" +msgstr "Ticket geöffnet" + +#: forms.py:247 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "Ticket geöffnet und %(name)s zugewiesen " + +#: forms.py:337 +msgid "Summary of your query" +msgstr "Zusammenfassung Ihrer Anfrage" + +#: forms.py:342 +msgid "Your E-Mail Address" +msgstr "Ihre E-Mail-Adresse" + +#: forms.py:343 +msgid "We will e-mail you when your ticket is updated." +msgstr "Wir werden Ihnen eine E-Mail schicken, wenn Ihr Ticket geupdated wurde." + +#: forms.py:348 +msgid "Description of your issue" +msgstr "Beschreibung Ihres Problems" + +#: forms.py:350 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "Bitten beschreiben Sie alle Details, die wir zur Bearbeitung Ihrer Anfrage benötigen könnten." + +#: forms.py:358 +msgid "Urgency" +msgstr "Dringlichkeit" + +#: forms.py:359 +msgid "Please select a priority carefully." +msgstr "Wählen Sie die Priorität mit Bedacht. " + +#: forms.py:419 +msgid "Ticket Opened Via Web" +msgstr "Ticket über das Web geöffnet" + +#: forms.py:486 +msgid "Show Ticket List on Login?" +msgstr "Liste mit Tickets beim Anmelden zeigen?" + +#: forms.py:487 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "Liste mit Tickets bei der Anmeldung zeigen? Sonst wird eine Übersicht angezeigt." + +#: forms.py:492 +msgid "E-mail me on ticket change?" +msgstr "Bei Änderungen am Ticket per E-Mail benachrichtigen?" + +#: forms.py:493 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "Wenn Sie der Verantwortliche für ein Ticket sind und dieses wird über das Web von jemandem bearbeitet, wollen Sie per E-Mail benachrichtigt werden?" + +#: forms.py:498 +msgid "E-mail me when assigned a ticket?" +msgstr "Per E-Mail benachrichtigen, wenn Ihnen ein Ticket zugewiesen wird?" + +#: forms.py:499 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "Möchten Sie eine E-Mail erhalten, wenn Ihnen ein Ticket über das Web zugewiesen wird?" + +#: forms.py:504 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "Per E-Mail benachrichtigen, wenn ein Ticket über die API bearbeitet wird?" + +#: forms.py:505 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "Per E-Mail benachrichtigen, wenn ein Ticket über die API bearbeitet wird?" + +#: forms.py:510 +msgid "Number of tickets to show per page" +msgstr "Anzahl der pro Seite anzuzeigenden Tickets" + +#: forms.py:511 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "Wie viele Tickets möchten Sie auf der Ticket-Liste sehen?" + +#: forms.py:518 +msgid "Use my e-mail address when submitting tickets?" +msgstr "Ihre E-Mail-Adresse beim Erstellen von Tickets verwenden?" + +#: forms.py:519 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "Soll Ihre E-Mail-Adresse automatisch als Absender verwendet werden, wenn Sie ein Ticket erstellen? Sie können auch eine andere E-Mail-Adresse eingeben, diese Option legt lediglich das Standardverhalten fest." + +#: models.py:35 models.py:261 models.py:503 models.py:817 models.py:853 +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket.html:178 templates/helpdesk/ticket_list.html:85 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:419 +msgid "Title" +msgstr "Titel" + +#: models.py:40 models.py:822 models.py:1206 +msgid "Slug" +msgstr "Kennung" + +#: models.py:41 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "Diese Kennung wird zur Erstellung der Ticket-IDs verwendet. Bitte ändern Sie sie nach der Festlegung nicht mehr, sonst könnte es Probleme beim E-Mail Versand geben." + +#: models.py:46 models.py:1054 models.py:1129 models.py:1203 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "E-Mail-Adresse" + +#: models.py:49 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "Alle ausgehenden E-Mails dieser Ticketsammlung werden diese E-mail Adresse benutzen. Falls Sie IMAP oder POP3 benutzen, sollte dies die E-Mail-Adresse dieser Mailbox sein." + +#: models.py:55 models.py:794 +msgid "Locale" +msgstr "Spracheinstellung" + +#: models.py:59 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "Spracheinstellung für diese Ticketsammlung. Alle Korrespondenz zu dieser Ticketsammlung wird in dieser Sprache sein." + +#: models.py:63 +msgid "Allow Public Submission?" +msgstr "Öffentliche Erstellung zulassen?" + +#: models.py:66 +msgid "Should this queue be listed on the public submission form?" +msgstr "Soll diese Ticketsammlung im öffentlichen Formular verfügbar sein?" + +#: models.py:71 +msgid "Allow E-Mail Submission?" +msgstr "Erstellung per E-Mail zulassen?" + +#: models.py:74 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "Möchten Sie nachfolgende E-Mail-Adresse nach neuen Tickets abfragen?" + +#: models.py:79 +msgid "Escalation Days" +msgstr "Tage bis zur Eskalation" + +#: models.py:82 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "Wie oft soll die Priorität von nicht zurückgehaltenen Tickets erhöht werden? Geben sie 0 an, falls sie keine Eskalation wünschen." + +#: models.py:87 +msgid "New Ticket CC Address" +msgstr "Ticketerstellung auch melden an" + +#: models.py:91 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "Jede eingegebene E-Mail Adresse wird benachrichtigt wenn ein neues Ticket in dieser Sammlung erstellt wird. Mehrere E-Mail Adressen durch Kommata getrennt." + +#: models.py:97 +msgid "Updated Ticket CC Address" +msgstr "Ticketbearbeitung auch melden an" + +#: models.py:101 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "Jede eingegebene E-Mail Adresse wird über jede Aktivität (neues Ticket, Tickets geschlossen, Aktualisierungen, Neuzuweisungen, usw.) in dieser Sammlung benachrichtigt. Mehrere E-Mail Adressen durch Kommata getrennt." + +#: models.py:108 +msgid "E-Mail Box Type" +msgstr "Art der E-Mail-Box" + +#: models.py:110 +msgid "POP 3" +msgstr "POP3" + +#: models.py:110 +msgid "IMAP" +msgstr "IMAP" + +#: models.py:113 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "Art des E-Mail-Servers, von dem Tickets automatisch aus der Mailbox erstellt werden - sowohl POP3 als auch IMAP werden unterstützt." + +#: models.py:118 +msgid "E-Mail Hostname" +msgstr "E-Mail-Hostname" + +#: models.py:122 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "Die Adresse Ihres E-Mail-Servers - entweder der Domainname oder die " + +#: models.py:127 +msgid "E-Mail Port" +msgstr "Port des E-Mail Servers" + +#: models.py:130 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "Portnummer, unter der der E-Mail-Dienst erreichbar ist. Standardwerte sind '110' für POP3 und '143' für IMAP, diese können allerdings je nach Server anders sein. Wenn Sie nichts angeben, werden die Standardwerte benutzt." + +#: models.py:136 +msgid "Use SSL for E-Mail?" +msgstr "SSL für E-Mails verwenden?" + +#: models.py:139 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "Falls Sie SSL für IMAP oder POP3 verwenden: der Standardport für IMAP ist '993' und für POP3 '995'." + +#: models.py:144 +msgid "E-Mail Username" +msgstr "E-Mail-Benutzername" + +#: models.py:148 +msgid "Username for accessing this mailbox." +msgstr "Benutzername, um auf diese Mailbox zuzugreifen" + +#: models.py:152 +msgid "E-Mail Password" +msgstr "E-Mail-Passwort" + +#: models.py:156 +msgid "Password for the above username" +msgstr "Passwort zum obigen Benutzernamen" + +#: models.py:160 +msgid "IMAP Folder" +msgstr "IMAP-Ordner" + +#: models.py:164 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "Falls Sie IMAP verwenden wollen, von welchem Ordner sollen die Tickets abgerufen werden? Sie können so ein E-mail Konto für mehrere Ticketsammlungen verwenden, indem Sie für die Ticketsammlungen getrennte Ordner auf Ihrem IMAP Server anlegen." + +#: models.py:171 +msgid "E-Mail Check Interval" +msgstr "E-Mail-Abrufintervall" + +#: models.py:172 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "Wie oft soll das E-mail Konto abgerufen werden? (in Minuten)" + +#: models.py:191 templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "" + +#: models.py:245 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:138 +msgid "Open" +msgstr "Offen" + +#: models.py:246 templates/helpdesk/ticket.html:144 +#: templates/helpdesk/ticket.html.py:150 templates/helpdesk/ticket.html:155 +#: templates/helpdesk/ticket.html.py:159 +msgid "Reopened" +msgstr "Wieder geöffnet" + +#: models.py:247 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:139 templates/helpdesk/ticket.html.py:145 +#: templates/helpdesk/ticket.html:151 +msgid "Resolved" +msgstr "Gelöst" + +#: models.py:248 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:140 templates/helpdesk/ticket.html.py:146 +#: templates/helpdesk/ticket.html:152 templates/helpdesk/ticket.html.py:156 +msgid "Closed" +msgstr "Geschlossen" + +#: models.py:249 templates/helpdesk/ticket.html:141 +#: templates/helpdesk/ticket.html.py:147 templates/helpdesk/ticket.html:160 +msgid "Duplicate" +msgstr "Duplikat" + +#: models.py:253 +msgid "1. Critical" +msgstr "1. Kritisch" + +#: models.py:254 +msgid "2. High" +msgstr "2. Hoch" + +#: models.py:255 +msgid "3. Normal" +msgstr "3. Normal" + +#: models.py:256 +msgid "4. Low" +msgstr "4. Niedrig" + +#: models.py:257 +msgid "5. Very Low" +msgstr "5. Sehr niedrig" + +#: models.py:271 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/ticket_list.html:82 +#: templates/helpdesk/ticket_list.html:225 +msgid "Created" +msgstr "Erstellt" + +#: models.py:273 +msgid "Date this ticket was first created" +msgstr "Erstellungsdatum des Tickets" + +#: models.py:277 +msgid "Modified" +msgstr "Bearbeitet" + +#: models.py:279 +msgid "Date this ticket was most recently changed." +msgstr "Bearbeitungsdatum des Tickets" + +#: models.py:283 templates/helpdesk/public_view_ticket.html:18 +#: templates/helpdesk/ticket_desc_table.html:42 +msgid "Submitter E-Mail" +msgstr "E-Mail-Adresse des Erstellers" + +#: models.py:286 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "Der Ersteller wird eine E-Mail zu allen öffentlich sichtbaren Weiterbearbeitungen dieses Tickets erhalten." + +#: models.py:295 +msgid "Assigned to" +msgstr "Zugewiesen" + +#: models.py:299 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:70 +#: templates/helpdesk/ticket_list.html:91 +#: templates/helpdesk/ticket_list.html:225 +msgid "Status" +msgstr "Status" + +#: models.py:305 +msgid "On Hold" +msgstr "Zurückgehalten" + +#: models.py:308 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "Ein zurückgehaltenes Ticket wird nicht automatisch eskaliert." + +#: models.py:313 models.py:826 templates/helpdesk/public_view_ticket.html:41 +#: templates/helpdesk/ticket_desc_table.html:19 +msgid "Description" +msgstr "Beschreibung" + +#: models.py:316 +msgid "The content of the customers query." +msgstr "Die Anfrage des Kunden." + +#: models.py:320 templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Resolution" +msgstr "Lösung" + +#: models.py:323 +msgid "The resolution provided to the customer by our staff." +msgstr "Die Lösung, die dem Kunden von unseren Mitarbeitern vorgeschlagen wurde." + +#: models.py:331 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "1 = Höchste Priorität, 5 = Niedrige Priorität" + +#: models.py:344 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "Das Datum, an dem dieses Ticket zuletzt eskaliert wurde - wird von management/commands/escalate_tickets.py automatisch aktualisiert." + +#: models.py:353 templates/helpdesk/ticket_desc_table.html:38 +#: views/feeds.py:95 views/feeds.py:121 views/feeds.py:173 views/staff.py:376 +msgid "Unassigned" +msgstr "Nicht zugeordnet" + +#: models.py:392 +msgid " - On Hold" +msgstr " - Zurückgehalten" + +#: models.py:394 +msgid " - Open dependencies" +msgstr "" + +#: models.py:448 models.py:494 models.py:1117 models.py:1280 models.py:1309 +#: templates/helpdesk/public_homepage.html:78 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "Ticket" + +#: models.py:449 templates/helpdesk/navigation.html:17 +#: templates/helpdesk/ticket_list.html:2 +#: templates/helpdesk/ticket_list.html:224 +msgid "Tickets" +msgstr "Tickets" + +#: models.py:498 models.py:738 models.py:1047 models.py:1200 +msgid "Date" +msgstr "Datum" + +#: models.py:510 views/staff.py:390 +msgid "Comment" +msgstr "Kommentar" + +#: models.py:516 +msgid "Public" +msgstr "Öffentlich" + +#: models.py:519 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "Öffentliche Tickets sind vom Ersteller und allen Mitarbeitern einsehbar, nicht-öffentliche Tickets nur von den Mitarbeitern." + +#: models.py:527 models.py:922 models.py:1125 views/staff.py:1008 +#: views/staff.py:1014 views/staff.py:1020 views/staff.py:1026 +msgid "User" +msgstr "Benutzer" + +#: models.py:531 templates/helpdesk/ticket.html:135 +msgid "New Status" +msgstr "Neuer Status" + +#: models.py:535 +msgid "If the status was changed, what was it changed to?" +msgstr "Falls der Status geändert wurde, wie lautet er nun?" + +#: models.py:542 models.py:566 models.py:628 +msgid "Follow-up" +msgstr "Weiterbearbeitung" + +#: models.py:543 +msgid "Follow-ups" +msgstr "" + +#: models.py:570 models.py:1285 +msgid "Field" +msgstr "Feld" + +#: models.py:575 +msgid "Old Value" +msgstr "Alter Wert" + +#: models.py:581 +msgid "New Value" +msgstr "Neuer Wert" + +#: models.py:589 +msgid "removed" +msgstr "entfernt" + +#: models.py:591 +#, python-format +msgid "set to %s" +msgstr "auf %s gesetzt" + +#: models.py:593 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "von \"%(old_value)s\" zu \"%(new_value)s\" geändert" + +#: models.py:600 +msgid "Ticket change" +msgstr "" + +#: models.py:601 +msgid "Ticket changes" +msgstr "" + +#: models.py:632 +msgid "File" +msgstr "Datei" + +#: models.py:637 +msgid "Filename" +msgstr "Dateiname" + +#: models.py:642 +msgid "MIME Type" +msgstr "MIME Type" + +#: models.py:647 +msgid "Size" +msgstr "Größe" + +#: models.py:648 +msgid "Size of this file in bytes" +msgstr "Größe der Datei in Bytes" + +#: models.py:665 +msgid "Attachment" +msgstr "" + +#: models.py:666 +msgid "Attachments" +msgstr "" + +#: models.py:685 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "Leerlassen, um diese Antwort für alle Ticketsammlungen zu verwenden, oder die Ticketsammlungen auswählen, auf die Sie diese Antwort beschränken wollen." + +#: models.py:690 models.py:733 models.py:1042 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "Name" + +#: models.py:692 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "Zur Unterstützung des Benutzers bei der Wahl einer Antwort - wird dem Benutzer nicht angezeigt." + +#: models.py:697 +msgid "Body" +msgstr "Textkörper" + +#: models.py:698 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "Verfügbarer Kontext: {{ ticket }} - Ticket Objekt (z.B. {{ ticket.title }}); {{ queue }} - Die Ticketsammlung; und {{ user }} - der aktuelle Benutzer." + +#: models.py:705 +msgid "Pre-set reply" +msgstr "" + +#: models.py:706 +msgid "Pre-set replies" +msgstr "" + +#: models.py:727 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "Leerlassen, um diese Ausnahme auf alle Ticketsammlungen anzuwenden, oder die Ticketsammlungen auswählen, die damit ausgeschlossen werden sollen." + +#: models.py:739 +msgid "Date on which escalation should not happen" +msgstr "Datum, an dem keine Eskalation stattfinden soll" + +#: models.py:746 +msgid "Escalation exclusion" +msgstr "" + +#: models.py:747 +msgid "Escalation exclusions" +msgstr "" + +#: models.py:760 +msgid "Template Name" +msgstr "Vorlagenname" + +#: models.py:765 +msgid "Subject" +msgstr "Betreff" + +#: models.py:767 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "Wird mit \"[ticket.ticket] ticket.title\" vorangestellt. Wir empfehlen etwas einfaches wie \"(Aktualisiert\") or \"(Geschlossen)\" - der gleiche Kontext ist als einfacher Text weiter unten verfügbar." + +#: models.py:773 +msgid "Heading" +msgstr "Überschrift" + +#: models.py:775 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "Die Überschrift für HTML-E-Mails – der selbe Kontext is weiter unten als einfacher Text verfügbar." + +#: models.py:781 +msgid "Plain Text" +msgstr "Einfacher Text" + +#: models.py:782 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "Der zur Verfügung stehende Kontext beinhaltet {{ ticket }}, {{ queue }} und, je nachdem wann aufgerufen: {{ resolution }} oder {{ comment }}." + +#: models.py:788 +msgid "HTML" +msgstr "HTML" + +#: models.py:789 +msgid "The same context is available here as in plain_text, above." +msgstr "Hier steht der gleiche Kontext wie oben als einfacher Text." + +#: models.py:798 +msgid "Locale of this template." +msgstr "Gebietsschema dieses Templates." + +#: models.py:806 +msgid "e-mail template" +msgstr "" + +#: models.py:807 +msgid "e-mail templates" +msgstr "" + +#: models.py:834 +msgid "Knowledge base category" +msgstr "" + +#: models.py:835 +msgid "Knowledge base categories" +msgstr "" + +#: models.py:849 templates/helpdesk/kb_index.html:11 +#: templates/helpdesk/public_homepage.html:11 +msgid "Category" +msgstr "Kategorie" + +#: models.py:858 +msgid "Question" +msgstr "Frage" + +#: models.py:862 +msgid "Answer" +msgstr "Antwort" + +#: models.py:866 +msgid "Votes" +msgstr "Stimmen" + +#: models.py:867 +msgid "Total number of votes cast for this item" +msgstr "Gesamte abgegebene Stimmen für diesen Eintrag" + +#: models.py:872 +msgid "Positive Votes" +msgstr "Zustimmung" + +#: models.py:873 +msgid "Number of votes for this item which were POSITIVE." +msgstr "Anzahl der Benutzer, die diesen Eintrag hilfreich fand." + +#: models.py:878 +msgid "Last Updated" +msgstr "Zuletzt aktualisiert" + +#: models.py:879 +msgid "The date on which this question was most recently changed." +msgstr "Datum, an dem diese Frage zuletzt bearbeitet wurde." + +#: models.py:893 +msgid "Unrated" +msgstr "Unbewertet" + +#: models.py:901 +msgid "Knowledge base item" +msgstr "" + +#: models.py:902 +msgid "Knowledge base items" +msgstr "" + +#: models.py:926 templates/helpdesk/ticket_list.html:170 +msgid "Query Name" +msgstr "Name der Abfrage" + +#: models.py:928 +msgid "User-provided name for this query" +msgstr "Vom Benutzer vergebener Name für diese Abfrage" + +#: models.py:932 +msgid "Shared With Other Users?" +msgstr "Mit anderen Benutzern geteilt?" + +#: models.py:935 +msgid "Should other users see this query?" +msgstr "Sollen andere Benutzer diese Abfrage sehen?" + +#: models.py:939 +msgid "Search Query" +msgstr "Abfrage suchen" + +#: models.py:940 +msgid "Pickled query object. Be wary changing this." +msgstr "'Serialisiertes Abfrageobjekt. Nur mit Bedacht ändern." + +#: models.py:950 +msgid "Saved search" +msgstr "" + +#: models.py:951 +msgid "Saved searches" +msgstr "" + +#: models.py:966 +msgid "Settings Dictionary" +msgstr "Dictionary mit Einstellungen" + +#: models.py:967 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "Dies is eine base64-enkodierte Repräsentation eines serialisierten Python dictionaries. Ändern Sie dieses Feld nicht im Admin-Interface." + +#: models.py:993 +msgid "User Setting" +msgstr "" + +#: models.py:994 templates/helpdesk/navigation.html:37 +#: templates/helpdesk/user_settings.html:6 +msgid "User Settings" +msgstr "Benutzereinstellungen" + +#: models.py:1036 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "Leerlassen, um diese E-Mail in allen Ticketsammlungen zu ignorieren, oder die Ticketsammlungen auswählen, die diese E-Mail ignorieren sollen." + +#: models.py:1048 +msgid "Date on which this e-mail address was added" +msgstr "Datum an dem die E-Mail-Adresse hinzugefügt wurde" + +#: models.py:1056 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "Geben Sie eine vollständige E-Mail-Adresse oder einen Teil mit Platzhaltern ein, z.B. '*@domain.com' oder 'postmaster@*'." + +#: models.py:1061 +msgid "Save Emails in Mailbox?" +msgstr "E-Mails in der Mailbox speichern?" + +#: models.py:1064 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "Möchten Sie E-Mails von dieser Adresse in der Mailbox speichern? Wenn die Box nicht angekreuzt ist, werden E-Mails von dieser Adresse gelöscht." + +#: models.py:1101 +msgid "Ignored e-mail address" +msgstr "" + +#: models.py:1102 +msgid "Ignored e-mail addresses" +msgstr "" + +#: models.py:1124 +msgid "User who wishes to receive updates for this ticket." +msgstr "Benutzer, der Updates über dieses Ticket erhalten möchte." + +#: models.py:1132 +msgid "For non-user followers, enter their e-mail address" +msgstr "Für nicht registrierte Benutzer nur eine E-Mail-Adresse eingeben." + +#: models.py:1136 +msgid "Can View Ticket?" +msgstr "Kann Ticket einsehen?" + +#: models.py:1138 +msgid "Can this CC login to view the ticket details?" +msgstr "Soll sich dieser 'CC-Benutzer' anmelden und die Ticketdetails einsehen können?" + +#: models.py:1142 +msgid "Can Update Ticket?" +msgstr "Soll er das Ticket bearbeiten können?" + +#: models.py:1144 +msgid "Can this CC login and update the ticket?" +msgstr "Soll dieser 'CC-Benutzer' sich anmelden und das Ticket bearbeiten können?" + +#: models.py:1175 +msgid "Field Name" +msgstr "Feldname" + +#: models.py:1176 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "Wird in der Datenbank verwendet, muss unique sein und darf nur aus Kleinbuchstaben ohne Zeichensetzung bestehen." + +#: models.py:1181 +msgid "Label" +msgstr "Bezeichnung" + +#: models.py:1183 +msgid "The display label for this field" +msgstr "Die Bezeichnung für das Feld" + +#: models.py:1187 +msgid "Help Text" +msgstr "Hilfetext" + +#: models.py:1188 +msgid "Shown to the user when editing the ticket" +msgstr "Wird dem Benutzer bei der Bearbeitung des Tickets gezeigt" + +#: models.py:1194 +msgid "Character (single line)" +msgstr "Zeichen (einzelne Zeile)" + +#: models.py:1195 +msgid "Text (multi-line)" +msgstr "Text (mehrere Zeilen)" + +#: models.py:1196 +msgid "Integer" +msgstr "Ganzzahl" + +#: models.py:1197 +msgid "Decimal" +msgstr "Dezimalzahl" + +#: models.py:1198 +msgid "List" +msgstr "Liste" + +#: models.py:1199 +msgid "Boolean (checkbox yes/no)" +msgstr "Boolscher Wert (als Checkbox)" + +#: models.py:1201 +msgid "Time" +msgstr "Zeit" + +#: models.py:1202 +msgid "Date & Time" +msgstr "Datum & Zeit" + +#: models.py:1204 +msgid "URL" +msgstr "URL" + +#: models.py:1205 +msgid "IP Address" +msgstr "IP-Adresse" + +#: models.py:1210 +msgid "Data Type" +msgstr "Datentyp" + +#: models.py:1212 +msgid "Allows you to restrict the data entered into this field" +msgstr "Zum Einschränken der eingegebenen Daten verwendbar" + +#: models.py:1217 +msgid "Maximum Length (characters)" +msgstr "Maximallänge" + +#: models.py:1223 +msgid "Decimal Places" +msgstr "Dezimalstellen" + +#: models.py:1224 +msgid "Only used for decimal fields" +msgstr "Wird nur für Dezimalzahl-Felder verwendet" + +#: models.py:1230 +msgid "Add empty first choice to List?" +msgstr "" + +#: models.py:1232 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "" + +#: models.py:1236 +msgid "List Values" +msgstr "Listenwerte" + +#: models.py:1237 +msgid "For list fields only. Enter one option per line." +msgstr "Ausschließlich für Listenfelder. Bitte eine Option je Zeile eingeben. " + +#: models.py:1243 +msgid "Ordering" +msgstr "Reihenfolge" + +#: models.py:1244 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "Kleinere Zahlen werden zuerst angezeigt, höhere später." + +#: models.py:1258 +msgid "Required?" +msgstr "Erforderlich?" + +#: models.py:1259 +msgid "Does the user have to enter a value for this field?" +msgstr "Muss der Benutzer dieses Feld ausfüllen?" + +#: models.py:1263 +msgid "Staff Only?" +msgstr "Nur für Admin-Benutzer?" + +#: models.py:1264 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "Wenn aktiviert, wird dieses Feld nicht im öffentlichen Ticket Formular angezeigt." + +#: models.py:1273 +msgid "Custom field" +msgstr "" + +#: models.py:1274 +msgid "Custom fields" +msgstr "" + +#: models.py:1297 +msgid "Ticket custom field value" +msgstr "" + +#: models.py:1298 +msgid "Ticket custom field values" +msgstr "" + +#: models.py:1315 +msgid "Depends On Ticket" +msgstr "hängt ab von Ticket" + +#: models.py:1324 +msgid "Ticket dependency" +msgstr "" + +#: models.py:1325 +msgid "Ticket dependencies" +msgstr "" + +#: management/commands/create_usersettings.py:25 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "Suche nach Benutzern ohne django-helpdesk UserSettings und erstelle diese. Verwendet settings.DEFAULT_USER_SETTINGS, die bei Bedarf überschrieben werden können." + +#: management/commands/escalate_tickets.py:148 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "Ticket nach %s Tagen eskaliert" + +#: management/commands/get_email.py:158 +msgid "Created from e-mail" +msgstr "Aus E-Mail erstellt" + +#: management/commands/get_email.py:162 +msgid "Unknown Sender" +msgstr "Unbekannter Absender" + +#: management/commands/get_email.py:216 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "E-Mail nicht als einfacher Text verfügbar. Siehe Anhang email_html_body.html." + +#: management/commands/get_email.py:220 +msgid "email_html_body.html" +msgstr "email_html_body.html" + +#: management/commands/get_email.py:263 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "E-Mail empfangen von %(sender_email)s" + +#: management/commands/get_email.py:271 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "Ticket wieder geöffnet durch empfangene E-Mail von %(sender_email)s" + +#: management/commands/get_email.py:329 +msgid " (Reopened)" +msgstr "(Wieder geöffnet)" + +#: management/commands/get_email.py:331 +msgid " (Updated)" +msgstr "Aktualisiert" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"django-helpdesk." +msgstr "" + +#: templates/helpdesk/base.html:10 +msgid "Powered by django-helpdesk" +msgstr "Powered by django-helpdesk" + +#: templates/helpdesk/base.html:20 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:24 templates/helpdesk/rss_list.html:31 +msgid "My Open Tickets" +msgstr "Meine offenen Tickets" + +#: templates/helpdesk/base.html:21 +msgid "All Recent Activity" +msgstr "Letzte Aktivitäten" + +#: templates/helpdesk/base.html:22 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "Nicht zugewiesene Tickets" + +#: templates/helpdesk/base.html:52 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:18 +msgid "Helpdesk" +msgstr "Helpdesk" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:30 templates/helpdesk/rss_list.html:31 +msgid "RSS Icon" +msgstr "RSS-Icon" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "RSS-Feeds" + +#: templates/helpdesk/base.html:63 +msgid "API" +msgstr "API" + +#: templates/helpdesk/base.html:64 templates/helpdesk/system_settings.html:6 +msgid "System Settings" +msgstr "Systemeinstellungen" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:146 +msgid "Delete Saved Query" +msgstr "Gespeicherte Abfrage löschen" + +#: templates/helpdesk/confirm_delete_saved_query.html:6 +msgid "Delete Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this saved filter " +"(%(query_title)s)? To re-create it, you will need to manually re-" +"filter your ticket listing." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"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." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:14 +#: templates/helpdesk/delete_ticket.html:10 +msgid "No, Don't Delete It" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:16 +#: templates/helpdesk/delete_ticket.html:12 +msgid "Yes - Delete It" +msgstr "" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/navigation.html:65 templates/helpdesk/navigation.html:68 +#: templates/helpdesk/public_homepage.html:27 +msgid "Submit a Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +#: templates/helpdesk/public_homepage.html:28 +msgid "Please provide as descriptive a title and description as possible." +msgstr "" + +#: templates/helpdesk/create_ticket.html:30 +#: templates/helpdesk/public_homepage.html:55 +msgid "Submit Ticket" +msgstr "" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "Helpdesk-Dashboard" + +#: templates/helpdesk/dashboard.html:9 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "" + +#: templates/helpdesk/dashboard.html:14 +msgid "Helpdesk Summary" +msgstr "Helpdesk-Zusammenfassung" + +#: templates/helpdesk/dashboard.html:36 +msgid "Current Ticket Stats" +msgstr "" + +#: templates/helpdesk/dashboard.html:37 +msgid "Average number of days until ticket is closed (all tickets): " +msgstr "" + +#: templates/helpdesk/dashboard.html:38 +msgid "" +"Average number of days until ticket is closed (tickets opened in last 60 " +"days): " +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "Click" +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "for detailed average by month." +msgstr "" + +#: templates/helpdesk/dashboard.html:40 +msgid "Distribution of open tickets, grouped by time period:" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Days since opened" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Number of open tickets" +msgstr "" + +#: templates/helpdesk/dashboard.html:57 +msgid "All Tickets submitted by you" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:225 +msgid "Pr" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:124 +msgid "Last Update" +msgstr "Letzte Änderung" + +#: templates/helpdesk/dashboard.html:77 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "" + +#: templates/helpdesk/dashboard.html:92 +msgid "You have no tickets assigned to you." +msgstr "Ihnen sind keine Tickets zugewiesen." + +#: templates/helpdesk/dashboard.html:99 +msgid "(pick up a ticket if you start to work on it)" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/ticket_desc_table.html:38 +msgid "Take" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:262 +msgid "Delete" +msgstr "Löschen" + +#: templates/helpdesk/dashboard.html:114 +msgid "There are no unassigned tickets." +msgstr "Es existieren derzeit keine nicht-zugewiesenen Tickets." + +#: templates/helpdesk/dashboard.html:123 +msgid "Closed & resolved Tickets you used to work on" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:3 +#: templates/helpdesk/delete_ticket.html:6 +msgid "Delete Ticket" +msgstr "Ticket löschen" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this ticket (%(ticket_title)s)? All" +" traces of the ticket, including followups, attachments, and updates will be" +" irreversibly removed." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "Ticket bearbeiten" + +#: templates/helpdesk/edit_ticket.html:9 +msgid "Edit a Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "Note" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "" +"Editing a ticket does not send an e-mail to the ticket owner or " +"submitter. No new details should be entered, this form should only be used " +"to fix incorrect details or clean up the submission." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:33 +msgid "Save Changes" +msgstr "Änderungen speichern" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:6 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:8 +msgid "" +"To ignore an e-mail address and prevent any emails from that address " +"creating tickets automatically, enter the e-mail address below." +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:10 +msgid "" +"You can either enter a whole e-mail address such as " +"email@domain.com or a portion of an e-mail address with a wildcard," +" such as *@domain.com or user@*." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:6 +msgid "Un-Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:8 +#, python-format +msgid "" +"Are you sure you wish to stop removing this email address " +"(%(email_address)s) and allow their e-mails to automatically create" +" tickets in your system? You can re-add this e-mail address at any time." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:10 +msgid "Keep Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:12 +msgid "Stop Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:260 +msgid "All" +msgstr "Alle" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "Behalten" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "" + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "Kommentar:" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:12 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "" + +#: templates/helpdesk/kb_category.html:13 +msgid "Article" +msgstr "Artikel" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:21 +#: templates/helpdesk/navigation.html:71 +msgid "Knowledgebase" +msgstr "Wissensdatenbank" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "" + +#: templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Knowledgebase Categories" +msgstr "Wissendatenbank-Kategorien" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "Wissensdatenbank: %(item)s" + +#: templates/helpdesk/kb_item.html:16 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "" + +#: templates/helpdesk/kb_item.html:18 +msgid "Feedback" +msgstr "Feedback" + +#: templates/helpdesk/kb_item.html:20 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "" + +#: templates/helpdesk/kb_item.html:23 +msgid "This article was useful to me" +msgstr "Dieser Artikel war hilfreich." + +#: templates/helpdesk/kb_item.html:24 +msgid "This article was not useful to me" +msgstr "Dieser Artikel war nicht hilfreich." + +#: templates/helpdesk/kb_item.html:27 +msgid "The results of voting by other readers of this article are below:" +msgstr "" + +#: templates/helpdesk/kb_item.html:30 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "Empfehlungen: %(recommendations)s" + +#: templates/helpdesk/kb_item.html:31 +#, python-format +msgid "Votes: %(votes)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:32 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "" + +#: templates/helpdesk/navigation.html:16 templates/helpdesk/navigation.html:64 +msgid "Dashboard" +msgstr "Dashboard" + +#: templates/helpdesk/navigation.html:18 +msgid "New Ticket" +msgstr "Neues Ticket" + +#: templates/helpdesk/navigation.html:19 +msgid "Stats" +msgstr "Statistiken" + +#: templates/helpdesk/navigation.html:24 +msgid "Saved Query" +msgstr "" + +#: templates/helpdesk/navigation.html:39 +msgid "Change password" +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Search..." +msgstr "Suchen..." + +#: templates/helpdesk/navigation.html:50 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Logout" +msgstr "Abmelden" + +#: templates/helpdesk/navigation.html:73 +msgid "Log In" +msgstr "Anmelden" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:73 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "Anzeigesprache ändern" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "Wissensdatenbank-Artikel" + +#: templates/helpdesk/public_homepage.html:28 +msgid "All fields are required." +msgstr "" + +#: templates/helpdesk/public_homepage.html:66 +msgid "Please use button at upper right to login first." +msgstr "" + +#: templates/helpdesk/public_homepage.html:82 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "Ihre E-Mail-Adresse" + +#: templates/helpdesk/public_homepage.html:86 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "Ticket betrachten" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:5 +msgid "Sorry, but there has been an error trying to submit your ticket." +msgstr "" + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"Our system has marked your submission as spam, so we are " +"unable to save it. If this is not spam, please press back and re-type your " +"message. Be careful to avoid sounding 'spammy', and if you have heaps of " +"links please try removing them if possible." +msgstr "" + +#: templates/helpdesk/public_spam.html:7 +msgid "" +"We are sorry for any inconvenience, however this check is required to avoid " +"our helpdesk resources being overloaded by spammers." +msgstr "" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "Fehler:" + +#: templates/helpdesk/public_view_ticket.html:9 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "Ticketsammlung: %(queue_name)s" + +#: templates/helpdesk/public_view_ticket.html:13 +#: templates/helpdesk/ticket_desc_table.html:32 +msgid "Submitted On" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:35 +msgid "Tags" +msgstr "Tags" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept" +msgstr "Akzeptieren" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept and Close" +msgstr "Akzeptieren und schließen" + +#: templates/helpdesk/public_view_ticket.html:57 +#: templates/helpdesk/ticket.html:66 +msgid "Follow-Ups" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:65 +#: templates/helpdesk/ticket.html:100 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "" + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "" + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:27 views/staff.py:1049 +msgid "Days until ticket closed by Month" +msgstr "" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "" + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "" + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "" + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "" + +#: templates/helpdesk/rss_list.html:23 +msgid "Per-Queue Feeds" +msgstr "" + +#: templates/helpdesk/rss_list.html:24 +msgid "All Open Tickets" +msgstr "Alle offenen Tickets" + +#: templates/helpdesk/rss_list.html:30 +msgid "Open Tickets" +msgstr "Offene Tickets" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "Systemeinstellungen ändern" + +#: templates/helpdesk/system_settings.html:8 +msgid "The following items can be maintained by you or other superusers:" +msgstr "" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "Dashboard" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:200 +msgid "Add Another File" +msgstr "" + +#: templates/helpdesk/ticket.html:73 templates/helpdesk/ticket.html.py:86 +msgid "Private" +msgstr "Privat" + +#: templates/helpdesk/ticket.html:119 +msgid "Respond to this ticket" +msgstr "" + +#: templates/helpdesk/ticket.html:126 +msgid "Use a Pre-set Reply" +msgstr "" + +#: templates/helpdesk/ticket.html:126 templates/helpdesk/ticket.html.py:166 +msgid "(Optional)" +msgstr "(Optional)" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "" + +#: templates/helpdesk/ticket.html:131 +msgid "Comment / Resolution" +msgstr "" + +#: templates/helpdesk/ticket.html:133 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "" + +#: templates/helpdesk/ticket.html:136 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "" + +#: templates/helpdesk/ticket.html:166 +msgid "Is this update public?" +msgstr "" + +#: templates/helpdesk/ticket.html:168 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "" + +#: templates/helpdesk/ticket.html:172 +msgid "Change Further Details »" +msgstr "" + +#: templates/helpdesk/ticket.html:181 templates/helpdesk/ticket_list.html:68 +#: templates/helpdesk/ticket_list.html:97 +#: templates/helpdesk/ticket_list.html:225 +msgid "Owner" +msgstr "Eigentümer" + +#: templates/helpdesk/ticket.html:182 +msgid "Unassign" +msgstr "Zuweisung zurücknehmen" + +#: templates/helpdesk/ticket.html:193 +msgid "Attach File(s) »" +msgstr "Datei(en) anhängen »" + +#: templates/helpdesk/ticket.html:199 +msgid "Attach a File" +msgstr "Datei anhängen" + +#: templates/helpdesk/ticket.html:207 +msgid "Update This Ticket" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "Ticket CC speichern" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "Ticket CC löschen" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "Nicht löschen" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "Ja, löschen" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "Ansehen?" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "Aktualisieren?" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Unhold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Hold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:9 +#, python-format +msgid "Queue: %(queue)s" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Assigned To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:43 +msgid "Ignore" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:52 +msgid "Copies To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Manage" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Subscribe" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to subscribe yourself to this ticket, if you want to receive an " +"e-mail whenever this ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:57 +msgid "Dependencies" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:59 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:60 +msgid "Remove Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "This ticket has no dependencies." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "Add Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Change Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:67 +#: templates/helpdesk/ticket_list.html:79 +msgid "Sorting" +msgstr "" + +#: templates/helpdesk/ticket_list.html:71 +#: templates/helpdesk/ticket_list.html:139 +msgid "Keywords" +msgstr "" + +#: templates/helpdesk/ticket_list.html:72 +msgid "Date Range" +msgstr "" + +#: templates/helpdesk/ticket_list.html:100 +msgid "Reverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:102 +msgid "Ordering applied to tickets" +msgstr "" + +#: templates/helpdesk/ticket_list.html:107 +msgid "Owner(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:111 +msgid "(ME)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:115 +msgid "Ctrl-Click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:120 +msgid "Queue(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:121 +#: templates/helpdesk/ticket_list.html:127 +msgid "Ctrl-click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:126 +msgid "Status(es)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:132 +msgid "Date (From)" +msgstr "Datum (von)" + +#: templates/helpdesk/ticket_list.html:133 +msgid "Date (To)" +msgstr "Datum (bis)" + +#: templates/helpdesk/ticket_list.html:134 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "" + +#: templates/helpdesk/ticket_list.html:140 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "" + +#: templates/helpdesk/ticket_list.html:144 +msgid "Apply Filter" +msgstr "" + +#: templates/helpdesk/ticket_list.html:146 +#, python-format +msgid "You are currently viewing saved query \"%(query_name)s\"." +msgstr "" + +#: templates/helpdesk/ticket_list.html:149 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "" + +#: templates/helpdesk/ticket_list.html:162 +#: templates/helpdesk/ticket_list.html:181 +msgid "Save Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:172 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "" + +#: templates/helpdesk/ticket_list.html:174 +msgid "Shared?" +msgstr "" + +#: templates/helpdesk/ticket_list.html:175 +msgid "Yes, share this query with other users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:176 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:195 +msgid "Use Saved Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:202 +msgid "Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:207 +msgid "Run Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:240 +msgid "No Tickets Match Your Selection" +msgstr "" + +#: templates/helpdesk/ticket_list.html:247 +msgid "Previous" +msgstr "" + +#: templates/helpdesk/ticket_list.html:251 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:255 +msgid "Next" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Select:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "None" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Inverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "With Selected Tickets:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Take (Assign to me)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Don't Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Assign To" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Nobody (Unassign)" +msgstr "" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "" + +#: templates/helpdesk/user_settings.html:8 +msgid "" +"Use the following options to change the way your helpdesk system works for " +"you. These settings do not impact any other user." +msgstr "" + +#: templates/helpdesk/user_settings.html:14 +msgid "Save Options" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "" + +#: templates/helpdesk/registration/login.html:14 +msgid "To log in simply enter your username and password below." +msgstr "" + +#: templates/helpdesk/registration/login.html:17 +msgid "Your username and password didn't match. Please try again." +msgstr "" + +#: templates/helpdesk/registration/login.html:20 +msgid "Login" +msgstr "" + +#: views/feeds.py:39 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "Helpdesk: Offene Tickets in Ticketsammlung %(queue)s für %(username)s" + +#: views/feeds.py:44 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "Helpdesk : Offene Tickets für %(username)s" + +#: views/feeds.py:50 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "Offene und wiedergeöffnete Tickets in Ticketsammlung %(queue)s für %(username)s" + +#: views/feeds.py:55 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "Offene und wiedergeöffnete Tickets für %(username)s" + +#: views/feeds.py:102 +msgid "Helpdesk: Unassigned Tickets" +msgstr "Helpdesk: Nicht zugeordnete Tickets" + +#: views/feeds.py:103 +msgid "Unassigned Open and Reopened tickets" +msgstr "Nicht zugeordnete offene und wiedergeöffnete Tickets" + +#: views/feeds.py:128 +msgid "Helpdesk: Recent Followups" +msgstr "Helpdesk: kürzliche Weiterbearbeitungen" + +#: views/feeds.py:129 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "Kürzliche Weiterbearbeitungen wie E-Mail-Antworten, Kommentare, Anhänge oder Lösungen" + +#: views/feeds.py:144 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "Helpdesk: Offene Tickets in Ticketsammlung %(queue)s" + +#: views/feeds.py:149 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "Offene und wiedergeöffnete Tickets in Ticketsammlung %(queue)s" + +#: views/public.py:89 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "Ungültige Ticket-ID oder E-Mail-Adresse. Bitte versuchen Sie es erneut." + +#: views/public.py:107 +msgid "Submitter accepted resolution and closed ticket" +msgstr "Ersteller akzeptiert die Lösung und hat das Ticket geschlossen." + +#: views/staff.py:235 +msgid "Accepted resolution and closed ticket" +msgstr "Lösung akzeptiert und Ticket geschlossen" + +#: views/staff.py:369 +#, python-format +msgid "Assigned to %(username)s" +msgstr "%(username)s zugeordnet" + +#: views/staff.py:392 +msgid "Updated" +msgstr "Aktualisiert" + +#: views/staff.py:577 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "%(username)s zugeordnet in Massenaktualisierung" + +#: views/staff.py:582 +msgid "Unassigned in bulk update" +msgstr "Zuordnung in Massenaktualisierung aufgehoben" + +#: views/staff.py:587 views/staff.py:592 +msgid "Closed in bulk update" +msgstr "In Massenaktualisierung geschlossen" + +#: views/staff.py:806 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "

Achtung: Ihre Schlagwortsuche achtet wegen Ihrer Datenbank auf Groß- und Kleinschreibung. Das bedeutet, dass die Suche nicht genau ist. Durch den Wechsel auf eine andere Datenbank werden Sie eine bessere Suche erhalten. Weitere Informationen finden Sie in der Django Dokumentation zur Stringerkennung in SQLite." + +#: views/staff.py:910 +msgid "Ticket taken off hold" +msgstr "Ticket wieder freigegeben" + +#: views/staff.py:913 +msgid "Ticket placed on hold" +msgstr "Ticket zurückgehalten" + +#: views/staff.py:1007 +msgid "User by Priority" +msgstr "Benutzer je Priorität" + +#: views/staff.py:1013 +msgid "User by Queue" +msgstr "Benutzer je Sammlung" + +#: views/staff.py:1019 +msgid "User by Status" +msgstr "Benutzer je Status" + +#: views/staff.py:1025 +msgid "User by Month" +msgstr "Benutzer je Monat" + +#: views/staff.py:1031 +msgid "Queue by Priority" +msgstr "Sammlung je Priorität" + +#: views/staff.py:1037 +msgid "Queue by Status" +msgstr "Sammlung je Status" + +#: views/staff.py:1043 +msgid "Queue by Month" +msgstr "Sammlung je Monat" diff --git a/build/lib/helpdesk/locale/el/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/el/LC_MESSAGES/django.mo new file mode 100644 index 00000000..6c056855 Binary files /dev/null and b/build/lib/helpdesk/locale/el/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/el/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/el/LC_MESSAGES/django.po new file mode 100644 index 00000000..040efd0c --- /dev/null +++ b/build/lib/helpdesk/locale/el/LC_MESSAGES/django.po @@ -0,0 +1,2394 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Translators: +# George Bourazanas , 2011 +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2014-07-26 14:14+0200\n" +"PO-Revision-Date: 2014-08-01 09:58+0000\n" +"Last-Translator: Ross Poulton \n" +"Language-Team: Greek (http://www.transifex.com/projects/p/django-helpdesk/language/el/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: el\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: forms.py:128 forms.py:328 models.py:190 models.py:267 +#: templates/helpdesk/dashboard.html:15 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/dashboard.html:124 templates/helpdesk/rss_list.html:24 +#: templates/helpdesk/ticket_list.html:69 +#: templates/helpdesk/ticket_list.html:88 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:1032 +#: views/staff.py:1038 views/staff.py:1044 views/staff.py:1050 +msgid "Queue" +msgstr "" + +#: forms.py:137 +msgid "Summary of the problem" +msgstr "" + +#: forms.py:142 +msgid "Submitter E-Mail Address" +msgstr "" + +#: forms.py:144 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "" + +#: forms.py:150 +msgid "Description of Issue" +msgstr "" + +#: forms.py:157 +msgid "Case owner" +msgstr "" + +#: forms.py:158 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "" + +#: forms.py:166 models.py:327 management/commands/escalate_tickets.py:154 +#: templates/helpdesk/public_view_ticket.html:23 +#: templates/helpdesk/ticket.html:184 +#: templates/helpdesk/ticket_desc_table.html:47 +#: templates/helpdesk/ticket_list.html:94 views/staff.py:429 +msgid "Priority" +msgstr "Προτεραιότητα" + +#: forms.py:167 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "" + +#: forms.py:174 forms.py:365 models.py:335 templates/helpdesk/ticket.html:186 +#: views/staff.py:439 +msgid "Due on" +msgstr "" + +#: forms.py:186 forms.py:370 +msgid "Attach File" +msgstr "Συνημμένο" + +#: forms.py:187 forms.py:371 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "" + +#: forms.py:240 +msgid "Ticket Opened" +msgstr "" + +#: forms.py:247 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "" + +#: forms.py:337 +msgid "Summary of your query" +msgstr "" + +#: forms.py:342 +msgid "Your E-Mail Address" +msgstr "" + +#: forms.py:343 +msgid "We will e-mail you when your ticket is updated." +msgstr "" + +#: forms.py:348 +msgid "Description of your issue" +msgstr "" + +#: forms.py:350 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "" + +#: forms.py:358 +msgid "Urgency" +msgstr "" + +#: forms.py:359 +msgid "Please select a priority carefully." +msgstr "" + +#: forms.py:419 +msgid "Ticket Opened Via Web" +msgstr "" + +#: forms.py:486 +msgid "Show Ticket List on Login?" +msgstr "" + +#: forms.py:487 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "" + +#: forms.py:492 +msgid "E-mail me on ticket change?" +msgstr "" + +#: forms.py:493 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:498 +msgid "E-mail me when assigned a ticket?" +msgstr "Στείλε μου e-mail όταν καταχωρείτε ένα νέο αίτημα;" + +#: forms.py:499 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:504 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "" + +#: forms.py:505 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:510 +msgid "Number of tickets to show per page" +msgstr "" + +#: forms.py:511 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "" + +#: forms.py:518 +msgid "Use my e-mail address when submitting tickets?" +msgstr "" + +#: forms.py:519 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "" + +#: models.py:35 models.py:261 models.py:503 models.py:817 models.py:853 +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket.html:178 templates/helpdesk/ticket_list.html:85 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:419 +msgid "Title" +msgstr "" + +#: models.py:40 models.py:822 models.py:1206 +msgid "Slug" +msgstr "" + +#: models.py:41 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "" + +#: models.py:46 models.py:1054 models.py:1129 models.py:1203 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "" + +#: models.py:49 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "" + +#: models.py:55 models.py:794 +msgid "Locale" +msgstr "" + +#: models.py:59 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "" + +#: models.py:63 +msgid "Allow Public Submission?" +msgstr "" + +#: models.py:66 +msgid "Should this queue be listed on the public submission form?" +msgstr "" + +#: models.py:71 +msgid "Allow E-Mail Submission?" +msgstr "" + +#: models.py:74 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "" + +#: models.py:79 +msgid "Escalation Days" +msgstr "" + +#: models.py:82 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "" + +#: models.py:87 +msgid "New Ticket CC Address" +msgstr "" + +#: models.py:91 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "" + +#: models.py:97 +msgid "Updated Ticket CC Address" +msgstr "" + +#: models.py:101 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "" + +#: models.py:108 +msgid "E-Mail Box Type" +msgstr "" + +#: models.py:110 +msgid "POP 3" +msgstr "" + +#: models.py:110 +msgid "IMAP" +msgstr "" + +#: models.py:113 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "" + +#: models.py:118 +msgid "E-Mail Hostname" +msgstr "" + +#: models.py:122 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "" + +#: models.py:127 +msgid "E-Mail Port" +msgstr "" + +#: models.py:130 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "" + +#: models.py:136 +msgid "Use SSL for E-Mail?" +msgstr "" + +#: models.py:139 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "" + +#: models.py:144 +msgid "E-Mail Username" +msgstr "" + +#: models.py:148 +msgid "Username for accessing this mailbox." +msgstr "" + +#: models.py:152 +msgid "E-Mail Password" +msgstr "" + +#: models.py:156 +msgid "Password for the above username" +msgstr "" + +#: models.py:160 +msgid "IMAP Folder" +msgstr "" + +#: models.py:164 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "" + +#: models.py:171 +msgid "E-Mail Check Interval" +msgstr "" + +#: models.py:172 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "" + +#: models.py:191 templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "" + +#: models.py:245 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:138 +msgid "Open" +msgstr "" + +#: models.py:246 templates/helpdesk/ticket.html:144 +#: templates/helpdesk/ticket.html.py:150 templates/helpdesk/ticket.html:155 +#: templates/helpdesk/ticket.html.py:159 +msgid "Reopened" +msgstr "" + +#: models.py:247 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:139 templates/helpdesk/ticket.html.py:145 +#: templates/helpdesk/ticket.html:151 +msgid "Resolved" +msgstr "" + +#: models.py:248 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:140 templates/helpdesk/ticket.html.py:146 +#: templates/helpdesk/ticket.html:152 templates/helpdesk/ticket.html.py:156 +msgid "Closed" +msgstr "" + +#: models.py:249 templates/helpdesk/ticket.html:141 +#: templates/helpdesk/ticket.html.py:147 templates/helpdesk/ticket.html:160 +msgid "Duplicate" +msgstr "" + +#: models.py:253 +msgid "1. Critical" +msgstr "" + +#: models.py:254 +msgid "2. High" +msgstr "" + +#: models.py:255 +msgid "3. Normal" +msgstr "" + +#: models.py:256 +msgid "4. Low" +msgstr "" + +#: models.py:257 +msgid "5. Very Low" +msgstr "" + +#: models.py:271 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/ticket_list.html:82 +#: templates/helpdesk/ticket_list.html:225 +msgid "Created" +msgstr "" + +#: models.py:273 +msgid "Date this ticket was first created" +msgstr "" + +#: models.py:277 +msgid "Modified" +msgstr "" + +#: models.py:279 +msgid "Date this ticket was most recently changed." +msgstr "" + +#: models.py:283 templates/helpdesk/public_view_ticket.html:18 +#: templates/helpdesk/ticket_desc_table.html:42 +msgid "Submitter E-Mail" +msgstr "" + +#: models.py:286 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "" + +#: models.py:295 +msgid "Assigned to" +msgstr "" + +#: models.py:299 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:70 +#: templates/helpdesk/ticket_list.html:91 +#: templates/helpdesk/ticket_list.html:225 +msgid "Status" +msgstr "" + +#: models.py:305 +msgid "On Hold" +msgstr "" + +#: models.py:308 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "" + +#: models.py:313 models.py:826 templates/helpdesk/public_view_ticket.html:41 +#: templates/helpdesk/ticket_desc_table.html:19 +msgid "Description" +msgstr "" + +#: models.py:316 +msgid "The content of the customers query." +msgstr "" + +#: models.py:320 templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Resolution" +msgstr "" + +#: models.py:323 +msgid "The resolution provided to the customer by our staff." +msgstr "" + +#: models.py:331 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "" + +#: models.py:344 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "" + +#: models.py:353 templates/helpdesk/ticket_desc_table.html:38 +#: views/feeds.py:95 views/feeds.py:121 views/feeds.py:173 views/staff.py:376 +msgid "Unassigned" +msgstr "" + +#: models.py:392 +msgid " - On Hold" +msgstr "" + +#: models.py:394 +msgid " - Open dependencies" +msgstr "" + +#: models.py:448 models.py:494 models.py:1117 models.py:1280 models.py:1309 +#: templates/helpdesk/public_homepage.html:78 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "" + +#: models.py:449 templates/helpdesk/navigation.html:17 +#: templates/helpdesk/ticket_list.html:2 +#: templates/helpdesk/ticket_list.html:224 +msgid "Tickets" +msgstr "" + +#: models.py:498 models.py:738 models.py:1047 models.py:1200 +msgid "Date" +msgstr "" + +#: models.py:510 views/staff.py:390 +msgid "Comment" +msgstr "" + +#: models.py:516 +msgid "Public" +msgstr "" + +#: models.py:519 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "" + +#: models.py:527 models.py:922 models.py:1125 views/staff.py:1008 +#: views/staff.py:1014 views/staff.py:1020 views/staff.py:1026 +msgid "User" +msgstr "" + +#: models.py:531 templates/helpdesk/ticket.html:135 +msgid "New Status" +msgstr "" + +#: models.py:535 +msgid "If the status was changed, what was it changed to?" +msgstr "" + +#: models.py:542 models.py:566 models.py:628 +msgid "Follow-up" +msgstr "" + +#: models.py:543 +msgid "Follow-ups" +msgstr "" + +#: models.py:570 models.py:1285 +msgid "Field" +msgstr "" + +#: models.py:575 +msgid "Old Value" +msgstr "" + +#: models.py:581 +msgid "New Value" +msgstr "" + +#: models.py:589 +msgid "removed" +msgstr "" + +#: models.py:591 +#, python-format +msgid "set to %s" +msgstr "" + +#: models.py:593 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "" + +#: models.py:600 +msgid "Ticket change" +msgstr "" + +#: models.py:601 +msgid "Ticket changes" +msgstr "" + +#: models.py:632 +msgid "File" +msgstr "" + +#: models.py:637 +msgid "Filename" +msgstr "" + +#: models.py:642 +msgid "MIME Type" +msgstr "" + +#: models.py:647 +msgid "Size" +msgstr "" + +#: models.py:648 +msgid "Size of this file in bytes" +msgstr "" + +#: models.py:665 +msgid "Attachment" +msgstr "" + +#: models.py:666 +msgid "Attachments" +msgstr "" + +#: models.py:685 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "" + +#: models.py:690 models.py:733 models.py:1042 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "" + +#: models.py:692 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "" + +#: models.py:697 +msgid "Body" +msgstr "" + +#: models.py:698 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "" + +#: models.py:705 +msgid "Pre-set reply" +msgstr "" + +#: models.py:706 +msgid "Pre-set replies" +msgstr "" + +#: models.py:727 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "" + +#: models.py:739 +msgid "Date on which escalation should not happen" +msgstr "" + +#: models.py:746 +msgid "Escalation exclusion" +msgstr "" + +#: models.py:747 +msgid "Escalation exclusions" +msgstr "" + +#: models.py:760 +msgid "Template Name" +msgstr "" + +#: models.py:765 +msgid "Subject" +msgstr "" + +#: models.py:767 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "" + +#: models.py:773 +msgid "Heading" +msgstr "" + +#: models.py:775 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "" + +#: models.py:781 +msgid "Plain Text" +msgstr "" + +#: models.py:782 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "" + +#: models.py:788 +msgid "HTML" +msgstr "" + +#: models.py:789 +msgid "The same context is available here as in plain_text, above." +msgstr "" + +#: models.py:798 +msgid "Locale of this template." +msgstr "" + +#: models.py:806 +msgid "e-mail template" +msgstr "" + +#: models.py:807 +msgid "e-mail templates" +msgstr "" + +#: models.py:834 +msgid "Knowledge base category" +msgstr "" + +#: models.py:835 +msgid "Knowledge base categories" +msgstr "" + +#: models.py:849 templates/helpdesk/kb_index.html:11 +#: templates/helpdesk/public_homepage.html:11 +msgid "Category" +msgstr "" + +#: models.py:858 +msgid "Question" +msgstr "" + +#: models.py:862 +msgid "Answer" +msgstr "" + +#: models.py:866 +msgid "Votes" +msgstr "" + +#: models.py:867 +msgid "Total number of votes cast for this item" +msgstr "" + +#: models.py:872 +msgid "Positive Votes" +msgstr "" + +#: models.py:873 +msgid "Number of votes for this item which were POSITIVE." +msgstr "" + +#: models.py:878 +msgid "Last Updated" +msgstr "" + +#: models.py:879 +msgid "The date on which this question was most recently changed." +msgstr "" + +#: models.py:893 +msgid "Unrated" +msgstr "" + +#: models.py:901 +msgid "Knowledge base item" +msgstr "" + +#: models.py:902 +msgid "Knowledge base items" +msgstr "" + +#: models.py:926 templates/helpdesk/ticket_list.html:170 +msgid "Query Name" +msgstr "" + +#: models.py:928 +msgid "User-provided name for this query" +msgstr "" + +#: models.py:932 +msgid "Shared With Other Users?" +msgstr "" + +#: models.py:935 +msgid "Should other users see this query?" +msgstr "" + +#: models.py:939 +msgid "Search Query" +msgstr "" + +#: models.py:940 +msgid "Pickled query object. Be wary changing this." +msgstr "" + +#: models.py:950 +msgid "Saved search" +msgstr "" + +#: models.py:951 +msgid "Saved searches" +msgstr "" + +#: models.py:966 +msgid "Settings Dictionary" +msgstr "" + +#: models.py:967 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "" + +#: models.py:993 +msgid "User Setting" +msgstr "" + +#: models.py:994 templates/helpdesk/navigation.html:37 +#: templates/helpdesk/user_settings.html:6 +msgid "User Settings" +msgstr "" + +#: models.py:1036 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "" + +#: models.py:1048 +msgid "Date on which this e-mail address was added" +msgstr "" + +#: models.py:1056 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "" + +#: models.py:1061 +msgid "Save Emails in Mailbox?" +msgstr "" + +#: models.py:1064 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "" + +#: models.py:1101 +msgid "Ignored e-mail address" +msgstr "" + +#: models.py:1102 +msgid "Ignored e-mail addresses" +msgstr "" + +#: models.py:1124 +msgid "User who wishes to receive updates for this ticket." +msgstr "" + +#: models.py:1132 +msgid "For non-user followers, enter their e-mail address" +msgstr "" + +#: models.py:1136 +msgid "Can View Ticket?" +msgstr "" + +#: models.py:1138 +msgid "Can this CC login to view the ticket details?" +msgstr "" + +#: models.py:1142 +msgid "Can Update Ticket?" +msgstr "" + +#: models.py:1144 +msgid "Can this CC login and update the ticket?" +msgstr "" + +#: models.py:1175 +msgid "Field Name" +msgstr "" + +#: models.py:1176 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "" + +#: models.py:1181 +msgid "Label" +msgstr "" + +#: models.py:1183 +msgid "The display label for this field" +msgstr "" + +#: models.py:1187 +msgid "Help Text" +msgstr "" + +#: models.py:1188 +msgid "Shown to the user when editing the ticket" +msgstr "" + +#: models.py:1194 +msgid "Character (single line)" +msgstr "" + +#: models.py:1195 +msgid "Text (multi-line)" +msgstr "" + +#: models.py:1196 +msgid "Integer" +msgstr "" + +#: models.py:1197 +msgid "Decimal" +msgstr "" + +#: models.py:1198 +msgid "List" +msgstr "" + +#: models.py:1199 +msgid "Boolean (checkbox yes/no)" +msgstr "" + +#: models.py:1201 +msgid "Time" +msgstr "" + +#: models.py:1202 +msgid "Date & Time" +msgstr "" + +#: models.py:1204 +msgid "URL" +msgstr "" + +#: models.py:1205 +msgid "IP Address" +msgstr "" + +#: models.py:1210 +msgid "Data Type" +msgstr "" + +#: models.py:1212 +msgid "Allows you to restrict the data entered into this field" +msgstr "" + +#: models.py:1217 +msgid "Maximum Length (characters)" +msgstr "" + +#: models.py:1223 +msgid "Decimal Places" +msgstr "" + +#: models.py:1224 +msgid "Only used for decimal fields" +msgstr "" + +#: models.py:1230 +msgid "Add empty first choice to List?" +msgstr "" + +#: models.py:1232 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "" + +#: models.py:1236 +msgid "List Values" +msgstr "" + +#: models.py:1237 +msgid "For list fields only. Enter one option per line." +msgstr "" + +#: models.py:1243 +msgid "Ordering" +msgstr "" + +#: models.py:1244 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "" + +#: models.py:1258 +msgid "Required?" +msgstr "" + +#: models.py:1259 +msgid "Does the user have to enter a value for this field?" +msgstr "" + +#: models.py:1263 +msgid "Staff Only?" +msgstr "" + +#: models.py:1264 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "" + +#: models.py:1273 +msgid "Custom field" +msgstr "" + +#: models.py:1274 +msgid "Custom fields" +msgstr "" + +#: models.py:1297 +msgid "Ticket custom field value" +msgstr "" + +#: models.py:1298 +msgid "Ticket custom field values" +msgstr "" + +#: models.py:1315 +msgid "Depends On Ticket" +msgstr "" + +#: models.py:1324 +msgid "Ticket dependency" +msgstr "" + +#: models.py:1325 +msgid "Ticket dependencies" +msgstr "" + +#: management/commands/create_usersettings.py:25 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "" + +#: management/commands/escalate_tickets.py:148 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "" + +#: management/commands/get_email.py:158 +msgid "Created from e-mail" +msgstr "" + +#: management/commands/get_email.py:162 +msgid "Unknown Sender" +msgstr "" + +#: management/commands/get_email.py:216 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "" + +#: management/commands/get_email.py:220 +msgid "email_html_body.html" +msgstr "" + +#: management/commands/get_email.py:263 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:271 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:329 +msgid " (Reopened)" +msgstr "" + +#: management/commands/get_email.py:331 +msgid " (Updated)" +msgstr "" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"django-helpdesk." +msgstr "" + +#: templates/helpdesk/base.html:10 +msgid "Powered by django-helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:20 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:24 templates/helpdesk/rss_list.html:31 +msgid "My Open Tickets" +msgstr "" + +#: templates/helpdesk/base.html:21 +msgid "All Recent Activity" +msgstr "" + +#: templates/helpdesk/base.html:22 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "" + +#: templates/helpdesk/base.html:52 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:18 +msgid "Helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:30 templates/helpdesk/rss_list.html:31 +msgid "RSS Icon" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "" + +#: templates/helpdesk/base.html:63 +msgid "API" +msgstr "" + +#: templates/helpdesk/base.html:64 templates/helpdesk/system_settings.html:6 +msgid "System Settings" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:146 +msgid "Delete Saved Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:6 +msgid "Delete Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this saved filter " +"(%(query_title)s)? To re-create it, you will need to manually re-" +"filter your ticket listing." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"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." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:14 +#: templates/helpdesk/delete_ticket.html:10 +msgid "No, Don't Delete It" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:16 +#: templates/helpdesk/delete_ticket.html:12 +msgid "Yes - Delete It" +msgstr "" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/navigation.html:65 templates/helpdesk/navigation.html:68 +#: templates/helpdesk/public_homepage.html:27 +msgid "Submit a Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +#: templates/helpdesk/public_homepage.html:28 +msgid "Please provide as descriptive a title and description as possible." +msgstr "" + +#: templates/helpdesk/create_ticket.html:30 +#: templates/helpdesk/public_homepage.html:55 +msgid "Submit Ticket" +msgstr "" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "" + +#: templates/helpdesk/dashboard.html:9 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "" + +#: templates/helpdesk/dashboard.html:14 +msgid "Helpdesk Summary" +msgstr "" + +#: templates/helpdesk/dashboard.html:36 +msgid "Current Ticket Stats" +msgstr "" + +#: templates/helpdesk/dashboard.html:37 +msgid "Average number of days until ticket is closed (all tickets): " +msgstr "" + +#: templates/helpdesk/dashboard.html:38 +msgid "" +"Average number of days until ticket is closed (tickets opened in last 60 " +"days): " +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "Click" +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "for detailed average by month." +msgstr "" + +#: templates/helpdesk/dashboard.html:40 +msgid "Distribution of open tickets, grouped by time period:" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Days since opened" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Number of open tickets" +msgstr "" + +#: templates/helpdesk/dashboard.html:57 +msgid "All Tickets submitted by you" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:225 +msgid "Pr" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:124 +msgid "Last Update" +msgstr "" + +#: templates/helpdesk/dashboard.html:77 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "" + +#: templates/helpdesk/dashboard.html:92 +msgid "You have no tickets assigned to you." +msgstr "" + +#: templates/helpdesk/dashboard.html:99 +msgid "(pick up a ticket if you start to work on it)" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/ticket_desc_table.html:38 +msgid "Take" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:262 +msgid "Delete" +msgstr "" + +#: templates/helpdesk/dashboard.html:114 +msgid "There are no unassigned tickets." +msgstr "" + +#: templates/helpdesk/dashboard.html:123 +msgid "Closed & resolved Tickets you used to work on" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:3 +#: templates/helpdesk/delete_ticket.html:6 +msgid "Delete Ticket" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this ticket (%(ticket_title)s)? All" +" traces of the ticket, including followups, attachments, and updates will be" +" irreversibly removed." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:9 +msgid "Edit a Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "Note" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "" +"Editing a ticket does not send an e-mail to the ticket owner or " +"submitter. No new details should be entered, this form should only be used " +"to fix incorrect details or clean up the submission." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:33 +msgid "Save Changes" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:6 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:8 +msgid "" +"To ignore an e-mail address and prevent any emails from that address " +"creating tickets automatically, enter the e-mail address below." +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:10 +msgid "" +"You can either enter a whole e-mail address such as " +"email@domain.com or a portion of an e-mail address with a wildcard," +" such as *@domain.com or user@*." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:6 +msgid "Un-Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:8 +#, python-format +msgid "" +"Are you sure you wish to stop removing this email address " +"(%(email_address)s) and allow their e-mails to automatically create" +" tickets in your system? You can re-add this e-mail address at any time." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:10 +msgid "Keep Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:12 +msgid "Stop Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:260 +msgid "All" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "" + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:12 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "" + +#: templates/helpdesk/kb_category.html:13 +msgid "Article" +msgstr "" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:21 +#: templates/helpdesk/navigation.html:71 +msgid "Knowledgebase" +msgstr "" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "" + +#: templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:16 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "" + +#: templates/helpdesk/kb_item.html:18 +msgid "Feedback" +msgstr "" + +#: templates/helpdesk/kb_item.html:20 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "" + +#: templates/helpdesk/kb_item.html:23 +msgid "This article was useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:24 +msgid "This article was not useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:27 +msgid "The results of voting by other readers of this article are below:" +msgstr "" + +#: templates/helpdesk/kb_item.html:30 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:31 +#, python-format +msgid "Votes: %(votes)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:32 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "" + +#: templates/helpdesk/navigation.html:16 templates/helpdesk/navigation.html:64 +msgid "Dashboard" +msgstr "" + +#: templates/helpdesk/navigation.html:18 +msgid "New Ticket" +msgstr "" + +#: templates/helpdesk/navigation.html:19 +msgid "Stats" +msgstr "" + +#: templates/helpdesk/navigation.html:24 +msgid "Saved Query" +msgstr "" + +#: templates/helpdesk/navigation.html:39 +msgid "Change password" +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Search..." +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Logout" +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Log In" +msgstr "" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:73 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "" + +#: templates/helpdesk/public_homepage.html:28 +msgid "All fields are required." +msgstr "" + +#: templates/helpdesk/public_homepage.html:66 +msgid "Please use button at upper right to login first." +msgstr "" + +#: templates/helpdesk/public_homepage.html:82 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "" + +#: templates/helpdesk/public_homepage.html:86 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:5 +msgid "Sorry, but there has been an error trying to submit your ticket." +msgstr "" + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"Our system has marked your submission as spam, so we are " +"unable to save it. If this is not spam, please press back and re-type your " +"message. Be careful to avoid sounding 'spammy', and if you have heaps of " +"links please try removing them if possible." +msgstr "" + +#: templates/helpdesk/public_spam.html:7 +msgid "" +"We are sorry for any inconvenience, however this check is required to avoid " +"our helpdesk resources being overloaded by spammers." +msgstr "" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:9 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:13 +#: templates/helpdesk/ticket_desc_table.html:32 +msgid "Submitted On" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:35 +msgid "Tags" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept and Close" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:57 +#: templates/helpdesk/ticket.html:66 +msgid "Follow-Ups" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:65 +#: templates/helpdesk/ticket.html:100 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "" + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "" + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:27 views/staff.py:1049 +msgid "Days until ticket closed by Month" +msgstr "" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "" + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "" + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "" + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "" + +#: templates/helpdesk/rss_list.html:23 +msgid "Per-Queue Feeds" +msgstr "" + +#: templates/helpdesk/rss_list.html:24 +msgid "All Open Tickets" +msgstr "" + +#: templates/helpdesk/rss_list.html:30 +msgid "Open Tickets" +msgstr "" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "" + +#: templates/helpdesk/system_settings.html:8 +msgid "The following items can be maintained by you or other superusers:" +msgstr "" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:200 +msgid "Add Another File" +msgstr "" + +#: templates/helpdesk/ticket.html:73 templates/helpdesk/ticket.html.py:86 +msgid "Private" +msgstr "" + +#: templates/helpdesk/ticket.html:119 +msgid "Respond to this ticket" +msgstr "" + +#: templates/helpdesk/ticket.html:126 +msgid "Use a Pre-set Reply" +msgstr "" + +#: templates/helpdesk/ticket.html:126 templates/helpdesk/ticket.html.py:166 +msgid "(Optional)" +msgstr "" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "" + +#: templates/helpdesk/ticket.html:131 +msgid "Comment / Resolution" +msgstr "" + +#: templates/helpdesk/ticket.html:133 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "" + +#: templates/helpdesk/ticket.html:136 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "" + +#: templates/helpdesk/ticket.html:166 +msgid "Is this update public?" +msgstr "" + +#: templates/helpdesk/ticket.html:168 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "" + +#: templates/helpdesk/ticket.html:172 +msgid "Change Further Details »" +msgstr "" + +#: templates/helpdesk/ticket.html:181 templates/helpdesk/ticket_list.html:68 +#: templates/helpdesk/ticket_list.html:97 +#: templates/helpdesk/ticket_list.html:225 +msgid "Owner" +msgstr "" + +#: templates/helpdesk/ticket.html:182 +msgid "Unassign" +msgstr "" + +#: templates/helpdesk/ticket.html:193 +msgid "Attach File(s) »" +msgstr "" + +#: templates/helpdesk/ticket.html:199 +msgid "Attach a File" +msgstr "" + +#: templates/helpdesk/ticket.html:207 +msgid "Update This Ticket" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Unhold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Hold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:9 +#, python-format +msgid "Queue: %(queue)s" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Assigned To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:43 +msgid "Ignore" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:52 +msgid "Copies To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Manage" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Subscribe" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to subscribe yourself to this ticket, if you want to receive an " +"e-mail whenever this ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:57 +msgid "Dependencies" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:59 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:60 +msgid "Remove Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "This ticket has no dependencies." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "Add Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Change Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:67 +#: templates/helpdesk/ticket_list.html:79 +msgid "Sorting" +msgstr "" + +#: templates/helpdesk/ticket_list.html:71 +#: templates/helpdesk/ticket_list.html:139 +msgid "Keywords" +msgstr "" + +#: templates/helpdesk/ticket_list.html:72 +msgid "Date Range" +msgstr "" + +#: templates/helpdesk/ticket_list.html:100 +msgid "Reverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:102 +msgid "Ordering applied to tickets" +msgstr "" + +#: templates/helpdesk/ticket_list.html:107 +msgid "Owner(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:111 +msgid "(ME)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:115 +msgid "Ctrl-Click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:120 +msgid "Queue(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:121 +#: templates/helpdesk/ticket_list.html:127 +msgid "Ctrl-click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:126 +msgid "Status(es)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:132 +msgid "Date (From)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:133 +msgid "Date (To)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:134 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "" + +#: templates/helpdesk/ticket_list.html:140 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "" + +#: templates/helpdesk/ticket_list.html:144 +msgid "Apply Filter" +msgstr "" + +#: templates/helpdesk/ticket_list.html:146 +#, python-format +msgid "You are currently viewing saved query \"%(query_name)s\"." +msgstr "" + +#: templates/helpdesk/ticket_list.html:149 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "" + +#: templates/helpdesk/ticket_list.html:162 +#: templates/helpdesk/ticket_list.html:181 +msgid "Save Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:172 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "" + +#: templates/helpdesk/ticket_list.html:174 +msgid "Shared?" +msgstr "" + +#: templates/helpdesk/ticket_list.html:175 +msgid "Yes, share this query with other users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:176 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:195 +msgid "Use Saved Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:202 +msgid "Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:207 +msgid "Run Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:240 +msgid "No Tickets Match Your Selection" +msgstr "" + +#: templates/helpdesk/ticket_list.html:247 +msgid "Previous" +msgstr "" + +#: templates/helpdesk/ticket_list.html:251 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:255 +msgid "Next" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Select:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "None" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Inverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "With Selected Tickets:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Take (Assign to me)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Don't Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Assign To" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Nobody (Unassign)" +msgstr "" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "" + +#: templates/helpdesk/user_settings.html:8 +msgid "" +"Use the following options to change the way your helpdesk system works for " +"you. These settings do not impact any other user." +msgstr "" + +#: templates/helpdesk/user_settings.html:14 +msgid "Save Options" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "" + +#: templates/helpdesk/registration/login.html:14 +msgid "To log in simply enter your username and password below." +msgstr "" + +#: templates/helpdesk/registration/login.html:17 +msgid "Your username and password didn't match. Please try again." +msgstr "" + +#: templates/helpdesk/registration/login.html:20 +msgid "Login" +msgstr "" + +#: views/feeds.py:39 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:44 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:50 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:55 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:102 +msgid "Helpdesk: Unassigned Tickets" +msgstr "" + +#: views/feeds.py:103 +msgid "Unassigned Open and Reopened tickets" +msgstr "" + +#: views/feeds.py:128 +msgid "Helpdesk: Recent Followups" +msgstr "" + +#: views/feeds.py:129 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "" + +#: views/feeds.py:144 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "" + +#: views/feeds.py:149 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "" + +#: views/public.py:89 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "" + +#: views/public.py:107 +msgid "Submitter accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:235 +msgid "Accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:369 +#, python-format +msgid "Assigned to %(username)s" +msgstr "" + +#: views/staff.py:392 +msgid "Updated" +msgstr "" + +#: views/staff.py:577 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "" + +#: views/staff.py:582 +msgid "Unassigned in bulk update" +msgstr "" + +#: views/staff.py:587 views/staff.py:592 +msgid "Closed in bulk update" +msgstr "" + +#: views/staff.py:806 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "" + +#: views/staff.py:910 +msgid "Ticket taken off hold" +msgstr "" + +#: views/staff.py:913 +msgid "Ticket placed on hold" +msgstr "" + +#: views/staff.py:1007 +msgid "User by Priority" +msgstr "" + +#: views/staff.py:1013 +msgid "User by Queue" +msgstr "" + +#: views/staff.py:1019 +msgid "User by Status" +msgstr "" + +#: views/staff.py:1025 +msgid "User by Month" +msgstr "" + +#: views/staff.py:1031 +msgid "Queue by Priority" +msgstr "" + +#: views/staff.py:1037 +msgid "Queue by Status" +msgstr "" + +#: views/staff.py:1043 +msgid "Queue by Month" +msgstr "" diff --git a/build/lib/helpdesk/locale/en/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/en/LC_MESSAGES/django.mo new file mode 100644 index 00000000..58b7dfc6 Binary files /dev/null and b/build/lib/helpdesk/locale/en/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/en/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/en/LC_MESSAGES/django.po new file mode 100644 index 00000000..93578533 --- /dev/null +++ b/build/lib/helpdesk/locale/en/LC_MESSAGES/django.po @@ -0,0 +1,2401 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Ross Poulton , 2011 +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2014-07-26 14:14+0200\n" +"PO-Revision-Date: 2013-11-20 11:07+0000\n" +"Last-Translator: Ross Poulton \n" +"Language-Team: English (http://www.transifex.com/projects/p/django-helpdesk/" +"language/en/)\n" +"Language: en\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: forms.py:128 forms.py:328 models.py:190 models.py:267 +#: templates/helpdesk/dashboard.html:15 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/dashboard.html:124 templates/helpdesk/rss_list.html:24 +#: templates/helpdesk/ticket_list.html:69 +#: templates/helpdesk/ticket_list.html:88 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:1032 +#: views/staff.py:1038 views/staff.py:1044 views/staff.py:1050 +msgid "Queue" +msgstr "" + +#: forms.py:137 +msgid "Summary of the problem" +msgstr "" + +#: forms.py:142 +msgid "Submitter E-Mail Address" +msgstr "" + +#: forms.py:144 +msgid "" +"This e-mail address will receive copies of all public updates to this ticket." +msgstr "" + +#: forms.py:150 +msgid "Description of Issue" +msgstr "" + +#: forms.py:157 +msgid "Case owner" +msgstr "" + +#: forms.py:158 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "" + +#: forms.py:166 models.py:327 management/commands/escalate_tickets.py:154 +#: templates/helpdesk/public_view_ticket.html:23 +#: templates/helpdesk/ticket.html:184 +#: templates/helpdesk/ticket_desc_table.html:47 +#: templates/helpdesk/ticket_list.html:94 views/staff.py:429 +msgid "Priority" +msgstr "" + +#: forms.py:167 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "" + +#: forms.py:174 forms.py:365 models.py:335 templates/helpdesk/ticket.html:186 +#: views/staff.py:439 +msgid "Due on" +msgstr "" + +#: forms.py:186 forms.py:370 +msgid "Attach File" +msgstr "" + +#: forms.py:187 forms.py:371 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "" + +#: forms.py:240 +msgid "Ticket Opened" +msgstr "" + +#: forms.py:247 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "" + +#: forms.py:337 +msgid "Summary of your query" +msgstr "" + +#: forms.py:342 +msgid "Your E-Mail Address" +msgstr "" + +#: forms.py:343 +msgid "We will e-mail you when your ticket is updated." +msgstr "" + +#: forms.py:348 +msgid "Description of your issue" +msgstr "" + +#: forms.py:350 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "" + +#: forms.py:358 +msgid "Urgency" +msgstr "" + +#: forms.py:359 +msgid "Please select a priority carefully." +msgstr "" + +#: forms.py:419 +msgid "Ticket Opened Via Web" +msgstr "" + +#: forms.py:486 +msgid "Show Ticket List on Login?" +msgstr "" + +#: forms.py:487 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "" + +#: forms.py:492 +msgid "E-mail me on ticket change?" +msgstr "" + +#: forms.py:493 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody " +"else, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:498 +msgid "E-mail me when assigned a ticket?" +msgstr "" + +#: forms.py:499 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:504 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "" + +#: forms.py:505 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:510 +msgid "Number of tickets to show per page" +msgstr "" + +#: forms.py:511 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "" + +#: forms.py:518 +msgid "Use my e-mail address when submitting tickets?" +msgstr "" + +#: forms.py:519 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "" + +#: models.py:35 models.py:261 models.py:503 models.py:817 models.py:853 +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket.html:178 templates/helpdesk/ticket_list.html:85 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:419 +msgid "Title" +msgstr "" + +#: models.py:40 models.py:822 models.py:1206 +msgid "Slug" +msgstr "" + +#: models.py:41 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "" + +#: models.py:46 models.py:1054 models.py:1129 models.py:1203 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "" + +#: models.py:49 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use " +"IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "" + +#: models.py:55 models.py:794 +msgid "Locale" +msgstr "" + +#: models.py:59 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "" + +#: models.py:63 +msgid "Allow Public Submission?" +msgstr "" + +#: models.py:66 +msgid "Should this queue be listed on the public submission form?" +msgstr "" + +#: models.py:71 +msgid "Allow E-Mail Submission?" +msgstr "" + +#: models.py:74 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "" + +#: models.py:79 +msgid "Escalation Days" +msgstr "" + +#: models.py:82 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "" + +#: models.py:87 +msgid "New Ticket CC Address" +msgstr "" + +#: models.py:91 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple e-" +"mail addresses." +msgstr "" + +#: models.py:97 +msgid "Updated Ticket CC Address" +msgstr "" + +#: models.py:101 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "" + +#: models.py:108 +msgid "E-Mail Box Type" +msgstr "" + +#: models.py:110 +msgid "POP 3" +msgstr "" + +#: models.py:110 +msgid "IMAP" +msgstr "" + +#: models.py:113 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "" + +#: models.py:118 +msgid "E-Mail Hostname" +msgstr "" + +#: models.py:122 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "" + +#: models.py:127 +msgid "E-Mail Port" +msgstr "" + +#: models.py:130 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "" + +#: models.py:136 +msgid "Use SSL for E-Mail?" +msgstr "" + +#: models.py:139 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "" + +#: models.py:144 +msgid "E-Mail Username" +msgstr "" + +#: models.py:148 +msgid "Username for accessing this mailbox." +msgstr "" + +#: models.py:152 +msgid "E-Mail Password" +msgstr "" + +#: models.py:156 +msgid "Password for the above username" +msgstr "" + +#: models.py:160 +msgid "IMAP Folder" +msgstr "" + +#: models.py:164 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "" + +#: models.py:171 +msgid "E-Mail Check Interval" +msgstr "" + +#: models.py:172 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "" + +#: models.py:191 templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "" + +#: models.py:245 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:138 +msgid "Open" +msgstr "" + +#: models.py:246 templates/helpdesk/ticket.html:144 +#: templates/helpdesk/ticket.html.py:150 templates/helpdesk/ticket.html:155 +#: templates/helpdesk/ticket.html.py:159 +msgid "Reopened" +msgstr "" + +#: models.py:247 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:139 templates/helpdesk/ticket.html.py:145 +#: templates/helpdesk/ticket.html:151 +msgid "Resolved" +msgstr "" + +#: models.py:248 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:140 templates/helpdesk/ticket.html.py:146 +#: templates/helpdesk/ticket.html:152 templates/helpdesk/ticket.html.py:156 +msgid "Closed" +msgstr "" + +#: models.py:249 templates/helpdesk/ticket.html:141 +#: templates/helpdesk/ticket.html.py:147 templates/helpdesk/ticket.html:160 +msgid "Duplicate" +msgstr "" + +#: models.py:253 +msgid "1. Critical" +msgstr "" + +#: models.py:254 +msgid "2. High" +msgstr "" + +#: models.py:255 +msgid "3. Normal" +msgstr "" + +#: models.py:256 +msgid "4. Low" +msgstr "" + +#: models.py:257 +msgid "5. Very Low" +msgstr "" + +#: models.py:271 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/ticket_list.html:82 +#: templates/helpdesk/ticket_list.html:225 +msgid "Created" +msgstr "" + +#: models.py:273 +msgid "Date this ticket was first created" +msgstr "" + +#: models.py:277 +msgid "Modified" +msgstr "" + +#: models.py:279 +msgid "Date this ticket was most recently changed." +msgstr "" + +#: models.py:283 templates/helpdesk/public_view_ticket.html:18 +#: templates/helpdesk/ticket_desc_table.html:42 +msgid "Submitter E-Mail" +msgstr "" + +#: models.py:286 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "" + +#: models.py:295 +msgid "Assigned to" +msgstr "" + +#: models.py:299 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:70 +#: templates/helpdesk/ticket_list.html:91 +#: templates/helpdesk/ticket_list.html:225 +msgid "Status" +msgstr "" + +#: models.py:305 +msgid "On Hold" +msgstr "" + +#: models.py:308 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "" + +#: models.py:313 models.py:826 templates/helpdesk/public_view_ticket.html:41 +#: templates/helpdesk/ticket_desc_table.html:19 +msgid "Description" +msgstr "" + +#: models.py:316 +msgid "The content of the customers query." +msgstr "" + +#: models.py:320 templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Resolution" +msgstr "" + +#: models.py:323 +msgid "The resolution provided to the customer by our staff." +msgstr "" + +#: models.py:331 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "" + +#: models.py:344 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "" + +#: models.py:353 templates/helpdesk/ticket_desc_table.html:38 +#: views/feeds.py:95 views/feeds.py:121 views/feeds.py:173 views/staff.py:376 +msgid "Unassigned" +msgstr "" + +#: models.py:392 +msgid " - On Hold" +msgstr "" + +#: models.py:394 +msgid " - Open dependencies" +msgstr "" + +#: models.py:448 models.py:494 models.py:1117 models.py:1280 models.py:1309 +#: templates/helpdesk/public_homepage.html:78 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "" + +#: models.py:449 templates/helpdesk/navigation.html:17 +#: templates/helpdesk/ticket_list.html:2 +#: templates/helpdesk/ticket_list.html:224 +msgid "Tickets" +msgstr "" + +#: models.py:498 models.py:738 models.py:1047 models.py:1200 +msgid "Date" +msgstr "" + +#: models.py:510 views/staff.py:390 +msgid "Comment" +msgstr "" + +#: models.py:516 +msgid "Public" +msgstr "" + +#: models.py:519 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "" + +#: models.py:527 models.py:922 models.py:1125 views/staff.py:1008 +#: views/staff.py:1014 views/staff.py:1020 views/staff.py:1026 +msgid "User" +msgstr "" + +#: models.py:531 templates/helpdesk/ticket.html:135 +msgid "New Status" +msgstr "" + +#: models.py:535 +msgid "If the status was changed, what was it changed to?" +msgstr "" + +#: models.py:542 models.py:566 models.py:628 +msgid "Follow-up" +msgstr "" + +#: models.py:543 +msgid "Follow-ups" +msgstr "" + +#: models.py:570 models.py:1285 +msgid "Field" +msgstr "" + +#: models.py:575 +msgid "Old Value" +msgstr "" + +#: models.py:581 +msgid "New Value" +msgstr "" + +#: models.py:589 +msgid "removed" +msgstr "" + +#: models.py:591 +#, python-format +msgid "set to %s" +msgstr "" + +#: models.py:593 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "" + +#: models.py:600 +msgid "Ticket change" +msgstr "" + +#: models.py:601 +msgid "Ticket changes" +msgstr "" + +#: models.py:632 +msgid "File" +msgstr "" + +#: models.py:637 +msgid "Filename" +msgstr "" + +#: models.py:642 +msgid "MIME Type" +msgstr "" + +#: models.py:647 +msgid "Size" +msgstr "" + +#: models.py:648 +msgid "Size of this file in bytes" +msgstr "" + +#: models.py:665 +msgid "Attachment" +msgstr "" + +#: models.py:666 +msgid "Attachments" +msgstr "" + +#: models.py:685 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "" + +#: models.py:690 models.py:733 models.py:1042 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "" + +#: models.py:692 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "" + +#: models.py:697 +msgid "Body" +msgstr "" + +#: models.py:698 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); " +"{{ queue }} - The queue; and {{ user }} - the current user." +msgstr "" + +#: models.py:705 +msgid "Pre-set reply" +msgstr "" + +#: models.py:706 +msgid "Pre-set replies" +msgstr "" + +#: models.py:727 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "" + +#: models.py:739 +msgid "Date on which escalation should not happen" +msgstr "" + +#: models.py:746 +msgid "Escalation exclusion" +msgstr "" + +#: models.py:747 +msgid "Escalation exclusions" +msgstr "" + +#: models.py:760 +msgid "Template Name" +msgstr "" + +#: models.py:765 +msgid "Subject" +msgstr "" + +#: models.py:767 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is " +"available as in plain_text, below." +msgstr "" + +#: models.py:773 +msgid "Heading" +msgstr "" + +#: models.py:775 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same " +"context is available as in plain_text, below." +msgstr "" + +#: models.py:781 +msgid "Plain Text" +msgstr "" + +#: models.py:782 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "" + +#: models.py:788 +msgid "HTML" +msgstr "" + +#: models.py:789 +msgid "The same context is available here as in plain_text, above." +msgstr "" + +#: models.py:798 +msgid "Locale of this template." +msgstr "" + +#: models.py:806 +msgid "e-mail template" +msgstr "" + +#: models.py:807 +msgid "e-mail templates" +msgstr "" + +#: models.py:834 +msgid "Knowledge base category" +msgstr "" + +#: models.py:835 +msgid "Knowledge base categories" +msgstr "" + +#: models.py:849 templates/helpdesk/kb_index.html:11 +#: templates/helpdesk/public_homepage.html:11 +msgid "Category" +msgstr "" + +#: models.py:858 +msgid "Question" +msgstr "" + +#: models.py:862 +msgid "Answer" +msgstr "" + +#: models.py:866 +msgid "Votes" +msgstr "" + +#: models.py:867 +msgid "Total number of votes cast for this item" +msgstr "" + +#: models.py:872 +msgid "Positive Votes" +msgstr "" + +#: models.py:873 +msgid "Number of votes for this item which were POSITIVE." +msgstr "" + +#: models.py:878 +msgid "Last Updated" +msgstr "" + +#: models.py:879 +msgid "The date on which this question was most recently changed." +msgstr "" + +#: models.py:893 +msgid "Unrated" +msgstr "" + +#: models.py:901 +msgid "Knowledge base item" +msgstr "" + +#: models.py:902 +msgid "Knowledge base items" +msgstr "" + +#: models.py:926 templates/helpdesk/ticket_list.html:170 +msgid "Query Name" +msgstr "" + +#: models.py:928 +msgid "User-provided name for this query" +msgstr "" + +#: models.py:932 +msgid "Shared With Other Users?" +msgstr "" + +#: models.py:935 +msgid "Should other users see this query?" +msgstr "" + +#: models.py:939 +msgid "Search Query" +msgstr "" + +#: models.py:940 +msgid "Pickled query object. Be wary changing this." +msgstr "" + +#: models.py:950 +msgid "Saved search" +msgstr "" + +#: models.py:951 +msgid "Saved searches" +msgstr "" + +#: models.py:966 +msgid "Settings Dictionary" +msgstr "" + +#: models.py:967 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "" + +#: models.py:993 +msgid "User Setting" +msgstr "" + +#: models.py:994 templates/helpdesk/navigation.html:37 +#: templates/helpdesk/user_settings.html:6 +msgid "User Settings" +msgstr "" + +#: models.py:1036 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "" + +#: models.py:1048 +msgid "Date on which this e-mail address was added" +msgstr "" + +#: models.py:1056 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "" + +#: models.py:1061 +msgid "Save Emails in Mailbox?" +msgstr "" + +#: models.py:1064 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "" + +#: models.py:1101 +msgid "Ignored e-mail address" +msgstr "" + +#: models.py:1102 +msgid "Ignored e-mail addresses" +msgstr "" + +#: models.py:1124 +msgid "User who wishes to receive updates for this ticket." +msgstr "" + +#: models.py:1132 +msgid "For non-user followers, enter their e-mail address" +msgstr "" + +#: models.py:1136 +msgid "Can View Ticket?" +msgstr "" + +#: models.py:1138 +msgid "Can this CC login to view the ticket details?" +msgstr "" + +#: models.py:1142 +msgid "Can Update Ticket?" +msgstr "" + +#: models.py:1144 +msgid "Can this CC login and update the ticket?" +msgstr "" + +#: models.py:1175 +msgid "Field Name" +msgstr "" + +#: models.py:1176 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of " +"only lowercase letters with no punctuation." +msgstr "" + +#: models.py:1181 +msgid "Label" +msgstr "" + +#: models.py:1183 +msgid "The display label for this field" +msgstr "" + +#: models.py:1187 +msgid "Help Text" +msgstr "" + +#: models.py:1188 +msgid "Shown to the user when editing the ticket" +msgstr "" + +#: models.py:1194 +msgid "Character (single line)" +msgstr "" + +#: models.py:1195 +msgid "Text (multi-line)" +msgstr "" + +#: models.py:1196 +msgid "Integer" +msgstr "" + +#: models.py:1197 +msgid "Decimal" +msgstr "" + +#: models.py:1198 +msgid "List" +msgstr "" + +#: models.py:1199 +msgid "Boolean (checkbox yes/no)" +msgstr "" + +#: models.py:1201 +msgid "Time" +msgstr "" + +#: models.py:1202 +msgid "Date & Time" +msgstr "" + +#: models.py:1204 +msgid "URL" +msgstr "" + +#: models.py:1205 +msgid "IP Address" +msgstr "" + +#: models.py:1210 +msgid "Data Type" +msgstr "" + +#: models.py:1212 +msgid "Allows you to restrict the data entered into this field" +msgstr "" + +#: models.py:1217 +msgid "Maximum Length (characters)" +msgstr "" + +#: models.py:1223 +msgid "Decimal Places" +msgstr "" + +#: models.py:1224 +msgid "Only used for decimal fields" +msgstr "" + +#: models.py:1230 +msgid "Add empty first choice to List?" +msgstr "" + +#: models.py:1232 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces " +"that the user makes an active choice." +msgstr "" + +#: models.py:1236 +msgid "List Values" +msgstr "" + +#: models.py:1237 +msgid "For list fields only. Enter one option per line." +msgstr "" + +#: models.py:1243 +msgid "Ordering" +msgstr "" + +#: models.py:1244 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "" + +#: models.py:1258 +msgid "Required?" +msgstr "" + +#: models.py:1259 +msgid "Does the user have to enter a value for this field?" +msgstr "" + +#: models.py:1263 +msgid "Staff Only?" +msgstr "" + +#: models.py:1264 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "" + +#: models.py:1273 +msgid "Custom field" +msgstr "" + +#: models.py:1274 +msgid "Custom fields" +msgstr "" + +#: models.py:1297 +msgid "Ticket custom field value" +msgstr "" + +#: models.py:1298 +msgid "Ticket custom field values" +msgstr "" + +#: models.py:1315 +msgid "Depends On Ticket" +msgstr "" + +#: models.py:1324 +msgid "Ticket dependency" +msgstr "" + +#: models.py:1325 +msgid "Ticket dependencies" +msgstr "" + +#: management/commands/create_usersettings.py:25 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "" + +#: management/commands/escalate_tickets.py:148 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "" + +#: management/commands/get_email.py:158 +msgid "Created from e-mail" +msgstr "" + +#: management/commands/get_email.py:162 +msgid "Unknown Sender" +msgstr "" + +#: management/commands/get_email.py:216 +msgid "" +"No plain-text email body available. Please see attachment email_html_body." +"html." +msgstr "" + +#: management/commands/get_email.py:220 +msgid "email_html_body.html" +msgstr "" + +#: management/commands/get_email.py:263 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:271 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:329 +msgid " (Reopened)" +msgstr "" + +#: management/commands/get_email.py:331 +msgid " (Updated)" +msgstr "" + +#: templates/helpdesk/attribution.html:2 +msgid "django-helpdesk." +msgstr "" + +#: templates/helpdesk/base.html:10 +msgid "Powered by django-helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:20 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:24 templates/helpdesk/rss_list.html:31 +msgid "My Open Tickets" +msgstr "" + +#: templates/helpdesk/base.html:21 +msgid "All Recent Activity" +msgstr "" + +#: templates/helpdesk/base.html:22 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "" + +#: templates/helpdesk/base.html:52 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:18 +msgid "Helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:30 templates/helpdesk/rss_list.html:31 +msgid "RSS Icon" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "" + +#: templates/helpdesk/base.html:63 +msgid "API" +msgstr "" + +#: templates/helpdesk/base.html:64 templates/helpdesk/system_settings.html:6 +msgid "System Settings" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:146 +msgid "Delete Saved Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:6 +msgid "Delete Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this saved filter (%(query_title)s)? To re-create it, you will need to manually re-filter your ticket " +"listing." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"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." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:14 +#: templates/helpdesk/delete_ticket.html:10 +msgid "No, Don't Delete It" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:16 +#: templates/helpdesk/delete_ticket.html:12 +msgid "Yes - Delete It" +msgstr "" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/navigation.html:65 templates/helpdesk/navigation.html:68 +#: templates/helpdesk/public_homepage.html:27 +msgid "Submit a Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +#: templates/helpdesk/public_homepage.html:28 +msgid "Please provide as descriptive a title and description as possible." +msgstr "" + +#: templates/helpdesk/create_ticket.html:30 +#: templates/helpdesk/public_homepage.html:55 +msgid "Submit Ticket" +msgstr "" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "" + +#: templates/helpdesk/dashboard.html:9 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no " +"owner." +msgstr "" + +#: templates/helpdesk/dashboard.html:14 +msgid "Helpdesk Summary" +msgstr "" + +#: templates/helpdesk/dashboard.html:36 +msgid "Current Ticket Stats" +msgstr "" + +#: templates/helpdesk/dashboard.html:37 +msgid "Average number of days until ticket is closed (all tickets): " +msgstr "" + +#: templates/helpdesk/dashboard.html:38 +msgid "" +"Average number of days until ticket is closed (tickets opened in last 60 " +"days): " +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "Click" +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "for detailed average by month." +msgstr "" + +#: templates/helpdesk/dashboard.html:40 +msgid "Distribution of open tickets, grouped by time period:" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Days since opened" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Number of open tickets" +msgstr "" + +#: templates/helpdesk/dashboard.html:57 +msgid "All Tickets submitted by you" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:225 +msgid "Pr" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:124 +msgid "Last Update" +msgstr "" + +#: templates/helpdesk/dashboard.html:77 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "" + +#: templates/helpdesk/dashboard.html:92 +msgid "You have no tickets assigned to you." +msgstr "" + +#: templates/helpdesk/dashboard.html:99 +msgid "(pick up a ticket if you start to work on it)" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/ticket_desc_table.html:38 +msgid "Take" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:262 +msgid "Delete" +msgstr "" + +#: templates/helpdesk/dashboard.html:114 +msgid "There are no unassigned tickets." +msgstr "" + +#: templates/helpdesk/dashboard.html:123 +msgid "Closed & resolved Tickets you used to work on" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:3 +#: templates/helpdesk/delete_ticket.html:6 +msgid "Delete Ticket" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this ticket (%(ticket_title)s)? All " +"traces of the ticket, including followups, attachments, and updates will be " +"irreversibly removed." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:9 +msgid "Edit a Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "Note" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "" +"Editing a ticket does not send an e-mail to the ticket owner or " +"submitter. No new details should be entered, this form should only be used " +"to fix incorrect details or clean up the submission." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:33 +msgid "Save Changes" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:6 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:8 +msgid "" +"To ignore an e-mail address and prevent any emails from that address " +"creating tickets automatically, enter the e-mail address below." +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:10 +msgid "" +"You can either enter a whole e-mail address such as email@domain.com or a portion of an e-mail address with a wildcard, such as *@domain." +"com or user@*." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:6 +msgid "Un-Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:8 +#, python-format +msgid "" +"Are you sure you wish to stop removing this email address (" +"%(email_address)s) and allow their e-mails to automatically create " +"tickets in your system? You can re-add this e-mail address at any time." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:10 +msgid "Keep Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:12 +msgid "Stop Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the " +"incoming e-mail processor. You can add a new e-mail address " +"to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:260 +msgid "All" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "" + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:12 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "" + +#: templates/helpdesk/kb_category.html:13 +msgid "Article" +msgstr "" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:21 +#: templates/helpdesk/navigation.html:71 +msgid "Knowledgebase" +msgstr "" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "" + +#: templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:16 +#, python-format +msgid "" +"View other %(category_title)s articles, or continue viewing other knowledgebase articles." +msgstr "" + +#: templates/helpdesk/kb_item.html:18 +msgid "Feedback" +msgstr "" + +#: templates/helpdesk/kb_item.html:20 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "" + +#: templates/helpdesk/kb_item.html:23 +msgid "This article was useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:24 +msgid "This article was not useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:27 +msgid "The results of voting by other readers of this article are below:" +msgstr "" + +#: templates/helpdesk/kb_item.html:30 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:31 +#, python-format +msgid "Votes: %(votes)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:32 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "" + +#: templates/helpdesk/navigation.html:16 templates/helpdesk/navigation.html:64 +msgid "Dashboard" +msgstr "" + +#: templates/helpdesk/navigation.html:18 +msgid "New Ticket" +msgstr "" + +#: templates/helpdesk/navigation.html:19 +msgid "Stats" +msgstr "" + +#: templates/helpdesk/navigation.html:24 +msgid "Saved Query" +msgstr "" + +#: templates/helpdesk/navigation.html:39 +msgid "Change password" +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Search..." +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Logout" +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Log In" +msgstr "" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:73 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "" + +#: templates/helpdesk/public_homepage.html:28 +msgid "All fields are required." +msgstr "" + +#: templates/helpdesk/public_homepage.html:66 +msgid "Please use button at upper right to login first." +msgstr "" + +#: templates/helpdesk/public_homepage.html:82 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "" + +#: templates/helpdesk/public_homepage.html:86 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:5 +msgid "Sorry, but there has been an error trying to submit your ticket." +msgstr "" + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"Our system has marked your submission as spam, so we are " +"unable to save it. If this is not spam, please press back and re-type your " +"message. Be careful to avoid sounding 'spammy', and if you have heaps of " +"links please try removing them if possible." +msgstr "" + +#: templates/helpdesk/public_spam.html:7 +msgid "" +"We are sorry for any inconvenience, however this check is required to avoid " +"our helpdesk resources being overloaded by spammers." +msgstr "" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:9 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:13 +#: templates/helpdesk/ticket_desc_table.html:32 +msgid "Submitted On" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:35 +msgid "Tags" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept and Close" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:57 +#: templates/helpdesk/ticket.html:66 +msgid "Follow-Ups" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:65 +#: templates/helpdesk/ticket.html:100 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "" + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "" + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:27 views/staff.py:1049 +msgid "Days until ticket closed by Month" +msgstr "" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "" + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "" + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "" + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "" + +#: templates/helpdesk/rss_list.html:23 +msgid "Per-Queue Feeds" +msgstr "" + +#: templates/helpdesk/rss_list.html:24 +msgid "All Open Tickets" +msgstr "" + +#: templates/helpdesk/rss_list.html:30 +msgid "Open Tickets" +msgstr "" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "" + +#: templates/helpdesk/system_settings.html:8 +msgid "The following items can be maintained by you or other superusers:" +msgstr "" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:200 +msgid "Add Another File" +msgstr "" + +#: templates/helpdesk/ticket.html:73 templates/helpdesk/ticket.html.py:86 +msgid "Private" +msgstr "" + +#: templates/helpdesk/ticket.html:119 +msgid "Respond to this ticket" +msgstr "" + +#: templates/helpdesk/ticket.html:126 +msgid "Use a Pre-set Reply" +msgstr "" + +#: templates/helpdesk/ticket.html:126 templates/helpdesk/ticket.html.py:166 +msgid "(Optional)" +msgstr "" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "" + +#: templates/helpdesk/ticket.html:131 +msgid "Comment / Resolution" +msgstr "" + +#: templates/helpdesk/ticket.html:133 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "" + +#: templates/helpdesk/ticket.html:136 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are " +"resolved." +msgstr "" + +#: templates/helpdesk/ticket.html:166 +msgid "Is this update public?" +msgstr "" + +#: templates/helpdesk/ticket.html:168 +msgid "" +"If this is public, the submitter will be e-mailed your comment or resolution." +msgstr "" + +#: templates/helpdesk/ticket.html:172 +msgid "Change Further Details »" +msgstr "" + +#: templates/helpdesk/ticket.html:181 templates/helpdesk/ticket_list.html:68 +#: templates/helpdesk/ticket_list.html:97 +#: templates/helpdesk/ticket_list.html:225 +msgid "Owner" +msgstr "" + +#: templates/helpdesk/ticket.html:182 +msgid "Unassign" +msgstr "" + +#: templates/helpdesk/ticket.html:193 +msgid "Attach File(s) »" +msgstr "" + +#: templates/helpdesk/ticket.html:199 +msgid "Attach a File" +msgstr "" + +#: templates/helpdesk/ticket.html:207 +msgid "Update This Ticket" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (" +"%(email_address)s) from the CC list for this ticket? They will stop " +"receiving updates.

\n" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever " +"%(ticket_title)s is updated. Some people can also view or edit the " +"ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete " +"any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the " +"dependent ticket has been resolved or closed.

" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Unhold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Hold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:9 +#, python-format +msgid "Queue: %(queue)s" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Assigned To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:43 +msgid "Ignore" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:52 +msgid "Copies To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Manage" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this " +"ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Subscribe" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to subscribe yourself to this ticket, if you want to receive an e-" +"mail whenever this ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:57 +msgid "Dependencies" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:59 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:60 +msgid "Remove Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "This ticket has no dependencies." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "Add Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Change Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:67 +#: templates/helpdesk/ticket_list.html:79 +msgid "Sorting" +msgstr "" + +#: templates/helpdesk/ticket_list.html:71 +#: templates/helpdesk/ticket_list.html:139 +msgid "Keywords" +msgstr "" + +#: templates/helpdesk/ticket_list.html:72 +msgid "Date Range" +msgstr "" + +#: templates/helpdesk/ticket_list.html:100 +msgid "Reverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:102 +msgid "Ordering applied to tickets" +msgstr "" + +#: templates/helpdesk/ticket_list.html:107 +msgid "Owner(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:111 +msgid "(ME)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:115 +msgid "Ctrl-Click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:120 +msgid "Queue(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:121 +#: templates/helpdesk/ticket_list.html:127 +msgid "Ctrl-click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:126 +msgid "Status(es)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:132 +msgid "Date (From)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:133 +msgid "Date (To)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:134 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "" + +#: templates/helpdesk/ticket_list.html:140 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and " +"submitter fields." +msgstr "" + +#: templates/helpdesk/ticket_list.html:144 +msgid "Apply Filter" +msgstr "" + +#: templates/helpdesk/ticket_list.html:146 +#, python-format +msgid "" +"You are currently viewing saved query \"%(query_name)s\"." +msgstr "" + +#: templates/helpdesk/ticket_list.html:149 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "" + +#: templates/helpdesk/ticket_list.html:162 +#: templates/helpdesk/ticket_list.html:181 +msgid "Save Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:172 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "" + +#: templates/helpdesk/ticket_list.html:174 +msgid "Shared?" +msgstr "" + +#: templates/helpdesk/ticket_list.html:175 +msgid "Yes, share this query with other users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:176 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:195 +msgid "Use Saved Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:202 +msgid "Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:207 +msgid "Run Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:240 +msgid "No Tickets Match Your Selection" +msgstr "" + +#: templates/helpdesk/ticket_list.html:247 +msgid "Previous" +msgstr "" + +#: templates/helpdesk/ticket_list.html:251 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:255 +msgid "Next" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Select:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "None" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Inverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "With Selected Tickets:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Take (Assign to me)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Don't Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Assign To" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Nobody (Unassign)" +msgstr "" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "" + +#: templates/helpdesk/user_settings.html:8 +msgid "" +"Use the following options to change the way your helpdesk system works for " +"you. These settings do not impact any other user." +msgstr "" + +#: templates/helpdesk/user_settings.html:14 +msgid "Save Options" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and " +"make the world a better place.

\n" +"\n" +msgstr "" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "" + +#: templates/helpdesk/registration/login.html:14 +msgid "To log in simply enter your username and password below." +msgstr "" + +#: templates/helpdesk/registration/login.html:17 +msgid "Your username and password didn't match. Please try again." +msgstr "" + +#: templates/helpdesk/registration/login.html:20 +msgid "Login" +msgstr "" + +#: views/feeds.py:39 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:44 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:50 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:55 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:102 +msgid "Helpdesk: Unassigned Tickets" +msgstr "" + +#: views/feeds.py:103 +msgid "Unassigned Open and Reopened tickets" +msgstr "" + +#: views/feeds.py:128 +msgid "Helpdesk: Recent Followups" +msgstr "" + +#: views/feeds.py:129 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "" + +#: views/feeds.py:144 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "" + +#: views/feeds.py:149 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "" + +#: views/public.py:89 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "" + +#: views/public.py:107 +msgid "Submitter accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:235 +msgid "Accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:369 +#, python-format +msgid "Assigned to %(username)s" +msgstr "" + +#: views/staff.py:392 +msgid "Updated" +msgstr "" + +#: views/staff.py:577 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "" + +#: views/staff.py:582 +msgid "Unassigned in bulk update" +msgstr "" + +#: views/staff.py:587 views/staff.py:592 +msgid "Closed in bulk update" +msgstr "" + +#: views/staff.py:806 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string " +"matching in SQLite." +msgstr "" + +#: views/staff.py:910 +msgid "Ticket taken off hold" +msgstr "" + +#: views/staff.py:913 +msgid "Ticket placed on hold" +msgstr "" + +#: views/staff.py:1007 +msgid "User by Priority" +msgstr "" + +#: views/staff.py:1013 +msgid "User by Queue" +msgstr "" + +#: views/staff.py:1019 +msgid "User by Status" +msgstr "" + +#: views/staff.py:1025 +msgid "User by Month" +msgstr "" + +#: views/staff.py:1031 +msgid "Queue by Priority" +msgstr "" + +#: views/staff.py:1037 +msgid "Queue by Status" +msgstr "" + +#: views/staff.py:1043 +msgid "Queue by Month" +msgstr "" diff --git a/build/lib/helpdesk/locale/es/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/es/LC_MESSAGES/django.mo new file mode 100644 index 00000000..c7185df7 Binary files /dev/null and b/build/lib/helpdesk/locale/es/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/es/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/es/LC_MESSAGES/django.po new file mode 100644 index 00000000..9ee96f33 --- /dev/null +++ b/build/lib/helpdesk/locale/es/LC_MESSAGES/django.po @@ -0,0 +1,2327 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Alberto Gaona , 2011 +# Antonio Storni , 2012 +# Erik Rivera , 2011 +# Ross Poulton , 2011 +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2012-08-07 20:40+1000\n" +"PO-Revision-Date: 2013-04-29 09:18+0000\n" +"Last-Translator: Ross Poulton \n" +"Language-Team: Spanish (http://www.transifex.com/projects/p/django-helpdesk/language/es/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: es\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: forms.py:113 forms.py:360 models.py:262 +#: templates/helpdesk/dashboard.html:11 templates/helpdesk/dashboard.html:37 +#: templates/helpdesk/dashboard.html:57 templates/helpdesk/dashboard.html:77 +#: templates/helpdesk/dashboard.html:99 templates/helpdesk/rss_list.html:23 +#: templates/helpdesk/ticket_list.html:56 +#: templates/helpdesk/ticket_list.html:78 +#: templates/helpdesk/ticket_list.html:199 views/staff.py:976 +#: views/staff.py:982 views/staff.py:988 +msgid "Queue" +msgstr "Cola" + +#: forms.py:122 +msgid "Summary of the problem" +msgstr "Resumen del problema" + +#: forms.py:127 +msgid "Submitter E-Mail Address" +msgstr "Direccion de e-mail del originador" + +#: forms.py:129 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "Esta direccion de e-mail recibirá copias de todas las actualizaciones públicas de este ticket." + +#: forms.py:135 +msgid "Description of Issue" +msgstr "Descripción del asunto" + +#: forms.py:142 +msgid "Case owner" +msgstr "Dueño del caso" + +#: forms.py:143 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "Si selecciona un dueño distinto a usted, él o ellos serán notificados de los detalles por e-mail de manera inmediata." + +#: forms.py:151 models.py:322 management/commands/escalate_tickets.py:149 +#: templates/helpdesk/public_view_ticket.html:21 +#: templates/helpdesk/ticket.html:176 +#: templates/helpdesk/ticket_desc_table.html:31 +#: templates/helpdesk/ticket_list.html:84 views/staff.py:355 +msgid "Priority" +msgstr "Prioridad" + +#: forms.py:152 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "Por favor seleccione cuidadosamente una prioridad. Si no está seguro, déjelo como está (3)." + +#: forms.py:159 forms.py:397 models.py:330 templates/helpdesk/ticket.html:178 +#: views/staff.py:365 +msgid "Due on" +msgstr "A terminar" + +#: forms.py:171 forms.py:402 +msgid "Attach File" +msgstr "Adjuntar Archivo." + +#: forms.py:172 forms.py:403 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "Usted puede adjuntar un archivo como documento o un pantallazo a este ticket." + +#: forms.py:180 templates/helpdesk/public_view_ticket.html:33 +#: templates/helpdesk/ticket.html:182 +#: templates/helpdesk/ticket_desc_table.html:42 +#: templates/helpdesk/ticket_list.html:61 +#: templates/helpdesk/ticket_list.html:199 views/staff.py:376 +msgid "Tags" +msgstr "Etiquetas" + +#: forms.py:181 +msgid "" +"Words, separated by spaces, or phrases separated by commas. These should " +"communicate significant characteristics of this ticket" +msgstr "Palabras, separadas por espacios, o frases separadas por comas. Estas comunicarán características significativas de este ticket." + +#: forms.py:275 +msgid "Ticket Opened" +msgstr "Ticket abierto" + +#: forms.py:282 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "Ticket abierto & Asignado a %(name)s" + +#: forms.py:369 +msgid "Summary of your query" +msgstr "Resumen de su consulta" + +#: forms.py:374 +msgid "Your E-Mail Address" +msgstr "Su dirección de e-mail" + +#: forms.py:375 +msgid "We will e-mail you when your ticket is updated." +msgstr "Le enviaremos un e-mail cuando su ticket tenga actualizaciones." + +#: forms.py:380 +msgid "Description of your issue" +msgstr "Descripción de su petición" + +#: forms.py:382 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "Por favor describa de la mejor manera posible, incluyendo los detalles que puedan ayudarnos a atender su petición." + +#: forms.py:390 +msgid "Urgency" +msgstr "Urgencia" + +#: forms.py:391 +msgid "Please select a priority carefully." +msgstr "Por favor seleccione una prioridad cuidadosamente." + +#: forms.py:486 +msgid "Ticket Opened Via Web" +msgstr "Ticket abierto via web" + +#: forms.py:553 +msgid "Show Ticket List on Login?" +msgstr "¿Mostrar la lista de tickets al iniciar sesión?" + +#: forms.py:554 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "¿Mostrar la lista de tickets después de ingresar? De otra forma, el dashboard será mostrado." + +#: forms.py:559 +msgid "E-mail me on ticket change?" +msgstr "¿Enviarle un e-mail cuando un ticket se actualice?" + +#: forms.py:560 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "¿Desea recibir un e-mail si usted es el dueño de un ticket y el ticket es cambiado via web por alguien más?" + +#: forms.py:565 +msgid "E-mail me when assigned a ticket?" +msgstr "¿Quiere recibir un e-mail cuando se le asigne un ticket?" + +#: forms.py:566 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "¿Quiere que se le envie un e-mail cuando se le asigne un ticket via web?" + +#: forms.py:571 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "¿Enviarle un e-mail cuando un ticket es cambiado via el API?" + +#: forms.py:572 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "¿Quiere recibir un e-mail si un ticket es modificado a través de la API?" + +#: forms.py:577 +msgid "Number of tickets to show per page" +msgstr "Número de tickets a mostrar por página" + +#: forms.py:578 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "¿Cúantos tickets quiere ver en la página de Lista de Tickets?" + +#: forms.py:585 +msgid "Use my e-mail address when submitting tickets?" +msgstr "¿Usar mi direccion de e-mail cuando se envien tickets?" + +#: forms.py:586 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "Cuando envía un ticket, ¿quiere que automáticamente se use su dirección de e-mail como emisor? Usted puede ingresar una dirección de e-mail cuando se ingrese un ticket si es que lo necesita. Esta opción solo modifica la opción por defecto." + +#: models.py:32 models.py:256 models.py:490 models.py:787 models.py:821 +#: templates/helpdesk/dashboard.html:37 templates/helpdesk/dashboard.html:57 +#: templates/helpdesk/dashboard.html:77 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/ticket.html:170 templates/helpdesk/ticket_list.html:75 +#: templates/helpdesk/ticket_list.html:199 views/staff.py:345 +msgid "Title" +msgstr "Título" + +#: models.py:37 models.py:792 models.py:1162 +msgid "Slug" +msgstr "Prefijo" + +#: models.py:38 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "Este prefijo es utilizado cuando se crea el ID de un ticket. Una vez configurado, trate de no cambiarlo porque las notificaciones por e-mail pueden resultar afectadas" + +#: models.py:43 models.py:1015 models.py:1085 models.py:1159 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "Dirección de E-mail" + +#: models.py:46 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "Todos los correos de salida de esta cola usarán esta dirección. Si usa IMAP o POP3, esta debe ser la dirección de correo para ese buzón" + +#: models.py:52 models.py:766 +msgid "Locale" +msgstr "Internacionalización (locale)" + +#: models.py:56 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "Internacionalización de esta cola. Todo lo que corresponda a esta cola estara en este lenguaje." + +#: models.py:60 +msgid "Allow Public Submission?" +msgstr "¿Permitir creación de tickets pública?" + +#: models.py:63 +msgid "Should this queue be listed on the public submission form?" +msgstr "¿Debe esta cola ser listada en el formulario de público de creación de tickets?" + +#: models.py:68 +msgid "Allow E-Mail Submission?" +msgstr "¿Permitir crear tickets por e-mail?" + +#: models.py:71 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "¿Quiere sondear el buzón de correo de abajo para nuevos tickets?" + +#: models.py:76 +msgid "Escalation Days" +msgstr "Dias de escalación" + +#: models.py:79 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "Para tickets que no están retenidos, ¿con que frecuencia desea incrementar su prioridad?" + +#: models.py:84 +msgid "New Ticket CC Address" +msgstr "Ticket Nuevo, dirección CC" + +#: models.py:88 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "Si introduce una dirección de e-mail aquí, entonces esta recibirá notificaciones de nuevos tickets creados para esta cola. Introduzca una coma entre múltiples direcciones de e-mail" + +#: models.py:94 +msgid "Updated Ticket CC Address" +msgstr "Actualización de Ticket, Dirección de CC" + +#: models.py:98 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "Si introduce una dirección de e-mail aquí, entonces esta recibirá notificaciones de toda la actividad (tickets nuevos, cerrados, actualizados, reasignados, etc.) para esta cola. Introduzca una coma entre múltiples direcciones de e-mail" + +#: models.py:105 +msgid "E-Mail Box Type" +msgstr "Tipo de buzón de correo" + +#: models.py:107 +msgid "POP 3" +msgstr "POP 3" + +#: models.py:107 +msgid "IMAP" +msgstr "IMAP" + +#: models.py:110 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "Dirección de e-mail para crear tickets automáticos a partir de un buzón de correo - tanto POP3 e IMAP son soportados." + +#: models.py:115 +msgid "E-Mail Hostname" +msgstr "Nombre del servidor de e-mail" + +#: models.py:119 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "La dirección IP o nombre de dominio de su servidor de e-mail. Puede ser \"localhost\"." + +#: models.py:124 +msgid "E-Mail Port" +msgstr "Puerto de e-mail" + +#: models.py:127 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "Número de puerto para acceder al e-mail. Por defecto POP3 es \"110\" y para IMAP es \"143\". Esto puede ser distinto en algunos servidores. Deje en blanco para usar los por defecto." + +#: models.py:133 +msgid "Use SSL for E-Mail?" +msgstr "¿Usar SSL para el e-mail?" + +#: models.py:136 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "Si va a utilizar SSL para IMAP o POP3 - el puerto predeterminado es 993 para IMAP y 995 para POP3" + +#: models.py:141 +msgid "E-Mail Username" +msgstr "Nombre de usuario de e-mail" + +#: models.py:145 +msgid "Username for accessing this mailbox." +msgstr "Nombre de usuario para acceder al e-mail." + +#: models.py:149 +msgid "E-Mail Password" +msgstr "Contraseña de e-mail" + +#: models.py:153 +msgid "Password for the above username" +msgstr "Contraseña para el usuario de encima" + +#: models.py:157 +msgid "IMAP Folder" +msgstr "Carpeta IMAP" + +#: models.py:161 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "Si utiliza IMAP, ¿de qué carpeta quiere extraer el mensaje? Esto le permite usar una sola cuenta de IMAP para varias colas, filtrando los mensajes en el servidor IMAP para separarlos en folders. Por defecto: INBOX" + +#: models.py:168 +msgid "E-Mail Check Interval" +msgstr "Intervalo de revisión del e-mail" + +#: models.py:169 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "¿Con que frecuencia desea revisar el buzón de e-mail? (En Minutos)" + +#: models.py:240 templates/helpdesk/dashboard.html:11 +#: templates/helpdesk/ticket.html:130 +msgid "Open" +msgstr "Abierto" + +#: models.py:241 templates/helpdesk/ticket.html:136 +#: templates/helpdesk/ticket.html.py:142 templates/helpdesk/ticket.html:147 +#: templates/helpdesk/ticket.html.py:151 +msgid "Reopened" +msgstr "Reabierto" + +#: models.py:242 templates/helpdesk/dashboard.html:11 +#: templates/helpdesk/ticket.html:131 templates/helpdesk/ticket.html.py:137 +#: templates/helpdesk/ticket.html:143 +msgid "Resolved" +msgstr "Resuelto" + +#: models.py:243 templates/helpdesk/dashboard.html:11 +#: templates/helpdesk/ticket.html:132 templates/helpdesk/ticket.html.py:138 +#: templates/helpdesk/ticket.html:144 templates/helpdesk/ticket.html.py:148 +msgid "Closed" +msgstr "Cerrado" + +#: models.py:244 templates/helpdesk/ticket.html:133 +#: templates/helpdesk/ticket.html.py:139 templates/helpdesk/ticket.html:152 +msgid "Duplicate" +msgstr "Duplicado" + +#: models.py:248 +msgid "1. Critical" +msgstr "1. Crítica" + +#: models.py:249 +msgid "2. High" +msgstr "2. Alta" + +#: models.py:250 +msgid "3. Normal" +msgstr "3. Normal" + +#: models.py:251 +msgid "4. Low" +msgstr "4. Baja" + +#: models.py:252 +msgid "5. Very Low" +msgstr "5. Muy baja" + +#: models.py:266 templates/helpdesk/dashboard.html:77 +#: templates/helpdesk/ticket_list.html:72 +#: templates/helpdesk/ticket_list.html:199 +msgid "Created" +msgstr "Creado" + +#: models.py:268 +msgid "Date this ticket was first created" +msgstr "Fecha de cuando fue creado este ticket" + +#: models.py:272 +msgid "Modified" +msgstr "Modificado" + +#: models.py:274 +msgid "Date this ticket was most recently changed." +msgstr "Fecha de último cambio del ticket." + +#: models.py:278 templates/helpdesk/public_view_ticket.html:16 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Submitter E-Mail" +msgstr "E-mail del solicitante" + +#: models.py:281 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "El solicitante recibira un e-mail para todas las actualizaciones públicas dejadas para esta tarea." + +#: models.py:290 +msgid "Assigned to" +msgstr "Asignado a" + +#: models.py:294 templates/helpdesk/dashboard.html:37 +#: templates/helpdesk/dashboard.html:57 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/ticket_list.html:57 +#: templates/helpdesk/ticket_list.html:81 +#: templates/helpdesk/ticket_list.html:199 +msgid "Status" +msgstr "Estado" + +#: models.py:300 +msgid "On Hold" +msgstr "En espera" + +#: models.py:303 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "Si un ticket está en espera, no sera escalado automaticamente." + +#: models.py:308 models.py:796 templates/helpdesk/public_view_ticket.html:39 +#: templates/helpdesk/ticket_desc_table.html:67 +msgid "Description" +msgstr "Descripción" + +#: models.py:311 +msgid "The content of the customers query." +msgstr "El contenido de la consulta de clientes" + +#: models.py:315 templates/helpdesk/public_view_ticket.html:46 +#: templates/helpdesk/ticket_desc_table.html:74 +msgid "Resolution" +msgstr "Solución" + +#: models.py:318 +msgid "The resolution provided to the customer by our staff." +msgstr "La solución proporcionada al cliente por el personal de soporte" + +#: models.py:326 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "1 = Prioridad más alta, 5 = Prioridad Baja" + +#: models.py:339 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "La fecha de este ticket fue modificada por la ultima escalación - actualizado automáticamente por management/commands/escalate_tickets.py." + +#: models.py:348 templates/helpdesk/ticket_desc_table.html:22 +#: views/feeds.py:91 views/feeds.py:117 views/feeds.py:169 views/staff.py:302 +msgid "Unassigned" +msgstr "Sin Asignar" + +#: models.py:387 +msgid " - On Hold" +msgstr "- En espera" + +#: models.py:481 models.py:1073 models.py:1231 models.py:1256 +#: templates/helpdesk/public_homepage.html:26 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "Ticket" + +#: models.py:485 models.py:714 models.py:1008 models.py:1156 +msgid "Date" +msgstr "Fecha" + +#: models.py:497 views/staff.py:316 +msgid "Comment" +msgstr "Comentario" + +#: models.py:503 +msgid "Public" +msgstr "Público" + +#: models.py:506 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "Los tickets públicos son visibles por el usuario y todo el personal de soporte, mientras los tickets no públicos sólo pueden ser vistos por el personal de soporte." + +#: models.py:514 models.py:888 models.py:1081 views/staff.py:952 +#: views/staff.py:958 views/staff.py:964 views/staff.py:970 +msgid "User" +msgstr "Usuario" + +#: models.py:518 templates/helpdesk/ticket.html:127 +msgid "New Status" +msgstr "Nuevo Estado" + +#: models.py:522 +msgid "If the status was changed, what was it changed to?" +msgstr "Si el estado cambió, ¿que fue a lo que cambió?" + +#: models.py:551 models.py:608 +msgid "Follow-up" +msgstr "Seguimiento" + +#: models.py:555 models.py:1236 +msgid "Field" +msgstr "Campo" + +#: models.py:560 +msgid "Old Value" +msgstr "Valor Anterior" + +#: models.py:566 +msgid "New Value" +msgstr "Nuevo valor" + +#: models.py:574 +msgid "removed" +msgstr "removido" + +#: models.py:576 +#, python-format +msgid "set to %s" +msgstr "establece en %s" + +#: models.py:578 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "cambiado de \"%(old_value)s\" a \"%(new_value)s\"" + +#: models.py:612 +msgid "File" +msgstr "Fichero" + +#: models.py:617 +msgid "Filename" +msgstr "Nombre del fichero" + +#: models.py:622 +msgid "MIME Type" +msgstr "Tipo MIME" + +#: models.py:627 +msgid "Size" +msgstr "Tamaño" + +#: models.py:628 +msgid "Size of this file in bytes" +msgstr "Tamaño del fichero en bytes" + +#: models.py:663 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "Dejar en blanco para permitir que esta respuesta se utilice para todas las colas, o seleccionar las colas a las que desee asociar con esta respuesta." + +#: models.py:668 models.py:709 models.py:1003 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "Nombre" + +#: models.py:670 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "Sólo se utiliza para ayudar a los usuarios con la selección de una respuesta - no se muestra al usuario." + +#: models.py:675 +msgid "Body" +msgstr "Cuerpo" + +#: models.py:676 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "Contexto: {{ ticket }} - ticket de objeto (por ejemplo, {{ ticket.title }}); {{ queue }} - La cola, y {{ user }} - el usuario actual." + +#: models.py:703 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "Dejar en blanco para que esta exclusión se aplique a todas las colas, o seleccionar las colas que desee excluir con esta entrada." + +#: models.py:715 +msgid "Date on which escalation should not happen" +msgstr "Fecha en la que el escalamiento no debe suceder" + +#: models.py:732 +msgid "Template Name" +msgstr "Nombre de plantillla" + +#: models.py:737 +msgid "Subject" +msgstr "Asunto" + +#: models.py:739 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "Este será antecedido por \"[ticket.ticket] ticket.title\". Se recomienda algo simple como \"(Actualizado\") o \"(Cerrado)\" - el mismo contexto se encuentra disponible como en plain_text, a continuación." + +#: models.py:745 +msgid "Heading" +msgstr "Encabezado" + +#: models.py:747 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "En correos HTML, este será el encabezado al principio del correo - el mismo contexto aplica a textlo plano, abajo." + +#: models.py:753 +msgid "Plain Text" +msgstr "Texto simple" + +#: models.py:754 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "El contexto a su disposición incluye {{ ticket }}, {{ queue }}, y dependiendo de la hora de la llamada: {{resolution}} o {{comment}}." + +#: models.py:760 +msgid "HTML" +msgstr "HTML" + +#: models.py:761 +msgid "The same context is available here as in plain_text, above." +msgstr "El mismo contexto está disponible aquí como texto plano, arriba." + +#: models.py:770 +msgid "Locale of this template." +msgstr "Locale de esta plantilla" + +#: models.py:817 templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Category" +msgstr "Categoría" + +#: models.py:826 +msgid "Question" +msgstr "Pregunta" + +#: models.py:830 +msgid "Answer" +msgstr "Respuesta" + +#: models.py:834 +msgid "Votes" +msgstr "Votos" + +#: models.py:835 +msgid "Total number of votes cast for this item" +msgstr "Número total de votos emitidos para este ítem" + +#: models.py:840 +msgid "Positive Votes" +msgstr "Votos positivos" + +#: models.py:841 +msgid "Number of votes for this item which were POSITIVE." +msgstr "Número total de votos para este ítem que fueron POSITIVOS" + +#: models.py:846 +msgid "Last Updated" +msgstr "Última actualización" + +#: models.py:847 +msgid "The date on which this question was most recently changed." +msgstr "Fecha de última actualización de esta pregunta." + +#: models.py:861 +msgid "Unrated" +msgstr "No calificado" + +#: models.py:892 templates/helpdesk/ticket_list.html:158 +msgid "Query Name" +msgstr "Nombre de consulta" + +#: models.py:894 +msgid "User-provided name for this query" +msgstr "nombre provisto por el usuario para esta consulta" + +#: models.py:898 +msgid "Shared With Other Users?" +msgstr "¿Compartido con otros usuarios?" + +#: models.py:901 +msgid "Should other users see this query?" +msgstr "¿Permitir a otros usuarios ver esta consulta?" + +#: models.py:905 +msgid "Search Query" +msgstr "Consulta de búsqueda" + +#: models.py:906 +msgid "Pickled query object. Be wary changing this." +msgstr "Objeto de consulta en crudo (pickled). Solo cambie este campo si sabe lo que está haciendo." + +#: models.py:927 +msgid "Settings Dictionary" +msgstr "Diccionario de Configuración" + +#: models.py:928 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "Esta es una representación codificada en base 64 de un diccionario de Python en crudo (pickled). No cambie este campo a través de la administración." + +#: models.py:997 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "Deje en blanco para que este e-mail que sea ignorado en todas las colas, o seleccionar las colas en las que desea ignorar este e-mail." + +#: models.py:1009 +msgid "Date on which this e-mail address was added" +msgstr "Fecha en la que se añadió la dirección de e-mail" + +#: models.py:1017 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "Introduzca una dirección de e-mail completa, o partes con comodines, por ejemplo, *@domain.com o postmaster@*." + +#: models.py:1022 +msgid "Save Emails in Mailbox?" +msgstr "¿Guardar mensajes de e-mail en el buzón?" + +#: models.py:1025 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "¿Desea guardar los correos electrónicos de esta dirección en el buzón de correo? Si es marcada, los mensajes de correo electrónico de esta dirección serán eliminados." + +#: models.py:1080 +msgid "User who wishes to receive updates for this ticket." +msgstr "Usuario que desea recibir las actualizaciones de este ticket." + +#: models.py:1088 +msgid "For non-user followers, enter their e-mail address" +msgstr "Para los seguidores sin usuario, introduzca las direcciones de e-mail" + +#: models.py:1092 +msgid "Can View Ticket?" +msgstr "¿Puede ver el ticket?" + +#: models.py:1094 +msgid "Can this CC login to view the ticket details?" +msgstr "¿Puede este CC entrar para ver los detalles del ticket?" + +#: models.py:1098 +msgid "Can Update Ticket?" +msgstr "¿Puede actualizar el ticket?" + +#: models.py:1100 +msgid "Can this CC login and update the ticket?" +msgstr "¿Puede este CC entrar y actualizar el ticket?" + +#: models.py:1131 +msgid "Field Name" +msgstr "Nombre del Campo" + +#: models.py:1132 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +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:1137 +msgid "Label" +msgstr "Etiqueta" + +#: models.py:1139 +msgid "The display label for this field" +msgstr "La etiqueta a desplegar para este campo" + +#: models.py:1143 +msgid "Help Text" +msgstr "Texto de ayuda" + +#: models.py:1144 +msgid "Shown to the user when editing the ticket" +msgstr "Despeglado al usuario cuando se edita el ticket" + +#: models.py:1150 +msgid "Character (single line)" +msgstr "Caracter (línea sencilla)" + +#: models.py:1151 +msgid "Text (multi-line)" +msgstr "Texto (multi-línea)" + +#: models.py:1152 +msgid "Integer" +msgstr "Entero" + +#: models.py:1153 +msgid "Decimal" +msgstr "Decimal" + +#: models.py:1154 +msgid "List" +msgstr "Listado" + +#: models.py:1155 +msgid "Boolean (checkbox yes/no)" +msgstr "Booleano (checkbox sí/no)" + +#: models.py:1157 +msgid "Time" +msgstr "Hora" + +#: models.py:1158 +msgid "Date & Time" +msgstr "Fecha y hora" + +#: models.py:1160 +msgid "URL" +msgstr "URL" + +#: models.py:1161 +msgid "IP Address" +msgstr "Dirección IP" + +#: models.py:1166 +msgid "Data Type" +msgstr "Tipo de dato" + +#: models.py:1168 +msgid "Allows you to restrict the data entered into this field" +msgstr "Le permite restringir los datos introducidos en este campo" + +#: models.py:1173 +msgid "Maximum Length (characters)" +msgstr "Longitud máxima (caracteres)" + +#: models.py:1179 +msgid "Decimal Places" +msgstr "Lugales decimales" + +#: models.py:1180 +msgid "Only used for decimal fields" +msgstr "Solo se utiliza en campos decimales" + +#: models.py:1186 +msgid "Add empty first choice to List?" +msgstr "Agregar opción vacía" + +#: models.py:1187 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "" + +#: models.py:1191 +msgid "List Values" +msgstr "Lista de valores" + +#: models.py:1192 +msgid "For list fields only. Enter one option per line." +msgstr "Solo para listas de valores. Introduzca una opción por línea." + +#: models.py:1198 +msgid "Ordering" +msgstr "Orden" + +#: models.py:1199 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "" + +#: models.py:1213 +msgid "Required?" +msgstr "¿Obligatorio?" + +#: models.py:1214 +msgid "Does the user have to enter a value for this field?" +msgstr "¿El usuario está obligado a introducir un valor en este campo?" + +#: models.py:1218 +msgid "Staff Only?" +msgstr "¿Solo personal interno?" + +#: models.py:1219 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "Si está seleccionado, este campo NO será visible en la forma pública de creación de tickets" + +#: models.py:1262 +msgid "Depends On Ticket" +msgstr "Dependencias del ticket" + +#: management/commands/create_usersettings.py:21 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "Busca al usuario sin UserSettings en django-helpdesk y crea los UserSettings en caso necesario. Utiliza settings.DEFAULT_USER_SETTINGS, que puede ser modificado de acuerdo a las circunstancias." + +#: management/commands/escalate_tickets.py:143 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "Ticket escalado después de %s días" + +#: management/commands/get_email.py:151 +msgid "Created from e-mail" +msgstr "Creado a partir de e-mail" + +#: management/commands/get_email.py:155 +msgid "Unknown Sender" +msgstr "Remitente desconocido" + +#: management/commands/get_email.py:209 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "No hay cuerpo del correo electrónico en texto plano disponible. Por favor, consulte el archivo adjunto email_html_body.html." + +#: management/commands/get_email.py:213 +msgid "email_html_body.html" +msgstr "email_html_body.html" + +#: management/commands/get_email.py:256 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "E-mail recibido desde %(sender_email)s " + +#: management/commands/get_email.py:264 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "Ticket Re-abierto por el e-mail recibido desde %(sender_email)s " + +#: management/commands/get_email.py:322 +msgid " (Reopened)" +msgstr "(Reabierto)" + +#: management/commands/get_email.py:324 +msgid " (Updated)" +msgstr "(Actualizado)" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"Powered by django-" +"helpdesk." +msgstr "" + +#: templates/helpdesk/attribution.html:4 +msgid "For technical support please contact:" +msgstr "Para contacto técnico por favor contate a:" + +#: templates/helpdesk/base.html:9 +msgid "Powered by django-helpdesk" +msgstr "Powered by django-helpdesk" + +#: templates/helpdesk/base.html:19 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:23 templates/helpdesk/rss_list.html:28 +msgid "My Open Tickets" +msgstr "Mis tickets abiertos" + +#: templates/helpdesk/base.html:20 +msgid "All Recent Activity" +msgstr "Actividad Reciente" + +#: templates/helpdesk/base.html:21 templates/helpdesk/dashboard.html:76 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "Tickets Sin Asignar" + +#: templates/helpdesk/base.html:101 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:14 +msgid "Helpdesk" +msgstr "Mesa de Ayuda" + +#: templates/helpdesk/base.html:111 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:27 templates/helpdesk/rss_list.html:28 +msgid "RSS Icon" +msgstr "Icono RSS" + +#: templates/helpdesk/base.html:111 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "Feeds RSS" + +#: templates/helpdesk/base.html:112 +msgid "API" +msgstr "API" + +#: templates/helpdesk/base.html:113 +msgid "User Settings" +msgstr "Preferencias de Usuario" + +#: templates/helpdesk/base.html:115 +msgid "Change Language" +msgstr "Cambiar Idioma" + +#: templates/helpdesk/base.html:117 +msgid "System Settings" +msgstr "Configuración del Sistema" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:144 +msgid "Delete Saved Query" +msgstr "Eliminar Consulta Guardada" + +#: templates/helpdesk/confirm_delete_saved_query.html:5 +#, python-format +msgid "" +"\n" +"

Delete Query

\n" +"\n" +"

Are you sure you want to delete this saved filter (%(query_title)s)? To re-create it, you will need to manually re-filter your ticket listing.

\n" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"\n" +"

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.

\n" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:15 +#: templates/helpdesk/delete_ticket.html:11 +msgid "No, Don't Delete It" +msgstr "No, no borrar" + +#: templates/helpdesk/confirm_delete_saved_query.html:17 +#: templates/helpdesk/delete_ticket.html:13 +msgid "Yes - Delete It" +msgstr "Si - Eliminar" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "Crear Ticket" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/public_homepage.html:39 +msgid "Submit a Ticket" +msgstr "Enviar un Ticket" + +#: templates/helpdesk/create_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "Salvo los indicados, todos los campos son obligatorios." + +#: templates/helpdesk/create_ticket.html:11 +msgid "Please provide as descriptive a title and description as possible." +msgstr "Por favor ingrese la información y el título de la forma más descriptiva posible." + +#: templates/helpdesk/create_ticket.html:17 +#: templates/helpdesk/edit_ticket.html:19 +#: templates/helpdesk/public_homepage.html:50 +msgid "(Optional)" +msgstr "(Opcional)" + +#: templates/helpdesk/create_ticket.html:26 +#: templates/helpdesk/public_homepage.html:59 +msgid "Submit Ticket" +msgstr "Enviar Ticket" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "Panel de Control - Mesa de Ayuda" + +#: templates/helpdesk/dashboard.html:10 +msgid "Helpdesk Summary" +msgstr "Resumen de Mesa de Ayuda" + +#: templates/helpdesk/dashboard.html:25 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "Bienvenido al panel de control de Mesa de Ayuda. Desde aquí podrá ver los tickets creados por usted, los tickets en los que trabaja y los tickets sin dueño asignado." + +#: templates/helpdesk/dashboard.html:27 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see your own " +"tickets, and those tickets that have no owner. Why not pick up an orphan " +"ticket and sort it out for a customer?" +msgstr "" + +#: templates/helpdesk/dashboard.html:36 +msgid "All Tickets submitted by you" +msgstr "Todos los Tickets enviados por usted" + +#: templates/helpdesk/dashboard.html:37 templates/helpdesk/dashboard.html:57 +#: templates/helpdesk/dashboard.html:77 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/ticket_list.html:199 +msgid "Pr" +msgstr "" + +#: templates/helpdesk/dashboard.html:37 templates/helpdesk/dashboard.html:57 +#: templates/helpdesk/dashboard.html:99 +msgid "Last Update" +msgstr "Última Actualización" + +#: templates/helpdesk/dashboard.html:56 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "Tickets abiertos asignados a usted" + +#: templates/helpdesk/dashboard.html:69 +msgid "You have no tickets assigned to you." +msgstr "No tiene tickets asignados" + +#: templates/helpdesk/dashboard.html:76 +msgid "(pick up a ticket if you start to work on it)" +msgstr "(tomar un ticket para comienzar a trabajar en el)" + +#: templates/helpdesk/dashboard.html:85 +#: templates/helpdesk/ticket_desc_table.html:22 +msgid "Take" +msgstr "Tomar" + +#: templates/helpdesk/dashboard.html:85 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:234 +msgid "Delete" +msgstr "Eliminar" + +#: templates/helpdesk/dashboard.html:89 +msgid "There are no unassigned tickets." +msgstr "No hay tickets sin asignar" + +#: templates/helpdesk/dashboard.html:98 +msgid "Closed & resolved Tickets you used to work on" +msgstr "Ticket cerrados y resueltos en los que trabajó" + +#: templates/helpdesk/delete_ticket.html:3 +msgid "Delete Ticket" +msgstr "Eliminar Ticket" + +#: templates/helpdesk/delete_ticket.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket

\n" +"\n" +"

Are you sure you want to delete this ticket (%(ticket_title)s)? All traces of the ticket, including followups, attachments, and updates will be irreversably removed.

\n" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "Editar Ticket" + +#: templates/helpdesk/edit_ticket.html:6 +msgid "Edit a Ticket" +msgstr "Editar ticket" + +#: templates/helpdesk/edit_ticket.html:6 +msgid "Note" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:6 +msgid "Editing a ticket does not send an e-mail to the ticket owner or submitter. No new details should be entered, this form should only be used to fix incorrect details or clean up the submission." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:28 +msgid "Save Changes" +msgstr "Guardar Cambios" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "Ignorar dirección de E-Mail" + +#: templates/helpdesk/email_ignore_add.html:5 +msgid "" +"\n" +"

Ignore E-Mail Address

\n" +"\n" +"

To ignore an e-mail address and prevent any emails from that address creating tickets automatically, enter the e-mail address below.

\n" +"\n" +"

You can either enter a whole e-mail address such as email@domain.com or a portion of an e-mail address with a wildcard, such as *@domain.com or user@*.

" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "Eliminar direcciones de E-Mail ingnoradas" + +#: templates/helpdesk/email_ignore_del.html:5 +#, python-format +msgid "" +"\n" +"

Un-Ignore E-Mail Address

\n" +"\n" +"

Are you sure you wish to stop removing this email address (%(email_address)s) and allow their e-mails to automatically create tickets in your system? You can re-add this e-mail address at any time.

\n" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:11 +msgid "Keep Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:13 +msgid "Stop Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "Fecha" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "Colas" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:232 +msgid "All" +msgstr "Todos" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "" + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "Editar seguimiento" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "Editar seguimiento" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "Título" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:11 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "" + +#: templates/helpdesk/kb_category.html:12 +msgid "Article" +msgstr "Artículo" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:11 +#: templates/helpdesk/navigation.html:33 +msgid "Knowledgebase" +msgstr "" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "" + +#: templates/helpdesk/kb_index.html:9 +#: templates/helpdesk/public_homepage.html:9 +msgid "Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:13 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "" + +#: templates/helpdesk/kb_item.html:15 +msgid "Feedback" +msgstr "" + +#: templates/helpdesk/kb_item.html:17 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "" + +#: templates/helpdesk/kb_item.html:20 +msgid "This article was useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:21 +msgid "This article was not useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:24 +msgid "The results of voting by other readers of this article are below:" +msgstr "" + +#: templates/helpdesk/kb_item.html:27 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:28 +#, python-format +msgid "Votes: %(votes)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:29 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "" + +#: templates/helpdesk/navigation.html:4 +msgid "Dashboard" +msgstr "Panel de control" + +#: templates/helpdesk/navigation.html:5 +#: templates/helpdesk/ticket_list.html:198 +msgid "Tickets" +msgstr "Tickets" + +#: templates/helpdesk/navigation.html:6 +msgid "New Ticket" +msgstr "Nuevo Ticket" + +#: templates/helpdesk/navigation.html:8 +msgid "Stats" +msgstr "Estadísticas" + +#: templates/helpdesk/navigation.html:14 +#: templates/helpdesk/ticket_list.html:46 +msgid "Load Saved Query" +msgstr "" + +#: templates/helpdesk/navigation.html:25 templates/helpdesk/navigation.html:35 +msgid "Logout" +msgstr "Cerrar sesión" + +#: templates/helpdesk/navigation.html:26 +msgid "Search..." +msgstr "Buscar..." + +#: templates/helpdesk/navigation.html:26 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "Ingrese una palabra de búsqueda, o el número de ticket" + +#: templates/helpdesk/navigation.html:31 +msgid "Submit A Ticket" +msgstr "Enviar Ticket" + +#: templates/helpdesk/navigation.html:35 +msgid "Log In" +msgstr "Iniciar Sesión" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:21 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "Ver Ticket" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "Cambiar Idioma" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "" + +#: templates/helpdesk/public_homepage.html:29 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "Su Direcciójn de E-Mail" + +#: templates/helpdesk/public_homepage.html:33 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "Ver Ticket" + +#: templates/helpdesk/public_homepage.html:41 +msgid "All fields are required." +msgstr "Todos los campos son requeridos." + +#: templates/helpdesk/public_homepage.html:67 +msgid "Please use button at upper right to login first." +msgstr "" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "No se puede abrir el ticket." + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"

Sorry, but there has been an error trying to submit your ticket.

\n" +"\n" +"

Our system has marked your submission as spam, so we are unable to save it. If this is not spam, please press back and re-type your message. Be careful to avoid sounding 'spammy', and if you have heaps of links please try removing them if possible.

\n" +"\n" +"

We are sorry for any inconvenience, however this check is required to avoid our helpdesk resources being overloaded by spammers.

\n" +msgstr "" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "Error:" + +#: templates/helpdesk/public_view_ticket.html:8 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "Cola: %(queue_name)s" + +#: templates/helpdesk/public_view_ticket.html:11 +#: templates/helpdesk/ticket_desc_table.html:16 +msgid "Submitted On" +msgstr "Enviado :" + +#: templates/helpdesk/public_view_ticket.html:46 +#: templates/helpdesk/ticket_desc_table.html:74 +msgid "Accept" +msgstr "Aceptar" + +#: templates/helpdesk/public_view_ticket.html:46 +#: templates/helpdesk/ticket_desc_table.html:74 +msgid "Accept and Close" +msgstr "Aceptar y Cerrar" + +#: templates/helpdesk/public_view_ticket.html:55 +#: templates/helpdesk/ticket.html:64 +msgid "Follow-Ups" +msgstr "Seguimientos" + +#: templates/helpdesk/public_view_ticket.html:63 +#: templates/helpdesk/ticket.html:92 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "Cambiado %(field)s de %(old_value)s a %(new_value)s." + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "No han sido creado tickets aún. No pueden crearse reportes." + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "Reportes por Usuario" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "por Prioridad" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr " por Cola" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "por Estado" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "por Mes" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "Reportes por Cola" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "" + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "" + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "" + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "Última Actividad" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "" + +#: templates/helpdesk/rss_list.html:22 +msgid "Per-Queue Feeds" +msgstr "" + +#: templates/helpdesk/rss_list.html:23 +msgid "All Open Tickets" +msgstr "Todos los Tickets Abiertos" + +#: templates/helpdesk/rss_list.html:27 +msgid "Open Tickets" +msgstr "TIckets Abiertos" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "Cambiar Configuración del Sistema" + +#: templates/helpdesk/system_settings.html:5 +msgid "" +"\n" +"

System Settings

\n" +"\n" +"

The following items can be maintained by you or other superusers:

" +msgstr "" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "Ver detalles del ticket" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "Adjuntar otro archivo" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:197 +msgid "Add Another File" +msgstr "Agregar otro archivo" + +#: templates/helpdesk/ticket.html:71 templates/helpdesk/ticket.html.py:81 +msgid "Private" +msgstr "Privado" + +#: templates/helpdesk/ticket.html:111 +msgid "Respond to this ticket" +msgstr "Responder a este ticket" + +#: templates/helpdesk/ticket.html:118 +msgid "Use a Pre-set Reply" +msgstr "" + +#: templates/helpdesk/ticket.html:120 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "" + +#: templates/helpdesk/ticket.html:123 +msgid "Comment / Resolution" +msgstr "Comentarios / Soluciones" + +#: templates/helpdesk/ticket.html:125 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "" + +#: templates/helpdesk/ticket.html:158 +msgid "Is this update public?" +msgstr "" + +#: templates/helpdesk/ticket.html:160 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "" + +#: templates/helpdesk/ticket.html:164 +msgid "Change Further Details »" +msgstr "Cambiar detalles adicionales »" + +#: templates/helpdesk/ticket.html:173 templates/helpdesk/ticket_list.html:55 +#: templates/helpdesk/ticket_list.html:87 +#: templates/helpdesk/ticket_list.html:199 +msgid "Owner" +msgstr "Dueño" + +#: templates/helpdesk/ticket.html:174 +msgid "Unassign" +msgstr "" + +#: templates/helpdesk/ticket.html:190 +msgid "Attach File(s) »" +msgstr "Adjuntar archivo(s) »" + +#: templates/helpdesk/ticket.html:196 +msgid "Attach a File" +msgstr "Adjuntar archivo" + +#: templates/helpdesk/ticket.html:204 +msgid "Update This Ticket" +msgstr "Actualizar ticket" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "Ver?" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "Actualizar?" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "Agregar Dependencia al Ticket " + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:11 +msgid "Unhold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:11 +msgid "Hold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:13 +#, python-format +msgid "Queue: %(queue)s" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:21 +msgid "Assigned To" +msgstr "Asignado a" + +#: templates/helpdesk/ticket_desc_table.html:27 +msgid "Ignore" +msgstr "Ignorar" + +#: templates/helpdesk/ticket_desc_table.html:36 +msgid "Copies To" +msgstr "Copiar a" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Manage" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:48 +msgid "Dependencies" +msgstr "Dependencias" + +#: templates/helpdesk/ticket_desc_table.html:50 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:51 +msgid "Remove Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:54 +msgid "This ticket has no dependencies." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:56 +msgid "Add Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:56 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "" + +#: templates/helpdesk/ticket_list.html:2 +msgid "Ticket Listing" +msgstr "Listado de Tickets" + +#: templates/helpdesk/ticket_list.html:41 +msgid "Query Options" +msgstr "Opciones de búsqueda" + +#: templates/helpdesk/ticket_list.html:43 +msgid "Save This Query" +msgstr "Guardar búsqueda" + +#: templates/helpdesk/ticket_list.html:51 +msgid "Change Query" +msgstr "Cambiar búsqueda" + +#: templates/helpdesk/ticket_list.html:54 +#: templates/helpdesk/ticket_list.html:69 +msgid "Sorting" +msgstr "Orden" + +#: templates/helpdesk/ticket_list.html:58 +#: templates/helpdesk/ticket_list.html:137 +msgid "Keywords" +msgstr "" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Date Range" +msgstr "Rango de fechas" + +#: templates/helpdesk/ticket_list.html:90 +msgid "Reverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:92 +msgid "Ordering applied to tickets" +msgstr "" + +#: templates/helpdesk/ticket_list.html:97 +msgid "Owner(s)" +msgstr "Dueño(s)" + +#: templates/helpdesk/ticket_list.html:101 +msgid "(ME)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:105 +msgid "Ctrl-Click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:110 +msgid "Queue(s)" +msgstr "Cola(s)" + +#: templates/helpdesk/ticket_list.html:111 +#: templates/helpdesk/ticket_list.html:117 +#: templates/helpdesk/ticket_list.html:131 +msgid "Ctrl-click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:116 +msgid "Status(es)" +msgstr "Estado(s)" + +#: templates/helpdesk/ticket_list.html:122 +msgid "Date (From)" +msgstr "Fecha(Desde)" + +#: templates/helpdesk/ticket_list.html:123 +msgid "Date (To)" +msgstr "Fecha(Hasta)" + +#: templates/helpdesk/ticket_list.html:124 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "" + +#: templates/helpdesk/ticket_list.html:130 +msgid "Tag(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:138 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "" + +#: templates/helpdesk/ticket_list.html:142 +msgid "Apply Filter" +msgstr "Aplicar filtro" + +#: templates/helpdesk/ticket_list.html:144 +#, python-format +msgid "You are currently viewing saved query %(query_name)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:147 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "" + +#: templates/helpdesk/ticket_list.html:154 +#: templates/helpdesk/ticket_list.html:169 +msgid "Save Query" +msgstr "Guardar búsqueda" + +#: templates/helpdesk/ticket_list.html:160 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "" + +#: templates/helpdesk/ticket_list.html:162 +msgid "Shared?" +msgstr "" + +#: templates/helpdesk/ticket_list.html:163 +msgid "Yes, share this query with other users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:164 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:176 +msgid "Use Saved Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:178 +msgid "Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:183 +msgid "Run Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:213 +msgid "No Tickets Match Your Selection" +msgstr "" + +#: templates/helpdesk/ticket_list.html:219 +msgid "Previous" +msgstr "" + +#: templates/helpdesk/ticket_list.html:223 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:227 +msgid "Next" +msgstr "Siguiente" + +#: templates/helpdesk/ticket_list.html:232 +msgid "Select:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:232 +msgid "None" +msgstr "Ninguno" + +#: templates/helpdesk/ticket_list.html:232 +msgid "Inverse" +msgstr "Invertir" + +#: templates/helpdesk/ticket_list.html:234 +msgid "With Selected Tickets:" +msgstr "Con los tickets seleccionados:" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Take (Assign to me)" +msgstr "Tomar (asginar a mí)" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Close" +msgstr "Cerrar" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Close (Don't Send E-Mail)" +msgstr "Cerrar (Sin enviar E-Mail)" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Close (Send E-Mail)" +msgstr "Cerrar (Enviando E-Mail)" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Assign To" +msgstr "Asginado a:" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Nobody (Unassign)" +msgstr "Nadie (Sin Asignar)" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "Cambiar preferencias de usuario" + +#: templates/helpdesk/user_settings.html:14 +msgid "" +"\n" +"

User Settings

\n" +"\n" +"

Use the following options to change the way your helpdesk system works for you. These settings do not impact any other user.

\n" +msgstr "" + +#: templates/helpdesk/user_settings.html:29 +msgid "Save Options" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "" + +#: templates/helpdesk/registration/login.html:9 +#: templates/helpdesk/registration/login.html:21 +msgid "Login" +msgstr "Iniciar sesión" + +#: templates/helpdesk/registration/login.html:11 +msgid "" +"To log in and begin responding to cases, simply enter your username and " +"password below." +msgstr "" + +#: templates/helpdesk/registration/login.html:14 +msgid "Your username and password didn't match. Please try again." +msgstr "" + +#: templates/helpdesk/registration/login.html:16 +msgid "Username" +msgstr "Usuario" + +#: templates/helpdesk/registration/login.html:18 +msgid "Password" +msgstr "Password" + +#: views/feeds.py:35 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "Helpdesk: Ttickets abiertos en cola %(queue)s para %(username)s" + +#: views/feeds.py:40 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "Helpdesk: tickets abiertos para %(username)s" + +#: views/feeds.py:46 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "Tickets abiertos y re-abiertos en %(queue)s para %(username)s" + +#: views/feeds.py:51 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "Tickets abiertos y re-abiertos para %(username)s" + +#: views/feeds.py:98 +msgid "Helpdesk: Unassigned Tickets" +msgstr "Helpdesk: Tickets no asignados" + +#: views/feeds.py:99 +msgid "Unassigned Open and Reopened tickets" +msgstr "Tickets no asignados abiertos y reabiertos" + +#: views/feeds.py:124 +msgid "Helpdesk: Recent Followups" +msgstr "Helpdesk: Actualizaciones recientes" + +#: views/feeds.py:125 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "Actualizaciones recientes, como respuestas por e-mail, comentarios, adjuntos y resoluciones" + +#: views/feeds.py:140 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "Helpdesk: Tickets abiertos en cola %(queue)s" + +#: views/feeds.py:145 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "Tickets abiertos y re-abiertos en cola %(queue)s" + +#: views/public.py:91 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "ID de ticket o dirección de e-mail inválido. Por favor intente nuevamente." + +#: views/public.py:109 +msgid "Submitter accepted resolution and closed ticket" +msgstr "El solicitante acepto la solución y cerró el ticket." + +#: views/staff.py:218 +msgid "Accepted resolution and closed ticket" +msgstr "Solución aceptada y ticket cerrado." + +#: views/staff.py:246 +msgid "Sorry, you need to login to do that." +msgstr "Lo sentimos, usted necesita ingresar al sistema para hacer eso." + +#: views/staff.py:295 +#, python-format +msgid "Assigned to %(username)s" +msgstr "Asignado a %(username)s" + +#: views/staff.py:318 +msgid "Updated" +msgstr "Actualizado" + +#: views/staff.py:496 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "Asignado a %(username)s en actualización masiva" + +#: views/staff.py:501 +msgid "Unassigned in bulk update" +msgstr "Des-asignado en actualización masiva" + +#: views/staff.py:506 views/staff.py:511 +msgid "Closed in bulk update" +msgstr "Cerrado en actualización masiva" + +#: views/staff.py:732 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "

Nota: Su parámetro de busqueda es sensitivo a las mayúsculas debido a su base de datos. Esto significa que las búsquedas no serán precisas. Cambiando a una base de datos diferente, se lograrán mejores búsquedas. Para más información, revise Django Documentation on string matching in SQLite." + +#: views/staff.py:843 +msgid "Ticket taken off hold" +msgstr "Ticket liberado" + +#: views/staff.py:846 +msgid "Ticket placed on hold" +msgstr "Ticket puesto en espera" + +#: views/staff.py:914 +msgid "Jan" +msgstr "Ene" + +#: views/staff.py:915 +msgid "Feb" +msgstr "Feb" + +#: views/staff.py:916 +msgid "Mar" +msgstr "Mar" + +#: views/staff.py:917 +msgid "Apr" +msgstr "Abr" + +#: views/staff.py:918 +msgid "May" +msgstr "May" + +#: views/staff.py:919 +msgid "Jun" +msgstr "Jun" + +#: views/staff.py:920 +msgid "Jul" +msgstr "Jul" + +#: views/staff.py:921 +msgid "Aug" +msgstr "Ago" + +#: views/staff.py:922 +msgid "Sep" +msgstr "Sep" + +#: views/staff.py:923 +msgid "Oct" +msgstr "Oct" + +#: views/staff.py:924 +msgid "Nov" +msgstr "Nov" + +#: views/staff.py:925 +msgid "Dec" +msgstr "Dic" + +#: views/staff.py:951 +msgid "User by Priority" +msgstr "Usuario por Prioridad" + +#: views/staff.py:957 +msgid "User by Queue" +msgstr "Usuario por Cola" + +#: views/staff.py:963 +msgid "User by Status" +msgstr "Usuario por Estatus" + +#: views/staff.py:969 +msgid "User by Month" +msgstr "Usuario por Mes" + +#: views/staff.py:975 +msgid "Queue by Priority" +msgstr "Cola por Prioridad" + +#: views/staff.py:981 +msgid "Queue by Status" +msgstr "Cola por Estatus" + +#: views/staff.py:987 +msgid "Queue by Month" +msgstr "Cola por Mes" diff --git a/build/lib/helpdesk/locale/es_CO/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/es_CO/LC_MESSAGES/django.mo new file mode 100644 index 00000000..fdad1622 Binary files /dev/null and b/build/lib/helpdesk/locale/es_CO/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/es_CO/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/es_CO/LC_MESSAGES/django.po new file mode 100644 index 00000000..c74554c7 --- /dev/null +++ b/build/lib/helpdesk/locale/es_CO/LC_MESSAGES/django.po @@ -0,0 +1,2394 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Translators: +# Oscar Javier Moreno Rey , 2011 +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2014-07-26 14:14+0200\n" +"PO-Revision-Date: 2014-08-01 09:58+0000\n" +"Last-Translator: Ross Poulton \n" +"Language-Team: Spanish (Colombia) (http://www.transifex.com/projects/p/django-helpdesk/language/es_CO/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: es_CO\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: forms.py:128 forms.py:328 models.py:190 models.py:267 +#: templates/helpdesk/dashboard.html:15 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/dashboard.html:124 templates/helpdesk/rss_list.html:24 +#: templates/helpdesk/ticket_list.html:69 +#: templates/helpdesk/ticket_list.html:88 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:1032 +#: views/staff.py:1038 views/staff.py:1044 views/staff.py:1050 +msgid "Queue" +msgstr "Cola" + +#: forms.py:137 +msgid "Summary of the problem" +msgstr "Resumen del problema" + +#: forms.py:142 +msgid "Submitter E-Mail Address" +msgstr "Correo electrónico remitente" + +#: forms.py:144 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "Este correo recibirá copias de todas las actualizaciones públicas a este ticket." + +#: forms.py:150 +msgid "Description of Issue" +msgstr "Descripción del asunto" + +#: forms.py:157 +msgid "Case owner" +msgstr "Propietario del caso" + +#: forms.py:158 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "Si selecionó un dueño diferente a usted, él será notificado por correo electrónico de inmediato acerca de los detalles de este ticket." + +#: forms.py:166 models.py:327 management/commands/escalate_tickets.py:154 +#: templates/helpdesk/public_view_ticket.html:23 +#: templates/helpdesk/ticket.html:184 +#: templates/helpdesk/ticket_desc_table.html:47 +#: templates/helpdesk/ticket_list.html:94 views/staff.py:429 +msgid "Priority" +msgstr "Prioridad" + +#: forms.py:167 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "Por favor seleccione una prioridad cuidadosamente. Si no está seguro, marquela como '3'." + +#: forms.py:174 forms.py:365 models.py:335 templates/helpdesk/ticket.html:186 +#: views/staff.py:439 +msgid "Due on" +msgstr "" + +#: forms.py:186 forms.py:370 +msgid "Attach File" +msgstr "Adjuntar archivo" + +#: forms.py:187 forms.py:371 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "Puede adjuntar como archivo un documento o una captura de pantalla a este ticket." + +#: forms.py:240 +msgid "Ticket Opened" +msgstr "Ticket abierto" + +#: forms.py:247 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "Ticket abierto y asignado a %(name)s" + +#: forms.py:337 +msgid "Summary of your query" +msgstr "Resumen de su petición" + +#: forms.py:342 +msgid "Your E-Mail Address" +msgstr "Su correo electrónico" + +#: forms.py:343 +msgid "We will e-mail you when your ticket is updated." +msgstr "Le informaremos vía correo electrónico cuando su ticket sea actualizado." + +#: forms.py:348 +msgid "Description of your issue" +msgstr "Descripción de su asunto" + +#: forms.py:350 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "Por favor sea lo más descriptivo posible, incluyendo cualquier detalle que podamos necesitar para atender su petición." + +#: forms.py:358 +msgid "Urgency" +msgstr "Urgencia" + +#: forms.py:359 +msgid "Please select a priority carefully." +msgstr "Por favor seleccione una prioridad cuidadosamente." + +#: forms.py:419 +msgid "Ticket Opened Via Web" +msgstr "Ticket abierto vía web" + +#: forms.py:486 +msgid "Show Ticket List on Login?" +msgstr "Mostrar listado de tickets al inicio?" + +#: forms.py:487 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "Desplegar listado de tickets al iniciar sesión? De lo contrario el dashboard será mostrado." + +#: forms.py:492 +msgid "E-mail me on ticket change?" +msgstr "Notificarme por correo electrónico cuando el ticket cambie?" + +#: forms.py:493 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "Si usted es el propietario del ticket y es cambiado vía web por alguien, desea recibir un correo electrónico?" + +#: forms.py:498 +msgid "E-mail me when assigned a ticket?" +msgstr "Enviarme correo electrónico cuando un ticket sea asignado?" + +#: forms.py:499 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "Si le asignan un ticket vía web, desea recibir un correo electrónico?" + +#: forms.py:504 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "Enviarme correo electrónico cuando un ticket es cambiado a través del API?" + +#: forms.py:505 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "Si un ticket es alterado a través del API, desea recibir un correo electrónico?" + +#: forms.py:510 +msgid "Number of tickets to show per page" +msgstr "Número de tickets a mostrar por página" + +#: forms.py:511 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "Cuántos tickets desea ver en la página Listado de Tickets?" + +#: forms.py:518 +msgid "Use my e-mail address when submitting tickets?" +msgstr "Usar mi correo electrónico cuando se envíen tickets?" + +#: forms.py:519 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "Cuando envíe un ticket, desea que su correo electrónico sea usado como remitente? Puede escribir diferentes direcciones de correo electrónico cuando ingrese un ticket si lo necesita, esta opción solo cambia la dirección por defecto." + +#: models.py:35 models.py:261 models.py:503 models.py:817 models.py:853 +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket.html:178 templates/helpdesk/ticket_list.html:85 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:419 +msgid "Title" +msgstr "Título" + +#: models.py:40 models.py:822 models.py:1206 +msgid "Slug" +msgstr "Slug" + +#: models.py:41 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "Este slug es usado cuando se crea el identificador del ticket. Una vez definido, es mejor no cambiarlo para evitar inconvenientes con los correos electrónicos." + +#: models.py:46 models.py:1054 models.py:1129 models.py:1203 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "Dirección de correo electrónico" + +#: models.py:49 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "Todo el correo saliente para esta cola usará esta dirección de correo electrónico. Si usa IMAP o POP3, esta debería ser la dirección de correo asociada a ese buzón." + +#: models.py:55 models.py:794 +msgid "Locale" +msgstr "Local" + +#: models.py:59 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "Local de esta cola. Toda la correspondencia dentro de esta cola estará en éste lenguaje." + +#: models.py:63 +msgid "Allow Public Submission?" +msgstr "Permitir envíos públicos?" + +#: models.py:66 +msgid "Should this queue be listed on the public submission form?" +msgstr "Esta cola debería aparecer listada en el formulario de envios?" + +#: models.py:71 +msgid "Allow E-Mail Submission?" +msgstr "Permitir envío del correo electrónico?" + +#: models.py:74 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "Desea solicitar correo electrónico para los nuevos tickets?" + +#: models.py:79 +msgid "Escalation Days" +msgstr "Días de priorización" + +#: models.py:82 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "Para tickets no atendidos, cómo desea incrementar su prioridad? Asigne 0 para no priorizar." + +#: models.py:87 +msgid "New Ticket CC Address" +msgstr "Dirección CC de nuevo ticket" + +#: models.py:91 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "" + +#: models.py:97 +msgid "Updated Ticket CC Address" +msgstr "Dirección CC de ticket actualizado" + +#: models.py:101 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "" + +#: models.py:108 +msgid "E-Mail Box Type" +msgstr "Tipo de buzón" + +#: models.py:110 +msgid "POP 3" +msgstr "POP 3" + +#: models.py:110 +msgid "IMAP" +msgstr "IMAP" + +#: models.py:113 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "Tipo de servidor para creación de tickets automáticamente desde un correo electrónico - IMAP y POP3 son soportados." + +#: models.py:118 +msgid "E-Mail Hostname" +msgstr "Nombre de la máquina" + +#: models.py:122 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "Dirección del servidor de correo - entre un nombre de dominio o una dirección IP. Puede ser \"localhost\"." + +#: models.py:127 +msgid "E-Mail Port" +msgstr "Puerto" + +#: models.py:130 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "Numero de puerto para acceder al correo electrónico. Por defecto para POP3 es \"110\" y para IMAP es \"143\". Puede cambiar para algunos servidores. En blanco para valor por defecto." + +#: models.py:136 +msgid "Use SSL for E-Mail?" +msgstr "Usar SSL para correo electrónico?" + +#: models.py:139 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "Usar SSL para IMAP o POP3- por defecto los puertos usando SSL son 993 para IMAP y 995 para POP3." + +#: models.py:144 +msgid "E-Mail Username" +msgstr "Usuario" + +#: models.py:148 +msgid "Username for accessing this mailbox." +msgstr "Usuario para acceder a este buzón." + +#: models.py:152 +msgid "E-Mail Password" +msgstr "Contraseña" + +#: models.py:156 +msgid "Password for the above username" +msgstr "Contraseña para el usuario" + +#: models.py:160 +msgid "IMAP Folder" +msgstr "Directorio IMAP" + +#: models.py:164 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "Si está usando IMAP, de qué directorio desea obtener los mensajes? Esto le permite usar una cuenta IMAP con multiples colas, filtrando mensajes en su servidor IMAP dentro de directorios separados. Por defecto: Bandeja de entrada" + +#: models.py:171 +msgid "E-Mail Check Interval" +msgstr "Intervalo para revisión de correo electrónico" + +#: models.py:172 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "Cada cuanto desea revisar este buzón de correo? (en Minutos)" + +#: models.py:191 templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "" + +#: models.py:245 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:138 +msgid "Open" +msgstr "Abierto" + +#: models.py:246 templates/helpdesk/ticket.html:144 +#: templates/helpdesk/ticket.html.py:150 templates/helpdesk/ticket.html:155 +#: templates/helpdesk/ticket.html.py:159 +msgid "Reopened" +msgstr "Reabierto" + +#: models.py:247 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:139 templates/helpdesk/ticket.html.py:145 +#: templates/helpdesk/ticket.html:151 +msgid "Resolved" +msgstr "Resuelto" + +#: models.py:248 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:140 templates/helpdesk/ticket.html.py:146 +#: templates/helpdesk/ticket.html:152 templates/helpdesk/ticket.html.py:156 +msgid "Closed" +msgstr "Cerrado" + +#: models.py:249 templates/helpdesk/ticket.html:141 +#: templates/helpdesk/ticket.html.py:147 templates/helpdesk/ticket.html:160 +msgid "Duplicate" +msgstr "" + +#: models.py:253 +msgid "1. Critical" +msgstr "1. Critica" + +#: models.py:254 +msgid "2. High" +msgstr "2. Alta" + +#: models.py:255 +msgid "3. Normal" +msgstr "3. Normal" + +#: models.py:256 +msgid "4. Low" +msgstr "4. Baja" + +#: models.py:257 +msgid "5. Very Low" +msgstr "5. Muy baja" + +#: models.py:271 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/ticket_list.html:82 +#: templates/helpdesk/ticket_list.html:225 +msgid "Created" +msgstr "Creado" + +#: models.py:273 +msgid "Date this ticket was first created" +msgstr "Fecha de creación" + +#: models.py:277 +msgid "Modified" +msgstr "Modificado" + +#: models.py:279 +msgid "Date this ticket was most recently changed." +msgstr "Fecha de modificación más reciente" + +#: models.py:283 templates/helpdesk/public_view_ticket.html:18 +#: templates/helpdesk/ticket_desc_table.html:42 +msgid "Submitter E-Mail" +msgstr "Remitente" + +#: models.py:286 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "El remitente recibirá un correo electrónico para el seguimiento de esta tarea." + +#: models.py:295 +msgid "Assigned to" +msgstr "" + +#: models.py:299 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:70 +#: templates/helpdesk/ticket_list.html:91 +#: templates/helpdesk/ticket_list.html:225 +msgid "Status" +msgstr "Estado" + +#: models.py:305 +msgid "On Hold" +msgstr "En espera" + +#: models.py:308 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "Si un ticket está en espera, no será priorizado automáticamente." + +#: models.py:313 models.py:826 templates/helpdesk/public_view_ticket.html:41 +#: templates/helpdesk/ticket_desc_table.html:19 +msgid "Description" +msgstr "Descripción" + +#: models.py:316 +msgid "The content of the customers query." +msgstr "El contenido de la solicitud de los clientes." + +#: models.py:320 templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Resolution" +msgstr "Respuesta" + +#: models.py:323 +msgid "The resolution provided to the customer by our staff." +msgstr "La respuesta que se le ha dado al cliente por nuestro personal." + +#: models.py:331 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "1 = Prioridad máxima 5 = Prioridad mínima" + +#: models.py:344 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "Fecha de la última priorización del ticket - actualizado por management/commands/escalate_tickets.py" + +#: models.py:353 templates/helpdesk/ticket_desc_table.html:38 +#: views/feeds.py:95 views/feeds.py:121 views/feeds.py:173 views/staff.py:376 +msgid "Unassigned" +msgstr "Sin asignar" + +#: models.py:392 +msgid " - On Hold" +msgstr "- En espera" + +#: models.py:394 +msgid " - Open dependencies" +msgstr "" + +#: models.py:448 models.py:494 models.py:1117 models.py:1280 models.py:1309 +#: templates/helpdesk/public_homepage.html:78 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "" + +#: models.py:449 templates/helpdesk/navigation.html:17 +#: templates/helpdesk/ticket_list.html:2 +#: templates/helpdesk/ticket_list.html:224 +msgid "Tickets" +msgstr "" + +#: models.py:498 models.py:738 models.py:1047 models.py:1200 +msgid "Date" +msgstr "Fecha" + +#: models.py:510 views/staff.py:390 +msgid "Comment" +msgstr "Comentario" + +#: models.py:516 +msgid "Public" +msgstr "Público" + +#: models.py:519 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "Los tickets públicos son visibles por el remitente y por todo el personal, mientras que los privados son visibles solamente por el personal." + +#: models.py:527 models.py:922 models.py:1125 views/staff.py:1008 +#: views/staff.py:1014 views/staff.py:1020 views/staff.py:1026 +msgid "User" +msgstr "" + +#: models.py:531 templates/helpdesk/ticket.html:135 +msgid "New Status" +msgstr "Nuevo estado" + +#: models.py:535 +msgid "If the status was changed, what was it changed to?" +msgstr "Si el estado cambió, a qué cambió?" + +#: models.py:542 models.py:566 models.py:628 +msgid "Follow-up" +msgstr "" + +#: models.py:543 +msgid "Follow-ups" +msgstr "" + +#: models.py:570 models.py:1285 +msgid "Field" +msgstr "Campo" + +#: models.py:575 +msgid "Old Value" +msgstr "Valor antiguo" + +#: models.py:581 +msgid "New Value" +msgstr "Valor nuevo" + +#: models.py:589 +msgid "removed" +msgstr "eliminado" + +#: models.py:591 +#, python-format +msgid "set to %s" +msgstr "marcado como %s" + +#: models.py:593 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "cambiado de \"%(old_value)s\" a \"%(new_value)s\"" + +#: models.py:600 +msgid "Ticket change" +msgstr "" + +#: models.py:601 +msgid "Ticket changes" +msgstr "" + +#: models.py:632 +msgid "File" +msgstr "Archivo" + +#: models.py:637 +msgid "Filename" +msgstr "Nombre de archivo" + +#: models.py:642 +msgid "MIME Type" +msgstr "Tipo MIME" + +#: models.py:647 +msgid "Size" +msgstr "Tamaño" + +#: models.py:648 +msgid "Size of this file in bytes" +msgstr "Tamaño del archivo en bytes" + +#: models.py:665 +msgid "Attachment" +msgstr "" + +#: models.py:666 +msgid "Attachments" +msgstr "" + +#: models.py:685 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "Deje en blanco para permitir que esta respuesta sea usada para todas las colas o seleccione aquellas para las que desea limitar esta respuesta." + +#: models.py:690 models.py:733 models.py:1042 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "Nombre" + +#: models.py:692 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "Usado solamente para ayudar al usuario a seleccionar una respuesta - no es visible para el usuario." + +#: models.py:697 +msgid "Body" +msgstr "Cuerpo" + +#: models.py:698 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "Contexto disponible: {{ ticket }} objeto de ticket (Ej: {{ ticket.title }}); {{ queue }} - la cola; y {{ user }} - el usuario actual." + +#: models.py:705 +msgid "Pre-set reply" +msgstr "" + +#: models.py:706 +msgid "Pre-set replies" +msgstr "" + +#: models.py:727 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "Deje en blanco para que esta ejecución sea aplicada a todas las colas o seleccione todas aquellas sobre las cuales desea ejecutar esta entrada." + +#: models.py:739 +msgid "Date on which escalation should not happen" +msgstr "Fecha en la cual no se realizará priorización" + +#: models.py:746 +msgid "Escalation exclusion" +msgstr "" + +#: models.py:747 +msgid "Escalation exclusions" +msgstr "" + +#: models.py:760 +msgid "Template Name" +msgstr "Nombre de plantilla" + +#: models.py:765 +msgid "Subject" +msgstr "Asunto" + +#: models.py:767 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "Se agregará el prefijo \"[ticket.ticket] ticket.title\". Recomendamos algo simple como \"(Actualizado)\" o \"(Cerrado)\" - igual al contexto que está disponible como en el texto plano abajo." + +#: models.py:773 +msgid "Heading" +msgstr "Encabezado" + +#: models.py:775 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "Para correos en HTML, este será el encabezado en la parte superior del correo - igual al contexto que está disponible como en el texto plano abajo " + +#: models.py:781 +msgid "Plain Text" +msgstr "Texto plano" + +#: models.py:782 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "El contexto dsponible para usted incluye {{ ticket }}, {{ cola }} y dependiendo del motivo: {{ resolution }} or {{ comment }}." + +#: models.py:788 +msgid "HTML" +msgstr "HTML" + +#: models.py:789 +msgid "The same context is available here as in plain_text, above." +msgstr "El mismo contexto está disponible aquí como en el texto plano de arriba." + +#: models.py:798 +msgid "Locale of this template." +msgstr "" + +#: models.py:806 +msgid "e-mail template" +msgstr "" + +#: models.py:807 +msgid "e-mail templates" +msgstr "" + +#: models.py:834 +msgid "Knowledge base category" +msgstr "" + +#: models.py:835 +msgid "Knowledge base categories" +msgstr "" + +#: models.py:849 templates/helpdesk/kb_index.html:11 +#: templates/helpdesk/public_homepage.html:11 +msgid "Category" +msgstr "Categoría" + +#: models.py:858 +msgid "Question" +msgstr "Pregunta" + +#: models.py:862 +msgid "Answer" +msgstr "Respuesta" + +#: models.py:866 +msgid "Votes" +msgstr "Votos" + +#: models.py:867 +msgid "Total number of votes cast for this item" +msgstr "Total de votos emitidos para este artículo" + +#: models.py:872 +msgid "Positive Votes" +msgstr "Votos positivos" + +#: models.py:873 +msgid "Number of votes for this item which were POSITIVE." +msgstr "Número de votos positivos para este artículo." + +#: models.py:878 +msgid "Last Updated" +msgstr "Ultima actualización" + +#: models.py:879 +msgid "The date on which this question was most recently changed." +msgstr "La fecha más reciente en la que esta pregunta fué cambiada." + +#: models.py:893 +msgid "Unrated" +msgstr "Sin clasificar" + +#: models.py:901 +msgid "Knowledge base item" +msgstr "" + +#: models.py:902 +msgid "Knowledge base items" +msgstr "" + +#: models.py:926 templates/helpdesk/ticket_list.html:170 +msgid "Query Name" +msgstr "Nombre de la solicitud" + +#: models.py:928 +msgid "User-provided name for this query" +msgstr "Nombre designado por el usuario para esta solicitud" + +#: models.py:932 +msgid "Shared With Other Users?" +msgstr "Compartir con otros usuarios?" + +#: models.py:935 +msgid "Should other users see this query?" +msgstr "Otros usuarios deberían ver esta solicitud?" + +#: models.py:939 +msgid "Search Query" +msgstr "Buscar solicitud" + +#: models.py:940 +msgid "Pickled query object. Be wary changing this." +msgstr "Objeto de solicitud literal. Tenga cuidado al cambiarla. " + +#: models.py:950 +msgid "Saved search" +msgstr "" + +#: models.py:951 +msgid "Saved searches" +msgstr "" + +#: models.py:966 +msgid "Settings Dictionary" +msgstr "Diccionario de preferencias" + +#: models.py:967 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "Esta es una representación codificada en base64 literalmente del diccionario de Python. No la cambie por el administrador." + +#: models.py:993 +msgid "User Setting" +msgstr "" + +#: models.py:994 templates/helpdesk/navigation.html:37 +#: templates/helpdesk/user_settings.html:6 +msgid "User Settings" +msgstr "" + +#: models.py:1036 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "Deje en blanco para que este correo sea ignorado en todas las colas o seleccione las colas en las que desea ignorarlo." + +#: models.py:1048 +msgid "Date on which this e-mail address was added" +msgstr "Fecha en la que este correo fue agregado" + +#: models.py:1056 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "Ingrese la dirección de correo electrónico completa o porciones con wildcards. Ej: *@domain.com o postmaster@*." + +#: models.py:1061 +msgid "Save Emails in Mailbox?" +msgstr "Almacenar correos en el buzón?" + +#: models.py:1064 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "Desea almacenar correos de esta dirección en el buzón? Si no escoge esta opción, los correos de esta dirección serán eliminados." + +#: models.py:1101 +msgid "Ignored e-mail address" +msgstr "" + +#: models.py:1102 +msgid "Ignored e-mail addresses" +msgstr "" + +#: models.py:1124 +msgid "User who wishes to receive updates for this ticket." +msgstr "Usuarios interesados en recibir actualizaciones de este ticket." + +#: models.py:1132 +msgid "For non-user followers, enter their e-mail address" +msgstr "Para seguidores no registrados ingrese el correo electrónico." + +#: models.py:1136 +msgid "Can View Ticket?" +msgstr "Puede ver el ticket?" + +#: models.py:1138 +msgid "Can this CC login to view the ticket details?" +msgstr "Este CC puede ingresar para ver los detalles de este ticket?" + +#: models.py:1142 +msgid "Can Update Ticket?" +msgstr "Puede actualzar el ticket?" + +#: models.py:1144 +msgid "Can this CC login and update the ticket?" +msgstr "Este CC puede actualizar el ticket?" + +#: models.py:1175 +msgid "Field Name" +msgstr "" + +#: models.py:1176 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "" + +#: models.py:1181 +msgid "Label" +msgstr "" + +#: models.py:1183 +msgid "The display label for this field" +msgstr "" + +#: models.py:1187 +msgid "Help Text" +msgstr "" + +#: models.py:1188 +msgid "Shown to the user when editing the ticket" +msgstr "" + +#: models.py:1194 +msgid "Character (single line)" +msgstr "" + +#: models.py:1195 +msgid "Text (multi-line)" +msgstr "" + +#: models.py:1196 +msgid "Integer" +msgstr "" + +#: models.py:1197 +msgid "Decimal" +msgstr "" + +#: models.py:1198 +msgid "List" +msgstr "" + +#: models.py:1199 +msgid "Boolean (checkbox yes/no)" +msgstr "" + +#: models.py:1201 +msgid "Time" +msgstr "" + +#: models.py:1202 +msgid "Date & Time" +msgstr "" + +#: models.py:1204 +msgid "URL" +msgstr "" + +#: models.py:1205 +msgid "IP Address" +msgstr "" + +#: models.py:1210 +msgid "Data Type" +msgstr "" + +#: models.py:1212 +msgid "Allows you to restrict the data entered into this field" +msgstr "" + +#: models.py:1217 +msgid "Maximum Length (characters)" +msgstr "" + +#: models.py:1223 +msgid "Decimal Places" +msgstr "" + +#: models.py:1224 +msgid "Only used for decimal fields" +msgstr "" + +#: models.py:1230 +msgid "Add empty first choice to List?" +msgstr "" + +#: models.py:1232 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "" + +#: models.py:1236 +msgid "List Values" +msgstr "" + +#: models.py:1237 +msgid "For list fields only. Enter one option per line." +msgstr "" + +#: models.py:1243 +msgid "Ordering" +msgstr "" + +#: models.py:1244 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "" + +#: models.py:1258 +msgid "Required?" +msgstr "" + +#: models.py:1259 +msgid "Does the user have to enter a value for this field?" +msgstr "" + +#: models.py:1263 +msgid "Staff Only?" +msgstr "" + +#: models.py:1264 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "" + +#: models.py:1273 +msgid "Custom field" +msgstr "" + +#: models.py:1274 +msgid "Custom fields" +msgstr "" + +#: models.py:1297 +msgid "Ticket custom field value" +msgstr "" + +#: models.py:1298 +msgid "Ticket custom field values" +msgstr "" + +#: models.py:1315 +msgid "Depends On Ticket" +msgstr "" + +#: models.py:1324 +msgid "Ticket dependency" +msgstr "" + +#: models.py:1325 +msgid "Ticket dependencies" +msgstr "" + +#: management/commands/create_usersettings.py:25 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "" + +#: management/commands/escalate_tickets.py:148 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "Ticket priorizado después de %s days" + +#: management/commands/get_email.py:158 +msgid "Created from e-mail" +msgstr "Creado a través de correo electrónico" + +#: management/commands/get_email.py:162 +msgid "Unknown Sender" +msgstr "Remitente desconocido" + +#: management/commands/get_email.py:216 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "Texto plano para el cuerpo del correo no disponible. Por favor revise " + +#: management/commands/get_email.py:220 +msgid "email_html_body.html" +msgstr "email_html_body.html." + +#: management/commands/get_email.py:263 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "Correo recibido de %(sender_email)s" + +#: management/commands/get_email.py:271 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "Ticket Re-abierto por correo recibido de %(sender_email)s" + +#: management/commands/get_email.py:329 +msgid " (Reopened)" +msgstr "" + +#: management/commands/get_email.py:331 +msgid " (Updated)" +msgstr " (Actualizado)" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"django-helpdesk." +msgstr "" + +#: templates/helpdesk/base.html:10 +msgid "Powered by django-helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:20 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:24 templates/helpdesk/rss_list.html:31 +msgid "My Open Tickets" +msgstr "" + +#: templates/helpdesk/base.html:21 +msgid "All Recent Activity" +msgstr "" + +#: templates/helpdesk/base.html:22 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "" + +#: templates/helpdesk/base.html:52 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:18 +msgid "Helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:30 templates/helpdesk/rss_list.html:31 +msgid "RSS Icon" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "" + +#: templates/helpdesk/base.html:63 +msgid "API" +msgstr "" + +#: templates/helpdesk/base.html:64 templates/helpdesk/system_settings.html:6 +msgid "System Settings" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:146 +msgid "Delete Saved Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:6 +msgid "Delete Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this saved filter " +"(%(query_title)s)? To re-create it, you will need to manually re-" +"filter your ticket listing." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"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." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:14 +#: templates/helpdesk/delete_ticket.html:10 +msgid "No, Don't Delete It" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:16 +#: templates/helpdesk/delete_ticket.html:12 +msgid "Yes - Delete It" +msgstr "" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/navigation.html:65 templates/helpdesk/navigation.html:68 +#: templates/helpdesk/public_homepage.html:27 +msgid "Submit a Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +#: templates/helpdesk/public_homepage.html:28 +msgid "Please provide as descriptive a title and description as possible." +msgstr "" + +#: templates/helpdesk/create_ticket.html:30 +#: templates/helpdesk/public_homepage.html:55 +msgid "Submit Ticket" +msgstr "" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "" + +#: templates/helpdesk/dashboard.html:9 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "" + +#: templates/helpdesk/dashboard.html:14 +msgid "Helpdesk Summary" +msgstr "" + +#: templates/helpdesk/dashboard.html:36 +msgid "Current Ticket Stats" +msgstr "" + +#: templates/helpdesk/dashboard.html:37 +msgid "Average number of days until ticket is closed (all tickets): " +msgstr "" + +#: templates/helpdesk/dashboard.html:38 +msgid "" +"Average number of days until ticket is closed (tickets opened in last 60 " +"days): " +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "Click" +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "for detailed average by month." +msgstr "" + +#: templates/helpdesk/dashboard.html:40 +msgid "Distribution of open tickets, grouped by time period:" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Days since opened" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Number of open tickets" +msgstr "" + +#: templates/helpdesk/dashboard.html:57 +msgid "All Tickets submitted by you" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:225 +msgid "Pr" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:124 +msgid "Last Update" +msgstr "" + +#: templates/helpdesk/dashboard.html:77 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "" + +#: templates/helpdesk/dashboard.html:92 +msgid "You have no tickets assigned to you." +msgstr "" + +#: templates/helpdesk/dashboard.html:99 +msgid "(pick up a ticket if you start to work on it)" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/ticket_desc_table.html:38 +msgid "Take" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:262 +msgid "Delete" +msgstr "" + +#: templates/helpdesk/dashboard.html:114 +msgid "There are no unassigned tickets." +msgstr "" + +#: templates/helpdesk/dashboard.html:123 +msgid "Closed & resolved Tickets you used to work on" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:3 +#: templates/helpdesk/delete_ticket.html:6 +msgid "Delete Ticket" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this ticket (%(ticket_title)s)? All" +" traces of the ticket, including followups, attachments, and updates will be" +" irreversibly removed." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:9 +msgid "Edit a Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "Note" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "" +"Editing a ticket does not send an e-mail to the ticket owner or " +"submitter. No new details should be entered, this form should only be used " +"to fix incorrect details or clean up the submission." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:33 +msgid "Save Changes" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:6 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:8 +msgid "" +"To ignore an e-mail address and prevent any emails from that address " +"creating tickets automatically, enter the e-mail address below." +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:10 +msgid "" +"You can either enter a whole e-mail address such as " +"email@domain.com or a portion of an e-mail address with a wildcard," +" such as *@domain.com or user@*." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:6 +msgid "Un-Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:8 +#, python-format +msgid "" +"Are you sure you wish to stop removing this email address " +"(%(email_address)s) and allow their e-mails to automatically create" +" tickets in your system? You can re-add this e-mail address at any time." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:10 +msgid "Keep Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:12 +msgid "Stop Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:260 +msgid "All" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "" + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:12 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "" + +#: templates/helpdesk/kb_category.html:13 +msgid "Article" +msgstr "" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:21 +#: templates/helpdesk/navigation.html:71 +msgid "Knowledgebase" +msgstr "" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "" + +#: templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:16 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "" + +#: templates/helpdesk/kb_item.html:18 +msgid "Feedback" +msgstr "" + +#: templates/helpdesk/kb_item.html:20 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "" + +#: templates/helpdesk/kb_item.html:23 +msgid "This article was useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:24 +msgid "This article was not useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:27 +msgid "The results of voting by other readers of this article are below:" +msgstr "" + +#: templates/helpdesk/kb_item.html:30 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:31 +#, python-format +msgid "Votes: %(votes)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:32 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "" + +#: templates/helpdesk/navigation.html:16 templates/helpdesk/navigation.html:64 +msgid "Dashboard" +msgstr "" + +#: templates/helpdesk/navigation.html:18 +msgid "New Ticket" +msgstr "" + +#: templates/helpdesk/navigation.html:19 +msgid "Stats" +msgstr "" + +#: templates/helpdesk/navigation.html:24 +msgid "Saved Query" +msgstr "" + +#: templates/helpdesk/navigation.html:39 +msgid "Change password" +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Search..." +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Logout" +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Log In" +msgstr "" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:73 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "" + +#: templates/helpdesk/public_homepage.html:28 +msgid "All fields are required." +msgstr "" + +#: templates/helpdesk/public_homepage.html:66 +msgid "Please use button at upper right to login first." +msgstr "" + +#: templates/helpdesk/public_homepage.html:82 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "" + +#: templates/helpdesk/public_homepage.html:86 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:5 +msgid "Sorry, but there has been an error trying to submit your ticket." +msgstr "" + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"Our system has marked your submission as spam, so we are " +"unable to save it. If this is not spam, please press back and re-type your " +"message. Be careful to avoid sounding 'spammy', and if you have heaps of " +"links please try removing them if possible." +msgstr "" + +#: templates/helpdesk/public_spam.html:7 +msgid "" +"We are sorry for any inconvenience, however this check is required to avoid " +"our helpdesk resources being overloaded by spammers." +msgstr "" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:9 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:13 +#: templates/helpdesk/ticket_desc_table.html:32 +msgid "Submitted On" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:35 +msgid "Tags" +msgstr "Etiquetas" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept and Close" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:57 +#: templates/helpdesk/ticket.html:66 +msgid "Follow-Ups" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:65 +#: templates/helpdesk/ticket.html:100 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "" + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "" + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:27 views/staff.py:1049 +msgid "Days until ticket closed by Month" +msgstr "" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "" + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "" + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "" + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "" + +#: templates/helpdesk/rss_list.html:23 +msgid "Per-Queue Feeds" +msgstr "" + +#: templates/helpdesk/rss_list.html:24 +msgid "All Open Tickets" +msgstr "" + +#: templates/helpdesk/rss_list.html:30 +msgid "Open Tickets" +msgstr "" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "" + +#: templates/helpdesk/system_settings.html:8 +msgid "The following items can be maintained by you or other superusers:" +msgstr "" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:200 +msgid "Add Another File" +msgstr "" + +#: templates/helpdesk/ticket.html:73 templates/helpdesk/ticket.html.py:86 +msgid "Private" +msgstr "" + +#: templates/helpdesk/ticket.html:119 +msgid "Respond to this ticket" +msgstr "" + +#: templates/helpdesk/ticket.html:126 +msgid "Use a Pre-set Reply" +msgstr "" + +#: templates/helpdesk/ticket.html:126 templates/helpdesk/ticket.html.py:166 +msgid "(Optional)" +msgstr "" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "" + +#: templates/helpdesk/ticket.html:131 +msgid "Comment / Resolution" +msgstr "" + +#: templates/helpdesk/ticket.html:133 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "" + +#: templates/helpdesk/ticket.html:136 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "" + +#: templates/helpdesk/ticket.html:166 +msgid "Is this update public?" +msgstr "" + +#: templates/helpdesk/ticket.html:168 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "" + +#: templates/helpdesk/ticket.html:172 +msgid "Change Further Details »" +msgstr "" + +#: templates/helpdesk/ticket.html:181 templates/helpdesk/ticket_list.html:68 +#: templates/helpdesk/ticket_list.html:97 +#: templates/helpdesk/ticket_list.html:225 +msgid "Owner" +msgstr "" + +#: templates/helpdesk/ticket.html:182 +msgid "Unassign" +msgstr "" + +#: templates/helpdesk/ticket.html:193 +msgid "Attach File(s) »" +msgstr "" + +#: templates/helpdesk/ticket.html:199 +msgid "Attach a File" +msgstr "" + +#: templates/helpdesk/ticket.html:207 +msgid "Update This Ticket" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Unhold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Hold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:9 +#, python-format +msgid "Queue: %(queue)s" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Assigned To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:43 +msgid "Ignore" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:52 +msgid "Copies To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Manage" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Subscribe" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to subscribe yourself to this ticket, if you want to receive an " +"e-mail whenever this ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:57 +msgid "Dependencies" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:59 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:60 +msgid "Remove Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "This ticket has no dependencies." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "Add Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Change Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:67 +#: templates/helpdesk/ticket_list.html:79 +msgid "Sorting" +msgstr "" + +#: templates/helpdesk/ticket_list.html:71 +#: templates/helpdesk/ticket_list.html:139 +msgid "Keywords" +msgstr "" + +#: templates/helpdesk/ticket_list.html:72 +msgid "Date Range" +msgstr "" + +#: templates/helpdesk/ticket_list.html:100 +msgid "Reverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:102 +msgid "Ordering applied to tickets" +msgstr "" + +#: templates/helpdesk/ticket_list.html:107 +msgid "Owner(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:111 +msgid "(ME)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:115 +msgid "Ctrl-Click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:120 +msgid "Queue(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:121 +#: templates/helpdesk/ticket_list.html:127 +msgid "Ctrl-click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:126 +msgid "Status(es)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:132 +msgid "Date (From)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:133 +msgid "Date (To)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:134 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "" + +#: templates/helpdesk/ticket_list.html:140 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "" + +#: templates/helpdesk/ticket_list.html:144 +msgid "Apply Filter" +msgstr "" + +#: templates/helpdesk/ticket_list.html:146 +#, python-format +msgid "You are currently viewing saved query \"%(query_name)s\"." +msgstr "" + +#: templates/helpdesk/ticket_list.html:149 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "" + +#: templates/helpdesk/ticket_list.html:162 +#: templates/helpdesk/ticket_list.html:181 +msgid "Save Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:172 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "" + +#: templates/helpdesk/ticket_list.html:174 +msgid "Shared?" +msgstr "" + +#: templates/helpdesk/ticket_list.html:175 +msgid "Yes, share this query with other users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:176 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:195 +msgid "Use Saved Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:202 +msgid "Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:207 +msgid "Run Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:240 +msgid "No Tickets Match Your Selection" +msgstr "" + +#: templates/helpdesk/ticket_list.html:247 +msgid "Previous" +msgstr "" + +#: templates/helpdesk/ticket_list.html:251 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:255 +msgid "Next" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Select:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "None" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Inverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "With Selected Tickets:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Take (Assign to me)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Don't Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Assign To" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Nobody (Unassign)" +msgstr "" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "" + +#: templates/helpdesk/user_settings.html:8 +msgid "" +"Use the following options to change the way your helpdesk system works for " +"you. These settings do not impact any other user." +msgstr "" + +#: templates/helpdesk/user_settings.html:14 +msgid "Save Options" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "" + +#: templates/helpdesk/registration/login.html:14 +msgid "To log in simply enter your username and password below." +msgstr "" + +#: templates/helpdesk/registration/login.html:17 +msgid "Your username and password didn't match. Please try again." +msgstr "" + +#: templates/helpdesk/registration/login.html:20 +msgid "Login" +msgstr "" + +#: views/feeds.py:39 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:44 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:50 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:55 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:102 +msgid "Helpdesk: Unassigned Tickets" +msgstr "" + +#: views/feeds.py:103 +msgid "Unassigned Open and Reopened tickets" +msgstr "" + +#: views/feeds.py:128 +msgid "Helpdesk: Recent Followups" +msgstr "" + +#: views/feeds.py:129 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "" + +#: views/feeds.py:144 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "" + +#: views/feeds.py:149 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "" + +#: views/public.py:89 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "" + +#: views/public.py:107 +msgid "Submitter accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:235 +msgid "Accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:369 +#, python-format +msgid "Assigned to %(username)s" +msgstr "" + +#: views/staff.py:392 +msgid "Updated" +msgstr "" + +#: views/staff.py:577 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "" + +#: views/staff.py:582 +msgid "Unassigned in bulk update" +msgstr "" + +#: views/staff.py:587 views/staff.py:592 +msgid "Closed in bulk update" +msgstr "" + +#: views/staff.py:806 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "" + +#: views/staff.py:910 +msgid "Ticket taken off hold" +msgstr "" + +#: views/staff.py:913 +msgid "Ticket placed on hold" +msgstr "" + +#: views/staff.py:1007 +msgid "User by Priority" +msgstr "" + +#: views/staff.py:1013 +msgid "User by Queue" +msgstr "" + +#: views/staff.py:1019 +msgid "User by Status" +msgstr "" + +#: views/staff.py:1025 +msgid "User by Month" +msgstr "" + +#: views/staff.py:1031 +msgid "Queue by Priority" +msgstr "" + +#: views/staff.py:1037 +msgid "Queue by Status" +msgstr "" + +#: views/staff.py:1043 +msgid "Queue by Month" +msgstr "" diff --git a/build/lib/helpdesk/locale/es_MX/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/es_MX/LC_MESSAGES/django.mo new file mode 100644 index 00000000..af863727 Binary files /dev/null and b/build/lib/helpdesk/locale/es_MX/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/es_MX/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/es_MX/LC_MESSAGES/django.po new file mode 100644 index 00000000..2b5fed6b --- /dev/null +++ b/build/lib/helpdesk/locale/es_MX/LC_MESSAGES/django.po @@ -0,0 +1,2399 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Translators: +# Alberto Gaona , 2011 +# Andrés Martínez, 2017 +# Apizano , 2013 +# Apizano , 2012 +# Erik Rivera , 2011,2013,2016 +# Ross Poulton , 2011 +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2014-07-26 14:14+0200\n" +"PO-Revision-Date: 2017-03-15 20:53+0000\n" +"Last-Translator: Andrés Martínez\n" +"Language-Team: Spanish (Mexico) (http://www.transifex.com/django-helpdesk/django-helpdesk/language/es_MX/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: es_MX\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: forms.py:128 forms.py:328 models.py:190 models.py:267 +#: templates/helpdesk/dashboard.html:15 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/dashboard.html:124 templates/helpdesk/rss_list.html:24 +#: templates/helpdesk/ticket_list.html:69 +#: templates/helpdesk/ticket_list.html:88 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:1032 +#: views/staff.py:1038 views/staff.py:1044 views/staff.py:1050 +msgid "Queue" +msgstr "Cola" + +#: forms.py:137 +msgid "Summary of the problem" +msgstr "Resumen del problema" + +#: forms.py:142 +msgid "Submitter E-Mail Address" +msgstr "E-Mail de Remitente" + +#: forms.py:144 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "Esta direccion de e-mail recibirá copias de todas las actualizaciones públicas de este ticket." + +#: forms.py:150 +msgid "Description of Issue" +msgstr "Descripción del Problema" + +#: forms.py:157 +msgid "Case owner" +msgstr "Dueño" + +#: forms.py:158 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "Si selecciona un propietario que no sea usted, será notificado por correo acerca de este ticket inmediatamente" + +#: forms.py:166 models.py:327 management/commands/escalate_tickets.py:154 +#: templates/helpdesk/public_view_ticket.html:23 +#: templates/helpdesk/ticket.html:184 +#: templates/helpdesk/ticket_desc_table.html:47 +#: templates/helpdesk/ticket_list.html:94 views/staff.py:429 +msgid "Priority" +msgstr "Prioridad" + +#: forms.py:167 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "Por favor seleccione cuidadosamente una prioridad. Si no está seguro, déjelo como está (3)." + +#: forms.py:174 forms.py:365 models.py:335 templates/helpdesk/ticket.html:186 +#: views/staff.py:439 +msgid "Due on" +msgstr "Se requiere solución para el día" + +#: forms.py:186 forms.py:370 +msgid "Attach File" +msgstr "Adjuntar Archivo." + +#: forms.py:187 forms.py:371 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "Usted puede adjuntar un archivo como documento o una captura de pantalla a este ticket." + +#: forms.py:240 +msgid "Ticket Opened" +msgstr "Ticket abierto" + +#: forms.py:247 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "Ticket abierto & Asignado a %(name)s" + +#: forms.py:337 +msgid "Summary of your query" +msgstr "Resumen de su consulta" + +#: forms.py:342 +msgid "Your E-Mail Address" +msgstr "Su dirección de e-mail" + +#: forms.py:343 +msgid "We will e-mail you when your ticket is updated." +msgstr "Le enviaremos un e-mail cuando su ticket se actualice." + +#: forms.py:348 +msgid "Description of your issue" +msgstr "Descripción del problema" + +#: forms.py:350 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "Por favor sea lo más descriptivo posible, incluyendo cualquier información necesaria para resolver pronto su problema." + +#: forms.py:358 +msgid "Urgency" +msgstr "Urgencia" + +#: forms.py:359 +msgid "Please select a priority carefully." +msgstr "Por favor seleccione una prioridad cuidadosamente." + +#: forms.py:419 +msgid "Ticket Opened Via Web" +msgstr "Ticket abierto vía web" + +#: forms.py:486 +msgid "Show Ticket List on Login?" +msgstr "¿Mostrar la lista de tickets al entrar?" + +#: forms.py:487 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "¿Mostar la lista de ticket después de ingresar? De otra forma, el dashboard será mostrado." + +#: forms.py:492 +msgid "E-mail me on ticket change?" +msgstr "Envíenme un mensaje cuando cambie el ticket" + +#: forms.py:493 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "¿Quiere recibir un e-mail si usted es el dueño de un ticket y el ticket es cambiado vía web por alguien más?" + +#: forms.py:498 +msgid "E-mail me when assigned a ticket?" +msgstr "¿Enviarle un correo cuando se le asigne un ticket?" + +#: forms.py:499 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "¿Quiere que se le envie un e-mail si se le asigna un ticket via web?" + +#: forms.py:504 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "¿Enviarle un correo si un ticket es cambiado vía el API?" + +#: forms.py:505 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "¿Quiere recibir un e-mail si un ticket es modificado a través de la API?" + +#: forms.py:510 +msgid "Number of tickets to show per page" +msgstr "Número de tickets a mostrar por página" + +#: forms.py:511 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "¿Cuántos tickets quiere ver en la página de Lista de Tickets?" + +#: forms.py:518 +msgid "Use my e-mail address when submitting tickets?" +msgstr "¿Usar mi direccion de e-mail cuando se envien tickets?" + +#: forms.py:519 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "Cuando envia un ticket, ¿quiere que automáticamente se use su dirección de e-mail como emisor? Usted puede ingresar una dirección de e-mail cuando se ingrese un ticket si es que lo necesita. Esta opción solo modifica la opción por defecto." + +#: models.py:35 models.py:261 models.py:503 models.py:817 models.py:853 +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket.html:178 templates/helpdesk/ticket_list.html:85 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:419 +msgid "Title" +msgstr "Título" + +#: models.py:40 models.py:822 models.py:1206 +msgid "Slug" +msgstr "Prefijo" + +#: models.py:41 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "Este prefijo es utilizado como parte del ID de un ticket. Una vez configurado, trate de no cambiarlo o las notificaciones e-mail pueden dejar de funcionar." + +#: models.py:46 models.py:1054 models.py:1129 models.py:1203 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "Dirección de E-mail" + +#: models.py:49 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "Todos los correos de salida de esta cola usarán esta dirección. Si usa IMAP o POP3, esta debe ser la dirección de correo para ese buzón" + +#: models.py:55 models.py:794 +msgid "Locale" +msgstr "Internacionalización" + +#: models.py:59 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "Internacionalización de esta cola. Todo lo que corresponda a esta cola estara en este lenguaje." + +#: models.py:63 +msgid "Allow Public Submission?" +msgstr "¿Permitir envíos públicos?" + +#: models.py:66 +msgid "Should this queue be listed on the public submission form?" +msgstr "¿Debe esta cola ser listada en el formulario de envíos públicos?" + +#: models.py:71 +msgid "Allow E-Mail Submission?" +msgstr "¿Permitir envíos por e-mail?" + +#: models.py:74 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "¿Quiere sondear el buzón de correo de abajo para nuevos tickets?" + +#: models.py:79 +msgid "Escalation Days" +msgstr "Dias de escalamiento" + +#: models.py:82 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "¿con que frecuencia desea incrementar la prioridad de los tickets que no están retenidos? Especifique 0 para que no existan escalamientos." + +#: models.py:87 +msgid "New Ticket CC Address" +msgstr "Dirección CC Nuevo Ticket" + +#: models.py:91 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "Si introduce una dirección de e-mail aquí dicha dirección recibirá notificaciones de los nuevos tickets creados para esta cola. Introduzca una coma entre múltiples direcciones de e-mail." + +#: models.py:97 +msgid "Updated Ticket CC Address" +msgstr "Actualización de Ticket, Dirección de CC" + +#: models.py:101 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "Si introduce una dirección de e-mail aquí dicha dirección recibirá notificaciones de los nuevos tickets creados para esta cola. Introduzca una coma entre múltiples direcciones de e-mail." + +#: models.py:108 +msgid "E-Mail Box Type" +msgstr "Tipo de buzón de correo" + +#: models.py:110 +msgid "POP 3" +msgstr "POP 3" + +#: models.py:110 +msgid "IMAP" +msgstr "IMAP" + +#: models.py:113 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "Dirección de correo para crear tickets automáticos a partir de un buzón de correo, tanto POP3 e IMAP son soportados." + +#: models.py:118 +msgid "E-Mail Hostname" +msgstr "Servidor de e-mail" + +#: models.py:122 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "La dirección IP o nombre de dominio de su servidor de e-mail. Puede ser \"localhost\"." + +#: models.py:127 +msgid "E-Mail Port" +msgstr "Puerto de e-mail" + +#: models.py:130 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "Número de puerto para acceder a e-mail. Por defecto POP3 es \"110\" y para IMAP es \"143\". Esto puede ser distinto en algunos servidores. Deje en blanco para usar los por defecto." + +#: models.py:136 +msgid "Use SSL for E-Mail?" +msgstr "¿Usar SSL para el e-mail?" + +#: models.py:139 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "Si va a utilizar SSL para IMAP o POP3 - el puerto predeterminado es 993 para IMAP y 995 para POP3" + +#: models.py:144 +msgid "E-Mail Username" +msgstr "Nombre de usuario de e-mail" + +#: models.py:148 +msgid "Username for accessing this mailbox." +msgstr "Nombre de usuario para accesar esta casilla." + +#: models.py:152 +msgid "E-Mail Password" +msgstr "Contraseña de e-mail" + +#: models.py:156 +msgid "Password for the above username" +msgstr "Contraseña para el usuario de encima" + +#: models.py:160 +msgid "IMAP Folder" +msgstr "Carpeta IMAP" + +#: models.py:164 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "Si utiliza IMAP ¿de qué carpeta quiere extraer los mensajes? Esta característica le permite utilizar una sola cuenta IMAP para varias colas, filtrando los mensajes en el servidor IMAP y colocándolos en diferentes carpetas. Default: INBOX" + +#: models.py:171 +msgid "E-Mail Check Interval" +msgstr "Intervalo de revisión de correo" + +#: models.py:172 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "¿Con que frecuencia desea revisar el buzón de correo? (En Minutos)" + +#: models.py:191 templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "Departamentos" + +#: models.py:245 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:138 +msgid "Open" +msgstr "Abierto" + +#: models.py:246 templates/helpdesk/ticket.html:144 +#: templates/helpdesk/ticket.html.py:150 templates/helpdesk/ticket.html:155 +#: templates/helpdesk/ticket.html.py:159 +msgid "Reopened" +msgstr "Reabierto" + +#: models.py:247 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:139 templates/helpdesk/ticket.html.py:145 +#: templates/helpdesk/ticket.html:151 +msgid "Resolved" +msgstr "Resuelto" + +#: models.py:248 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:140 templates/helpdesk/ticket.html.py:146 +#: templates/helpdesk/ticket.html:152 templates/helpdesk/ticket.html.py:156 +msgid "Closed" +msgstr "Cerrado" + +#: models.py:249 templates/helpdesk/ticket.html:141 +#: templates/helpdesk/ticket.html.py:147 templates/helpdesk/ticket.html:160 +msgid "Duplicate" +msgstr "Duplicado" + +#: models.py:253 +msgid "1. Critical" +msgstr "1. Crítico" + +#: models.py:254 +msgid "2. High" +msgstr "2. Alto" + +#: models.py:255 +msgid "3. Normal" +msgstr "3. Normal" + +#: models.py:256 +msgid "4. Low" +msgstr "4. Bajo" + +#: models.py:257 +msgid "5. Very Low" +msgstr "5. Muy bajo" + +#: models.py:271 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/ticket_list.html:82 +#: templates/helpdesk/ticket_list.html:225 +msgid "Created" +msgstr "Creado" + +#: models.py:273 +msgid "Date this ticket was first created" +msgstr "Fecha de cuando fue creado este ticket" + +#: models.py:277 +msgid "Modified" +msgstr "Modificado" + +#: models.py:279 +msgid "Date this ticket was most recently changed." +msgstr "Fecha de cuando fue reciente modifcado este ticket" + +#: models.py:283 templates/helpdesk/public_view_ticket.html:18 +#: templates/helpdesk/ticket_desc_table.html:42 +msgid "Submitter E-Mail" +msgstr "E-mail del solicitante" + +#: models.py:286 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "El solicitante recibira un e-mail para todas las actualizaciones publicas dejadas para esta tarea." + +#: models.py:295 +msgid "Assigned to" +msgstr "Asignado a" + +#: models.py:299 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:70 +#: templates/helpdesk/ticket_list.html:91 +#: templates/helpdesk/ticket_list.html:225 +msgid "Status" +msgstr "Estado" + +#: models.py:305 +msgid "On Hold" +msgstr "Mantener" + +#: models.py:308 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "Si un ticket es mantenido, no sera automaticamente escalado." + +#: models.py:313 models.py:826 templates/helpdesk/public_view_ticket.html:41 +#: templates/helpdesk/ticket_desc_table.html:19 +msgid "Description" +msgstr "Descripcion" + +#: models.py:316 +msgid "The content of the customers query." +msgstr "El contenido de la consulta de clientes" + +#: models.py:320 templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Resolution" +msgstr "Resolución" + +#: models.py:323 +msgid "The resolution provided to the customer by our staff." +msgstr "La resolución proporcionada al cliente por el personal" + +#: models.py:331 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "1 = Prioridad mas alta, 5 = Prioridad Baja" + +#: models.py:344 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "La fecha de este ticket fue modificada por la ultima escalación - actualizado automáticamente por management/commands/escalate_tickets.py." + +#: models.py:353 templates/helpdesk/ticket_desc_table.html:38 +#: views/feeds.py:95 views/feeds.py:121 views/feeds.py:173 views/staff.py:376 +msgid "Unassigned" +msgstr "Sin Asignar" + +#: models.py:392 +msgid " - On Hold" +msgstr "En Espera" + +#: models.py:394 +msgid " - Open dependencies" +msgstr "Dependencias abiertas" + +#: models.py:448 models.py:494 models.py:1117 models.py:1280 models.py:1309 +#: templates/helpdesk/public_homepage.html:78 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "Ticket" + +#: models.py:449 templates/helpdesk/navigation.html:17 +#: templates/helpdesk/ticket_list.html:2 +#: templates/helpdesk/ticket_list.html:224 +msgid "Tickets" +msgstr "Tickets" + +#: models.py:498 models.py:738 models.py:1047 models.py:1200 +msgid "Date" +msgstr "Fecha" + +#: models.py:510 views/staff.py:390 +msgid "Comment" +msgstr "Comentario" + +#: models.py:516 +msgid "Public" +msgstr "Público" + +#: models.py:519 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "Los tickets públicos son visibles por el usuario y todo el personal, pero las entradas no pública sólo pueden ser vistos por el personal." + +#: models.py:527 models.py:922 models.py:1125 views/staff.py:1008 +#: views/staff.py:1014 views/staff.py:1020 views/staff.py:1026 +msgid "User" +msgstr "Usuario" + +#: models.py:531 templates/helpdesk/ticket.html:135 +msgid "New Status" +msgstr "Nuevo Estado" + +#: models.py:535 +msgid "If the status was changed, what was it changed to?" +msgstr "Si el estado cambió, ¿que fue a lo que cambió?" + +#: models.py:542 models.py:566 models.py:628 +msgid "Follow-up" +msgstr "Seguimiento" + +#: models.py:543 +msgid "Follow-ups" +msgstr "Seguimientos" + +#: models.py:570 models.py:1285 +msgid "Field" +msgstr "Campo" + +#: models.py:575 +msgid "Old Value" +msgstr "Valor Viejo" + +#: models.py:581 +msgid "New Value" +msgstr "Valor nuevo" + +#: models.py:589 +msgid "removed" +msgstr "removido" + +#: models.py:591 +#, python-format +msgid "set to %s" +msgstr "establece en %s" + +#: models.py:593 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "cambiado de \"%(old_value)s\" a \"%(new_value)s\"" + +#: models.py:600 +msgid "Ticket change" +msgstr "Cambio en el Ticket" + +#: models.py:601 +msgid "Ticket changes" +msgstr "Cambios en el Ticket" + +#: models.py:632 +msgid "File" +msgstr "Archivo" + +#: models.py:637 +msgid "Filename" +msgstr "Nombre de Archivo" + +#: models.py:642 +msgid "MIME Type" +msgstr "Tipo MIME" + +#: models.py:647 +msgid "Size" +msgstr "Tamaño" + +#: models.py:648 +msgid "Size of this file in bytes" +msgstr "Tamaño del archivo en bytes" + +#: models.py:665 +msgid "Attachment" +msgstr "Adjunto" + +#: models.py:666 +msgid "Attachments" +msgstr "Adjuntos" + +#: models.py:685 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "Dejar en blanco para permitir que esta respuesta que se utilizará para todas las colas, o seleccionar las colas desea limitar esta respuesta." + +#: models.py:690 models.py:733 models.py:1042 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "Nombre" + +#: models.py:692 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "Sólo se utiliza para ayudar a los usuarios con la selección de una respuesta - no se muestra al usuario." + +#: models.py:697 +msgid "Body" +msgstr "Cuerpo" + +#: models.py:698 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "Contexto: {{ ticket }} - ticket de objeto (por ejemplo, {{ ticket.title }}); {{ queue }} - La cola, y {{ user }} - el usuario actual." + +#: models.py:705 +msgid "Pre-set reply" +msgstr "Respuesta por defecto" + +#: models.py:706 +msgid "Pre-set replies" +msgstr "Respuestas por defecto" + +#: models.py:727 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "Deja en blanco para esta exclusión se aplica a todas las colas, o seleccionar las colas que desee excluir con esta entrada." + +#: models.py:739 +msgid "Date on which escalation should not happen" +msgstr "Fecha en la que la escalada no debe suceder" + +#: models.py:746 +msgid "Escalation exclusion" +msgstr "Exclusión escalada" + +#: models.py:747 +msgid "Escalation exclusions" +msgstr "Exclusiones escaladas" + +#: models.py:760 +msgid "Template Name" +msgstr "Nombre de Plantillla" + +#: models.py:765 +msgid "Subject" +msgstr "Asunto" + +#: models.py:767 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "Este será el prefijo \"[ticket.ticket] ticket.title\". Se recomienda algo simple como \"(Actualización\") o \"(cerrado)\" - el mismo contexto se encuentra disponible como en plain_text, a continuación." + +#: models.py:773 +msgid "Heading" +msgstr "Encabezado" + +#: models.py:775 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "En correos HTML, este será el encabezado al principio del correo - el mismo contexto aplica a textlo plano, abajo." + +#: models.py:781 +msgid "Plain Text" +msgstr "Texto Plano" + +#: models.py:782 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "El contexto a su disposición incluye {{ ticket }}, {{ queue }}, y dependiendo de la hora de la llamada: {{resolution}} o {{comment}}." + +#: models.py:788 +msgid "HTML" +msgstr "HTML" + +#: models.py:789 +msgid "The same context is available here as in plain_text, above." +msgstr "El mismo contexto está disponible aquí como texto plano, arriba." + +#: models.py:798 +msgid "Locale of this template." +msgstr "Locale de esta plantilla" + +#: models.py:806 +msgid "e-mail template" +msgstr "Plantilla de e-mail" + +#: models.py:807 +msgid "e-mail templates" +msgstr "Plantillas de e-mail" + +#: models.py:834 +msgid "Knowledge base category" +msgstr "Categoría de la base de conocimiento" + +#: models.py:835 +msgid "Knowledge base categories" +msgstr "Categorías de la base de conocimiento" + +#: models.py:849 templates/helpdesk/kb_index.html:11 +#: templates/helpdesk/public_homepage.html:11 +msgid "Category" +msgstr "Categoría" + +#: models.py:858 +msgid "Question" +msgstr "Pregunta" + +#: models.py:862 +msgid "Answer" +msgstr "Respuesta" + +#: models.py:866 +msgid "Votes" +msgstr "Votos" + +#: models.py:867 +msgid "Total number of votes cast for this item" +msgstr "Número total de votos emitidos para este item" + +#: models.py:872 +msgid "Positive Votes" +msgstr "Votos positivos" + +#: models.py:873 +msgid "Number of votes for this item which were POSITIVE." +msgstr "Número total de votos para este item que fueron POSITIVOS" + +#: models.py:878 +msgid "Last Updated" +msgstr "Última actualización" + +#: models.py:879 +msgid "The date on which this question was most recently changed." +msgstr "La fecha en que esta cuestión fue recientemente cambiado." + +#: models.py:893 +msgid "Unrated" +msgstr "No calificado" + +#: models.py:901 +msgid "Knowledge base item" +msgstr "Elemento de la base de conocimiento" + +#: models.py:902 +msgid "Knowledge base items" +msgstr "Elementos de la base de conocimiento" + +#: models.py:926 templates/helpdesk/ticket_list.html:170 +msgid "Query Name" +msgstr "Nombre de consulta" + +#: models.py:928 +msgid "User-provided name for this query" +msgstr "nombre proveido por el usuario para esta consulta" + +#: models.py:932 +msgid "Shared With Other Users?" +msgstr "¿Compartir con otros usuarios?" + +#: models.py:935 +msgid "Should other users see this query?" +msgstr "¿Deberían otros usuarios ver esta consulta?" + +#: models.py:939 +msgid "Search Query" +msgstr "Consulta de búsqueda" + +#: models.py:940 +msgid "Pickled query object. Be wary changing this." +msgstr "objeto de consulta en crudo. Tenga cuidado con cambiar esto." + +#: models.py:950 +msgid "Saved search" +msgstr "Búsqueda guardada" + +#: models.py:951 +msgid "Saved searches" +msgstr "Búsquedas guardadas" + +#: models.py:966 +msgid "Settings Dictionary" +msgstr "Diccionario de Configuración" + +#: models.py:967 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "Esta es una representación codificada en base 64 de un diccionario de Python en crudo. No cambie este campo a través de la administración." + +#: models.py:993 +msgid "User Setting" +msgstr "Configuración de usuario" + +#: models.py:994 templates/helpdesk/navigation.html:37 +#: templates/helpdesk/user_settings.html:6 +msgid "User Settings" +msgstr "Configuracion del Usuario" + +#: models.py:1036 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "Deja en blanco para este e-mail para ser ignorado en todas las colas, o seleccionar las colas que desea ignorar este e-mail para." + +#: models.py:1048 +msgid "Date on which this e-mail address was added" +msgstr "Fecha en la que se añadió la dirección de correo electrónico" + +#: models.py:1056 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "Introduzca una dirección de correo electrónico completa, o partes con comodines, por ejemplo, *@domain.com o postmaster@*." + +#: models.py:1061 +msgid "Save Emails in Mailbox?" +msgstr "Guardar mensajes de correo electrónico en el buzón?" + +#: models.py:1064 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "¿Desea guardar los correos electrónicos de esta dirección en el buzón de correo? Si es marcada, los mensajes de correo electrónico de esta dirección serán eliminados." + +#: models.py:1101 +msgid "Ignored e-mail address" +msgstr "Correo electrónico ignorado" + +#: models.py:1102 +msgid "Ignored e-mail addresses" +msgstr "Correos electrónicos ignorados" + +#: models.py:1124 +msgid "User who wishes to receive updates for this ticket." +msgstr "Usuario que desea recibir las actualizaciones de este ticket." + +#: models.py:1132 +msgid "For non-user followers, enter their e-mail address" +msgstr "Para los seguidores sin usuario, introduzca su dirección de correo electrónico" + +#: models.py:1136 +msgid "Can View Ticket?" +msgstr "¿Puede ver el ticket?" + +#: models.py:1138 +msgid "Can this CC login to view the ticket details?" +msgstr "¿Puede este CC entrar para ver los detalles del ticket?" + +#: models.py:1142 +msgid "Can Update Ticket?" +msgstr "¿Puede actualizar el ticket?" + +#: models.py:1144 +msgid "Can this CC login and update the ticket?" +msgstr "¿Puede este CC entrar y actualizar el ticket?" + +#: models.py:1175 +msgid "Field Name" +msgstr "Nombre del campo" + +#: models.py:1176 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "Tal y como se usa en la base de datos del sistema. Debe ser único y consistir solo de minúsculas, sin puntos ni comas." + +#: models.py:1181 +msgid "Label" +msgstr "Etiqueta" + +#: models.py:1183 +msgid "The display label for this field" +msgstr "La etiqueta a desplegar para este campo" + +#: models.py:1187 +msgid "Help Text" +msgstr "Texto de ayuda" + +#: models.py:1188 +msgid "Shown to the user when editing the ticket" +msgstr "Se muestra al usuario cuando se edita el ticket" + +#: models.py:1194 +msgid "Character (single line)" +msgstr "Caracter (una sola línea)" + +#: models.py:1195 +msgid "Text (multi-line)" +msgstr "Texto (multi-línea)" + +#: models.py:1196 +msgid "Integer" +msgstr "Entero" + +#: models.py:1197 +msgid "Decimal" +msgstr "Decimal" + +#: models.py:1198 +msgid "List" +msgstr "Lista" + +#: models.py:1199 +msgid "Boolean (checkbox yes/no)" +msgstr "Booleano (checkbox sí/no)" + +#: models.py:1201 +msgid "Time" +msgstr "Hora" + +#: models.py:1202 +msgid "Date & Time" +msgstr "Fecha y hora" + +#: models.py:1204 +msgid "URL" +msgstr "URL" + +#: models.py:1205 +msgid "IP Address" +msgstr "Dirección IP" + +#: models.py:1210 +msgid "Data Type" +msgstr "Tipo de dato" + +#: models.py:1212 +msgid "Allows you to restrict the data entered into this field" +msgstr "Le permite restringir la información introducida en este campo" + +#: models.py:1217 +msgid "Maximum Length (characters)" +msgstr "Longitud máxima (caracteres)" + +#: models.py:1223 +msgid "Decimal Places" +msgstr "Lugares decimales" + +#: models.py:1224 +msgid "Only used for decimal fields" +msgstr "Solo utilizado en campos decimales" + +#: models.py:1230 +msgid "Add empty first choice to List?" +msgstr "Añadir una opción en blanco al inicio de la Lista?" + +#: models.py:1232 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "Solo para Lista: Añadir una primera entrada vacía a las listas de opciones, para obligar que el usuario elija una opción activa." + +#: models.py:1236 +msgid "List Values" +msgstr "Listas de valores" + +#: models.py:1237 +msgid "For list fields only. Enter one option per line." +msgstr "Para campos de lista. Introduzca una opción por línea." + +#: models.py:1243 +msgid "Ordering" +msgstr "Orden" + +#: models.py:1244 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "Los números mas pequeños son mostrados primero; los números más grandes se muestran al final" + +#: models.py:1258 +msgid "Required?" +msgstr "¿Requerido?" + +#: models.py:1259 +msgid "Does the user have to enter a value for this field?" +msgstr "¿El usuario está obligado a introducir un valor en este campo?" + +#: models.py:1263 +msgid "Staff Only?" +msgstr "¿Solo personal de soporte?" + +#: models.py:1264 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "Si está prendido, la forma pública de creación de ticket NO MOSTRARÁ este campo" + +#: models.py:1273 +msgid "Custom field" +msgstr "Campo personalizado" + +#: models.py:1274 +msgid "Custom fields" +msgstr "Campos personalizados" + +#: models.py:1297 +msgid "Ticket custom field value" +msgstr "Valor del campo personalizado" + +#: models.py:1298 +msgid "Ticket custom field values" +msgstr "Valores del campo personalizado" + +#: models.py:1315 +msgid "Depends On Ticket" +msgstr "Depende del ticket" + +#: models.py:1324 +msgid "Ticket dependency" +msgstr "Dependencia de Ticket" + +#: models.py:1325 +msgid "Ticket dependencies" +msgstr "Dependencia de Tickets" + +#: management/commands/create_usersettings.py:25 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "Busca al usuario sin django-helpdesk UserSettings y crea los UserSettings si es necesario. Utiliza settings.DEFAULT_USER_SETTINGS , que puede ser sobreescrito para su situación particular." + +#: management/commands/escalate_tickets.py:148 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "Ticket escalado después de %s días" + +#: management/commands/get_email.py:158 +msgid "Created from e-mail" +msgstr "Creado a partir de e-mail" + +#: management/commands/get_email.py:162 +msgid "Unknown Sender" +msgstr "Remitente desconocido" + +#: management/commands/get_email.py:216 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "No hay cuerpo del correo electrónico en texto plano disponible. Por favor, consulte el archivo adjunto email_html_body.html." + +#: management/commands/get_email.py:220 +msgid "email_html_body.html" +msgstr "email_html_body.html" + +#: management/commands/get_email.py:263 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "E-mail recibido desde %(sender_email)s " + +#: management/commands/get_email.py:271 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "Ticket Re-abierto por el correo electrónico recibido desde %(sender_email)s " + +#: management/commands/get_email.py:329 +msgid " (Reopened)" +msgstr "(Reabierto)" + +#: management/commands/get_email.py:331 +msgid " (Updated)" +msgstr "(Actualizado)" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"django-helpdesk." +msgstr "django-helpdesk." + +#: templates/helpdesk/base.html:10 +msgid "Powered by django-helpdesk" +msgstr "Desarrollado por django-helpdesk" + +#: templates/helpdesk/base.html:20 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:24 templates/helpdesk/rss_list.html:31 +msgid "My Open Tickets" +msgstr "Mis Tickets Abiertos" + +#: templates/helpdesk/base.html:21 +msgid "All Recent Activity" +msgstr "Todas las actividades recientes" + +#: templates/helpdesk/base.html:22 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "Tickets sin asignar" + +#: templates/helpdesk/base.html:52 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:18 +msgid "Helpdesk" +msgstr "Helpdesk" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:30 templates/helpdesk/rss_list.html:31 +msgid "RSS Icon" +msgstr "Icono Rss" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "Fuente RSS" + +#: templates/helpdesk/base.html:63 +msgid "API" +msgstr "API" + +#: templates/helpdesk/base.html:64 templates/helpdesk/system_settings.html:6 +msgid "System Settings" +msgstr "Configuración del Sistema" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:146 +msgid "Delete Saved Query" +msgstr "Borrar Búsqueda Salvada" + +#: templates/helpdesk/confirm_delete_saved_query.html:6 +msgid "Delete Query" +msgstr "Borrar consulta" + +#: templates/helpdesk/confirm_delete_saved_query.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this saved filter " +"(%(query_title)s)? To re-create it, you will need to manually re-" +"filter your ticket listing." +msgstr "¿Estás seguro que quieres eliminar este filtro guardado (%(query_title)s)? Para volver a crearlo, tendrá que volver a filtrar la lista de Tickets." + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"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." +msgstr " Ha compartido esta consulta para que los otros usuarios pueden usarla. Si la elimina, los otros usuarios deben crear su propia consulta." + +#: templates/helpdesk/confirm_delete_saved_query.html:14 +#: templates/helpdesk/delete_ticket.html:10 +msgid "No, Don't Delete It" +msgstr "No, No borrarlo" + +#: templates/helpdesk/confirm_delete_saved_query.html:16 +#: templates/helpdesk/delete_ticket.html:12 +msgid "Yes - Delete It" +msgstr "Sí, borrarlo" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "Crear Ticket" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/navigation.html:65 templates/helpdesk/navigation.html:68 +#: templates/helpdesk/public_homepage.html:27 +msgid "Submit a Ticket" +msgstr "Enviar un Ticket" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "Se requieren todos los campos, a menos que se indique lo contrario." + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +#: templates/helpdesk/public_homepage.html:28 +msgid "Please provide as descriptive a title and description as possible." +msgstr "Por favor incluya un título y una descripción tan explícitas como sea posible." + +#: templates/helpdesk/create_ticket.html:30 +#: templates/helpdesk/public_homepage.html:55 +msgid "Submit Ticket" +msgstr "Enviar Ticket" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "Panel - Servicio de Ayuda" + +#: templates/helpdesk/dashboard.html:9 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "Bienvenido al panel del servicio de ayuda, aquí podrá ver de inmediato sus tickets enviados, en cuales estas trabajando y los que no tienen dueño." + +#: templates/helpdesk/dashboard.html:14 +msgid "Helpdesk Summary" +msgstr "Resumen - Servicio de Ayuda" + +#: templates/helpdesk/dashboard.html:36 +msgid "Current Ticket Stats" +msgstr "Estado del Ticket" + +#: templates/helpdesk/dashboard.html:37 +msgid "Average number of days until ticket is closed (all tickets): " +msgstr "Promedio de días hasta que un Ticket es cerrado (Todos los Tickets):" + +#: templates/helpdesk/dashboard.html:38 +msgid "" +"Average number of days until ticket is closed (tickets opened in last 60 " +"days): " +msgstr "Promedio de días hasta que un Ticket es cerrado (Tickets abiertos en los últimos 60 días):" + +#: templates/helpdesk/dashboard.html:39 +msgid "Click" +msgstr "Clic" + +#: templates/helpdesk/dashboard.html:39 +msgid "for detailed average by month." +msgstr "para el promedio detallado por mes." + +#: templates/helpdesk/dashboard.html:40 +msgid "Distribution of open tickets, grouped by time period:" +msgstr "Distribución de Tickets abiertos agrupados por periodos:" + +#: templates/helpdesk/dashboard.html:41 +msgid "Days since opened" +msgstr "Periodo" + +#: templates/helpdesk/dashboard.html:41 +msgid "Number of open tickets" +msgstr "Número de Tickets abiertos" + +#: templates/helpdesk/dashboard.html:57 +msgid "All Tickets submitted by you" +msgstr "Todos los Tickets enviados por usted" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:225 +msgid "Pr" +msgstr "Pr" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:124 +msgid "Last Update" +msgstr "Última actualización" + +#: templates/helpdesk/dashboard.html:77 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "Tickets abiertos asignados a usted (usted esta trabajando en este ticket)" + +#: templates/helpdesk/dashboard.html:92 +msgid "You have no tickets assigned to you." +msgstr "Usted no tiene Tickets asignados" + +#: templates/helpdesk/dashboard.html:99 +msgid "(pick up a ticket if you start to work on it)" +msgstr "(asigna un ticket si estas trabajando en el)" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/ticket_desc_table.html:38 +msgid "Take" +msgstr "Tomar" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:262 +msgid "Delete" +msgstr "Borrar" + +#: templates/helpdesk/dashboard.html:114 +msgid "There are no unassigned tickets." +msgstr "No existen tickets sin asignar" + +#: templates/helpdesk/dashboard.html:123 +msgid "Closed & resolved Tickets you used to work on" +msgstr "Tickets cerrados y resueltos en los que usted trabajó" + +#: templates/helpdesk/delete_ticket.html:3 +#: templates/helpdesk/delete_ticket.html:6 +msgid "Delete Ticket" +msgstr "Borrar Ticket" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this ticket (%(ticket_title)s)? All" +" traces of the ticket, including followups, attachments, and updates will be" +" irreversibly removed." +msgstr "¿Está seguro que desea eliminar este Ticket (%(ticket_title)s)? Todos los rastros del Ticket, incluyendo comentarios, archivos adjuntos y actualizaciones serán eliminados de forma irreversible." + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "Editar Ticket" + +#: templates/helpdesk/edit_ticket.html:9 +msgid "Edit a Ticket" +msgstr "Editar un Ticket" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "Note" +msgstr "Nota" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "" +"Editing a ticket does not send an e-mail to the ticket owner or " +"submitter. No new details should be entered, this form should only be used " +"to fix incorrect details or clean up the submission." +msgstr "La edición de un ticket no envía un correo electrónico al propietario del ticket o remitente. Este formato no es para añadir nuevos datos, sólo se debe utilizar para arreglar datos incorrectos o limpiar el Ticket." + +#: templates/helpdesk/edit_ticket.html:33 +msgid "Save Changes" +msgstr "Salvar Cambios" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:6 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "Ignorar Dirección de E-mail" + +#: templates/helpdesk/email_ignore_add.html:8 +msgid "" +"To ignore an e-mail address and prevent any emails from that address " +"creating tickets automatically, enter the e-mail address below." +msgstr "Para ignorar un correo electrónico y prevenir que cree Tickets automaticamente escríbalo debajo." + +#: templates/helpdesk/email_ignore_add.html:10 +msgid "" +"You can either enter a whole e-mail address such as " +"email@domain.com or a portion of an e-mail address with a wildcard," +" such as *@domain.com or user@*." +msgstr "Puede especificar tanto una dirección de correo completa, por ejemplo email@domain.com o solo una parte de la dirección con un wildcard, como por ejemplo *@dominio.com o usuario@*." + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "Borrar dirección de E-Mail Ignorada" + +#: templates/helpdesk/email_ignore_del.html:6 +msgid "Un-Ignore E-Mail Address" +msgstr "No ignorar dirección de correo electrónico" + +#: templates/helpdesk/email_ignore_del.html:8 +#, python-format +msgid "" +"Are you sure you wish to stop removing this email address " +"(%(email_address)s) and allow their e-mails to automatically create" +" tickets in your system? You can re-add this e-mail address at any time." +msgstr "¿Está seguro que desea dejar de evitar esta dirección de correo (%(email_address)s) y permitir que este correo electrónico cree tickets en el sistema? Puede volver a añadir el correo electrónico en cualquier momento." + +#: templates/helpdesk/email_ignore_del.html:10 +msgid "Keep Ignoring It" +msgstr "Mantener bloqueado" + +#: templates/helpdesk/email_ignore_del.html:12 +msgid "Stop Ignoring It" +msgstr "Desbloquearlo" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "Direcciones de correo electrónico bloqueadas" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "\n

Correos electrónicos ignorados

\n\n

Los siguientes correos electrónicos esta siendo ignorados. Usted puede añadir un nuevo correo electrónico a la lista o eliminar cualquiera de los elementos debajo como requiera.

" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "Fecha en que se añadió" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "Mantener en el mailbox?" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:260 +msgid "All" +msgstr "Todos" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "Mantener" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "Nota: Si la opción 'Mantener' no está seleccionada, los e-mail enviados de esa dirección serán borrados de manera permanente." + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "Editar seguimiento" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "Editar Seguimiento" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "Reasignar ticket:" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "Título:" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "Comentario:" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:12 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "Categoría del knowledgebase: %(kbcat)s " + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "Usted está viendo todos los elementos de la categoría %(kbcat)s" + +#: templates/helpdesk/kb_category.html:13 +msgid "Article" +msgstr "Artículo" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:21 +#: templates/helpdesk/navigation.html:71 +msgid "Knowledgebase" +msgstr "Base de conocimientos" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "Hemos listado una serie de artículos de la base de conocimiento para usted en las siguientes categorías. Por favor, revise para ver si alguno de estos artículos se refieren a su problema antes de abrir un Ticket de soporte." + +#: templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Knowledgebase Categories" +msgstr "Categorías de la base de conocimientos" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "Base de Conocimientos: %(item)s" + +#: templates/helpdesk/kb_item.html:16 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "Ver otros %(category_title)s articulos, o continuar otros artículos de la base de conocimiento." + +#: templates/helpdesk/kb_item.html:18 +msgid "Feedback" +msgstr "Retroalimentación" + +#: templates/helpdesk/kb_item.html:20 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "Damos a nuestros usuarios la oportunidad de votar sobre los artículos que ellos creen que les han ayudado, para que podamos servir mejor a los futuros clientes. Agradeceremos sus comentarios sobre este artículo. ¿Te ha resultado útil?" + +#: templates/helpdesk/kb_item.html:23 +msgid "This article was useful to me" +msgstr "Este artículo fue útil para mí" + +#: templates/helpdesk/kb_item.html:24 +msgid "This article was not useful to me" +msgstr "Este artículo no fue útil para mí" + +#: templates/helpdesk/kb_item.html:27 +msgid "The results of voting by other readers of this article are below:" +msgstr "Los resultados de la votación por otros lectores de este artículo se muestran a continuación:" + +#: templates/helpdesk/kb_item.html:30 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "Recomendaciones: %(recommendations)s" + +#: templates/helpdesk/kb_item.html:31 +#, python-format +msgid "Votes: %(votes)s" +msgstr "Votos: %(votes)s" + +#: templates/helpdesk/kb_item.html:32 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "Calificación: %(score)s " + +#: templates/helpdesk/navigation.html:16 templates/helpdesk/navigation.html:64 +msgid "Dashboard" +msgstr "Panel" + +#: templates/helpdesk/navigation.html:18 +msgid "New Ticket" +msgstr "Nuevo Ticket" + +#: templates/helpdesk/navigation.html:19 +msgid "Stats" +msgstr "Estadisticas" + +#: templates/helpdesk/navigation.html:24 +msgid "Saved Query" +msgstr "Consulta guardada" + +#: templates/helpdesk/navigation.html:39 +msgid "Change password" +msgstr "Cambiar contraseña" + +#: templates/helpdesk/navigation.html:50 +msgid "Search..." +msgstr "Buscar..." + +#: templates/helpdesk/navigation.html:50 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "Escriba una palabra, o un número de ticket para ir a él" + +#: templates/helpdesk/navigation.html:73 +msgid "Logout" +msgstr "Salir" + +#: templates/helpdesk/navigation.html:73 +msgid "Log In" +msgstr "Entrar" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:73 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "Ver un Ticket" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "Cambiar el lenguaje mostrado" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "Artículos de la Base de Conocimientos" + +#: templates/helpdesk/public_homepage.html:28 +msgid "All fields are required." +msgstr "Se requieren todos los campos." + +#: templates/helpdesk/public_homepage.html:66 +msgid "Please use button at upper right to login first." +msgstr "Por favor use el botón de la sección superior derecha para logearse primero." + +#: templates/helpdesk/public_homepage.html:82 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "Su dirección de correo electrénico" + +#: templates/helpdesk/public_homepage.html:86 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "Ver Ticket" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "No es posible abrir el Ticket" + +#: templates/helpdesk/public_spam.html:5 +msgid "Sorry, but there has been an error trying to submit your ticket." +msgstr "Lo sentimos, hubo un error enviando tu Ticket." + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"Our system has marked your submission as spam, so we are " +"unable to save it. If this is not spam, please press back and re-type your " +"message. Be careful to avoid sounding 'spammy', and if you have heaps of " +"links please try removing them if possible." +msgstr "Nuestro sistema ha catalogado su envío como spam, 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 enlaces en su mensaje trate de eliminarlas si es posible." + +#: templates/helpdesk/public_spam.html:7 +msgid "" +"We are sorry for any inconvenience, however this check is required to avoid " +"our helpdesk resources being overloaded by spammers." +msgstr "Lamentamos cualquier inconveniente, sin embargo, la confirmación es requerida para evitar que nuestros recursos sean sobrecargados por spammers." + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "Error:" + +#: templates/helpdesk/public_view_ticket.html:9 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "Fila: %(queue_name)s" + +#: templates/helpdesk/public_view_ticket.html:13 +#: templates/helpdesk/ticket_desc_table.html:32 +msgid "Submitted On" +msgstr "Enviado el día:" + +#: templates/helpdesk/public_view_ticket.html:35 +msgid "Tags" +msgstr "Etiquetas" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept" +msgstr "Aceptar" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept and Close" +msgstr "Aceptar y cerrar" + +#: templates/helpdesk/public_view_ticket.html:57 +#: templates/helpdesk/ticket.html:66 +msgid "Follow-Ups" +msgstr "Seguimientos" + +#: templates/helpdesk/public_view_ticket.html:65 +#: templates/helpdesk/ticket.html:100 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "El campo(s) %(field)s cambió de %(old_value)s a %(new_value)s." + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "Reportes & Estadísticas" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "Usted no ha creado ningún ticket todavía, por lo que no puede ejecutar ningún reporte." + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "Reportes por Usuario" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "por Prioridad" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "por Fila" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "por Status" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "por Mes" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "Reportes por Fila" + +#: templates/helpdesk/report_index.html:27 views/staff.py:1049 +msgid "Days until ticket closed by Month" +msgstr "Días hasta que el Ticket se cierre por mes" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "Usted puede ejecutar esta consulta con filtros usando alguna de sus consultas guardadas." + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "Seleccione una búsqueda:" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "Filtrar reporte" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "¿Desea filtrar este reporte para mostrar para mostrar solo un subconjunto de datos? Vaya a Lista de Tickets, realice el filtro y guarde la consulta." + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "Las siguientes fuentes de RSS están disponibles para usted para ser utilizadas con su herramienta de RSS preferida. A excepción de la fuente de 'Última actividad', todas las fuentes RSS solo proveen información de casos Abiertos y Reabiertos. Esto le asegura que su lector RSS no se llena con información de tareas cerradas o históricas." + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "Resumen de sus Tickets abiertos - Útil para saber si hay nuevos Tickets abiertos para usted" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "Última actividad" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "Un resumen de todas las actividades del Helpdesk - incluyendo comentarios, emails, archivos adjuntos y más." + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "Todos los tickets sin asignar - útil para conocer los tickets nuevos enviados por medio de la página web o via correo electrónico" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "Estas fuentes RSS le permiten ver un resumen ya sea de sus propios tickets o de todos los tickets de las colas de su helpdesk. Por ejemplo, si eres el supervisor del personal que utiliza una cola en particular, estas fuentes RSS pueden ser utilizadas para ver los nuevos tickets que arriban a esa cola." + +#: templates/helpdesk/rss_list.html:23 +msgid "Per-Queue Feeds" +msgstr "Fuentes RSS por cola" + +#: templates/helpdesk/rss_list.html:24 +msgid "All Open Tickets" +msgstr "Todos los Tickets Abiertos" + +#: templates/helpdesk/rss_list.html:30 +msgid "Open Tickets" +msgstr "Tickets Abiertos" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "Cambiar la Configuración del Sistema" + +#: templates/helpdesk/system_settings.html:8 +msgid "The following items can be maintained by you or other superusers:" +msgstr "Los siguientes elemtenos pueden ser administrados por usted o por otros super usuarios:" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "Lista de direcciones de correo a Ignorar" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "Mantenimiento a colas" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "Administrar respuestas por defecto" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "Administrar las categorías de la base de conocimiento" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "Administrar los elemento de la base de conocimiento" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "Administrar las plantillas de correo electrónico" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "Mantenimiento a usuarios" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "Ver detalles del ticket" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "Adjuntar otro archivo" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:200 +msgid "Add Another File" +msgstr "Agregar otro archivo" + +#: templates/helpdesk/ticket.html:73 templates/helpdesk/ticket.html.py:86 +msgid "Private" +msgstr "Privado" + +#: templates/helpdesk/ticket.html:119 +msgid "Respond to this ticket" +msgstr "Responder a este ticket" + +#: templates/helpdesk/ticket.html:126 +msgid "Use a Pre-set Reply" +msgstr "Use una plantilla de respuesta" + +#: templates/helpdesk/ticket.html:126 templates/helpdesk/ticket.html.py:166 +msgid "(Optional)" +msgstr "(Opcional)" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "Seleccionando una respuesta por defecto, se sobre escriben sus comentarios a continuación. Puede modificar la respuesta por defecto a su gusto antes de guardar esta actualización." + +#: templates/helpdesk/ticket.html:131 +msgid "Comment / Resolution" +msgstr "Comentario / Resolución" + +#: templates/helpdesk/ticket.html:133 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "Puede insertar Tickets y detalles de cola en su mensaje. Para obtener más información, consulte la página de ayuda ." + +#: templates/helpdesk/ticket.html:136 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "Este Ticket no puede ser resuelto o cerrado hasta que sus dependencias sean resueltas." + +#: templates/helpdesk/ticket.html:166 +msgid "Is this update public?" +msgstr "¿Esta actualización es pública?" + +#: templates/helpdesk/ticket.html:168 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "Si esto es público, se enviará un correo electrónico al remitente con su comentario o resolución." + +#: templates/helpdesk/ticket.html:172 +msgid "Change Further Details »" +msgstr "Cambie más detalles »" + +#: templates/helpdesk/ticket.html:181 templates/helpdesk/ticket_list.html:68 +#: templates/helpdesk/ticket_list.html:97 +#: templates/helpdesk/ticket_list.html:225 +msgid "Owner" +msgstr "Dueño" + +#: templates/helpdesk/ticket.html:182 +msgid "Unassign" +msgstr "No asignado" + +#: templates/helpdesk/ticket.html:193 +msgid "Attach File(s) »" +msgstr "Adjuntar archivo(s) »" + +#: templates/helpdesk/ticket.html:199 +msgid "Attach a File" +msgstr "Adjuntar archivo" + +#: templates/helpdesk/ticket.html:207 +msgid "Update This Ticket" +msgstr "Actualizar este Ticket" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "Agregar CC a TIcket" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "\n

Añadir CC al Ticket

\n\n

Para enviar un e-mail automático a un usuario o dirección de correo cuando este ticket sea actualizado, seleccione el usuario o ingrese una dirección de correo abajo.

" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "Guardar CC de Ticket" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "Borrar CC de Ticket" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "\n

Borrar CC del Ticket

\n\n

¿Está seguro de que desea eliminar esta dirección de correo (%(email_address)s) de la lista CC para este ticket? Esta dirección dejará de recibir actualizaciones.

\n" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "No eliminar" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "Si, Eliminar" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "Ajustes de CC del Ticket" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "\n

Configuración de CC del Ticket

\n\n

Las siguientes personas recibirán un e-mail cada que el ticket %(ticket_title)s se actualice. Algunas personas también pueden ver o editar el ticket a través de las vistas públicas de tickets.

\n\n

Usted puede añadir una nueva dirección de correo electrónico a la lista o borrar uno de los elementos abajo, como lo requiera.

" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "Lista de CC del Ticket" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "¿Ver?" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "¿Actualizar?" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "Regresar a %(ticket_title)s" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "Agregar dependencia de ticket" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "\n

Agregar dependencia de Ticket

\n\n

Al añadir una dependencia no se podrá resolver este Ticket hasta que la dependencia haya sido resuelta o esté cerrada.

" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "Guardar dependencia del Ticket" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "Eliminar dependencia del Ticket" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "\n

Eliminar dependencia de Ticket

\n\n

¿Está seguro que desea eliminar la dependencia en este Ticket?

\n" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Unhold" +msgstr "Reanudar" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Hold" +msgstr "Suspender" + +#: templates/helpdesk/ticket_desc_table.html:9 +#, python-format +msgid "Queue: %(queue)s" +msgstr "Departamento: %(queue)s" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Assigned To" +msgstr "Asignado A " + +#: templates/helpdesk/ticket_desc_table.html:43 +msgid "Ignore" +msgstr "Ignorar" + +#: templates/helpdesk/ticket_desc_table.html:52 +msgid "Copies To" +msgstr "Copia a" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Manage" +msgstr "Administrar" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "Haga clic aquí para añadir / remover personas que reciben un e-mail cada vez que este Ticket es actualizado." + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Subscribe" +msgstr "Suscribirse" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to subscribe yourself to this ticket, if you want to receive an " +"e-mail whenever this ticket is updated." +msgstr "Haga clic aquí si quiere recibir un correo electrónico cada vez que este Ticket sea actualizado" + +#: templates/helpdesk/ticket_desc_table.html:57 +msgid "Dependencies" +msgstr "Dependencias" + +#: templates/helpdesk/ticket_desc_table.html:59 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "Este ticket no se puede resolver hasta que el/los siguiente(s) tickets se resuelvan" + +#: templates/helpdesk/ticket_desc_table.html:60 +msgid "Remove Dependency" +msgstr "Remover Dependencia" + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "This ticket has no dependencies." +msgstr "Este Ticket no tiene dependencias" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "Add Dependency" +msgstr "Añadir Dependencia" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "Hacer clic en 'Añadir dependencia' hace que este Ticket dependa de otro. Un Ticket no puede ser cerrado hasta que todas sus dependencias estén cerradas." + +#: templates/helpdesk/ticket_list.html:59 +msgid "Change Query" +msgstr "Cambiar consulta" + +#: templates/helpdesk/ticket_list.html:67 +#: templates/helpdesk/ticket_list.html:79 +msgid "Sorting" +msgstr "Ordenar" + +#: templates/helpdesk/ticket_list.html:71 +#: templates/helpdesk/ticket_list.html:139 +msgid "Keywords" +msgstr "Palabras Clave" + +#: templates/helpdesk/ticket_list.html:72 +msgid "Date Range" +msgstr "Rango de fechas" + +#: templates/helpdesk/ticket_list.html:100 +msgid "Reverse" +msgstr "Inverso" + +#: templates/helpdesk/ticket_list.html:102 +msgid "Ordering applied to tickets" +msgstr "Orden aplicado a los Tickets" + +#: templates/helpdesk/ticket_list.html:107 +msgid "Owner(s)" +msgstr "Propietario(s)" + +#: templates/helpdesk/ticket_list.html:111 +msgid "(ME)" +msgstr "(Yo)" + +#: templates/helpdesk/ticket_list.html:115 +msgid "Ctrl-Click to select multiple options" +msgstr "Ctrl-Click para seleccionar múltiples opciones" + +#: templates/helpdesk/ticket_list.html:120 +msgid "Queue(s)" +msgstr "Fila(s)" + +#: templates/helpdesk/ticket_list.html:121 +#: templates/helpdesk/ticket_list.html:127 +msgid "Ctrl-click to select multiple options" +msgstr "Ctrl-Click para seleccionar múltiples opciones" + +#: templates/helpdesk/ticket_list.html:126 +msgid "Status(es)" +msgstr "Estado(s)" + +#: templates/helpdesk/ticket_list.html:132 +msgid "Date (From)" +msgstr "Fecha (de)" + +#: templates/helpdesk/ticket_list.html:133 +msgid "Date (To)" +msgstr "Fecha (hasta)" + +#: templates/helpdesk/ticket_list.html:134 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "Usar el formato de fechas YYYY-MM-DD, por ejemplo: 2011-05-29" + +#: templates/helpdesk/ticket_list.html:140 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "Las palabras claves no son sensibles a mayúsculas, y serán buscadas en el título, el cuerpo o los campos del remitente." + +#: templates/helpdesk/ticket_list.html:144 +msgid "Apply Filter" +msgstr "Aplicar Filtro" + +#: templates/helpdesk/ticket_list.html:146 +#, python-format +msgid "You are currently viewing saved query \"%(query_name)s\"." +msgstr "Viendo la consulta \"%(query_name)s\"." + +#: templates/helpdesk/ticket_list.html:149 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "Ejecutar un reporte en esta consultar para ver estadísticas y gráficas de los datos listados abajo." + +#: templates/helpdesk/ticket_list.html:162 +#: templates/helpdesk/ticket_list.html:181 +msgid "Save Query" +msgstr "Guardar consulta" + +#: templates/helpdesk/ticket_list.html:172 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "Este nombre aparece en la la lista desplegable de consultas guardadas. Si usted comparte esta consulta, otros usuarios verán este nombre, por tanto escoja uno claro y descriptivo." + +#: templates/helpdesk/ticket_list.html:174 +msgid "Shared?" +msgstr "¿Compartido?" + +#: templates/helpdesk/ticket_list.html:175 +msgid "Yes, share this query with other users." +msgstr "Si, compartir esta búsqueda con otros usuarios" + +#: templates/helpdesk/ticket_list.html:176 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "Si compartes esta búsqueda, esta será visible para todos los usuarios." + +#: templates/helpdesk/ticket_list.html:195 +msgid "Use Saved Query" +msgstr "Usar consulta guardada" + +#: templates/helpdesk/ticket_list.html:202 +msgid "Query" +msgstr "Consulta" + +#: templates/helpdesk/ticket_list.html:207 +msgid "Run Query" +msgstr "Correr consulta" + +#: templates/helpdesk/ticket_list.html:240 +msgid "No Tickets Match Your Selection" +msgstr "No coinciden tickets de acuerdo a su consulta" + +#: templates/helpdesk/ticket_list.html:247 +msgid "Previous" +msgstr "Anterior" + +#: templates/helpdesk/ticket_list.html:251 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "Página%(ticket_num)s de %(num_pages)s." + +#: templates/helpdesk/ticket_list.html:255 +msgid "Next" +msgstr "Siguiente" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Select:" +msgstr "Seleccionar:" + +#: templates/helpdesk/ticket_list.html:260 +msgid "None" +msgstr "Ninguno" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Inverse" +msgstr "Inverso" + +#: templates/helpdesk/ticket_list.html:262 +msgid "With Selected Tickets:" +msgstr "Con los tickets seleccionados:" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Take (Assign to me)" +msgstr "Tomar (Asignarmelo)" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close" +msgstr "Cerrar" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Don't Send E-Mail)" +msgstr "Cerrar (Sin enviar E-mail)" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Send E-Mail)" +msgstr "Cerrar (Enviar E-mail)" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Assign To" +msgstr "Asignar A" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Nobody (Unassign)" +msgstr "Nadie (Dejar de asignar)" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "Cambiar ajustes de usuario" + +#: templates/helpdesk/user_settings.html:8 +msgid "" +"Use the following options to change the way your helpdesk system works for " +"you. These settings do not impact any other user." +msgstr "Use las siguientes opciones para cambiar la manera en que el sistema helpdesk trabaja para usted. Estas configuraciones solo lo afectarán a usted." + +#: templates/helpdesk/user_settings.html:14 +msgid "Save Options" +msgstr "Salvar opciones" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "Fin de sesión" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "\n

Sesión cerrada

\n\n

Gracias por estar aquí. Esperamos que haya ayudado a resolver algunos tickets y haya hecho del mundo, un lugar mejor

\n\n" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "Ingresar a Helpdesk" + +#: templates/helpdesk/registration/login.html:14 +msgid "To log in simply enter your username and password below." +msgstr "Para ingresar escriba su nombre y contraseña." + +#: templates/helpdesk/registration/login.html:17 +msgid "Your username and password didn't match. Please try again." +msgstr "Su nombre de usuario y contraseña no coinciden, por favor intente otra vez." + +#: templates/helpdesk/registration/login.html:20 +msgid "Login" +msgstr "Entrar" + +#: views/feeds.py:39 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "Helpdesk: Abrir Tickets en cola %(queue)s for %(username)s" + +#: views/feeds.py:44 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "Helpdesk: Abrir Tickets para %(username)s" + +#: views/feeds.py:50 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "Abrir y reabrir Tickets en %(queue)s para %(username)s" + +#: views/feeds.py:55 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "Abrir y reabrir Tickets para %(username)s" + +#: views/feeds.py:102 +msgid "Helpdesk: Unassigned Tickets" +msgstr "Helpdesk: Tickets no asignados" + +#: views/feeds.py:103 +msgid "Unassigned Open and Reopened tickets" +msgstr "Tickets no asignados abiertos y reabiertos" + +#: views/feeds.py:128 +msgid "Helpdesk: Recent Followups" +msgstr "Helpdesk: Actualizaciones recientes" + +#: views/feeds.py:129 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "Actualizaciones recientes, como respuestas por e-mail, comentarios, adjuntos y resoluciones" + +#: views/feeds.py:144 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "Helpdesk: Abrir Tickets en cola %(queue)s" + +#: views/feeds.py:149 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "Abrir y reabrir tickets en cola %(queue)s" + +#: views/public.py:89 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "ID de ticket o dirección de e-mail inválido. Por favor intente nuevamente." + +#: views/public.py:107 +msgid "Submitter accepted resolution and closed ticket" +msgstr "El solicitante acepto la resolución y cerró el ticket." + +#: views/staff.py:235 +msgid "Accepted resolution and closed ticket" +msgstr "Solución aceptada y ticket cerrado." + +#: views/staff.py:369 +#, python-format +msgid "Assigned to %(username)s" +msgstr "Asignado a %(username)s" + +#: views/staff.py:392 +msgid "Updated" +msgstr "Actualizado" + +#: views/staff.py:577 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "Asignado a %(username)s en el paquete de actualizaciones" + +#: views/staff.py:582 +msgid "Unassigned in bulk update" +msgstr "Sin asignar en el paquete de actualizaciones" + +#: views/staff.py:587 views/staff.py:592 +msgid "Closed in bulk update" +msgstr "Cerrado en el paquete de actualizaciones" + +#: views/staff.py:806 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "

Nota: Su parámetro de busqueda es sensitivo producto de su base de datos. Esto significa que las búsquedas no serán precisas. Cambiando a una base de datos diferente, se lograrán mejores búsquedas. Para más información, revise Django Documentation on string matching in SQLite." + +#: views/staff.py:910 +msgid "Ticket taken off hold" +msgstr "Ticket liberado" + +#: views/staff.py:913 +msgid "Ticket placed on hold" +msgstr "Ticket puesto en espera" + +#: views/staff.py:1007 +msgid "User by Priority" +msgstr "Usuario por Prioridad" + +#: views/staff.py:1013 +msgid "User by Queue" +msgstr "Usuario por Cola" + +#: views/staff.py:1019 +msgid "User by Status" +msgstr "Usuario por Estatus" + +#: views/staff.py:1025 +msgid "User by Month" +msgstr "Usuario por Mes" + +#: views/staff.py:1031 +msgid "Queue by Priority" +msgstr "Cola por Prioridad" + +#: views/staff.py:1037 +msgid "Queue by Status" +msgstr "Cola por Estatus" + +#: views/staff.py:1043 +msgid "Queue by Month" +msgstr "Cola por Mes" diff --git a/build/lib/helpdesk/locale/fa_IR/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/fa_IR/LC_MESSAGES/django.mo new file mode 100644 index 00000000..fa3c91fb Binary files /dev/null and b/build/lib/helpdesk/locale/fa_IR/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/fa_IR/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/fa_IR/LC_MESSAGES/django.po new file mode 100644 index 00000000..a123fe17 --- /dev/null +++ b/build/lib/helpdesk/locale/fa_IR/LC_MESSAGES/django.po @@ -0,0 +1,2394 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Translators: +# Morteza Nekoei , 2016 +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2014-07-26 14:14+0200\n" +"PO-Revision-Date: 2016-10-10 22:42+0000\n" +"Last-Translator: Morteza Nekoei \n" +"Language-Team: Persian (Iran) (http://www.transifex.com/rossp/django-helpdesk/language/fa_IR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fa_IR\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: forms.py:128 forms.py:328 models.py:190 models.py:267 +#: templates/helpdesk/dashboard.html:15 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/dashboard.html:124 templates/helpdesk/rss_list.html:24 +#: templates/helpdesk/ticket_list.html:69 +#: templates/helpdesk/ticket_list.html:88 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:1032 +#: views/staff.py:1038 views/staff.py:1044 views/staff.py:1050 +msgid "Queue" +msgstr "صف" + +#: forms.py:137 +msgid "Summary of the problem" +msgstr "خلاصه مشکل" + +#: forms.py:142 +msgid "Submitter E-Mail Address" +msgstr "آدرس ایمیل ثبت کننده" + +#: forms.py:144 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "این آدرس ایمیل یک نسخه کپی از کلیه‌ی به‌روزرسانی‌های عمومی این تیکت را دریافت خواهد کرد." + +#: forms.py:150 +msgid "Description of Issue" +msgstr "توضیح این مسئله" + +#: forms.py:157 +msgid "Case owner" +msgstr "مالک" + +#: forms.py:158 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "اگر یک مالک غیر از خودتان را انتخاب نمایید، جزئیات این تیکت به صورت بلادرنگ برای آن‌ها ارسال خواهد شد" + +#: forms.py:166 models.py:327 management/commands/escalate_tickets.py:154 +#: templates/helpdesk/public_view_ticket.html:23 +#: templates/helpdesk/ticket.html:184 +#: templates/helpdesk/ticket_desc_table.html:47 +#: templates/helpdesk/ticket_list.html:94 views/staff.py:429 +msgid "Priority" +msgstr "اولویت" + +#: forms.py:167 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "لطفا با دقت یک اولویت را انتخاب نمایید. در صورت عدم اطمینان، آن‌ را رها نمایید. (اولویت پیش‌فرض: ۳)" + +#: forms.py:174 forms.py:365 models.py:335 templates/helpdesk/ticket.html:186 +#: views/staff.py:439 +msgid "Due on" +msgstr "در مدت زمان" + +#: forms.py:186 forms.py:370 +msgid "Attach File" +msgstr "ضمیمه کردن فایل" + +#: forms.py:187 forms.py:371 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "شما می‌توانید یک فایل مانند مستند یا عکس به این تیکت ضمیمه نمایید." + +#: forms.py:240 +msgid "Ticket Opened" +msgstr "تیکت باز است" + +#: forms.py:247 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "" + +#: forms.py:337 +msgid "Summary of your query" +msgstr "خلاصه پرس و جوی شما" + +#: forms.py:342 +msgid "Your E-Mail Address" +msgstr "آدرس ایمیل شما" + +#: forms.py:343 +msgid "We will e-mail you when your ticket is updated." +msgstr "زمانی‌ که تیکت به‌روزرسانی شود، برای شما ایمیلی ارسال خواهد شد." + +#: forms.py:348 +msgid "Description of your issue" +msgstr "توضیح مشکل شما" + +#: forms.py:350 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "لطفا تا جای امکان توضیحات لازم را وارد نمایید، توضیحاتی شامل هر نوع جزئیاتی که ما برای یافتن پرس و جوی شما لازم داریم." + +#: forms.py:358 +msgid "Urgency" +msgstr "اورژانسی" + +#: forms.py:359 +msgid "Please select a priority carefully." +msgstr "لطفا با دقت یک اولویت را انتخاب نمایید." + +#: forms.py:419 +msgid "Ticket Opened Via Web" +msgstr "تیکت از طریق وب باز شده است." + +#: forms.py:486 +msgid "Show Ticket List on Login?" +msgstr "لیست تیکت‌ها در زمان ورود نمایش داده شود؟" + +#: forms.py:487 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "لیست تیکت‌ها در زمان ورود نمایش داده شود؟ در غیر اینصورت در داشبورد نمایش داده خواهند شد." + +#: forms.py:492 +msgid "E-mail me on ticket change?" +msgstr "تغییرات تیکت به من ایمیل شود؟" + +#: forms.py:493 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "اگر شما مالک تیکت هستید و تیکت از طریق وب توسط افراد دیگر تغییر یافت، آیا مایل هستید یک ایمیل اطلاع‌ رسانی دریافت نمایید؟" + +#: forms.py:498 +msgid "E-mail me when assigned a ticket?" +msgstr "زمانی‌که یک تیکت تخصیص یافت به من ایمیل ارسال شود؟" + +#: forms.py:499 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "اگر شما یک تیکت را از طریق وب تخصیص دادید، آیا مایل هستید یک ایمیل اطلاع‌رسانی دریافت نمایید؟" + +#: forms.py:504 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "زمانی‌که یک تیکت از طریق API تغییر یافت، برای من ایمیل ارسال شود؟" + +#: forms.py:505 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:510 +msgid "Number of tickets to show per page" +msgstr "تعداد تیکت‌های قابل نمایش در هر صفحه" + +#: forms.py:511 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "مایل هستید چه تعداد تیکت در صفحه‌ی لیست تیکت برای شما نمایش داده شود؟" + +#: forms.py:518 +msgid "Use my e-mail address when submitting tickets?" +msgstr "ایمیل آدرس من در زمان ثبت تیکت‌ها استفاده شود." + +#: forms.py:519 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "زمانی که یک تیکت ثبت نمودید، آیا مایل هستید به صورت خودکار آدرس ایمیل خود را به عنوان آدرس ایمیل ثبت کننده استفاده نمایید؟ شما میتوانید در صورت تمایل یک آدرس ایمیل دیگر زمان ثبت تیکت استفاده نمایید." + +#: models.py:35 models.py:261 models.py:503 models.py:817 models.py:853 +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket.html:178 templates/helpdesk/ticket_list.html:85 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:419 +msgid "Title" +msgstr "عنوان" + +#: models.py:40 models.py:822 models.py:1206 +msgid "Slug" +msgstr "" + +#: models.py:41 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "" + +#: models.py:46 models.py:1054 models.py:1129 models.py:1203 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "آدرس ایمیل" + +#: models.py:49 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "کلیه‌ی ایمیل‌های ارسالی برای این صف، از این ایمیل استفاده خواهند کرد. اگر می‌خواهید از IMAP یا POP3 استفاده کنید، آدرس ایمیل شما باید مرتبط با آن ایمیل سرور باشد." + +#: models.py:55 models.py:794 +msgid "Locale" +msgstr "موقعیت/محل" + +#: models.py:59 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "موقعیت این صف. کلیه‌ی پاسخ‌ها و تعاملات در این صف، با این زبان استفاده خواهد شد." + +#: models.py:63 +msgid "Allow Public Submission?" +msgstr "اجازه دادن ثبت‌های عمومی؟" + +#: models.py:66 +msgid "Should this queue be listed on the public submission form?" +msgstr "آیا این صف در فرم ثبت‌های عمومی لیست شود؟" + +#: models.py:71 +msgid "Allow E-Mail Submission?" +msgstr "اجازه‌ دادن ثبت ایمیل‌؟" + +#: models.py:74 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "آیا می‌خواهید ایمیل زیر را برای تیکت‌های جدید انتخاب نمایید؟" + +#: models.py:79 +msgid "Escalation Days" +msgstr "" + +#: models.py:82 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "برای تیکت‌هایی که نگهداری نشده‌اند، آیا می‌خواهید اولویتی برای آن‌ها در نظر بگیرید؟ عدد ۰ را برای عدم استفاده از اولویت بکار برید." + +#: models.py:87 +msgid "New Ticket CC Address" +msgstr "یک آدرس کپی (CC) برای تیکت جدید" + +#: models.py:91 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "اگر یک آدرس ایمیل در این قسمت وارد شود، این آدرس کلیه‌ی تیکت‌های ایجاد شده برای این صف را دریافت خواهد نمود. جهت استفاده از بیش از یک آدرس ایمیل از کاما استفاده نمایید." + +#: models.py:97 +msgid "Updated Ticket CC Address" +msgstr "آدرس تیکت (CC) به‌روزرسانی شده" + +#: models.py:101 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "" + +#: models.py:108 +msgid "E-Mail Box Type" +msgstr "" + +#: models.py:110 +msgid "POP 3" +msgstr "" + +#: models.py:110 +msgid "IMAP" +msgstr "" + +#: models.py:113 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "" + +#: models.py:118 +msgid "E-Mail Hostname" +msgstr "" + +#: models.py:122 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "" + +#: models.py:127 +msgid "E-Mail Port" +msgstr "" + +#: models.py:130 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "" + +#: models.py:136 +msgid "Use SSL for E-Mail?" +msgstr "" + +#: models.py:139 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "" + +#: models.py:144 +msgid "E-Mail Username" +msgstr "" + +#: models.py:148 +msgid "Username for accessing this mailbox." +msgstr "" + +#: models.py:152 +msgid "E-Mail Password" +msgstr "" + +#: models.py:156 +msgid "Password for the above username" +msgstr "" + +#: models.py:160 +msgid "IMAP Folder" +msgstr "" + +#: models.py:164 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "" + +#: models.py:171 +msgid "E-Mail Check Interval" +msgstr "" + +#: models.py:172 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "" + +#: models.py:191 templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "" + +#: models.py:245 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:138 +msgid "Open" +msgstr "" + +#: models.py:246 templates/helpdesk/ticket.html:144 +#: templates/helpdesk/ticket.html.py:150 templates/helpdesk/ticket.html:155 +#: templates/helpdesk/ticket.html.py:159 +msgid "Reopened" +msgstr "" + +#: models.py:247 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:139 templates/helpdesk/ticket.html.py:145 +#: templates/helpdesk/ticket.html:151 +msgid "Resolved" +msgstr "" + +#: models.py:248 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:140 templates/helpdesk/ticket.html.py:146 +#: templates/helpdesk/ticket.html:152 templates/helpdesk/ticket.html.py:156 +msgid "Closed" +msgstr "" + +#: models.py:249 templates/helpdesk/ticket.html:141 +#: templates/helpdesk/ticket.html.py:147 templates/helpdesk/ticket.html:160 +msgid "Duplicate" +msgstr "" + +#: models.py:253 +msgid "1. Critical" +msgstr "" + +#: models.py:254 +msgid "2. High" +msgstr "" + +#: models.py:255 +msgid "3. Normal" +msgstr "" + +#: models.py:256 +msgid "4. Low" +msgstr "" + +#: models.py:257 +msgid "5. Very Low" +msgstr "" + +#: models.py:271 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/ticket_list.html:82 +#: templates/helpdesk/ticket_list.html:225 +msgid "Created" +msgstr "" + +#: models.py:273 +msgid "Date this ticket was first created" +msgstr "" + +#: models.py:277 +msgid "Modified" +msgstr "" + +#: models.py:279 +msgid "Date this ticket was most recently changed." +msgstr "" + +#: models.py:283 templates/helpdesk/public_view_ticket.html:18 +#: templates/helpdesk/ticket_desc_table.html:42 +msgid "Submitter E-Mail" +msgstr "" + +#: models.py:286 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "" + +#: models.py:295 +msgid "Assigned to" +msgstr "" + +#: models.py:299 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:70 +#: templates/helpdesk/ticket_list.html:91 +#: templates/helpdesk/ticket_list.html:225 +msgid "Status" +msgstr "" + +#: models.py:305 +msgid "On Hold" +msgstr "" + +#: models.py:308 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "" + +#: models.py:313 models.py:826 templates/helpdesk/public_view_ticket.html:41 +#: templates/helpdesk/ticket_desc_table.html:19 +msgid "Description" +msgstr "" + +#: models.py:316 +msgid "The content of the customers query." +msgstr "" + +#: models.py:320 templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Resolution" +msgstr "" + +#: models.py:323 +msgid "The resolution provided to the customer by our staff." +msgstr "" + +#: models.py:331 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "" + +#: models.py:344 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "" + +#: models.py:353 templates/helpdesk/ticket_desc_table.html:38 +#: views/feeds.py:95 views/feeds.py:121 views/feeds.py:173 views/staff.py:376 +msgid "Unassigned" +msgstr "" + +#: models.py:392 +msgid " - On Hold" +msgstr "" + +#: models.py:394 +msgid " - Open dependencies" +msgstr "" + +#: models.py:448 models.py:494 models.py:1117 models.py:1280 models.py:1309 +#: templates/helpdesk/public_homepage.html:78 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "" + +#: models.py:449 templates/helpdesk/navigation.html:17 +#: templates/helpdesk/ticket_list.html:2 +#: templates/helpdesk/ticket_list.html:224 +msgid "Tickets" +msgstr "" + +#: models.py:498 models.py:738 models.py:1047 models.py:1200 +msgid "Date" +msgstr "" + +#: models.py:510 views/staff.py:390 +msgid "Comment" +msgstr "" + +#: models.py:516 +msgid "Public" +msgstr "" + +#: models.py:519 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "" + +#: models.py:527 models.py:922 models.py:1125 views/staff.py:1008 +#: views/staff.py:1014 views/staff.py:1020 views/staff.py:1026 +msgid "User" +msgstr "" + +#: models.py:531 templates/helpdesk/ticket.html:135 +msgid "New Status" +msgstr "" + +#: models.py:535 +msgid "If the status was changed, what was it changed to?" +msgstr "" + +#: models.py:542 models.py:566 models.py:628 +msgid "Follow-up" +msgstr "" + +#: models.py:543 +msgid "Follow-ups" +msgstr "" + +#: models.py:570 models.py:1285 +msgid "Field" +msgstr "" + +#: models.py:575 +msgid "Old Value" +msgstr "" + +#: models.py:581 +msgid "New Value" +msgstr "" + +#: models.py:589 +msgid "removed" +msgstr "" + +#: models.py:591 +#, python-format +msgid "set to %s" +msgstr "" + +#: models.py:593 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "" + +#: models.py:600 +msgid "Ticket change" +msgstr "" + +#: models.py:601 +msgid "Ticket changes" +msgstr "" + +#: models.py:632 +msgid "File" +msgstr "" + +#: models.py:637 +msgid "Filename" +msgstr "" + +#: models.py:642 +msgid "MIME Type" +msgstr "" + +#: models.py:647 +msgid "Size" +msgstr "" + +#: models.py:648 +msgid "Size of this file in bytes" +msgstr "" + +#: models.py:665 +msgid "Attachment" +msgstr "" + +#: models.py:666 +msgid "Attachments" +msgstr "" + +#: models.py:685 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "" + +#: models.py:690 models.py:733 models.py:1042 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "" + +#: models.py:692 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "" + +#: models.py:697 +msgid "Body" +msgstr "" + +#: models.py:698 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "" + +#: models.py:705 +msgid "Pre-set reply" +msgstr "" + +#: models.py:706 +msgid "Pre-set replies" +msgstr "" + +#: models.py:727 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "" + +#: models.py:739 +msgid "Date on which escalation should not happen" +msgstr "" + +#: models.py:746 +msgid "Escalation exclusion" +msgstr "" + +#: models.py:747 +msgid "Escalation exclusions" +msgstr "" + +#: models.py:760 +msgid "Template Name" +msgstr "" + +#: models.py:765 +msgid "Subject" +msgstr "" + +#: models.py:767 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "" + +#: models.py:773 +msgid "Heading" +msgstr "" + +#: models.py:775 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "" + +#: models.py:781 +msgid "Plain Text" +msgstr "" + +#: models.py:782 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "" + +#: models.py:788 +msgid "HTML" +msgstr "" + +#: models.py:789 +msgid "The same context is available here as in plain_text, above." +msgstr "" + +#: models.py:798 +msgid "Locale of this template." +msgstr "" + +#: models.py:806 +msgid "e-mail template" +msgstr "" + +#: models.py:807 +msgid "e-mail templates" +msgstr "" + +#: models.py:834 +msgid "Knowledge base category" +msgstr "" + +#: models.py:835 +msgid "Knowledge base categories" +msgstr "" + +#: models.py:849 templates/helpdesk/kb_index.html:11 +#: templates/helpdesk/public_homepage.html:11 +msgid "Category" +msgstr "" + +#: models.py:858 +msgid "Question" +msgstr "" + +#: models.py:862 +msgid "Answer" +msgstr "" + +#: models.py:866 +msgid "Votes" +msgstr "" + +#: models.py:867 +msgid "Total number of votes cast for this item" +msgstr "" + +#: models.py:872 +msgid "Positive Votes" +msgstr "" + +#: models.py:873 +msgid "Number of votes for this item which were POSITIVE." +msgstr "" + +#: models.py:878 +msgid "Last Updated" +msgstr "" + +#: models.py:879 +msgid "The date on which this question was most recently changed." +msgstr "" + +#: models.py:893 +msgid "Unrated" +msgstr "" + +#: models.py:901 +msgid "Knowledge base item" +msgstr "" + +#: models.py:902 +msgid "Knowledge base items" +msgstr "" + +#: models.py:926 templates/helpdesk/ticket_list.html:170 +msgid "Query Name" +msgstr "" + +#: models.py:928 +msgid "User-provided name for this query" +msgstr "" + +#: models.py:932 +msgid "Shared With Other Users?" +msgstr "" + +#: models.py:935 +msgid "Should other users see this query?" +msgstr "" + +#: models.py:939 +msgid "Search Query" +msgstr "" + +#: models.py:940 +msgid "Pickled query object. Be wary changing this." +msgstr "" + +#: models.py:950 +msgid "Saved search" +msgstr "" + +#: models.py:951 +msgid "Saved searches" +msgstr "" + +#: models.py:966 +msgid "Settings Dictionary" +msgstr "" + +#: models.py:967 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "" + +#: models.py:993 +msgid "User Setting" +msgstr "" + +#: models.py:994 templates/helpdesk/navigation.html:37 +#: templates/helpdesk/user_settings.html:6 +msgid "User Settings" +msgstr "" + +#: models.py:1036 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "" + +#: models.py:1048 +msgid "Date on which this e-mail address was added" +msgstr "" + +#: models.py:1056 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "" + +#: models.py:1061 +msgid "Save Emails in Mailbox?" +msgstr "" + +#: models.py:1064 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "" + +#: models.py:1101 +msgid "Ignored e-mail address" +msgstr "" + +#: models.py:1102 +msgid "Ignored e-mail addresses" +msgstr "" + +#: models.py:1124 +msgid "User who wishes to receive updates for this ticket." +msgstr "" + +#: models.py:1132 +msgid "For non-user followers, enter their e-mail address" +msgstr "" + +#: models.py:1136 +msgid "Can View Ticket?" +msgstr "" + +#: models.py:1138 +msgid "Can this CC login to view the ticket details?" +msgstr "" + +#: models.py:1142 +msgid "Can Update Ticket?" +msgstr "" + +#: models.py:1144 +msgid "Can this CC login and update the ticket?" +msgstr "" + +#: models.py:1175 +msgid "Field Name" +msgstr "" + +#: models.py:1176 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "" + +#: models.py:1181 +msgid "Label" +msgstr "" + +#: models.py:1183 +msgid "The display label for this field" +msgstr "" + +#: models.py:1187 +msgid "Help Text" +msgstr "" + +#: models.py:1188 +msgid "Shown to the user when editing the ticket" +msgstr "" + +#: models.py:1194 +msgid "Character (single line)" +msgstr "" + +#: models.py:1195 +msgid "Text (multi-line)" +msgstr "" + +#: models.py:1196 +msgid "Integer" +msgstr "" + +#: models.py:1197 +msgid "Decimal" +msgstr "" + +#: models.py:1198 +msgid "List" +msgstr "" + +#: models.py:1199 +msgid "Boolean (checkbox yes/no)" +msgstr "" + +#: models.py:1201 +msgid "Time" +msgstr "" + +#: models.py:1202 +msgid "Date & Time" +msgstr "" + +#: models.py:1204 +msgid "URL" +msgstr "" + +#: models.py:1205 +msgid "IP Address" +msgstr "" + +#: models.py:1210 +msgid "Data Type" +msgstr "" + +#: models.py:1212 +msgid "Allows you to restrict the data entered into this field" +msgstr "" + +#: models.py:1217 +msgid "Maximum Length (characters)" +msgstr "" + +#: models.py:1223 +msgid "Decimal Places" +msgstr "" + +#: models.py:1224 +msgid "Only used for decimal fields" +msgstr "" + +#: models.py:1230 +msgid "Add empty first choice to List?" +msgstr "" + +#: models.py:1232 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "" + +#: models.py:1236 +msgid "List Values" +msgstr "" + +#: models.py:1237 +msgid "For list fields only. Enter one option per line." +msgstr "" + +#: models.py:1243 +msgid "Ordering" +msgstr "" + +#: models.py:1244 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "" + +#: models.py:1258 +msgid "Required?" +msgstr "" + +#: models.py:1259 +msgid "Does the user have to enter a value for this field?" +msgstr "" + +#: models.py:1263 +msgid "Staff Only?" +msgstr "" + +#: models.py:1264 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "" + +#: models.py:1273 +msgid "Custom field" +msgstr "" + +#: models.py:1274 +msgid "Custom fields" +msgstr "" + +#: models.py:1297 +msgid "Ticket custom field value" +msgstr "" + +#: models.py:1298 +msgid "Ticket custom field values" +msgstr "" + +#: models.py:1315 +msgid "Depends On Ticket" +msgstr "" + +#: models.py:1324 +msgid "Ticket dependency" +msgstr "" + +#: models.py:1325 +msgid "Ticket dependencies" +msgstr "" + +#: management/commands/create_usersettings.py:25 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "" + +#: management/commands/escalate_tickets.py:148 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "" + +#: management/commands/get_email.py:158 +msgid "Created from e-mail" +msgstr "" + +#: management/commands/get_email.py:162 +msgid "Unknown Sender" +msgstr "" + +#: management/commands/get_email.py:216 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "" + +#: management/commands/get_email.py:220 +msgid "email_html_body.html" +msgstr "" + +#: management/commands/get_email.py:263 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:271 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:329 +msgid " (Reopened)" +msgstr "" + +#: management/commands/get_email.py:331 +msgid " (Updated)" +msgstr "" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"django-helpdesk." +msgstr "" + +#: templates/helpdesk/base.html:10 +msgid "Powered by django-helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:20 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:24 templates/helpdesk/rss_list.html:31 +msgid "My Open Tickets" +msgstr "" + +#: templates/helpdesk/base.html:21 +msgid "All Recent Activity" +msgstr "" + +#: templates/helpdesk/base.html:22 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "" + +#: templates/helpdesk/base.html:52 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:18 +msgid "Helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:30 templates/helpdesk/rss_list.html:31 +msgid "RSS Icon" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "" + +#: templates/helpdesk/base.html:63 +msgid "API" +msgstr "" + +#: templates/helpdesk/base.html:64 templates/helpdesk/system_settings.html:6 +msgid "System Settings" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:146 +msgid "Delete Saved Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:6 +msgid "Delete Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this saved filter " +"(%(query_title)s)? To re-create it, you will need to manually re-" +"filter your ticket listing." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"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." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:14 +#: templates/helpdesk/delete_ticket.html:10 +msgid "No, Don't Delete It" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:16 +#: templates/helpdesk/delete_ticket.html:12 +msgid "Yes - Delete It" +msgstr "" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/navigation.html:65 templates/helpdesk/navigation.html:68 +#: templates/helpdesk/public_homepage.html:27 +msgid "Submit a Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +#: templates/helpdesk/public_homepage.html:28 +msgid "Please provide as descriptive a title and description as possible." +msgstr "" + +#: templates/helpdesk/create_ticket.html:30 +#: templates/helpdesk/public_homepage.html:55 +msgid "Submit Ticket" +msgstr "" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "" + +#: templates/helpdesk/dashboard.html:9 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "" + +#: templates/helpdesk/dashboard.html:14 +msgid "Helpdesk Summary" +msgstr "" + +#: templates/helpdesk/dashboard.html:36 +msgid "Current Ticket Stats" +msgstr "" + +#: templates/helpdesk/dashboard.html:37 +msgid "Average number of days until ticket is closed (all tickets): " +msgstr "" + +#: templates/helpdesk/dashboard.html:38 +msgid "" +"Average number of days until ticket is closed (tickets opened in last 60 " +"days): " +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "Click" +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "for detailed average by month." +msgstr "" + +#: templates/helpdesk/dashboard.html:40 +msgid "Distribution of open tickets, grouped by time period:" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Days since opened" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Number of open tickets" +msgstr "" + +#: templates/helpdesk/dashboard.html:57 +msgid "All Tickets submitted by you" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:225 +msgid "Pr" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:124 +msgid "Last Update" +msgstr "" + +#: templates/helpdesk/dashboard.html:77 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "" + +#: templates/helpdesk/dashboard.html:92 +msgid "You have no tickets assigned to you." +msgstr "" + +#: templates/helpdesk/dashboard.html:99 +msgid "(pick up a ticket if you start to work on it)" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/ticket_desc_table.html:38 +msgid "Take" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:262 +msgid "Delete" +msgstr "" + +#: templates/helpdesk/dashboard.html:114 +msgid "There are no unassigned tickets." +msgstr "" + +#: templates/helpdesk/dashboard.html:123 +msgid "Closed & resolved Tickets you used to work on" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:3 +#: templates/helpdesk/delete_ticket.html:6 +msgid "Delete Ticket" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this ticket (%(ticket_title)s)? All" +" traces of the ticket, including followups, attachments, and updates will be" +" irreversibly removed." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:9 +msgid "Edit a Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "Note" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "" +"Editing a ticket does not send an e-mail to the ticket owner or " +"submitter. No new details should be entered, this form should only be used " +"to fix incorrect details or clean up the submission." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:33 +msgid "Save Changes" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:6 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:8 +msgid "" +"To ignore an e-mail address and prevent any emails from that address " +"creating tickets automatically, enter the e-mail address below." +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:10 +msgid "" +"You can either enter a whole e-mail address such as " +"email@domain.com or a portion of an e-mail address with a wildcard," +" such as *@domain.com or user@*." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:6 +msgid "Un-Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:8 +#, python-format +msgid "" +"Are you sure you wish to stop removing this email address " +"(%(email_address)s) and allow their e-mails to automatically create" +" tickets in your system? You can re-add this e-mail address at any time." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:10 +msgid "Keep Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:12 +msgid "Stop Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:260 +msgid "All" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "" + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:12 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "" + +#: templates/helpdesk/kb_category.html:13 +msgid "Article" +msgstr "" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:21 +#: templates/helpdesk/navigation.html:71 +msgid "Knowledgebase" +msgstr "" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "" + +#: templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:16 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "" + +#: templates/helpdesk/kb_item.html:18 +msgid "Feedback" +msgstr "" + +#: templates/helpdesk/kb_item.html:20 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "" + +#: templates/helpdesk/kb_item.html:23 +msgid "This article was useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:24 +msgid "This article was not useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:27 +msgid "The results of voting by other readers of this article are below:" +msgstr "" + +#: templates/helpdesk/kb_item.html:30 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:31 +#, python-format +msgid "Votes: %(votes)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:32 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "" + +#: templates/helpdesk/navigation.html:16 templates/helpdesk/navigation.html:64 +msgid "Dashboard" +msgstr "" + +#: templates/helpdesk/navigation.html:18 +msgid "New Ticket" +msgstr "" + +#: templates/helpdesk/navigation.html:19 +msgid "Stats" +msgstr "" + +#: templates/helpdesk/navigation.html:24 +msgid "Saved Query" +msgstr "" + +#: templates/helpdesk/navigation.html:39 +msgid "Change password" +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Search..." +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Logout" +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Log In" +msgstr "" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:73 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "" + +#: templates/helpdesk/public_homepage.html:28 +msgid "All fields are required." +msgstr "" + +#: templates/helpdesk/public_homepage.html:66 +msgid "Please use button at upper right to login first." +msgstr "" + +#: templates/helpdesk/public_homepage.html:82 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "" + +#: templates/helpdesk/public_homepage.html:86 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:5 +msgid "Sorry, but there has been an error trying to submit your ticket." +msgstr "" + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"Our system has marked your submission as spam, so we are " +"unable to save it. If this is not spam, please press back and re-type your " +"message. Be careful to avoid sounding 'spammy', and if you have heaps of " +"links please try removing them if possible." +msgstr "" + +#: templates/helpdesk/public_spam.html:7 +msgid "" +"We are sorry for any inconvenience, however this check is required to avoid " +"our helpdesk resources being overloaded by spammers." +msgstr "" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:9 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:13 +#: templates/helpdesk/ticket_desc_table.html:32 +msgid "Submitted On" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:35 +msgid "Tags" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept and Close" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:57 +#: templates/helpdesk/ticket.html:66 +msgid "Follow-Ups" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:65 +#: templates/helpdesk/ticket.html:100 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "" + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "" + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:27 views/staff.py:1049 +msgid "Days until ticket closed by Month" +msgstr "" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "" + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "" + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "" + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "" + +#: templates/helpdesk/rss_list.html:23 +msgid "Per-Queue Feeds" +msgstr "" + +#: templates/helpdesk/rss_list.html:24 +msgid "All Open Tickets" +msgstr "" + +#: templates/helpdesk/rss_list.html:30 +msgid "Open Tickets" +msgstr "" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "" + +#: templates/helpdesk/system_settings.html:8 +msgid "The following items can be maintained by you or other superusers:" +msgstr "" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:200 +msgid "Add Another File" +msgstr "" + +#: templates/helpdesk/ticket.html:73 templates/helpdesk/ticket.html.py:86 +msgid "Private" +msgstr "" + +#: templates/helpdesk/ticket.html:119 +msgid "Respond to this ticket" +msgstr "" + +#: templates/helpdesk/ticket.html:126 +msgid "Use a Pre-set Reply" +msgstr "" + +#: templates/helpdesk/ticket.html:126 templates/helpdesk/ticket.html.py:166 +msgid "(Optional)" +msgstr "" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "" + +#: templates/helpdesk/ticket.html:131 +msgid "Comment / Resolution" +msgstr "" + +#: templates/helpdesk/ticket.html:133 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "" + +#: templates/helpdesk/ticket.html:136 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "" + +#: templates/helpdesk/ticket.html:166 +msgid "Is this update public?" +msgstr "" + +#: templates/helpdesk/ticket.html:168 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "" + +#: templates/helpdesk/ticket.html:172 +msgid "Change Further Details »" +msgstr "" + +#: templates/helpdesk/ticket.html:181 templates/helpdesk/ticket_list.html:68 +#: templates/helpdesk/ticket_list.html:97 +#: templates/helpdesk/ticket_list.html:225 +msgid "Owner" +msgstr "" + +#: templates/helpdesk/ticket.html:182 +msgid "Unassign" +msgstr "" + +#: templates/helpdesk/ticket.html:193 +msgid "Attach File(s) »" +msgstr "" + +#: templates/helpdesk/ticket.html:199 +msgid "Attach a File" +msgstr "" + +#: templates/helpdesk/ticket.html:207 +msgid "Update This Ticket" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Unhold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Hold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:9 +#, python-format +msgid "Queue: %(queue)s" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Assigned To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:43 +msgid "Ignore" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:52 +msgid "Copies To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Manage" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Subscribe" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to subscribe yourself to this ticket, if you want to receive an " +"e-mail whenever this ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:57 +msgid "Dependencies" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:59 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:60 +msgid "Remove Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "This ticket has no dependencies." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "Add Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Change Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:67 +#: templates/helpdesk/ticket_list.html:79 +msgid "Sorting" +msgstr "" + +#: templates/helpdesk/ticket_list.html:71 +#: templates/helpdesk/ticket_list.html:139 +msgid "Keywords" +msgstr "" + +#: templates/helpdesk/ticket_list.html:72 +msgid "Date Range" +msgstr "" + +#: templates/helpdesk/ticket_list.html:100 +msgid "Reverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:102 +msgid "Ordering applied to tickets" +msgstr "" + +#: templates/helpdesk/ticket_list.html:107 +msgid "Owner(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:111 +msgid "(ME)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:115 +msgid "Ctrl-Click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:120 +msgid "Queue(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:121 +#: templates/helpdesk/ticket_list.html:127 +msgid "Ctrl-click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:126 +msgid "Status(es)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:132 +msgid "Date (From)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:133 +msgid "Date (To)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:134 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "" + +#: templates/helpdesk/ticket_list.html:140 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "" + +#: templates/helpdesk/ticket_list.html:144 +msgid "Apply Filter" +msgstr "" + +#: templates/helpdesk/ticket_list.html:146 +#, python-format +msgid "You are currently viewing saved query \"%(query_name)s\"." +msgstr "" + +#: templates/helpdesk/ticket_list.html:149 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "" + +#: templates/helpdesk/ticket_list.html:162 +#: templates/helpdesk/ticket_list.html:181 +msgid "Save Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:172 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "" + +#: templates/helpdesk/ticket_list.html:174 +msgid "Shared?" +msgstr "" + +#: templates/helpdesk/ticket_list.html:175 +msgid "Yes, share this query with other users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:176 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:195 +msgid "Use Saved Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:202 +msgid "Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:207 +msgid "Run Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:240 +msgid "No Tickets Match Your Selection" +msgstr "" + +#: templates/helpdesk/ticket_list.html:247 +msgid "Previous" +msgstr "" + +#: templates/helpdesk/ticket_list.html:251 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:255 +msgid "Next" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Select:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "None" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Inverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "With Selected Tickets:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Take (Assign to me)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Don't Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Assign To" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Nobody (Unassign)" +msgstr "" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "" + +#: templates/helpdesk/user_settings.html:8 +msgid "" +"Use the following options to change the way your helpdesk system works for " +"you. These settings do not impact any other user." +msgstr "" + +#: templates/helpdesk/user_settings.html:14 +msgid "Save Options" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "" + +#: templates/helpdesk/registration/login.html:14 +msgid "To log in simply enter your username and password below." +msgstr "" + +#: templates/helpdesk/registration/login.html:17 +msgid "Your username and password didn't match. Please try again." +msgstr "" + +#: templates/helpdesk/registration/login.html:20 +msgid "Login" +msgstr "" + +#: views/feeds.py:39 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:44 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:50 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:55 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:102 +msgid "Helpdesk: Unassigned Tickets" +msgstr "" + +#: views/feeds.py:103 +msgid "Unassigned Open and Reopened tickets" +msgstr "" + +#: views/feeds.py:128 +msgid "Helpdesk: Recent Followups" +msgstr "" + +#: views/feeds.py:129 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "" + +#: views/feeds.py:144 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "" + +#: views/feeds.py:149 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "" + +#: views/public.py:89 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "" + +#: views/public.py:107 +msgid "Submitter accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:235 +msgid "Accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:369 +#, python-format +msgid "Assigned to %(username)s" +msgstr "" + +#: views/staff.py:392 +msgid "Updated" +msgstr "" + +#: views/staff.py:577 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "" + +#: views/staff.py:582 +msgid "Unassigned in bulk update" +msgstr "" + +#: views/staff.py:587 views/staff.py:592 +msgid "Closed in bulk update" +msgstr "" + +#: views/staff.py:806 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "" + +#: views/staff.py:910 +msgid "Ticket taken off hold" +msgstr "" + +#: views/staff.py:913 +msgid "Ticket placed on hold" +msgstr "" + +#: views/staff.py:1007 +msgid "User by Priority" +msgstr "" + +#: views/staff.py:1013 +msgid "User by Queue" +msgstr "" + +#: views/staff.py:1019 +msgid "User by Status" +msgstr "" + +#: views/staff.py:1025 +msgid "User by Month" +msgstr "" + +#: views/staff.py:1031 +msgid "Queue by Priority" +msgstr "" + +#: views/staff.py:1037 +msgid "Queue by Status" +msgstr "" + +#: views/staff.py:1043 +msgid "Queue by Month" +msgstr "" diff --git a/build/lib/helpdesk/locale/fi/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/fi/LC_MESSAGES/django.mo new file mode 100644 index 00000000..bf50b01c Binary files /dev/null and b/build/lib/helpdesk/locale/fi/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/fi/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/fi/LC_MESSAGES/django.po new file mode 100644 index 00000000..952ce72b --- /dev/null +++ b/build/lib/helpdesk/locale/fi/LC_MESSAGES/django.po @@ -0,0 +1,2393 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2014-07-26 14:14+0200\n" +"PO-Revision-Date: 2014-08-01 09:58+0000\n" +"Last-Translator: Ross Poulton \n" +"Language-Team: Finnish (http://www.transifex.com/projects/p/django-helpdesk/language/fi/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fi\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: forms.py:128 forms.py:328 models.py:190 models.py:267 +#: templates/helpdesk/dashboard.html:15 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/dashboard.html:124 templates/helpdesk/rss_list.html:24 +#: templates/helpdesk/ticket_list.html:69 +#: templates/helpdesk/ticket_list.html:88 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:1032 +#: views/staff.py:1038 views/staff.py:1044 views/staff.py:1050 +msgid "Queue" +msgstr "" + +#: forms.py:137 +msgid "Summary of the problem" +msgstr "" + +#: forms.py:142 +msgid "Submitter E-Mail Address" +msgstr "" + +#: forms.py:144 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "" + +#: forms.py:150 +msgid "Description of Issue" +msgstr "" + +#: forms.py:157 +msgid "Case owner" +msgstr "" + +#: forms.py:158 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "" + +#: forms.py:166 models.py:327 management/commands/escalate_tickets.py:154 +#: templates/helpdesk/public_view_ticket.html:23 +#: templates/helpdesk/ticket.html:184 +#: templates/helpdesk/ticket_desc_table.html:47 +#: templates/helpdesk/ticket_list.html:94 views/staff.py:429 +msgid "Priority" +msgstr "" + +#: forms.py:167 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "" + +#: forms.py:174 forms.py:365 models.py:335 templates/helpdesk/ticket.html:186 +#: views/staff.py:439 +msgid "Due on" +msgstr "" + +#: forms.py:186 forms.py:370 +msgid "Attach File" +msgstr "" + +#: forms.py:187 forms.py:371 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "" + +#: forms.py:240 +msgid "Ticket Opened" +msgstr "" + +#: forms.py:247 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "" + +#: forms.py:337 +msgid "Summary of your query" +msgstr "" + +#: forms.py:342 +msgid "Your E-Mail Address" +msgstr "" + +#: forms.py:343 +msgid "We will e-mail you when your ticket is updated." +msgstr "" + +#: forms.py:348 +msgid "Description of your issue" +msgstr "" + +#: forms.py:350 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "" + +#: forms.py:358 +msgid "Urgency" +msgstr "" + +#: forms.py:359 +msgid "Please select a priority carefully." +msgstr "" + +#: forms.py:419 +msgid "Ticket Opened Via Web" +msgstr "" + +#: forms.py:486 +msgid "Show Ticket List on Login?" +msgstr "" + +#: forms.py:487 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "" + +#: forms.py:492 +msgid "E-mail me on ticket change?" +msgstr "" + +#: forms.py:493 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:498 +msgid "E-mail me when assigned a ticket?" +msgstr "" + +#: forms.py:499 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:504 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "" + +#: forms.py:505 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:510 +msgid "Number of tickets to show per page" +msgstr "" + +#: forms.py:511 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "" + +#: forms.py:518 +msgid "Use my e-mail address when submitting tickets?" +msgstr "" + +#: forms.py:519 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "" + +#: models.py:35 models.py:261 models.py:503 models.py:817 models.py:853 +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket.html:178 templates/helpdesk/ticket_list.html:85 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:419 +msgid "Title" +msgstr "" + +#: models.py:40 models.py:822 models.py:1206 +msgid "Slug" +msgstr "" + +#: models.py:41 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "" + +#: models.py:46 models.py:1054 models.py:1129 models.py:1203 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "" + +#: models.py:49 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "" + +#: models.py:55 models.py:794 +msgid "Locale" +msgstr "" + +#: models.py:59 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "" + +#: models.py:63 +msgid "Allow Public Submission?" +msgstr "" + +#: models.py:66 +msgid "Should this queue be listed on the public submission form?" +msgstr "" + +#: models.py:71 +msgid "Allow E-Mail Submission?" +msgstr "" + +#: models.py:74 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "" + +#: models.py:79 +msgid "Escalation Days" +msgstr "" + +#: models.py:82 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "" + +#: models.py:87 +msgid "New Ticket CC Address" +msgstr "" + +#: models.py:91 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "" + +#: models.py:97 +msgid "Updated Ticket CC Address" +msgstr "" + +#: models.py:101 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "" + +#: models.py:108 +msgid "E-Mail Box Type" +msgstr "" + +#: models.py:110 +msgid "POP 3" +msgstr "" + +#: models.py:110 +msgid "IMAP" +msgstr "" + +#: models.py:113 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "" + +#: models.py:118 +msgid "E-Mail Hostname" +msgstr "" + +#: models.py:122 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "" + +#: models.py:127 +msgid "E-Mail Port" +msgstr "" + +#: models.py:130 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "" + +#: models.py:136 +msgid "Use SSL for E-Mail?" +msgstr "" + +#: models.py:139 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "" + +#: models.py:144 +msgid "E-Mail Username" +msgstr "" + +#: models.py:148 +msgid "Username for accessing this mailbox." +msgstr "" + +#: models.py:152 +msgid "E-Mail Password" +msgstr "" + +#: models.py:156 +msgid "Password for the above username" +msgstr "" + +#: models.py:160 +msgid "IMAP Folder" +msgstr "" + +#: models.py:164 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "" + +#: models.py:171 +msgid "E-Mail Check Interval" +msgstr "" + +#: models.py:172 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "" + +#: models.py:191 templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "" + +#: models.py:245 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:138 +msgid "Open" +msgstr "" + +#: models.py:246 templates/helpdesk/ticket.html:144 +#: templates/helpdesk/ticket.html.py:150 templates/helpdesk/ticket.html:155 +#: templates/helpdesk/ticket.html.py:159 +msgid "Reopened" +msgstr "" + +#: models.py:247 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:139 templates/helpdesk/ticket.html.py:145 +#: templates/helpdesk/ticket.html:151 +msgid "Resolved" +msgstr "" + +#: models.py:248 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:140 templates/helpdesk/ticket.html.py:146 +#: templates/helpdesk/ticket.html:152 templates/helpdesk/ticket.html.py:156 +msgid "Closed" +msgstr "" + +#: models.py:249 templates/helpdesk/ticket.html:141 +#: templates/helpdesk/ticket.html.py:147 templates/helpdesk/ticket.html:160 +msgid "Duplicate" +msgstr "" + +#: models.py:253 +msgid "1. Critical" +msgstr "" + +#: models.py:254 +msgid "2. High" +msgstr "" + +#: models.py:255 +msgid "3. Normal" +msgstr "" + +#: models.py:256 +msgid "4. Low" +msgstr "" + +#: models.py:257 +msgid "5. Very Low" +msgstr "" + +#: models.py:271 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/ticket_list.html:82 +#: templates/helpdesk/ticket_list.html:225 +msgid "Created" +msgstr "" + +#: models.py:273 +msgid "Date this ticket was first created" +msgstr "" + +#: models.py:277 +msgid "Modified" +msgstr "" + +#: models.py:279 +msgid "Date this ticket was most recently changed." +msgstr "" + +#: models.py:283 templates/helpdesk/public_view_ticket.html:18 +#: templates/helpdesk/ticket_desc_table.html:42 +msgid "Submitter E-Mail" +msgstr "" + +#: models.py:286 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "" + +#: models.py:295 +msgid "Assigned to" +msgstr "" + +#: models.py:299 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:70 +#: templates/helpdesk/ticket_list.html:91 +#: templates/helpdesk/ticket_list.html:225 +msgid "Status" +msgstr "" + +#: models.py:305 +msgid "On Hold" +msgstr "" + +#: models.py:308 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "" + +#: models.py:313 models.py:826 templates/helpdesk/public_view_ticket.html:41 +#: templates/helpdesk/ticket_desc_table.html:19 +msgid "Description" +msgstr "" + +#: models.py:316 +msgid "The content of the customers query." +msgstr "" + +#: models.py:320 templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Resolution" +msgstr "" + +#: models.py:323 +msgid "The resolution provided to the customer by our staff." +msgstr "" + +#: models.py:331 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "" + +#: models.py:344 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "" + +#: models.py:353 templates/helpdesk/ticket_desc_table.html:38 +#: views/feeds.py:95 views/feeds.py:121 views/feeds.py:173 views/staff.py:376 +msgid "Unassigned" +msgstr "" + +#: models.py:392 +msgid " - On Hold" +msgstr "" + +#: models.py:394 +msgid " - Open dependencies" +msgstr "" + +#: models.py:448 models.py:494 models.py:1117 models.py:1280 models.py:1309 +#: templates/helpdesk/public_homepage.html:78 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "" + +#: models.py:449 templates/helpdesk/navigation.html:17 +#: templates/helpdesk/ticket_list.html:2 +#: templates/helpdesk/ticket_list.html:224 +msgid "Tickets" +msgstr "" + +#: models.py:498 models.py:738 models.py:1047 models.py:1200 +msgid "Date" +msgstr "" + +#: models.py:510 views/staff.py:390 +msgid "Comment" +msgstr "" + +#: models.py:516 +msgid "Public" +msgstr "" + +#: models.py:519 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "" + +#: models.py:527 models.py:922 models.py:1125 views/staff.py:1008 +#: views/staff.py:1014 views/staff.py:1020 views/staff.py:1026 +msgid "User" +msgstr "" + +#: models.py:531 templates/helpdesk/ticket.html:135 +msgid "New Status" +msgstr "" + +#: models.py:535 +msgid "If the status was changed, what was it changed to?" +msgstr "" + +#: models.py:542 models.py:566 models.py:628 +msgid "Follow-up" +msgstr "" + +#: models.py:543 +msgid "Follow-ups" +msgstr "" + +#: models.py:570 models.py:1285 +msgid "Field" +msgstr "" + +#: models.py:575 +msgid "Old Value" +msgstr "" + +#: models.py:581 +msgid "New Value" +msgstr "" + +#: models.py:589 +msgid "removed" +msgstr "" + +#: models.py:591 +#, python-format +msgid "set to %s" +msgstr "" + +#: models.py:593 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "" + +#: models.py:600 +msgid "Ticket change" +msgstr "" + +#: models.py:601 +msgid "Ticket changes" +msgstr "" + +#: models.py:632 +msgid "File" +msgstr "" + +#: models.py:637 +msgid "Filename" +msgstr "" + +#: models.py:642 +msgid "MIME Type" +msgstr "" + +#: models.py:647 +msgid "Size" +msgstr "" + +#: models.py:648 +msgid "Size of this file in bytes" +msgstr "" + +#: models.py:665 +msgid "Attachment" +msgstr "" + +#: models.py:666 +msgid "Attachments" +msgstr "" + +#: models.py:685 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "" + +#: models.py:690 models.py:733 models.py:1042 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "" + +#: models.py:692 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "" + +#: models.py:697 +msgid "Body" +msgstr "" + +#: models.py:698 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "" + +#: models.py:705 +msgid "Pre-set reply" +msgstr "" + +#: models.py:706 +msgid "Pre-set replies" +msgstr "" + +#: models.py:727 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "" + +#: models.py:739 +msgid "Date on which escalation should not happen" +msgstr "" + +#: models.py:746 +msgid "Escalation exclusion" +msgstr "" + +#: models.py:747 +msgid "Escalation exclusions" +msgstr "" + +#: models.py:760 +msgid "Template Name" +msgstr "" + +#: models.py:765 +msgid "Subject" +msgstr "" + +#: models.py:767 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "" + +#: models.py:773 +msgid "Heading" +msgstr "" + +#: models.py:775 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "" + +#: models.py:781 +msgid "Plain Text" +msgstr "" + +#: models.py:782 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "" + +#: models.py:788 +msgid "HTML" +msgstr "" + +#: models.py:789 +msgid "The same context is available here as in plain_text, above." +msgstr "" + +#: models.py:798 +msgid "Locale of this template." +msgstr "" + +#: models.py:806 +msgid "e-mail template" +msgstr "" + +#: models.py:807 +msgid "e-mail templates" +msgstr "" + +#: models.py:834 +msgid "Knowledge base category" +msgstr "" + +#: models.py:835 +msgid "Knowledge base categories" +msgstr "" + +#: models.py:849 templates/helpdesk/kb_index.html:11 +#: templates/helpdesk/public_homepage.html:11 +msgid "Category" +msgstr "" + +#: models.py:858 +msgid "Question" +msgstr "" + +#: models.py:862 +msgid "Answer" +msgstr "" + +#: models.py:866 +msgid "Votes" +msgstr "" + +#: models.py:867 +msgid "Total number of votes cast for this item" +msgstr "" + +#: models.py:872 +msgid "Positive Votes" +msgstr "" + +#: models.py:873 +msgid "Number of votes for this item which were POSITIVE." +msgstr "" + +#: models.py:878 +msgid "Last Updated" +msgstr "" + +#: models.py:879 +msgid "The date on which this question was most recently changed." +msgstr "" + +#: models.py:893 +msgid "Unrated" +msgstr "" + +#: models.py:901 +msgid "Knowledge base item" +msgstr "" + +#: models.py:902 +msgid "Knowledge base items" +msgstr "" + +#: models.py:926 templates/helpdesk/ticket_list.html:170 +msgid "Query Name" +msgstr "" + +#: models.py:928 +msgid "User-provided name for this query" +msgstr "" + +#: models.py:932 +msgid "Shared With Other Users?" +msgstr "" + +#: models.py:935 +msgid "Should other users see this query?" +msgstr "" + +#: models.py:939 +msgid "Search Query" +msgstr "" + +#: models.py:940 +msgid "Pickled query object. Be wary changing this." +msgstr "" + +#: models.py:950 +msgid "Saved search" +msgstr "" + +#: models.py:951 +msgid "Saved searches" +msgstr "" + +#: models.py:966 +msgid "Settings Dictionary" +msgstr "" + +#: models.py:967 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "" + +#: models.py:993 +msgid "User Setting" +msgstr "" + +#: models.py:994 templates/helpdesk/navigation.html:37 +#: templates/helpdesk/user_settings.html:6 +msgid "User Settings" +msgstr "" + +#: models.py:1036 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "" + +#: models.py:1048 +msgid "Date on which this e-mail address was added" +msgstr "" + +#: models.py:1056 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "" + +#: models.py:1061 +msgid "Save Emails in Mailbox?" +msgstr "" + +#: models.py:1064 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "" + +#: models.py:1101 +msgid "Ignored e-mail address" +msgstr "" + +#: models.py:1102 +msgid "Ignored e-mail addresses" +msgstr "" + +#: models.py:1124 +msgid "User who wishes to receive updates for this ticket." +msgstr "" + +#: models.py:1132 +msgid "For non-user followers, enter their e-mail address" +msgstr "" + +#: models.py:1136 +msgid "Can View Ticket?" +msgstr "" + +#: models.py:1138 +msgid "Can this CC login to view the ticket details?" +msgstr "" + +#: models.py:1142 +msgid "Can Update Ticket?" +msgstr "" + +#: models.py:1144 +msgid "Can this CC login and update the ticket?" +msgstr "" + +#: models.py:1175 +msgid "Field Name" +msgstr "" + +#: models.py:1176 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "" + +#: models.py:1181 +msgid "Label" +msgstr "" + +#: models.py:1183 +msgid "The display label for this field" +msgstr "" + +#: models.py:1187 +msgid "Help Text" +msgstr "" + +#: models.py:1188 +msgid "Shown to the user when editing the ticket" +msgstr "" + +#: models.py:1194 +msgid "Character (single line)" +msgstr "" + +#: models.py:1195 +msgid "Text (multi-line)" +msgstr "" + +#: models.py:1196 +msgid "Integer" +msgstr "" + +#: models.py:1197 +msgid "Decimal" +msgstr "" + +#: models.py:1198 +msgid "List" +msgstr "" + +#: models.py:1199 +msgid "Boolean (checkbox yes/no)" +msgstr "" + +#: models.py:1201 +msgid "Time" +msgstr "" + +#: models.py:1202 +msgid "Date & Time" +msgstr "" + +#: models.py:1204 +msgid "URL" +msgstr "" + +#: models.py:1205 +msgid "IP Address" +msgstr "" + +#: models.py:1210 +msgid "Data Type" +msgstr "" + +#: models.py:1212 +msgid "Allows you to restrict the data entered into this field" +msgstr "" + +#: models.py:1217 +msgid "Maximum Length (characters)" +msgstr "" + +#: models.py:1223 +msgid "Decimal Places" +msgstr "" + +#: models.py:1224 +msgid "Only used for decimal fields" +msgstr "" + +#: models.py:1230 +msgid "Add empty first choice to List?" +msgstr "" + +#: models.py:1232 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "" + +#: models.py:1236 +msgid "List Values" +msgstr "" + +#: models.py:1237 +msgid "For list fields only. Enter one option per line." +msgstr "" + +#: models.py:1243 +msgid "Ordering" +msgstr "" + +#: models.py:1244 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "" + +#: models.py:1258 +msgid "Required?" +msgstr "" + +#: models.py:1259 +msgid "Does the user have to enter a value for this field?" +msgstr "" + +#: models.py:1263 +msgid "Staff Only?" +msgstr "" + +#: models.py:1264 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "" + +#: models.py:1273 +msgid "Custom field" +msgstr "" + +#: models.py:1274 +msgid "Custom fields" +msgstr "" + +#: models.py:1297 +msgid "Ticket custom field value" +msgstr "" + +#: models.py:1298 +msgid "Ticket custom field values" +msgstr "" + +#: models.py:1315 +msgid "Depends On Ticket" +msgstr "" + +#: models.py:1324 +msgid "Ticket dependency" +msgstr "" + +#: models.py:1325 +msgid "Ticket dependencies" +msgstr "" + +#: management/commands/create_usersettings.py:25 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "" + +#: management/commands/escalate_tickets.py:148 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "" + +#: management/commands/get_email.py:158 +msgid "Created from e-mail" +msgstr "" + +#: management/commands/get_email.py:162 +msgid "Unknown Sender" +msgstr "" + +#: management/commands/get_email.py:216 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "" + +#: management/commands/get_email.py:220 +msgid "email_html_body.html" +msgstr "" + +#: management/commands/get_email.py:263 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:271 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:329 +msgid " (Reopened)" +msgstr "" + +#: management/commands/get_email.py:331 +msgid " (Updated)" +msgstr "" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"django-helpdesk." +msgstr "" + +#: templates/helpdesk/base.html:10 +msgid "Powered by django-helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:20 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:24 templates/helpdesk/rss_list.html:31 +msgid "My Open Tickets" +msgstr "" + +#: templates/helpdesk/base.html:21 +msgid "All Recent Activity" +msgstr "" + +#: templates/helpdesk/base.html:22 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "" + +#: templates/helpdesk/base.html:52 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:18 +msgid "Helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:30 templates/helpdesk/rss_list.html:31 +msgid "RSS Icon" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "" + +#: templates/helpdesk/base.html:63 +msgid "API" +msgstr "" + +#: templates/helpdesk/base.html:64 templates/helpdesk/system_settings.html:6 +msgid "System Settings" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:146 +msgid "Delete Saved Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:6 +msgid "Delete Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this saved filter " +"(%(query_title)s)? To re-create it, you will need to manually re-" +"filter your ticket listing." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"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." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:14 +#: templates/helpdesk/delete_ticket.html:10 +msgid "No, Don't Delete It" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:16 +#: templates/helpdesk/delete_ticket.html:12 +msgid "Yes - Delete It" +msgstr "" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/navigation.html:65 templates/helpdesk/navigation.html:68 +#: templates/helpdesk/public_homepage.html:27 +msgid "Submit a Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +#: templates/helpdesk/public_homepage.html:28 +msgid "Please provide as descriptive a title and description as possible." +msgstr "" + +#: templates/helpdesk/create_ticket.html:30 +#: templates/helpdesk/public_homepage.html:55 +msgid "Submit Ticket" +msgstr "" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "" + +#: templates/helpdesk/dashboard.html:9 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "" + +#: templates/helpdesk/dashboard.html:14 +msgid "Helpdesk Summary" +msgstr "" + +#: templates/helpdesk/dashboard.html:36 +msgid "Current Ticket Stats" +msgstr "" + +#: templates/helpdesk/dashboard.html:37 +msgid "Average number of days until ticket is closed (all tickets): " +msgstr "" + +#: templates/helpdesk/dashboard.html:38 +msgid "" +"Average number of days until ticket is closed (tickets opened in last 60 " +"days): " +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "Click" +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "for detailed average by month." +msgstr "" + +#: templates/helpdesk/dashboard.html:40 +msgid "Distribution of open tickets, grouped by time period:" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Days since opened" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Number of open tickets" +msgstr "" + +#: templates/helpdesk/dashboard.html:57 +msgid "All Tickets submitted by you" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:225 +msgid "Pr" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:124 +msgid "Last Update" +msgstr "" + +#: templates/helpdesk/dashboard.html:77 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "" + +#: templates/helpdesk/dashboard.html:92 +msgid "You have no tickets assigned to you." +msgstr "" + +#: templates/helpdesk/dashboard.html:99 +msgid "(pick up a ticket if you start to work on it)" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/ticket_desc_table.html:38 +msgid "Take" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:262 +msgid "Delete" +msgstr "" + +#: templates/helpdesk/dashboard.html:114 +msgid "There are no unassigned tickets." +msgstr "" + +#: templates/helpdesk/dashboard.html:123 +msgid "Closed & resolved Tickets you used to work on" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:3 +#: templates/helpdesk/delete_ticket.html:6 +msgid "Delete Ticket" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this ticket (%(ticket_title)s)? All" +" traces of the ticket, including followups, attachments, and updates will be" +" irreversibly removed." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:9 +msgid "Edit a Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "Note" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "" +"Editing a ticket does not send an e-mail to the ticket owner or " +"submitter. No new details should be entered, this form should only be used " +"to fix incorrect details or clean up the submission." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:33 +msgid "Save Changes" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:6 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:8 +msgid "" +"To ignore an e-mail address and prevent any emails from that address " +"creating tickets automatically, enter the e-mail address below." +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:10 +msgid "" +"You can either enter a whole e-mail address such as " +"email@domain.com or a portion of an e-mail address with a wildcard," +" such as *@domain.com or user@*." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:6 +msgid "Un-Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:8 +#, python-format +msgid "" +"Are you sure you wish to stop removing this email address " +"(%(email_address)s) and allow their e-mails to automatically create" +" tickets in your system? You can re-add this e-mail address at any time." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:10 +msgid "Keep Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:12 +msgid "Stop Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:260 +msgid "All" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "" + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:12 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "" + +#: templates/helpdesk/kb_category.html:13 +msgid "Article" +msgstr "" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:21 +#: templates/helpdesk/navigation.html:71 +msgid "Knowledgebase" +msgstr "" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "" + +#: templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:16 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "" + +#: templates/helpdesk/kb_item.html:18 +msgid "Feedback" +msgstr "" + +#: templates/helpdesk/kb_item.html:20 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "" + +#: templates/helpdesk/kb_item.html:23 +msgid "This article was useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:24 +msgid "This article was not useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:27 +msgid "The results of voting by other readers of this article are below:" +msgstr "" + +#: templates/helpdesk/kb_item.html:30 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:31 +#, python-format +msgid "Votes: %(votes)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:32 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "" + +#: templates/helpdesk/navigation.html:16 templates/helpdesk/navigation.html:64 +msgid "Dashboard" +msgstr "" + +#: templates/helpdesk/navigation.html:18 +msgid "New Ticket" +msgstr "" + +#: templates/helpdesk/navigation.html:19 +msgid "Stats" +msgstr "" + +#: templates/helpdesk/navigation.html:24 +msgid "Saved Query" +msgstr "" + +#: templates/helpdesk/navigation.html:39 +msgid "Change password" +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Search..." +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Logout" +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Log In" +msgstr "" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:73 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "" + +#: templates/helpdesk/public_homepage.html:28 +msgid "All fields are required." +msgstr "" + +#: templates/helpdesk/public_homepage.html:66 +msgid "Please use button at upper right to login first." +msgstr "" + +#: templates/helpdesk/public_homepage.html:82 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "" + +#: templates/helpdesk/public_homepage.html:86 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:5 +msgid "Sorry, but there has been an error trying to submit your ticket." +msgstr "" + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"Our system has marked your submission as spam, so we are " +"unable to save it. If this is not spam, please press back and re-type your " +"message. Be careful to avoid sounding 'spammy', and if you have heaps of " +"links please try removing them if possible." +msgstr "" + +#: templates/helpdesk/public_spam.html:7 +msgid "" +"We are sorry for any inconvenience, however this check is required to avoid " +"our helpdesk resources being overloaded by spammers." +msgstr "" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:9 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:13 +#: templates/helpdesk/ticket_desc_table.html:32 +msgid "Submitted On" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:35 +msgid "Tags" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept and Close" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:57 +#: templates/helpdesk/ticket.html:66 +msgid "Follow-Ups" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:65 +#: templates/helpdesk/ticket.html:100 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "" + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "" + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:27 views/staff.py:1049 +msgid "Days until ticket closed by Month" +msgstr "" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "" + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "" + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "" + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "" + +#: templates/helpdesk/rss_list.html:23 +msgid "Per-Queue Feeds" +msgstr "" + +#: templates/helpdesk/rss_list.html:24 +msgid "All Open Tickets" +msgstr "" + +#: templates/helpdesk/rss_list.html:30 +msgid "Open Tickets" +msgstr "" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "" + +#: templates/helpdesk/system_settings.html:8 +msgid "The following items can be maintained by you or other superusers:" +msgstr "" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:200 +msgid "Add Another File" +msgstr "" + +#: templates/helpdesk/ticket.html:73 templates/helpdesk/ticket.html.py:86 +msgid "Private" +msgstr "" + +#: templates/helpdesk/ticket.html:119 +msgid "Respond to this ticket" +msgstr "" + +#: templates/helpdesk/ticket.html:126 +msgid "Use a Pre-set Reply" +msgstr "" + +#: templates/helpdesk/ticket.html:126 templates/helpdesk/ticket.html.py:166 +msgid "(Optional)" +msgstr "" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "" + +#: templates/helpdesk/ticket.html:131 +msgid "Comment / Resolution" +msgstr "" + +#: templates/helpdesk/ticket.html:133 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "" + +#: templates/helpdesk/ticket.html:136 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "" + +#: templates/helpdesk/ticket.html:166 +msgid "Is this update public?" +msgstr "" + +#: templates/helpdesk/ticket.html:168 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "" + +#: templates/helpdesk/ticket.html:172 +msgid "Change Further Details »" +msgstr "" + +#: templates/helpdesk/ticket.html:181 templates/helpdesk/ticket_list.html:68 +#: templates/helpdesk/ticket_list.html:97 +#: templates/helpdesk/ticket_list.html:225 +msgid "Owner" +msgstr "" + +#: templates/helpdesk/ticket.html:182 +msgid "Unassign" +msgstr "" + +#: templates/helpdesk/ticket.html:193 +msgid "Attach File(s) »" +msgstr "" + +#: templates/helpdesk/ticket.html:199 +msgid "Attach a File" +msgstr "" + +#: templates/helpdesk/ticket.html:207 +msgid "Update This Ticket" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Unhold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Hold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:9 +#, python-format +msgid "Queue: %(queue)s" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Assigned To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:43 +msgid "Ignore" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:52 +msgid "Copies To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Manage" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Subscribe" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to subscribe yourself to this ticket, if you want to receive an " +"e-mail whenever this ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:57 +msgid "Dependencies" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:59 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:60 +msgid "Remove Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "This ticket has no dependencies." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "Add Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Change Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:67 +#: templates/helpdesk/ticket_list.html:79 +msgid "Sorting" +msgstr "" + +#: templates/helpdesk/ticket_list.html:71 +#: templates/helpdesk/ticket_list.html:139 +msgid "Keywords" +msgstr "" + +#: templates/helpdesk/ticket_list.html:72 +msgid "Date Range" +msgstr "" + +#: templates/helpdesk/ticket_list.html:100 +msgid "Reverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:102 +msgid "Ordering applied to tickets" +msgstr "" + +#: templates/helpdesk/ticket_list.html:107 +msgid "Owner(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:111 +msgid "(ME)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:115 +msgid "Ctrl-Click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:120 +msgid "Queue(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:121 +#: templates/helpdesk/ticket_list.html:127 +msgid "Ctrl-click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:126 +msgid "Status(es)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:132 +msgid "Date (From)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:133 +msgid "Date (To)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:134 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "" + +#: templates/helpdesk/ticket_list.html:140 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "" + +#: templates/helpdesk/ticket_list.html:144 +msgid "Apply Filter" +msgstr "" + +#: templates/helpdesk/ticket_list.html:146 +#, python-format +msgid "You are currently viewing saved query \"%(query_name)s\"." +msgstr "" + +#: templates/helpdesk/ticket_list.html:149 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "" + +#: templates/helpdesk/ticket_list.html:162 +#: templates/helpdesk/ticket_list.html:181 +msgid "Save Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:172 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "" + +#: templates/helpdesk/ticket_list.html:174 +msgid "Shared?" +msgstr "" + +#: templates/helpdesk/ticket_list.html:175 +msgid "Yes, share this query with other users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:176 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:195 +msgid "Use Saved Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:202 +msgid "Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:207 +msgid "Run Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:240 +msgid "No Tickets Match Your Selection" +msgstr "" + +#: templates/helpdesk/ticket_list.html:247 +msgid "Previous" +msgstr "" + +#: templates/helpdesk/ticket_list.html:251 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:255 +msgid "Next" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Select:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "None" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Inverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "With Selected Tickets:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Take (Assign to me)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Don't Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Assign To" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Nobody (Unassign)" +msgstr "" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "" + +#: templates/helpdesk/user_settings.html:8 +msgid "" +"Use the following options to change the way your helpdesk system works for " +"you. These settings do not impact any other user." +msgstr "" + +#: templates/helpdesk/user_settings.html:14 +msgid "Save Options" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "" + +#: templates/helpdesk/registration/login.html:14 +msgid "To log in simply enter your username and password below." +msgstr "" + +#: templates/helpdesk/registration/login.html:17 +msgid "Your username and password didn't match. Please try again." +msgstr "" + +#: templates/helpdesk/registration/login.html:20 +msgid "Login" +msgstr "" + +#: views/feeds.py:39 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:44 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:50 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:55 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:102 +msgid "Helpdesk: Unassigned Tickets" +msgstr "" + +#: views/feeds.py:103 +msgid "Unassigned Open and Reopened tickets" +msgstr "" + +#: views/feeds.py:128 +msgid "Helpdesk: Recent Followups" +msgstr "" + +#: views/feeds.py:129 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "" + +#: views/feeds.py:144 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "" + +#: views/feeds.py:149 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "" + +#: views/public.py:89 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "" + +#: views/public.py:107 +msgid "Submitter accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:235 +msgid "Accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:369 +#, python-format +msgid "Assigned to %(username)s" +msgstr "" + +#: views/staff.py:392 +msgid "Updated" +msgstr "" + +#: views/staff.py:577 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "" + +#: views/staff.py:582 +msgid "Unassigned in bulk update" +msgstr "" + +#: views/staff.py:587 views/staff.py:592 +msgid "Closed in bulk update" +msgstr "" + +#: views/staff.py:806 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "" + +#: views/staff.py:910 +msgid "Ticket taken off hold" +msgstr "" + +#: views/staff.py:913 +msgid "Ticket placed on hold" +msgstr "" + +#: views/staff.py:1007 +msgid "User by Priority" +msgstr "" + +#: views/staff.py:1013 +msgid "User by Queue" +msgstr "" + +#: views/staff.py:1019 +msgid "User by Status" +msgstr "" + +#: views/staff.py:1025 +msgid "User by Month" +msgstr "" + +#: views/staff.py:1031 +msgid "Queue by Priority" +msgstr "" + +#: views/staff.py:1037 +msgid "Queue by Status" +msgstr "" + +#: views/staff.py:1043 +msgid "Queue by Month" +msgstr "" diff --git a/build/lib/helpdesk/locale/fr/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/fr/LC_MESSAGES/django.mo new file mode 100644 index 00000000..d950d467 Binary files /dev/null and b/build/lib/helpdesk/locale/fr/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/fr/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/fr/LC_MESSAGES/django.po new file mode 100644 index 00000000..a28511da --- /dev/null +++ b/build/lib/helpdesk/locale/fr/LC_MESSAGES/django.po @@ -0,0 +1,2401 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Translators: +# Alexandre Papin , 2013 +# Alex Garel , 2012 +# Antoine Nguyen , 2014,2016 +# Etienne Desgagné , 2015 +# yaap , 2012 +# kolin22 , 2011 +# Paul Guichon , 2015 +# Ross Poulton , 2011,2015 +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2014-07-26 14:14+0200\n" +"PO-Revision-Date: 2016-06-07 12:22+0000\n" +"Last-Translator: Antoine Nguyen \n" +"Language-Team: French (http://www.transifex.com/rossp/django-helpdesk/language/fr/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: fr\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: forms.py:128 forms.py:328 models.py:190 models.py:267 +#: templates/helpdesk/dashboard.html:15 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/dashboard.html:124 templates/helpdesk/rss_list.html:24 +#: templates/helpdesk/ticket_list.html:69 +#: templates/helpdesk/ticket_list.html:88 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:1032 +#: views/staff.py:1038 views/staff.py:1044 views/staff.py:1050 +msgid "Queue" +msgstr "File d'attente" + +#: forms.py:137 +msgid "Summary of the problem" +msgstr "Résumé du problème" + +#: forms.py:142 +msgid "Submitter E-Mail Address" +msgstr "Adresse e-mail de l'émetteur" + +#: forms.py:144 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "Cette adresse e-mail recevra des copies de toutes les mises à jour publiques de ce ticket." + +#: forms.py:150 +msgid "Description of Issue" +msgstr "Description du problème" + +#: forms.py:157 +msgid "Case owner" +msgstr "Propriétaire du cas" + +#: forms.py:158 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "Si vous sélectionnez un autre propriétaire que vous-même, il lui sera immédiatement envoyé par courriel les détails de ce billet." + +#: forms.py:166 models.py:327 management/commands/escalate_tickets.py:154 +#: templates/helpdesk/public_view_ticket.html:23 +#: templates/helpdesk/ticket.html:184 +#: templates/helpdesk/ticket_desc_table.html:47 +#: templates/helpdesk/ticket_list.html:94 views/staff.py:429 +msgid "Priority" +msgstr "Priorité" + +#: forms.py:167 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "Veuillez choisir une priorité avec attention. En cas de doute, laisser sur '3'." + +#: forms.py:174 forms.py:365 models.py:335 templates/helpdesk/ticket.html:186 +#: views/staff.py:439 +msgid "Due on" +msgstr "Résolution souhaitée le " + +#: forms.py:186 forms.py:370 +msgid "Attach File" +msgstr "Joindre un fichier" + +#: forms.py:187 forms.py:371 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "Vous pouvez joindre un fichier tel qu'un document ou une capture d'écran pour ce ticket." + +#: forms.py:240 +msgid "Ticket Opened" +msgstr "Billet ouvert" + +#: forms.py:247 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "Billet ouvert et assigné à %(name)s" + +#: forms.py:337 +msgid "Summary of your query" +msgstr "Résumé de votre requête" + +#: forms.py:342 +msgid "Your E-Mail Address" +msgstr "Votre adresse e-mail" + +#: forms.py:343 +msgid "We will e-mail you when your ticket is updated." +msgstr "Nous vous enverrons un e-mail dès que votre billet sera mis à jour." + +#: forms.py:348 +msgid "Description of your issue" +msgstr "Description de votre problème" + +#: forms.py:350 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "Soyez aussi précis que possible dans votre description, renseignez chaque détails dont nous pourrions avoir besoin pour traiter votre requête." + +#: forms.py:358 +msgid "Urgency" +msgstr "Urgence" + +#: forms.py:359 +msgid "Please select a priority carefully." +msgstr "Veuillez choisir une priorité avec attention." + +#: forms.py:419 +msgid "Ticket Opened Via Web" +msgstr "Billet ouvert via le Web" + +#: forms.py:486 +msgid "Show Ticket List on Login?" +msgstr "Afficher la liste des billets lors de la connexion?" + +#: forms.py:487 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "Afficher la liste des billets lors de la connexion ? Dans le cas contraire, le tableau de bord sera affiché." + +#: forms.py:492 +msgid "E-mail me on ticket change?" +msgstr "M'envoyer un e-mail lors de changement pour le ticket?" + +#: forms.py:493 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "Si vous êtes le propriétaire d'un ticket et que le ticket est modifié via le web par quelqu'un d'autre, voulez-vous recevoir un courriel?" + +#: forms.py:498 +msgid "E-mail me when assigned a ticket?" +msgstr "M'envoyer un courriel lorsqu'on m'assigne un ticket?" + +#: forms.py:499 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "Si vous êtes affecté à un ticket via le web, voulez-vous recevoir un courriel?" + +#: forms.py:504 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "M'envoyer un courriel lorsqu'un ticket est modifié via l'API?" + +#: forms.py:505 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "Si un ticket est modifié par l'API, voulez-vous recevoir un courriel?" + +#: forms.py:510 +msgid "Number of tickets to show per page" +msgstr "Nombre de tickets à afficher par page" + +#: forms.py:511 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "Combien de tickets voulez-vous voir sur la page Liste des Tickets?" + +#: forms.py:518 +msgid "Use my e-mail address when submitting tickets?" +msgstr "Utiliser mon adresse e-mail lors de la soumission des tickets?" + +#: forms.py:519 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "Quand vous soumettez un ticket, voulez-vous d'utiliser automatiquement votre adresse e-mail comme adresse d'émetteur? Vous pouvez taper une autre adresse e-mail lors de la saisie du ticket en cas de besoin, cette option ne modifie que la valeur par défaut." + +#: models.py:35 models.py:261 models.py:503 models.py:817 models.py:853 +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket.html:178 templates/helpdesk/ticket_list.html:85 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:419 +msgid "Title" +msgstr "Titre" + +#: models.py:40 models.py:822 models.py:1206 +msgid "Slug" +msgstr "Slug" + +#: models.py:41 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "Ce slug est utilisé lors de la construction des ID tickets. Une fois définie, éssayez de ne pas le changer ou les email risquent de ne plus fonctionner" + +#: models.py:46 models.py:1054 models.py:1129 models.py:1203 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "Adresse E-Mail" + +#: models.py:49 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "Tous les e-mails sortants pour cette file d'attente utiliseront cette adresse e-mail. Si vous utilisez IMAP ou POP3, ce doit être l'adresse e-mail pour cette boîte aux lettres." + +#: models.py:55 models.py:794 +msgid "Locale" +msgstr "Localisation" + +#: models.py:59 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "Localisation de cette file d'attente. Toute la correspondance dans cette file sera dans cette langue." + +#: models.py:63 +msgid "Allow Public Submission?" +msgstr "Autoriser la publication publique?" + +#: models.py:66 +msgid "Should this queue be listed on the public submission form?" +msgstr "Cette file d'attente doit-elle être listée dans le formulaire public de soumission ?" + +#: models.py:71 +msgid "Allow E-Mail Submission?" +msgstr "Autoriser la publication E-Mail?" + +#: models.py:74 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "Voulez-vous du relever la boîte e-mail ci-dessous pour la création de nouveaux tickets?" + +#: models.py:79 +msgid "Escalation Days" +msgstr "Jours d'augmentation des priorités." + +#: models.py:82 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "Pour les tickets qui ne sont pas affectés, à quelle fréquence souhaitez-vous augmenter leur priorité? Mettre à 0 pour pas d'augmentation." + +#: models.py:87 +msgid "New Ticket CC Address" +msgstr "Nouvelle adresse \"copie à\" pour ce ticket" + +#: models.py:91 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "Chaque adresse mail saisie ici recevra une notification pour chaque ticket nouvellement créé dans cette file. Entrez une liste d'adresses mails séparées par des virgules." + +#: models.py:97 +msgid "Updated Ticket CC Address" +msgstr "Adresse \"copie à\" du ticket mise à jour" + +#: models.py:101 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "Chaque adresse mail saisie ici recevra une notification pour toute activité dans cette file (création de ticket, fermeture de ticket, mise à jour, changement de propriétaire, etc.). Entrez une liste d'adresses mails séparées par des virgules." + +#: models.py:108 +msgid "E-Mail Box Type" +msgstr "Type de boites mail" + +#: models.py:110 +msgid "POP 3" +msgstr "POP 3" + +#: models.py:110 +msgid "IMAP" +msgstr "IMAP" + +#: models.py:113 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "Type de serveur mail pour la création automatique de tickets depuis une boîte aux lettres - POP3 et IMAP sont supportés." + +#: models.py:118 +msgid "E-Mail Hostname" +msgstr "E-Mail Hostname" + +#: models.py:122 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "Votre adresse de serveur e-mail - soit le nom de domaine ou adresse IP. Peut être \"localhost\"." + +#: models.py:127 +msgid "E-Mail Port" +msgstr "E-Mail Port" + +#: models.py:130 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "Numéro de port à utiliser pour accéder aux e-mails. Par défaut, POP3 utilise le \"110\", et IMAP le \"143\". Cela peut différer sur certains serveurs. Laissez le champ vide pour utiliser les paramètres par défaut." + +#: models.py:136 +msgid "Use SSL for E-Mail?" +msgstr "Utiliser SSL pour les E-Mail?" + +#: models.py:139 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "Que ce soit pour utiliser SSL pour IMAP ou POP3 - les ports par défaut lorsque vous utilisez SSL sont 993 pour IMAP et 995 pour POP3." + +#: models.py:144 +msgid "E-Mail Username" +msgstr "Nom d'utilisateur E-Mail" + +#: models.py:148 +msgid "Username for accessing this mailbox." +msgstr "Nom d'utilisateur pour accéder à cette boîte aux lettres." + +#: models.py:152 +msgid "E-Mail Password" +msgstr "Mot de passe E-Mail" + +#: models.py:156 +msgid "Password for the above username" +msgstr "Mot de passe pour le nom d'utilisateur ci-dessus" + +#: models.py:160 +msgid "IMAP Folder" +msgstr "Dossier IMAP" + +#: models.py:164 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "Si vous utilisez IMAP, à partir de quel dossier souhaitez-vous extraire les messages? Cela vous permet d'utiliser un compte IMAP pour plusieurs files d'attente, en filtrant les messages sur votre serveur IMAP dans des dossiers distincts. Par défaut: INBOX." + +#: models.py:171 +msgid "E-Mail Check Interval" +msgstr "Périodicité de la vérification des e-mail." + +#: models.py:172 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "A quelle fréquence voulez vous vérifier cette boîte aux lettres? (En minutes)" + +#: models.py:191 templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "Files d'attente" + +#: models.py:245 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:138 +msgid "Open" +msgstr "Ouvert" + +#: models.py:246 templates/helpdesk/ticket.html:144 +#: templates/helpdesk/ticket.html.py:150 templates/helpdesk/ticket.html:155 +#: templates/helpdesk/ticket.html.py:159 +msgid "Reopened" +msgstr "Réouvert" + +#: models.py:247 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:139 templates/helpdesk/ticket.html.py:145 +#: templates/helpdesk/ticket.html:151 +msgid "Resolved" +msgstr "Résolu" + +#: models.py:248 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:140 templates/helpdesk/ticket.html.py:146 +#: templates/helpdesk/ticket.html:152 templates/helpdesk/ticket.html.py:156 +msgid "Closed" +msgstr "Fermé" + +#: models.py:249 templates/helpdesk/ticket.html:141 +#: templates/helpdesk/ticket.html.py:147 templates/helpdesk/ticket.html:160 +msgid "Duplicate" +msgstr "Doublon" + +#: models.py:253 +msgid "1. Critical" +msgstr "1. Critique" + +#: models.py:254 +msgid "2. High" +msgstr "2. Haut" + +#: models.py:255 +msgid "3. Normal" +msgstr "3. Normal" + +#: models.py:256 +msgid "4. Low" +msgstr "4. Faible" + +#: models.py:257 +msgid "5. Very Low" +msgstr "5. Très faible" + +#: models.py:271 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/ticket_list.html:82 +#: templates/helpdesk/ticket_list.html:225 +msgid "Created" +msgstr "Créé le" + +#: models.py:273 +msgid "Date this ticket was first created" +msgstr "Date de création du ticket" + +#: models.py:277 +msgid "Modified" +msgstr "Mis à jour" + +#: models.py:279 +msgid "Date this ticket was most recently changed." +msgstr "Dernière date de modification de ce ticket." + +#: models.py:283 templates/helpdesk/public_view_ticket.html:18 +#: templates/helpdesk/ticket_desc_table.html:42 +msgid "Submitter E-Mail" +msgstr "E-mail de l’Émetteur" + +#: models.py:286 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "L'émetteur recevra un e-mail pour tous les suivis pour cette tâche." + +#: models.py:295 +msgid "Assigned to" +msgstr "Assigné à" + +#: models.py:299 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:70 +#: templates/helpdesk/ticket_list.html:91 +#: templates/helpdesk/ticket_list.html:225 +msgid "Status" +msgstr "État" + +#: models.py:305 +msgid "On Hold" +msgstr "En attente" + +#: models.py:308 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "Si un ticket est en attente, sa priorité ne sera pas automatiquement augmentée." + +#: models.py:313 models.py:826 templates/helpdesk/public_view_ticket.html:41 +#: templates/helpdesk/ticket_desc_table.html:19 +msgid "Description" +msgstr "Description" + +#: models.py:316 +msgid "The content of the customers query." +msgstr "Contenu de la requête des clients." + +#: models.py:320 templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Resolution" +msgstr "Solution" + +#: models.py:323 +msgid "The resolution provided to the customer by our staff." +msgstr "La solution fournies au client par notre personnel." + +#: models.py:331 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "1 = Priorité la plus élevée , 5 = faible priorité" + +#: models.py:344 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "La date à laquelle la priorité de ce ticket à été dernièrement augmentée - mise à jour automatiquement par la direction / commandes / escalate_tickets.py." + +#: models.py:353 templates/helpdesk/ticket_desc_table.html:38 +#: views/feeds.py:95 views/feeds.py:121 views/feeds.py:173 views/staff.py:376 +msgid "Unassigned" +msgstr "Non assigné" + +#: models.py:392 +msgid " - On Hold" +msgstr " - En attente" + +#: models.py:394 +msgid " - Open dependencies" +msgstr "Dépendance ouverte" + +#: models.py:448 models.py:494 models.py:1117 models.py:1280 models.py:1309 +#: templates/helpdesk/public_homepage.html:78 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "Ticket" + +#: models.py:449 templates/helpdesk/navigation.html:17 +#: templates/helpdesk/ticket_list.html:2 +#: templates/helpdesk/ticket_list.html:224 +msgid "Tickets" +msgstr "Tickets" + +#: models.py:498 models.py:738 models.py:1047 models.py:1200 +msgid "Date" +msgstr "Date" + +#: models.py:510 views/staff.py:390 +msgid "Comment" +msgstr "Commentaire" + +#: models.py:516 +msgid "Public" +msgstr "Public" + +#: models.py:519 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "Les tickets publics sont visibles par l'émetteur et l'ensemble du personnel, mais les billets non-public ne peuvent être vus que par le personnel." + +#: models.py:527 models.py:922 models.py:1125 views/staff.py:1008 +#: views/staff.py:1014 views/staff.py:1020 views/staff.py:1026 +msgid "User" +msgstr "Utilisateur" + +#: models.py:531 templates/helpdesk/ticket.html:135 +msgid "New Status" +msgstr "Nouvel état" + +#: models.py:535 +msgid "If the status was changed, what was it changed to?" +msgstr "Si l'état a été modifié, en quoi l'a-t-il été?" + +#: models.py:542 models.py:566 models.py:628 +msgid "Follow-up" +msgstr "Suivi" + +#: models.py:543 +msgid "Follow-ups" +msgstr "Suivis" + +#: models.py:570 models.py:1285 +msgid "Field" +msgstr "Champ" + +#: models.py:575 +msgid "Old Value" +msgstr "Ancienne valeur" + +#: models.py:581 +msgid "New Value" +msgstr "Nouvelle valeur" + +#: models.py:589 +msgid "removed" +msgstr "retiré" + +#: models.py:591 +#, python-format +msgid "set to %s" +msgstr "défini à %s" + +#: models.py:593 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "changé de \"%(old_value)s\" à \"%(new_value)s\"" + +#: models.py:600 +msgid "Ticket change" +msgstr "Changement de ticket" + +#: models.py:601 +msgid "Ticket changes" +msgstr "Changements de ticket" + +#: models.py:632 +msgid "File" +msgstr "Fichier" + +#: models.py:637 +msgid "Filename" +msgstr "Nom de fichier" + +#: models.py:642 +msgid "MIME Type" +msgstr "Type MIME" + +#: models.py:647 +msgid "Size" +msgstr "Taille" + +#: models.py:648 +msgid "Size of this file in bytes" +msgstr "Poids de ce fichier en octets" + +#: models.py:665 +msgid "Attachment" +msgstr "Pièce jointe" + +#: models.py:666 +msgid "Attachments" +msgstr "Pièces jointes" + +#: models.py:685 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "Laissez vide pour permettre à cette réponse d'être utilisée pour toutes les files d'attente, ou sélectionner les files d'attente auxquelles vous souhaitez limiter cette réponse." + +#: models.py:690 models.py:733 models.py:1042 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "Nom" + +#: models.py:692 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "Seulement utilisé pour aider les utilisateurs à choisir une réponse - n'est pas afficher pour l'utilisateur." + +#: models.py:697 +msgid "Body" +msgstr "Body" + +#: models.py:698 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "Context disponible: {{ ticket }} - objet du ticket (eg {{ ticket.title }}); {{ queue }} - La file d'attente; et {{ user }} - l'utilisateur courant." + +#: models.py:705 +msgid "Pre-set reply" +msgstr "Réponse préétablie" + +#: models.py:706 +msgid "Pre-set replies" +msgstr "Réponse préétablie" + +#: models.py:727 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "Booléen (case à cocher oui / non)" + +#: models.py:739 +msgid "Date on which escalation should not happen" +msgstr "Jours exclus du processus d'augmentation des priorités" + +#: models.py:746 +msgid "Escalation exclusion" +msgstr "Exclusion priorités" + +#: models.py:747 +msgid "Escalation exclusions" +msgstr "Exclusion priorités" + +#: models.py:760 +msgid "Template Name" +msgstr "Nom du template" + +#: models.py:765 +msgid "Subject" +msgstr "Sujet" + +#: models.py:767 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "Cela sera préfixé avec \"[ticket.ticket] ticket.title\". Nous vous recommandons quelque chose de simple comme \"(Mis à jour\") ou \"(Fermé)\" - le même contexte est disponible en plain_text, ci-dessous." + +#: models.py:773 +msgid "Heading" +msgstr "Titre" + +#: models.py:775 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "Dans les e-mails HTML, ce sera le titre en haut de l'email - le même contexte est disponible dans le mode plain_text, ci-dessous." + +#: models.py:781 +msgid "Plain Text" +msgstr "Plain Text" + +#: models.py:782 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "Le contexte disponible inclue {{ ticket }}, {{ queue }}, et suivant le temps passé: {{ resolution }} ou {{ comment }}." + +#: models.py:788 +msgid "HTML" +msgstr "HTML" + +#: models.py:789 +msgid "The same context is available here as in plain_text, above." +msgstr "Le même contexte est disponible ici comme dans plain_text, ci-dessus." + +#: models.py:798 +msgid "Locale of this template." +msgstr "Langue de ce modèle." + +#: models.py:806 +msgid "e-mail template" +msgstr "Modèle d'e-mail" + +#: models.py:807 +msgid "e-mail templates" +msgstr "Modèles d'e-mail" + +#: models.py:834 +msgid "Knowledge base category" +msgstr "Catégorie de la base de connaissance" + +#: models.py:835 +msgid "Knowledge base categories" +msgstr "Catégories de la base de connaissance" + +#: models.py:849 templates/helpdesk/kb_index.html:11 +#: templates/helpdesk/public_homepage.html:11 +msgid "Category" +msgstr "Catégorie" + +#: models.py:858 +msgid "Question" +msgstr "Question" + +#: models.py:862 +msgid "Answer" +msgstr "Réponse" + +#: models.py:866 +msgid "Votes" +msgstr "Votes" + +#: models.py:867 +msgid "Total number of votes cast for this item" +msgstr "Nombre total de suffrages exprimés pour cet article" + +#: models.py:872 +msgid "Positive Votes" +msgstr "Votes positifs" + +#: models.py:873 +msgid "Number of votes for this item which were POSITIVE." +msgstr "Nombre de votes pour cet article qui ont été positifs." + +#: models.py:878 +msgid "Last Updated" +msgstr "Dernière mise à jour" + +#: models.py:879 +msgid "The date on which this question was most recently changed." +msgstr "La date à laquelle cette question a été la plus récemment modifiées." + +#: models.py:893 +msgid "Unrated" +msgstr "Non évalué" + +#: models.py:901 +msgid "Knowledge base item" +msgstr "Élément de la base de connaissance" + +#: models.py:902 +msgid "Knowledge base items" +msgstr "Éléments de la base de connaissance" + +#: models.py:926 templates/helpdesk/ticket_list.html:170 +msgid "Query Name" +msgstr "Nom de la requête" + +#: models.py:928 +msgid "User-provided name for this query" +msgstr "Nom de requête fournie par l'utilisateur" + +#: models.py:932 +msgid "Shared With Other Users?" +msgstr "Partager avec d'autres utilisateurs?" + +#: models.py:935 +msgid "Should other users see this query?" +msgstr "Les autres utilisateurs peuvent-ils voir cette requête?" + +#: models.py:939 +msgid "Search Query" +msgstr "Requête de recherche" + +#: models.py:940 +msgid "Pickled query object. Be wary changing this." +msgstr "Objets de requête. Changement non recommandé." + +#: models.py:950 +msgid "Saved search" +msgstr "Recherche sauvegardée" + +#: models.py:951 +msgid "Saved searches" +msgstr "Recherches sauvegardées" + +#: models.py:966 +msgid "Settings Dictionary" +msgstr "Préférences de dictionnaire" + +#: models.py:967 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "Il s'agit d'une représentation codée en base64 d'un dictionnaire Python. Ne pas modifier ce champ par l'admin." + +#: models.py:993 +msgid "User Setting" +msgstr "Paramètre utilisateur" + +#: models.py:994 templates/helpdesk/navigation.html:37 +#: templates/helpdesk/user_settings.html:6 +msgid "User Settings" +msgstr "Paramètres Utilisateurs" + +#: models.py:1036 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "Laissez vide cet e-mail pour qu'il soit ignoré par toutes les files d'attente, ou sélectionner les files d'attente qui doivent ignorer cet e-mail." + +#: models.py:1048 +msgid "Date on which this e-mail address was added" +msgstr "Date à laquelle cette adresse e-mail a été ajouté" + +#: models.py:1056 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "Entrez une adresse e-mail complète, ou des parties avec des caractères génériques, par exemple *@domain.com ou postmaster@*." + +#: models.py:1061 +msgid "Save Emails in Mailbox?" +msgstr "Sauvegarder les e-mails dans la boîte aux lettres?" + +#: models.py:1064 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "Voulez-vous enregistrer les courriels provenant de cette adresse dans la boîte aux lettres? Si ce n'est pas cochée, les e-mails de cette adresse seront supprimés." + +#: models.py:1101 +msgid "Ignored e-mail address" +msgstr "Adresse e-mail ignorée" + +#: models.py:1102 +msgid "Ignored e-mail addresses" +msgstr "Adresses e-mail ignorées" + +#: models.py:1124 +msgid "User who wishes to receive updates for this ticket." +msgstr "Utilisateurs qui désirent recevoir les mises à jour pour ce ticket." + +#: models.py:1132 +msgid "For non-user followers, enter their e-mail address" +msgstr "Pour des non-utilisateurs suivant les tickets, entrer leur adresse e-mail." + +#: models.py:1136 +msgid "Can View Ticket?" +msgstr "Est-il possible de voir le ticket?" + +#: models.py:1138 +msgid "Can this CC login to view the ticket details?" +msgstr "Le destinataire en copie peut-il se connecter pour voir les détails du ticket?" + +#: models.py:1142 +msgid "Can Update Ticket?" +msgstr "Est-il possible de mettre à jour le ticket?" + +#: models.py:1144 +msgid "Can this CC login and update the ticket?" +msgstr "Le destinataire en copie peut-il se connecter et mettre à jour le ticket?" + +#: models.py:1175 +msgid "Field Name" +msgstr "Nom du champ" + +#: models.py:1176 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "Utilisé dans la base de données et dans les coulisses. Doit être unique et se composer de lettres minuscules sans ponctuation." + +#: models.py:1181 +msgid "Label" +msgstr "Label" + +#: models.py:1183 +msgid "The display label for this field" +msgstr "Le label affiché pour ce champ" + +#: models.py:1187 +msgid "Help Text" +msgstr "Texte d'aide" + +#: models.py:1188 +msgid "Shown to the user when editing the ticket" +msgstr "Montré à l'utilisateur lors de l'édition du ticket" + +#: models.py:1194 +msgid "Character (single line)" +msgstr "Caractère (une seule ligne)" + +#: models.py:1195 +msgid "Text (multi-line)" +msgstr "Texte (multi-ligne)" + +#: models.py:1196 +msgid "Integer" +msgstr "Entier" + +#: models.py:1197 +msgid "Decimal" +msgstr "Décimal" + +#: models.py:1198 +msgid "List" +msgstr "Liste" + +#: models.py:1199 +msgid "Boolean (checkbox yes/no)" +msgstr "Booléen (case à cocher oui / non)" + +#: models.py:1201 +msgid "Time" +msgstr "Heure" + +#: models.py:1202 +msgid "Date & Time" +msgstr "Date & Heure" + +#: models.py:1204 +msgid "URL" +msgstr "URL" + +#: models.py:1205 +msgid "IP Address" +msgstr "Adresse IP" + +#: models.py:1210 +msgid "Data Type" +msgstr "Type de données" + +#: models.py:1212 +msgid "Allows you to restrict the data entered into this field" +msgstr "Permet de restreindre les données saisies dans ce domaine" + +#: models.py:1217 +msgid "Maximum Length (characters)" +msgstr "Longueur maximale (caractères)" + +#: models.py:1223 +msgid "Decimal Places" +msgstr "Décimales" + +#: models.py:1224 +msgid "Only used for decimal fields" +msgstr "Utilisé uniquement pour les champs décimaux" + +#: models.py:1230 +msgid "Add empty first choice to List?" +msgstr "Ajouter un premier choix à la liste ?" + +#: models.py:1232 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "Seulement pour la liste: ajoute une première entrée vide dans la liste des choix, ce qui impose à l'utilisateur de faire un choix actif." + +#: models.py:1236 +msgid "List Values" +msgstr "Valeurs de la liste" + +#: models.py:1237 +msgid "For list fields only. Enter one option per line." +msgstr "Pour les champs de la liste seulement. Entrez une option par ligne." + +#: models.py:1243 +msgid "Ordering" +msgstr "Commande" + +#: models.py:1244 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "Les plus petits nombres sont affichés en premiers ; les plus élevés sont listés après." + +#: models.py:1258 +msgid "Required?" +msgstr "Requis?" + +#: models.py:1259 +msgid "Does the user have to enter a value for this field?" +msgstr "L'utilisateur doit-il entrer une valeur pour ce champ?" + +#: models.py:1263 +msgid "Staff Only?" +msgstr "Equipe uniquement?" + +#: models.py:1264 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "Si cette option est cochée, le formulaire de soumission public ne pourra pas afficher ce champs" + +#: models.py:1273 +msgid "Custom field" +msgstr "Champ personnalisé" + +#: models.py:1274 +msgid "Custom fields" +msgstr "Champs personnalisés" + +#: models.py:1297 +msgid "Ticket custom field value" +msgstr "Valeur champs personnalisé billet" + +#: models.py:1298 +msgid "Ticket custom field values" +msgstr "Valeur champs personnalisé billet" + +#: models.py:1315 +msgid "Depends On Ticket" +msgstr "Dépend du ticket" + +#: models.py:1324 +msgid "Ticket dependency" +msgstr "Dépendance du ticket" + +#: models.py:1325 +msgid "Ticket dependencies" +msgstr "Dépendances du ticket" + +#: management/commands/create_usersettings.py:25 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "Recherche les utilisateurs sans django-helpdesk UserSettings et crée leur configuration si nécessaire. Utilise settings.DEFAULT_USER_SETTINGS que vous pouvez personnaliser pour s'adapter à vos besoins." + +#: management/commands/escalate_tickets.py:148 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "Ticket augmenté après %s days" + +#: management/commands/get_email.py:158 +msgid "Created from e-mail" +msgstr "Créé à partir de l'e-mail" + +#: management/commands/get_email.py:162 +msgid "Unknown Sender" +msgstr "Expéditeur inconnu" + +#: management/commands/get_email.py:216 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "Aucun e-mail en plain-text disponible. Veuillez voir la pièce jointe email_html_body.html." + +#: management/commands/get_email.py:220 +msgid "email_html_body.html" +msgstr "email_html_body.html" + +#: management/commands/get_email.py:263 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "E-mail reçu de %(sender_email)s " + +#: management/commands/get_email.py:271 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "Ticket re-ouvert par E-mail reçu de %(sender_email)s " + +#: management/commands/get_email.py:329 +msgid " (Reopened)" +msgstr "(Ré-ouvert)" + +#: management/commands/get_email.py:331 +msgid " (Updated)" +msgstr "(Mis à jour)" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"django-helpdesk." +msgstr "django-helpdesk." + +#: templates/helpdesk/base.html:10 +msgid "Powered by django-helpdesk" +msgstr "Propulsé par django-helpdesk" + +#: templates/helpdesk/base.html:20 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:24 templates/helpdesk/rss_list.html:31 +msgid "My Open Tickets" +msgstr "Mes Tickets Ouverts" + +#: templates/helpdesk/base.html:21 +msgid "All Recent Activity" +msgstr "Toute l'Activité Récente" + +#: templates/helpdesk/base.html:22 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "Tickets non-assignés" + +#: templates/helpdesk/base.html:52 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:18 +msgid "Helpdesk" +msgstr "Helpdesk" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:30 templates/helpdesk/rss_list.html:31 +msgid "RSS Icon" +msgstr "Icône RSS" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "Flux RSS" + +#: templates/helpdesk/base.html:63 +msgid "API" +msgstr "API" + +#: templates/helpdesk/base.html:64 templates/helpdesk/system_settings.html:6 +msgid "System Settings" +msgstr "Paramètres Systèmes" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:146 +msgid "Delete Saved Query" +msgstr "Supprimer la requête enregistrée" + +#: templates/helpdesk/confirm_delete_saved_query.html:6 +msgid "Delete Query" +msgstr "Supprimer la requête" + +#: templates/helpdesk/confirm_delete_saved_query.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this saved filter " +"(%(query_title)s)? To re-create it, you will need to manually re-" +"filter your ticket listing." +msgstr "Êtes vous certain de vouloir supprimer ce filtre enregistré (%(query_title)s)? Pour le recréer, vous devrez refiltrer la liste de ticket manuellement." + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"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." +msgstr "Vous avez partagé cette requête, il est donc possible que d'autres l'utilisent. Si vous la supprimez, il devront créer la leur manuellement." + +#: templates/helpdesk/confirm_delete_saved_query.html:14 +#: templates/helpdesk/delete_ticket.html:10 +msgid "No, Don't Delete It" +msgstr "Non, ne le supprimez pas." + +#: templates/helpdesk/confirm_delete_saved_query.html:16 +#: templates/helpdesk/delete_ticket.html:12 +msgid "Yes - Delete It" +msgstr "Oui, supprimez le." + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "Créer un ticket" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/navigation.html:65 templates/helpdesk/navigation.html:68 +#: templates/helpdesk/public_homepage.html:27 +msgid "Submit a Ticket" +msgstr "Soumettre un Ticket" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "Sauf mention contraire, tous les champs sont requis." + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +#: templates/helpdesk/public_homepage.html:28 +msgid "Please provide as descriptive a title and description as possible." +msgstr "Veuillez fournir un titre et une description aussi détaillés que possible." + +#: templates/helpdesk/create_ticket.html:30 +#: templates/helpdesk/public_homepage.html:55 +msgid "Submit Ticket" +msgstr "Soumettre un ticket" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "Tableau de bord Helpdesk" + +#: templates/helpdesk/dashboard.html:9 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "Bienvenue dans votre tableau de bord! D'ici vous pouvez rapidement voir les tickets que vous avez soumis, ceux sur lesquels vous travaillez et ceux qui n'ont pas de propriétaire." + +#: templates/helpdesk/dashboard.html:14 +msgid "Helpdesk Summary" +msgstr "Résumé Helpdesk" + +#: templates/helpdesk/dashboard.html:36 +msgid "Current Ticket Stats" +msgstr "Statistiques actuelles des tickets" + +#: templates/helpdesk/dashboard.html:37 +msgid "Average number of days until ticket is closed (all tickets): " +msgstr "Délai moyen de fermeture d'un ticket (tous tickets) :" + +#: templates/helpdesk/dashboard.html:38 +msgid "" +"Average number of days until ticket is closed (tickets opened in last 60 " +"days): " +msgstr "Délai moyen de fermeture d'un ticket (tickets ouverts dans les 60 derniers jours) :" + +#: templates/helpdesk/dashboard.html:39 +msgid "Click" +msgstr "Cliquer" + +#: templates/helpdesk/dashboard.html:39 +msgid "for detailed average by month." +msgstr "Pour la moyenne par mois détaillé" + +#: templates/helpdesk/dashboard.html:40 +msgid "Distribution of open tickets, grouped by time period:" +msgstr "Distribution des tickets ouverts, groupés par période temporelle :" + +#: templates/helpdesk/dashboard.html:41 +msgid "Days since opened" +msgstr "Jours passés depuis l'ouverture" + +#: templates/helpdesk/dashboard.html:41 +msgid "Number of open tickets" +msgstr "Nombre de tickets ouverts" + +#: templates/helpdesk/dashboard.html:57 +msgid "All Tickets submitted by you" +msgstr "Tous les tickets que vous avez soumis" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:225 +msgid "Pr" +msgstr "Pr" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:124 +msgid "Last Update" +msgstr "Dernière mise à jour" + +#: templates/helpdesk/dashboard.html:77 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "Tickets ouverts qui vous sont assignés (vous travaillez sur ce ticket)" + +#: templates/helpdesk/dashboard.html:92 +msgid "You have no tickets assigned to you." +msgstr "Vous n'avez aucun ticket qui vous est assigné." + +#: templates/helpdesk/dashboard.html:99 +msgid "(pick up a ticket if you start to work on it)" +msgstr "(assignez vous un ticket si vous commencez à travailler dessus)" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/ticket_desc_table.html:38 +msgid "Take" +msgstr "Prendre" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:262 +msgid "Delete" +msgstr "Supprimer" + +#: templates/helpdesk/dashboard.html:114 +msgid "There are no unassigned tickets." +msgstr "Il n'y a aucun ticket non assigné." + +#: templates/helpdesk/dashboard.html:123 +msgid "Closed & resolved Tickets you used to work on" +msgstr "Les tickets fermés et résolus sur lesquels vous avez travaillé." + +#: templates/helpdesk/delete_ticket.html:3 +#: templates/helpdesk/delete_ticket.html:6 +msgid "Delete Ticket" +msgstr "Supprimer le ticket" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this ticket (%(ticket_title)s)? All" +" traces of the ticket, including followups, attachments, and updates will be" +" irreversibly removed." +msgstr "Êtes vous certain de vouloir supprimer ce ticket (%(ticket_title)s) ? Toutes les traces associées, à savoir les relances, les pièces jointes et les mises à jour seront irrémédiablement supprimés." + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "Editer le ticket" + +#: templates/helpdesk/edit_ticket.html:9 +msgid "Edit a Ticket" +msgstr "Modification du ticket" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "Note" +msgstr "Note" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "" +"Editing a ticket does not send an e-mail to the ticket owner or " +"submitter. No new details should be entered, this form should only be used " +"to fix incorrect details or clean up the submission." +msgstr "Modifier un ticket n'envoie pas d'e-mail au propriétaire ou au rapporteur du ticket. Aucun détail ne doit être ajouté, ce formulaire doit juste être utilisé pour corriger des informations incorrectes ou nettoyer la soumission." + +#: templates/helpdesk/edit_ticket.html:33 +msgid "Save Changes" +msgstr "Sauvegarder les changements" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:6 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "Ignorer l'adresse e-mail" + +#: templates/helpdesk/email_ignore_add.html:8 +msgid "" +"To ignore an e-mail address and prevent any emails from that address " +"creating tickets automatically, enter the e-mail address below." +msgstr "Pour prévenir la réception et ignoré les courriels envoyé de cette adresse. entrez le courriel de l’adresse ci-dessous pour la création automatique de billet" + +#: templates/helpdesk/email_ignore_add.html:10 +msgid "" +"You can either enter a whole e-mail address such as " +"email@domain.com or a portion of an e-mail address with a wildcard," +" such as *@domain.com or user@*." +msgstr "Vous pouvez inscrire une adresse de courriel complet tel que email@domain.com ou en partie avec « wildcard » Tel que *@domain.com or user@*" + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "Supprimer l'adresse e-mail ignorée" + +#: templates/helpdesk/email_ignore_del.html:6 +msgid "Un-Ignore E-Mail Address" +msgstr "Ne plus ignorer l'adresse e-mail" + +#: templates/helpdesk/email_ignore_del.html:8 +#, python-format +msgid "" +"Are you sure you wish to stop removing this email address " +"(%(email_address)s) and allow their e-mails to automatically create" +" tickets in your system? You can re-add this e-mail address at any time." +msgstr "Êtes-vous certain de vouloir retirer le courriel (%(email_address)s) et de permettre la création automatique des billets dans votre system? Vous pouvez remettre le courriel en tout temps" + +#: templates/helpdesk/email_ignore_del.html:10 +msgid "Keep Ignoring It" +msgstr "Continuer à ignorer" + +#: templates/helpdesk/email_ignore_del.html:12 +msgid "Stop Ignoring It" +msgstr "Arrêter de l'ignorer" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "Liste des adresses e-mail ignorées" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "\n

Adresses E-Mail Ignorées

\n\n

Les adresses e-mail suivantes sont actuellement ignorées par le traitement du courrier électronique entrant. Vous pouvez ajouter une adresse e-mail à la liste ou supprimer l'un des éléments ci-dessous, au besoin.

" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "Date ajoutée" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "Conserver dans la boîte aux lettres?" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:260 +msgid "All" +msgstr "Tout" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "Conserver" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "Note: Si l'option «Garder» n'est pas sélectionnée, les courriels envoyés à partir de cette adresse seront définitivement supprimés." + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "Modifier le suivi" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "Modifier le suivi" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "Réattribuer le ticket:" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "Titre :" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "Commentaire :" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:12 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "Catégorie de la Base de connaissances: %(kbcat)s " + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "Vous lisez tous les articles dans la catégorie %(kbcat)s." + +#: templates/helpdesk/kb_category.html:13 +msgid "Article" +msgstr "Article" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:21 +#: templates/helpdesk/navigation.html:71 +msgid "Knowledgebase" +msgstr "Base de connaissance" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "Nous avons listé un certain nombre d'articles de la base pour votre lecture dans les catégories suivantes. Veuillez vérifier si l'un de ces articles traite de votre problème avant d'ouvrir un nouveau ticket." + +#: templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Knowledgebase Categories" +msgstr "Catégories de la base de connaissance" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "Base de connaissances: %(item)s" + +#: templates/helpdesk/kb_item.html:16 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "Voir les autres%(category_title)s articles, ou continuer à lire les articles de la base de connaissances ." + +#: templates/helpdesk/kb_item.html:18 +msgid "Feedback" +msgstr "Commentaires" + +#: templates/helpdesk/kb_item.html:20 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "Nous donnons à nos utilisateurs la possibilité de voter pour les articles qu'ils estiment les avoir aidés, afin que nous puissions mieux servir les clients futurs. Nous aimerions recevoir vos commentaires sur cet article. L'avez-vous trouvé utile?" + +#: templates/helpdesk/kb_item.html:23 +msgid "This article was useful to me" +msgstr "Cet article a été utile pour moi" + +#: templates/helpdesk/kb_item.html:24 +msgid "This article was not useful to me" +msgstr "Cet article n'a pas été utile pour moi" + +#: templates/helpdesk/kb_item.html:27 +msgid "The results of voting by other readers of this article are below:" +msgstr "Les résultats du vote par d'autres lecteurs du présent article sont ci-dessous:" + +#: templates/helpdesk/kb_item.html:30 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "Recommendations : %(recommendations)s" + +#: templates/helpdesk/kb_item.html:31 +#, python-format +msgid "Votes: %(votes)s" +msgstr "Votes : %(votes)s" + +#: templates/helpdesk/kb_item.html:32 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "Note globale: %(score)s " + +#: templates/helpdesk/navigation.html:16 templates/helpdesk/navigation.html:64 +msgid "Dashboard" +msgstr "Tableau de bord" + +#: templates/helpdesk/navigation.html:18 +msgid "New Ticket" +msgstr "Nouveau Ticket" + +#: templates/helpdesk/navigation.html:19 +msgid "Stats" +msgstr "Statistiques" + +#: templates/helpdesk/navigation.html:24 +msgid "Saved Query" +msgstr "Requête sauvegardée" + +#: templates/helpdesk/navigation.html:39 +msgid "Change password" +msgstr "Changer le mot de passe" + +#: templates/helpdesk/navigation.html:50 +msgid "Search..." +msgstr "Rechercher ..." + +#: templates/helpdesk/navigation.html:50 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "Entrez un mot clé ou un numéro de ticket pour aller directement à ce ticket." + +#: templates/helpdesk/navigation.html:73 +msgid "Logout" +msgstr "Déconnexion" + +#: templates/helpdesk/navigation.html:73 +msgid "Log In" +msgstr "Connexion" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:73 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "Voir un ticket" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "Changer la langue d'affichage" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "Base de connaissances des articles" + +#: templates/helpdesk/public_homepage.html:28 +msgid "All fields are required." +msgstr "Tous les champs sont obligatoires." + +#: templates/helpdesk/public_homepage.html:66 +msgid "Please use button at upper right to login first." +msgstr "Veuillez utiliser le boutton en haut à droite pour vous connecter." + +#: templates/helpdesk/public_homepage.html:82 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "Votre adresse e-mail" + +#: templates/helpdesk/public_homepage.html:86 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "Voir un Ticket" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "Impossible d'ouvrir le ticket" + +#: templates/helpdesk/public_spam.html:5 +msgid "Sorry, but there has been an error trying to submit your ticket." +msgstr "Désolé, une erreur est survenue en essayant de soumettre votre ticket." + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"Our system has marked your submission as spam, so we are " +"unable to save it. If this is not spam, please press back and re-type your " +"message. Be careful to avoid sounding 'spammy', and if you have heaps of " +"links please try removing them if possible." +msgstr "Notre système a classé votre soumission comme spam, alors nous dans l’impossibilité de le sauvegarder. Si ceci n’est pas du spam, svp appuyer recul et retaper votre message en s’assurant de ne pas être « Spammy », si vous avez beaucoup de Liens, svp les retirés." + +#: templates/helpdesk/public_spam.html:7 +msgid "" +"We are sorry for any inconvenience, however this check is required to avoid " +"our helpdesk resources being overloaded by spammers." +msgstr "Nous somme désolé pour cette inconvénients, mais cette vérification est nécessaire pour évité que notre ressource Helpdesk soit inondée par les spammeur" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "Erreur :" + +#: templates/helpdesk/public_view_ticket.html:9 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "File d'attente: %(queue_name)s " + +#: templates/helpdesk/public_view_ticket.html:13 +#: templates/helpdesk/ticket_desc_table.html:32 +msgid "Submitted On" +msgstr "Soumis le" + +#: templates/helpdesk/public_view_ticket.html:35 +msgid "Tags" +msgstr "Tags" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept" +msgstr "Accepter" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept and Close" +msgstr "Accepter et Fermer" + +#: templates/helpdesk/public_view_ticket.html:57 +#: templates/helpdesk/ticket.html:66 +msgid "Follow-Ups" +msgstr "Suivis" + +#: templates/helpdesk/public_view_ticket.html:65 +#: templates/helpdesk/ticket.html:100 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "Changé %(field)s de %(old_value)s à %(new_value)s." + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "Rapports & Statistiques" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "Vous n'avez encore créé aucun ticket, vous ne pouvez donc exécuter aucun rapport." + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "Rapports par Utilisateur" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "par Priorité" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "par File" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "par Status" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "par Mois" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "Rapports par File" + +#: templates/helpdesk/report_index.html:27 views/staff.py:1049 +msgid "Days until ticket closed by Month" +msgstr "Jours avant fermeture d'un ticket par mois" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "Vous pouvez exécuter cette requête sur des données filtrées en utilisant l'une de vos requêtes enregistrées." + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "Selectionnez une requête :" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "Filtrer le rapport" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "Vous voulez filtrer ce rapport juste pour montrer un sous-ensemble de données ? Aller à la liste des billets, filtrez votre requête, et enregistrez votre requête." + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "Les flux RSS suivants sont à votre disposition pour veiller à l'aide de votre logiciel préféré RSS. À l'exception de \"Activité Récente\", tous les flux fournissent des informations uniquement sur les cas Ouverts ou Ré-ouvert. Ainsi, votre lecteur de flux RSS n'est pas plein d'informations sur les tâches fermées ou historiques." + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "Un résumé de vos tickets ouverts - utile pour être alerté lorsqu'un nouveau ticket arrive pour vous" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "Dernière activité" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "Un résumé de l'activité sur le helpdesk - y compris les commentaires, courriels, pièces jointes, et plus" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "Tous les tickets non assignés - utile pour être alerté des nouveaux tickets ouverts par le public via le web ou par e-mail" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "Ces flux RSS vous permettent d’avoir un sommaire de vos billets ou tous les billets, pour chacune des files dans votre helpdesk. Par exemple si vous êtes responsable d’une file particulière, ceci vous permet de visionner tous les nouveaux billet entrant." + +#: templates/helpdesk/rss_list.html:23 +msgid "Per-Queue Feeds" +msgstr "Flux par File" + +#: templates/helpdesk/rss_list.html:24 +msgid "All Open Tickets" +msgstr "Tous les tickets ouverts" + +#: templates/helpdesk/rss_list.html:30 +msgid "Open Tickets" +msgstr "Tickets Ouverts" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "Modifier les paramètres systèmes" + +#: templates/helpdesk/system_settings.html:8 +msgid "The following items can be maintained by you or other superusers:" +msgstr "Les items suivant peuvent être maintenus par vous ou par des super usagers :" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "Liste des adresses mails ignorés." + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "Gérer les files d'attente" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "Gérer les réponses pré-définies" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "Gérer les catégories de la Base de Connaissance" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "Gérer la Base de Connaissance" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "Gérer les templates e-mail" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "Gérer les utilisateurs" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "Voir les détails du ticket" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "Attacher un autre fichier" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:200 +msgid "Add Another File" +msgstr "Ajouter un autre fichier" + +#: templates/helpdesk/ticket.html:73 templates/helpdesk/ticket.html.py:86 +msgid "Private" +msgstr "Privé" + +#: templates/helpdesk/ticket.html:119 +msgid "Respond to this ticket" +msgstr "Répondre à ce ticket" + +#: templates/helpdesk/ticket.html:126 +msgid "Use a Pre-set Reply" +msgstr "Utiliser une réponse pré-enregistré" + +#: templates/helpdesk/ticket.html:126 templates/helpdesk/ticket.html.py:166 +msgid "(Optional)" +msgstr "(Optionnel)" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "Sélectionner une réponse prédéfinie effacera votre commentaire ci-dessous. Vous pouvez ensuite modifier la réponse prédéfinie à votre guise avant d'enregistrer cette mise à jour." + +#: templates/helpdesk/ticket.html:131 +msgid "Comment / Resolution" +msgstr "Commentaire / Solution" + +#: templates/helpdesk/ticket.html:133 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "Vous pouvez insérer des tickets et des détails dans votre message. Pour plus d'informations, consultez la page d'aide contextuelle ." + +#: templates/helpdesk/ticket.html:136 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "Ce ticket ne peut être résolu ou fermé tant que les tickets desquels il dépend n'ont pas été résolus." + +#: templates/helpdesk/ticket.html:166 +msgid "Is this update public?" +msgstr "Cette mise à jour est-elle publique ?" + +#: templates/helpdesk/ticket.html:168 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "Si elle est public, l'émetteur recevra vos commentaires ou la solution par courriel." + +#: templates/helpdesk/ticket.html:172 +msgid "Change Further Details »" +msgstr "Faire d'autres changement »" + +#: templates/helpdesk/ticket.html:181 templates/helpdesk/ticket_list.html:68 +#: templates/helpdesk/ticket_list.html:97 +#: templates/helpdesk/ticket_list.html:225 +msgid "Owner" +msgstr "Propriétaire" + +#: templates/helpdesk/ticket.html:182 +msgid "Unassign" +msgstr "Non assigné" + +#: templates/helpdesk/ticket.html:193 +msgid "Attach File(s) »" +msgstr "Attacher des fichiers »" + +#: templates/helpdesk/ticket.html:199 +msgid "Attach a File" +msgstr "Joindre un fichier" + +#: templates/helpdesk/ticket.html:207 +msgid "Update This Ticket" +msgstr "Mettre à jour ce Ticket" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "Ajouter le destinataire en copie" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "\n

Ajouter Ticket CC

\n\n

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.

" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "CC sauvegarder billet" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "Supprimer le \"copie à\" pour ce destinataire" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "\n

Supprimer Ticket CC

\n\n

Êtes-vous sûr de vouloir supprimer cette adresse e-mail ( %(email_address)s ) de la liste CC pour ce ticket? Ils ne recevront plus les mises à jour.

\n" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "Ne pas supprimer" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "Oui, supprimer" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "Paramètres \"copie à\" du ticket" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "\n

Paramètres Ticket CC

\n\n

Les personnes suivantes recevront un e-mail à chaque fois que %(ticket_title)s est mis à jour. Certaines personnes peuvent également consulter ou modifier le ticket via la page des tickets publics.

\n\n

Vous pouvez ajouter une adresse e-mail à la liste ou supprimer l'un des éléments ci-dessous, au besoin.

" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "Liste des destinataires en copie" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "Voir?" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "Mettre à jour?" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "Retourner à %(ticket_title)s" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "Ajouter une dépendance à un ticket" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "\n

Ajouter une dépendance à un ticket

\n\n

Ajouter une dépendance va vous empêcher de résoudre ce billet jusqu'à ce que le billet en question ai été résolu ou fermé.

" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "Enregistrer la dépendance" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "Supprimer la dépendance" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "\n

Delete Ticket Dependency

\n\n

Are you sure you wish to remove the dependency on this ticket?

\n" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Unhold" +msgstr "Reprendre" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Hold" +msgstr "Pause" + +#: templates/helpdesk/ticket_desc_table.html:9 +#, python-format +msgid "Queue: %(queue)s" +msgstr "File d'attente: %(queue)s" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Assigned To" +msgstr "Assigné à" + +#: templates/helpdesk/ticket_desc_table.html:43 +msgid "Ignore" +msgstr "Ignorer" + +#: templates/helpdesk/ticket_desc_table.html:52 +msgid "Copies To" +msgstr "Copies à" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Manage" +msgstr "Gérer" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "Cliquez ici pour ajouter / supprimer des personnes qui pourrait recevoir un e-mail lorsque ce ticket est mis à jour." + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Subscribe" +msgstr "Souscrire" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to subscribe yourself to this ticket, if you want to receive an " +"e-mail whenever this ticket is updated." +msgstr "Cliquez ici pour souscrire à ce ticket si vous souhaitez recevoir un e-mail dès que ce dernier est mis à jour." + +#: templates/helpdesk/ticket_desc_table.html:57 +msgid "Dependencies" +msgstr "Dépendances" + +#: templates/helpdesk/ticket_desc_table.html:59 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "Ce ticket ne peut être résolu tant que le(s) ticket(s) suivant(s) n'ont pas été résolu(s)" + +#: templates/helpdesk/ticket_desc_table.html:60 +msgid "Remove Dependency" +msgstr "Supprimer la dépendance" + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "This ticket has no dependencies." +msgstr "Ce ticket ne dépend d'aucun autre." + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "Add Dependency" +msgstr "Ajouter une dépendance" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "Cliquez sur 'Ajouter une dépendance' si vous voulez faire dépendre ce ticket d'un autre. Un ticket ne peut être fermé tant que les tickets dont il dépend ne sont pas fermés." + +#: templates/helpdesk/ticket_list.html:59 +msgid "Change Query" +msgstr "Changer la requête" + +#: templates/helpdesk/ticket_list.html:67 +#: templates/helpdesk/ticket_list.html:79 +msgid "Sorting" +msgstr "Tri" + +#: templates/helpdesk/ticket_list.html:71 +#: templates/helpdesk/ticket_list.html:139 +msgid "Keywords" +msgstr "Mots-clés" + +#: templates/helpdesk/ticket_list.html:72 +msgid "Date Range" +msgstr "Période temporelle" + +#: templates/helpdesk/ticket_list.html:100 +msgid "Reverse" +msgstr "Renverser" + +#: templates/helpdesk/ticket_list.html:102 +msgid "Ordering applied to tickets" +msgstr "Tri appliqué aux tickets" + +#: templates/helpdesk/ticket_list.html:107 +msgid "Owner(s)" +msgstr "Propriétaire(s)" + +#: templates/helpdesk/ticket_list.html:111 +msgid "(ME)" +msgstr "(MOI)" + +#: templates/helpdesk/ticket_list.html:115 +msgid "Ctrl-Click to select multiple options" +msgstr "Ctrl-Click pour sélectionner plusieurs options" + +#: templates/helpdesk/ticket_list.html:120 +msgid "Queue(s)" +msgstr "File(s) d'attente" + +#: templates/helpdesk/ticket_list.html:121 +#: templates/helpdesk/ticket_list.html:127 +msgid "Ctrl-click to select multiple options" +msgstr "Ctrl-click pour sélectionner plusieurs options" + +#: templates/helpdesk/ticket_list.html:126 +msgid "Status(es)" +msgstr "État(s)" + +#: templates/helpdesk/ticket_list.html:132 +msgid "Date (From)" +msgstr "Date (du)" + +#: templates/helpdesk/ticket_list.html:133 +msgid "Date (To)" +msgstr "Date (au)" + +#: templates/helpdesk/ticket_list.html:134 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "Utilisez le format de date AAAA-MM-JJ, ex 2011-05-29" + +#: templates/helpdesk/ticket_list.html:140 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "Les mots clés sont insensibles à la case et seront appliqués aux champs titre, corps de texte et rapporteur." + +#: templates/helpdesk/ticket_list.html:144 +msgid "Apply Filter" +msgstr "Appliquer le filtre" + +#: templates/helpdesk/ticket_list.html:146 +#, python-format +msgid "You are currently viewing saved query \"%(query_name)s\"." +msgstr "Vous visionnez la requête \\\"%(query_name)s\\\"." + +#: templates/helpdesk/ticket_list.html:149 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "Exécuté un rapport surcette requête pour voir les statistique et graphique pour les data ci-dessous." + +#: templates/helpdesk/ticket_list.html:162 +#: templates/helpdesk/ticket_list.html:181 +msgid "Save Query" +msgstr "Enregistrer la requête" + +#: templates/helpdesk/ticket_list.html:172 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "Ce nom apparaît dans la liste déroulante des requêtes enregistrées. Si vous partagez votre requête, les autres utilisateurs verront ce nom, choisissez alors quelque chose de clair et représentatif!" + +#: templates/helpdesk/ticket_list.html:174 +msgid "Shared?" +msgstr "Partagée ?" + +#: templates/helpdesk/ticket_list.html:175 +msgid "Yes, share this query with other users." +msgstr "Oui, partager cette requête avec les autres utilisateurs." + +#: templates/helpdesk/ticket_list.html:176 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "Si vous partagez cette requête, elle sera visible par tous les autres utilisateurs connectés." + +#: templates/helpdesk/ticket_list.html:195 +msgid "Use Saved Query" +msgstr "Utiliser la requête enregistrée" + +#: templates/helpdesk/ticket_list.html:202 +msgid "Query" +msgstr "Requête" + +#: templates/helpdesk/ticket_list.html:207 +msgid "Run Query" +msgstr "Exécuter la requête" + +#: templates/helpdesk/ticket_list.html:240 +msgid "No Tickets Match Your Selection" +msgstr "Aucun ticket correspondant à votre sélection" + +#: templates/helpdesk/ticket_list.html:247 +msgid "Previous" +msgstr "Précédent" + +#: templates/helpdesk/ticket_list.html:251 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "Page %(ticket_num)s sur %(num_pages)s." + +#: templates/helpdesk/ticket_list.html:255 +msgid "Next" +msgstr "Suivant" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Select:" +msgstr "Sélectionner" + +#: templates/helpdesk/ticket_list.html:260 +msgid "None" +msgstr "Aucune" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Inverse" +msgstr "Inverser" + +#: templates/helpdesk/ticket_list.html:262 +msgid "With Selected Tickets:" +msgstr "Avec les tickets sélectionnés" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Take (Assign to me)" +msgstr "Prendre (assigné ce ticket à mon compte)" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close" +msgstr "Fermé" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Don't Send E-Mail)" +msgstr "Fermé (ne pas envoyer l'e-mail)" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Send E-Mail)" +msgstr "Fermé (envoyer l'e-mail)" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Assign To" +msgstr "Assigné à" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Nobody (Unassign)" +msgstr "Nul (non assigné)" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "Modifier les paramètres de l'utilisateur" + +#: templates/helpdesk/user_settings.html:8 +msgid "" +"Use the following options to change the way your helpdesk system works for " +"you. These settings do not impact any other user." +msgstr "Utilisez les options ci-dessous pour changer personnaliser le fonctionnement du centre d'assistance. Ces paramètres n'impactent pas les autres utilisateurs." + +#: templates/helpdesk/user_settings.html:14 +msgid "Save Options" +msgstr "Enregistrer les options" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "Déconnecté" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "\n

Déconnecté

\n\n

Merci d'être passé. J'espère que vous avez aidé à résoudre quelques tickets et faire du monde un meilleur endroit.

\n" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "Identifiant Helpdesk" + +#: templates/helpdesk/registration/login.html:14 +msgid "To log in simply enter your username and password below." +msgstr "Renseignez votre nom d'utilisateur et votre mot de passe ci-dessous pour vous connecter." + +#: templates/helpdesk/registration/login.html:17 +msgid "Your username and password didn't match. Please try again." +msgstr "Votre nom d'utilisateur et mot de passe ne correspondent pas. Veuillez essayer de nouveau." + +#: templates/helpdesk/registration/login.html:20 +msgid "Login" +msgstr "Identifiant" + +#: views/feeds.py:39 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "Helpdesk: Ticket ouvert pour %(username)s dans la file d'attente %(queue)s " + +#: views/feeds.py:44 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "Helpdesk: Tickets ouverts pour %(username)s " + +#: views/feeds.py:50 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "Tickets Ouverts et Ré-ouverts pour %(username)s dans la file d'attente %(queue)s " + +#: views/feeds.py:55 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "Tickets Ouverts et Ré-ouverts pour %(username)s" + +#: views/feeds.py:102 +msgid "Helpdesk: Unassigned Tickets" +msgstr "Helpdesk: Tickets Non assignés" + +#: views/feeds.py:103 +msgid "Unassigned Open and Reopened tickets" +msgstr "Tickets Ouverts et Ré-ouverts Non-assignés" + +#: views/feeds.py:128 +msgid "Helpdesk: Recent Followups" +msgstr "Helpdesk: Suivis Récents" + +#: views/feeds.py:129 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "Suivis récents, tels que réponses e-mail, commentaires, pièces-jointes et solutions" + +#: views/feeds.py:144 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "Helpdesk: Tickets Ouverts dans la file d'attente %(queue)s" + +#: views/feeds.py:149 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "Tickets Ouverts et Ré-ouverts dans la file d'attente %(queue)s" + +#: views/public.py:89 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "Ticket ID ou adresse e-mail invalide. Veuillez essayer de nouveau." + +#: views/public.py:107 +msgid "Submitter accepted resolution and closed ticket" +msgstr "L'émetteur a accepté la solution et fermé le ticket." + +#: views/staff.py:235 +msgid "Accepted resolution and closed ticket" +msgstr "Solution acceptée et ticket fermé" + +#: views/staff.py:369 +#, python-format +msgid "Assigned to %(username)s" +msgstr "Assigné à %(username)s " + +#: views/staff.py:392 +msgid "Updated" +msgstr "Mis à jour" + +#: views/staff.py:577 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "Assigné à %(username)s en mise à jour en masse" + +#: views/staff.py:582 +msgid "Unassigned in bulk update" +msgstr "Non assigné en mise à jour en masse" + +#: views/staff.py:587 views/staff.py:592 +msgid "Closed in bulk update" +msgstr "Fermé pendant mise à jour en masse" + +#: views/staff.py:806 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "

Note: Votre recherche par mot clé est sensible à la casse à cause de votre base de données. Cela signifie que la recherche ne sera pas exacte. En passant à un système de base de données différents, la recherche sera plus efficace! Pour plus d'informations, lisez la documentation de Django sur la recherche de chaîne avec SQLite ." + +#: views/staff.py:910 +msgid "Ticket taken off hold" +msgstr "Ticket repris" + +#: views/staff.py:913 +msgid "Ticket placed on hold" +msgstr "Ticket mis en pause" + +#: views/staff.py:1007 +msgid "User by Priority" +msgstr "Utilisateur par Priorité" + +#: views/staff.py:1013 +msgid "User by Queue" +msgstr "Utilisateur par File" + +#: views/staff.py:1019 +msgid "User by Status" +msgstr "Utilisateur par État" + +#: views/staff.py:1025 +msgid "User by Month" +msgstr "Utilisateurs par Mois" + +#: views/staff.py:1031 +msgid "Queue by Priority" +msgstr "File par Priorité" + +#: views/staff.py:1037 +msgid "Queue by Status" +msgstr "File par État" + +#: views/staff.py:1043 +msgid "Queue by Month" +msgstr "File par Mois" diff --git a/build/lib/helpdesk/locale/he_IL/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/he_IL/LC_MESSAGES/django.mo new file mode 100644 index 00000000..021669a7 Binary files /dev/null and b/build/lib/helpdesk/locale/he_IL/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/he_IL/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/he_IL/LC_MESSAGES/django.po new file mode 100644 index 00000000..2d3b819b --- /dev/null +++ b/build/lib/helpdesk/locale/he_IL/LC_MESSAGES/django.po @@ -0,0 +1,2393 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2014-07-26 14:14+0200\n" +"PO-Revision-Date: 2011-02-06 23:10+0000\n" +"Last-Translator: Ross Poulton \n" +"Language-Team: Hebrew (Israel) (http://www.transifex.com/rossp/django-helpdesk/language/he_IL/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: he_IL\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: forms.py:128 forms.py:328 models.py:190 models.py:267 +#: templates/helpdesk/dashboard.html:15 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/dashboard.html:124 templates/helpdesk/rss_list.html:24 +#: templates/helpdesk/ticket_list.html:69 +#: templates/helpdesk/ticket_list.html:88 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:1032 +#: views/staff.py:1038 views/staff.py:1044 views/staff.py:1050 +msgid "Queue" +msgstr "" + +#: forms.py:137 +msgid "Summary of the problem" +msgstr "" + +#: forms.py:142 +msgid "Submitter E-Mail Address" +msgstr "" + +#: forms.py:144 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "" + +#: forms.py:150 +msgid "Description of Issue" +msgstr "" + +#: forms.py:157 +msgid "Case owner" +msgstr "" + +#: forms.py:158 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "" + +#: forms.py:166 models.py:327 management/commands/escalate_tickets.py:154 +#: templates/helpdesk/public_view_ticket.html:23 +#: templates/helpdesk/ticket.html:184 +#: templates/helpdesk/ticket_desc_table.html:47 +#: templates/helpdesk/ticket_list.html:94 views/staff.py:429 +msgid "Priority" +msgstr "" + +#: forms.py:167 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "" + +#: forms.py:174 forms.py:365 models.py:335 templates/helpdesk/ticket.html:186 +#: views/staff.py:439 +msgid "Due on" +msgstr "" + +#: forms.py:186 forms.py:370 +msgid "Attach File" +msgstr "" + +#: forms.py:187 forms.py:371 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "" + +#: forms.py:240 +msgid "Ticket Opened" +msgstr "" + +#: forms.py:247 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "" + +#: forms.py:337 +msgid "Summary of your query" +msgstr "" + +#: forms.py:342 +msgid "Your E-Mail Address" +msgstr "" + +#: forms.py:343 +msgid "We will e-mail you when your ticket is updated." +msgstr "" + +#: forms.py:348 +msgid "Description of your issue" +msgstr "" + +#: forms.py:350 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "" + +#: forms.py:358 +msgid "Urgency" +msgstr "" + +#: forms.py:359 +msgid "Please select a priority carefully." +msgstr "" + +#: forms.py:419 +msgid "Ticket Opened Via Web" +msgstr "" + +#: forms.py:486 +msgid "Show Ticket List on Login?" +msgstr "" + +#: forms.py:487 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "" + +#: forms.py:492 +msgid "E-mail me on ticket change?" +msgstr "" + +#: forms.py:493 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:498 +msgid "E-mail me when assigned a ticket?" +msgstr "" + +#: forms.py:499 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:504 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "" + +#: forms.py:505 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:510 +msgid "Number of tickets to show per page" +msgstr "" + +#: forms.py:511 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "" + +#: forms.py:518 +msgid "Use my e-mail address when submitting tickets?" +msgstr "" + +#: forms.py:519 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "" + +#: models.py:35 models.py:261 models.py:503 models.py:817 models.py:853 +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket.html:178 templates/helpdesk/ticket_list.html:85 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:419 +msgid "Title" +msgstr "" + +#: models.py:40 models.py:822 models.py:1206 +msgid "Slug" +msgstr "" + +#: models.py:41 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "" + +#: models.py:46 models.py:1054 models.py:1129 models.py:1203 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "" + +#: models.py:49 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "" + +#: models.py:55 models.py:794 +msgid "Locale" +msgstr "" + +#: models.py:59 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "" + +#: models.py:63 +msgid "Allow Public Submission?" +msgstr "" + +#: models.py:66 +msgid "Should this queue be listed on the public submission form?" +msgstr "" + +#: models.py:71 +msgid "Allow E-Mail Submission?" +msgstr "" + +#: models.py:74 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "" + +#: models.py:79 +msgid "Escalation Days" +msgstr "" + +#: models.py:82 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "" + +#: models.py:87 +msgid "New Ticket CC Address" +msgstr "" + +#: models.py:91 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "" + +#: models.py:97 +msgid "Updated Ticket CC Address" +msgstr "" + +#: models.py:101 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "" + +#: models.py:108 +msgid "E-Mail Box Type" +msgstr "" + +#: models.py:110 +msgid "POP 3" +msgstr "" + +#: models.py:110 +msgid "IMAP" +msgstr "" + +#: models.py:113 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "" + +#: models.py:118 +msgid "E-Mail Hostname" +msgstr "" + +#: models.py:122 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "" + +#: models.py:127 +msgid "E-Mail Port" +msgstr "" + +#: models.py:130 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "" + +#: models.py:136 +msgid "Use SSL for E-Mail?" +msgstr "" + +#: models.py:139 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "" + +#: models.py:144 +msgid "E-Mail Username" +msgstr "" + +#: models.py:148 +msgid "Username for accessing this mailbox." +msgstr "" + +#: models.py:152 +msgid "E-Mail Password" +msgstr "" + +#: models.py:156 +msgid "Password for the above username" +msgstr "" + +#: models.py:160 +msgid "IMAP Folder" +msgstr "" + +#: models.py:164 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "" + +#: models.py:171 +msgid "E-Mail Check Interval" +msgstr "" + +#: models.py:172 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "" + +#: models.py:191 templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "" + +#: models.py:245 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:138 +msgid "Open" +msgstr "" + +#: models.py:246 templates/helpdesk/ticket.html:144 +#: templates/helpdesk/ticket.html.py:150 templates/helpdesk/ticket.html:155 +#: templates/helpdesk/ticket.html.py:159 +msgid "Reopened" +msgstr "" + +#: models.py:247 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:139 templates/helpdesk/ticket.html.py:145 +#: templates/helpdesk/ticket.html:151 +msgid "Resolved" +msgstr "" + +#: models.py:248 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:140 templates/helpdesk/ticket.html.py:146 +#: templates/helpdesk/ticket.html:152 templates/helpdesk/ticket.html.py:156 +msgid "Closed" +msgstr "" + +#: models.py:249 templates/helpdesk/ticket.html:141 +#: templates/helpdesk/ticket.html.py:147 templates/helpdesk/ticket.html:160 +msgid "Duplicate" +msgstr "" + +#: models.py:253 +msgid "1. Critical" +msgstr "" + +#: models.py:254 +msgid "2. High" +msgstr "" + +#: models.py:255 +msgid "3. Normal" +msgstr "" + +#: models.py:256 +msgid "4. Low" +msgstr "" + +#: models.py:257 +msgid "5. Very Low" +msgstr "" + +#: models.py:271 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/ticket_list.html:82 +#: templates/helpdesk/ticket_list.html:225 +msgid "Created" +msgstr "" + +#: models.py:273 +msgid "Date this ticket was first created" +msgstr "" + +#: models.py:277 +msgid "Modified" +msgstr "" + +#: models.py:279 +msgid "Date this ticket was most recently changed." +msgstr "" + +#: models.py:283 templates/helpdesk/public_view_ticket.html:18 +#: templates/helpdesk/ticket_desc_table.html:42 +msgid "Submitter E-Mail" +msgstr "" + +#: models.py:286 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "" + +#: models.py:295 +msgid "Assigned to" +msgstr "" + +#: models.py:299 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:70 +#: templates/helpdesk/ticket_list.html:91 +#: templates/helpdesk/ticket_list.html:225 +msgid "Status" +msgstr "" + +#: models.py:305 +msgid "On Hold" +msgstr "" + +#: models.py:308 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "" + +#: models.py:313 models.py:826 templates/helpdesk/public_view_ticket.html:41 +#: templates/helpdesk/ticket_desc_table.html:19 +msgid "Description" +msgstr "" + +#: models.py:316 +msgid "The content of the customers query." +msgstr "" + +#: models.py:320 templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Resolution" +msgstr "" + +#: models.py:323 +msgid "The resolution provided to the customer by our staff." +msgstr "" + +#: models.py:331 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "" + +#: models.py:344 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "" + +#: models.py:353 templates/helpdesk/ticket_desc_table.html:38 +#: views/feeds.py:95 views/feeds.py:121 views/feeds.py:173 views/staff.py:376 +msgid "Unassigned" +msgstr "" + +#: models.py:392 +msgid " - On Hold" +msgstr "" + +#: models.py:394 +msgid " - Open dependencies" +msgstr "" + +#: models.py:448 models.py:494 models.py:1117 models.py:1280 models.py:1309 +#: templates/helpdesk/public_homepage.html:78 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "" + +#: models.py:449 templates/helpdesk/navigation.html:17 +#: templates/helpdesk/ticket_list.html:2 +#: templates/helpdesk/ticket_list.html:224 +msgid "Tickets" +msgstr "" + +#: models.py:498 models.py:738 models.py:1047 models.py:1200 +msgid "Date" +msgstr "" + +#: models.py:510 views/staff.py:390 +msgid "Comment" +msgstr "" + +#: models.py:516 +msgid "Public" +msgstr "" + +#: models.py:519 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "" + +#: models.py:527 models.py:922 models.py:1125 views/staff.py:1008 +#: views/staff.py:1014 views/staff.py:1020 views/staff.py:1026 +msgid "User" +msgstr "" + +#: models.py:531 templates/helpdesk/ticket.html:135 +msgid "New Status" +msgstr "" + +#: models.py:535 +msgid "If the status was changed, what was it changed to?" +msgstr "" + +#: models.py:542 models.py:566 models.py:628 +msgid "Follow-up" +msgstr "" + +#: models.py:543 +msgid "Follow-ups" +msgstr "" + +#: models.py:570 models.py:1285 +msgid "Field" +msgstr "" + +#: models.py:575 +msgid "Old Value" +msgstr "" + +#: models.py:581 +msgid "New Value" +msgstr "" + +#: models.py:589 +msgid "removed" +msgstr "" + +#: models.py:591 +#, python-format +msgid "set to %s" +msgstr "" + +#: models.py:593 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "" + +#: models.py:600 +msgid "Ticket change" +msgstr "" + +#: models.py:601 +msgid "Ticket changes" +msgstr "" + +#: models.py:632 +msgid "File" +msgstr "" + +#: models.py:637 +msgid "Filename" +msgstr "" + +#: models.py:642 +msgid "MIME Type" +msgstr "" + +#: models.py:647 +msgid "Size" +msgstr "" + +#: models.py:648 +msgid "Size of this file in bytes" +msgstr "" + +#: models.py:665 +msgid "Attachment" +msgstr "" + +#: models.py:666 +msgid "Attachments" +msgstr "" + +#: models.py:685 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "" + +#: models.py:690 models.py:733 models.py:1042 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "" + +#: models.py:692 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "" + +#: models.py:697 +msgid "Body" +msgstr "" + +#: models.py:698 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "" + +#: models.py:705 +msgid "Pre-set reply" +msgstr "" + +#: models.py:706 +msgid "Pre-set replies" +msgstr "" + +#: models.py:727 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "" + +#: models.py:739 +msgid "Date on which escalation should not happen" +msgstr "" + +#: models.py:746 +msgid "Escalation exclusion" +msgstr "" + +#: models.py:747 +msgid "Escalation exclusions" +msgstr "" + +#: models.py:760 +msgid "Template Name" +msgstr "" + +#: models.py:765 +msgid "Subject" +msgstr "" + +#: models.py:767 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "" + +#: models.py:773 +msgid "Heading" +msgstr "" + +#: models.py:775 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "" + +#: models.py:781 +msgid "Plain Text" +msgstr "" + +#: models.py:782 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "" + +#: models.py:788 +msgid "HTML" +msgstr "" + +#: models.py:789 +msgid "The same context is available here as in plain_text, above." +msgstr "" + +#: models.py:798 +msgid "Locale of this template." +msgstr "" + +#: models.py:806 +msgid "e-mail template" +msgstr "" + +#: models.py:807 +msgid "e-mail templates" +msgstr "" + +#: models.py:834 +msgid "Knowledge base category" +msgstr "" + +#: models.py:835 +msgid "Knowledge base categories" +msgstr "" + +#: models.py:849 templates/helpdesk/kb_index.html:11 +#: templates/helpdesk/public_homepage.html:11 +msgid "Category" +msgstr "" + +#: models.py:858 +msgid "Question" +msgstr "" + +#: models.py:862 +msgid "Answer" +msgstr "" + +#: models.py:866 +msgid "Votes" +msgstr "" + +#: models.py:867 +msgid "Total number of votes cast for this item" +msgstr "" + +#: models.py:872 +msgid "Positive Votes" +msgstr "" + +#: models.py:873 +msgid "Number of votes for this item which were POSITIVE." +msgstr "" + +#: models.py:878 +msgid "Last Updated" +msgstr "" + +#: models.py:879 +msgid "The date on which this question was most recently changed." +msgstr "" + +#: models.py:893 +msgid "Unrated" +msgstr "" + +#: models.py:901 +msgid "Knowledge base item" +msgstr "" + +#: models.py:902 +msgid "Knowledge base items" +msgstr "" + +#: models.py:926 templates/helpdesk/ticket_list.html:170 +msgid "Query Name" +msgstr "" + +#: models.py:928 +msgid "User-provided name for this query" +msgstr "" + +#: models.py:932 +msgid "Shared With Other Users?" +msgstr "" + +#: models.py:935 +msgid "Should other users see this query?" +msgstr "" + +#: models.py:939 +msgid "Search Query" +msgstr "" + +#: models.py:940 +msgid "Pickled query object. Be wary changing this." +msgstr "" + +#: models.py:950 +msgid "Saved search" +msgstr "" + +#: models.py:951 +msgid "Saved searches" +msgstr "" + +#: models.py:966 +msgid "Settings Dictionary" +msgstr "" + +#: models.py:967 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "" + +#: models.py:993 +msgid "User Setting" +msgstr "" + +#: models.py:994 templates/helpdesk/navigation.html:37 +#: templates/helpdesk/user_settings.html:6 +msgid "User Settings" +msgstr "" + +#: models.py:1036 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "" + +#: models.py:1048 +msgid "Date on which this e-mail address was added" +msgstr "" + +#: models.py:1056 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "" + +#: models.py:1061 +msgid "Save Emails in Mailbox?" +msgstr "" + +#: models.py:1064 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "" + +#: models.py:1101 +msgid "Ignored e-mail address" +msgstr "" + +#: models.py:1102 +msgid "Ignored e-mail addresses" +msgstr "" + +#: models.py:1124 +msgid "User who wishes to receive updates for this ticket." +msgstr "" + +#: models.py:1132 +msgid "For non-user followers, enter their e-mail address" +msgstr "" + +#: models.py:1136 +msgid "Can View Ticket?" +msgstr "" + +#: models.py:1138 +msgid "Can this CC login to view the ticket details?" +msgstr "" + +#: models.py:1142 +msgid "Can Update Ticket?" +msgstr "" + +#: models.py:1144 +msgid "Can this CC login and update the ticket?" +msgstr "" + +#: models.py:1175 +msgid "Field Name" +msgstr "" + +#: models.py:1176 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "" + +#: models.py:1181 +msgid "Label" +msgstr "" + +#: models.py:1183 +msgid "The display label for this field" +msgstr "" + +#: models.py:1187 +msgid "Help Text" +msgstr "" + +#: models.py:1188 +msgid "Shown to the user when editing the ticket" +msgstr "" + +#: models.py:1194 +msgid "Character (single line)" +msgstr "" + +#: models.py:1195 +msgid "Text (multi-line)" +msgstr "" + +#: models.py:1196 +msgid "Integer" +msgstr "" + +#: models.py:1197 +msgid "Decimal" +msgstr "" + +#: models.py:1198 +msgid "List" +msgstr "" + +#: models.py:1199 +msgid "Boolean (checkbox yes/no)" +msgstr "" + +#: models.py:1201 +msgid "Time" +msgstr "" + +#: models.py:1202 +msgid "Date & Time" +msgstr "" + +#: models.py:1204 +msgid "URL" +msgstr "" + +#: models.py:1205 +msgid "IP Address" +msgstr "" + +#: models.py:1210 +msgid "Data Type" +msgstr "" + +#: models.py:1212 +msgid "Allows you to restrict the data entered into this field" +msgstr "" + +#: models.py:1217 +msgid "Maximum Length (characters)" +msgstr "" + +#: models.py:1223 +msgid "Decimal Places" +msgstr "" + +#: models.py:1224 +msgid "Only used for decimal fields" +msgstr "" + +#: models.py:1230 +msgid "Add empty first choice to List?" +msgstr "" + +#: models.py:1232 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "" + +#: models.py:1236 +msgid "List Values" +msgstr "" + +#: models.py:1237 +msgid "For list fields only. Enter one option per line." +msgstr "" + +#: models.py:1243 +msgid "Ordering" +msgstr "" + +#: models.py:1244 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "" + +#: models.py:1258 +msgid "Required?" +msgstr "" + +#: models.py:1259 +msgid "Does the user have to enter a value for this field?" +msgstr "" + +#: models.py:1263 +msgid "Staff Only?" +msgstr "" + +#: models.py:1264 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "" + +#: models.py:1273 +msgid "Custom field" +msgstr "" + +#: models.py:1274 +msgid "Custom fields" +msgstr "" + +#: models.py:1297 +msgid "Ticket custom field value" +msgstr "" + +#: models.py:1298 +msgid "Ticket custom field values" +msgstr "" + +#: models.py:1315 +msgid "Depends On Ticket" +msgstr "" + +#: models.py:1324 +msgid "Ticket dependency" +msgstr "" + +#: models.py:1325 +msgid "Ticket dependencies" +msgstr "" + +#: management/commands/create_usersettings.py:25 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "" + +#: management/commands/escalate_tickets.py:148 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "" + +#: management/commands/get_email.py:158 +msgid "Created from e-mail" +msgstr "" + +#: management/commands/get_email.py:162 +msgid "Unknown Sender" +msgstr "" + +#: management/commands/get_email.py:216 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "" + +#: management/commands/get_email.py:220 +msgid "email_html_body.html" +msgstr "" + +#: management/commands/get_email.py:263 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:271 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:329 +msgid " (Reopened)" +msgstr "" + +#: management/commands/get_email.py:331 +msgid " (Updated)" +msgstr "" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"django-helpdesk." +msgstr "" + +#: templates/helpdesk/base.html:10 +msgid "Powered by django-helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:20 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:24 templates/helpdesk/rss_list.html:31 +msgid "My Open Tickets" +msgstr "" + +#: templates/helpdesk/base.html:21 +msgid "All Recent Activity" +msgstr "" + +#: templates/helpdesk/base.html:22 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "" + +#: templates/helpdesk/base.html:52 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:18 +msgid "Helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:30 templates/helpdesk/rss_list.html:31 +msgid "RSS Icon" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "" + +#: templates/helpdesk/base.html:63 +msgid "API" +msgstr "" + +#: templates/helpdesk/base.html:64 templates/helpdesk/system_settings.html:6 +msgid "System Settings" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:146 +msgid "Delete Saved Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:6 +msgid "Delete Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this saved filter " +"(%(query_title)s)? To re-create it, you will need to manually re-" +"filter your ticket listing." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"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." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:14 +#: templates/helpdesk/delete_ticket.html:10 +msgid "No, Don't Delete It" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:16 +#: templates/helpdesk/delete_ticket.html:12 +msgid "Yes - Delete It" +msgstr "" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/navigation.html:65 templates/helpdesk/navigation.html:68 +#: templates/helpdesk/public_homepage.html:27 +msgid "Submit a Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +#: templates/helpdesk/public_homepage.html:28 +msgid "Please provide as descriptive a title and description as possible." +msgstr "" + +#: templates/helpdesk/create_ticket.html:30 +#: templates/helpdesk/public_homepage.html:55 +msgid "Submit Ticket" +msgstr "" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "" + +#: templates/helpdesk/dashboard.html:9 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "" + +#: templates/helpdesk/dashboard.html:14 +msgid "Helpdesk Summary" +msgstr "" + +#: templates/helpdesk/dashboard.html:36 +msgid "Current Ticket Stats" +msgstr "" + +#: templates/helpdesk/dashboard.html:37 +msgid "Average number of days until ticket is closed (all tickets): " +msgstr "" + +#: templates/helpdesk/dashboard.html:38 +msgid "" +"Average number of days until ticket is closed (tickets opened in last 60 " +"days): " +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "Click" +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "for detailed average by month." +msgstr "" + +#: templates/helpdesk/dashboard.html:40 +msgid "Distribution of open tickets, grouped by time period:" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Days since opened" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Number of open tickets" +msgstr "" + +#: templates/helpdesk/dashboard.html:57 +msgid "All Tickets submitted by you" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:225 +msgid "Pr" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:124 +msgid "Last Update" +msgstr "" + +#: templates/helpdesk/dashboard.html:77 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "" + +#: templates/helpdesk/dashboard.html:92 +msgid "You have no tickets assigned to you." +msgstr "" + +#: templates/helpdesk/dashboard.html:99 +msgid "(pick up a ticket if you start to work on it)" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/ticket_desc_table.html:38 +msgid "Take" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:262 +msgid "Delete" +msgstr "" + +#: templates/helpdesk/dashboard.html:114 +msgid "There are no unassigned tickets." +msgstr "" + +#: templates/helpdesk/dashboard.html:123 +msgid "Closed & resolved Tickets you used to work on" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:3 +#: templates/helpdesk/delete_ticket.html:6 +msgid "Delete Ticket" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this ticket (%(ticket_title)s)? All" +" traces of the ticket, including followups, attachments, and updates will be" +" irreversibly removed." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:9 +msgid "Edit a Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "Note" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "" +"Editing a ticket does not send an e-mail to the ticket owner or " +"submitter. No new details should be entered, this form should only be used " +"to fix incorrect details or clean up the submission." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:33 +msgid "Save Changes" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:6 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:8 +msgid "" +"To ignore an e-mail address and prevent any emails from that address " +"creating tickets automatically, enter the e-mail address below." +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:10 +msgid "" +"You can either enter a whole e-mail address such as " +"email@domain.com or a portion of an e-mail address with a wildcard," +" such as *@domain.com or user@*." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:6 +msgid "Un-Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:8 +#, python-format +msgid "" +"Are you sure you wish to stop removing this email address " +"(%(email_address)s) and allow their e-mails to automatically create" +" tickets in your system? You can re-add this e-mail address at any time." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:10 +msgid "Keep Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:12 +msgid "Stop Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:260 +msgid "All" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "" + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:12 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "" + +#: templates/helpdesk/kb_category.html:13 +msgid "Article" +msgstr "" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:21 +#: templates/helpdesk/navigation.html:71 +msgid "Knowledgebase" +msgstr "" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "" + +#: templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:16 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "" + +#: templates/helpdesk/kb_item.html:18 +msgid "Feedback" +msgstr "" + +#: templates/helpdesk/kb_item.html:20 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "" + +#: templates/helpdesk/kb_item.html:23 +msgid "This article was useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:24 +msgid "This article was not useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:27 +msgid "The results of voting by other readers of this article are below:" +msgstr "" + +#: templates/helpdesk/kb_item.html:30 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:31 +#, python-format +msgid "Votes: %(votes)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:32 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "" + +#: templates/helpdesk/navigation.html:16 templates/helpdesk/navigation.html:64 +msgid "Dashboard" +msgstr "" + +#: templates/helpdesk/navigation.html:18 +msgid "New Ticket" +msgstr "" + +#: templates/helpdesk/navigation.html:19 +msgid "Stats" +msgstr "" + +#: templates/helpdesk/navigation.html:24 +msgid "Saved Query" +msgstr "" + +#: templates/helpdesk/navigation.html:39 +msgid "Change password" +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Search..." +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Logout" +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Log In" +msgstr "" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:73 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "" + +#: templates/helpdesk/public_homepage.html:28 +msgid "All fields are required." +msgstr "" + +#: templates/helpdesk/public_homepage.html:66 +msgid "Please use button at upper right to login first." +msgstr "" + +#: templates/helpdesk/public_homepage.html:82 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "" + +#: templates/helpdesk/public_homepage.html:86 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:5 +msgid "Sorry, but there has been an error trying to submit your ticket." +msgstr "" + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"Our system has marked your submission as spam, so we are " +"unable to save it. If this is not spam, please press back and re-type your " +"message. Be careful to avoid sounding 'spammy', and if you have heaps of " +"links please try removing them if possible." +msgstr "" + +#: templates/helpdesk/public_spam.html:7 +msgid "" +"We are sorry for any inconvenience, however this check is required to avoid " +"our helpdesk resources being overloaded by spammers." +msgstr "" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:9 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:13 +#: templates/helpdesk/ticket_desc_table.html:32 +msgid "Submitted On" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:35 +msgid "Tags" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept and Close" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:57 +#: templates/helpdesk/ticket.html:66 +msgid "Follow-Ups" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:65 +#: templates/helpdesk/ticket.html:100 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "" + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "" + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:27 views/staff.py:1049 +msgid "Days until ticket closed by Month" +msgstr "" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "" + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "" + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "" + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "" + +#: templates/helpdesk/rss_list.html:23 +msgid "Per-Queue Feeds" +msgstr "" + +#: templates/helpdesk/rss_list.html:24 +msgid "All Open Tickets" +msgstr "" + +#: templates/helpdesk/rss_list.html:30 +msgid "Open Tickets" +msgstr "" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "" + +#: templates/helpdesk/system_settings.html:8 +msgid "The following items can be maintained by you or other superusers:" +msgstr "" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:200 +msgid "Add Another File" +msgstr "" + +#: templates/helpdesk/ticket.html:73 templates/helpdesk/ticket.html.py:86 +msgid "Private" +msgstr "" + +#: templates/helpdesk/ticket.html:119 +msgid "Respond to this ticket" +msgstr "" + +#: templates/helpdesk/ticket.html:126 +msgid "Use a Pre-set Reply" +msgstr "" + +#: templates/helpdesk/ticket.html:126 templates/helpdesk/ticket.html.py:166 +msgid "(Optional)" +msgstr "" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "" + +#: templates/helpdesk/ticket.html:131 +msgid "Comment / Resolution" +msgstr "" + +#: templates/helpdesk/ticket.html:133 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "" + +#: templates/helpdesk/ticket.html:136 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "" + +#: templates/helpdesk/ticket.html:166 +msgid "Is this update public?" +msgstr "" + +#: templates/helpdesk/ticket.html:168 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "" + +#: templates/helpdesk/ticket.html:172 +msgid "Change Further Details »" +msgstr "" + +#: templates/helpdesk/ticket.html:181 templates/helpdesk/ticket_list.html:68 +#: templates/helpdesk/ticket_list.html:97 +#: templates/helpdesk/ticket_list.html:225 +msgid "Owner" +msgstr "" + +#: templates/helpdesk/ticket.html:182 +msgid "Unassign" +msgstr "" + +#: templates/helpdesk/ticket.html:193 +msgid "Attach File(s) »" +msgstr "" + +#: templates/helpdesk/ticket.html:199 +msgid "Attach a File" +msgstr "" + +#: templates/helpdesk/ticket.html:207 +msgid "Update This Ticket" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Unhold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Hold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:9 +#, python-format +msgid "Queue: %(queue)s" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Assigned To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:43 +msgid "Ignore" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:52 +msgid "Copies To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Manage" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Subscribe" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to subscribe yourself to this ticket, if you want to receive an " +"e-mail whenever this ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:57 +msgid "Dependencies" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:59 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:60 +msgid "Remove Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "This ticket has no dependencies." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "Add Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Change Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:67 +#: templates/helpdesk/ticket_list.html:79 +msgid "Sorting" +msgstr "" + +#: templates/helpdesk/ticket_list.html:71 +#: templates/helpdesk/ticket_list.html:139 +msgid "Keywords" +msgstr "" + +#: templates/helpdesk/ticket_list.html:72 +msgid "Date Range" +msgstr "" + +#: templates/helpdesk/ticket_list.html:100 +msgid "Reverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:102 +msgid "Ordering applied to tickets" +msgstr "" + +#: templates/helpdesk/ticket_list.html:107 +msgid "Owner(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:111 +msgid "(ME)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:115 +msgid "Ctrl-Click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:120 +msgid "Queue(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:121 +#: templates/helpdesk/ticket_list.html:127 +msgid "Ctrl-click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:126 +msgid "Status(es)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:132 +msgid "Date (From)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:133 +msgid "Date (To)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:134 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "" + +#: templates/helpdesk/ticket_list.html:140 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "" + +#: templates/helpdesk/ticket_list.html:144 +msgid "Apply Filter" +msgstr "" + +#: templates/helpdesk/ticket_list.html:146 +#, python-format +msgid "You are currently viewing saved query \"%(query_name)s\"." +msgstr "" + +#: templates/helpdesk/ticket_list.html:149 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "" + +#: templates/helpdesk/ticket_list.html:162 +#: templates/helpdesk/ticket_list.html:181 +msgid "Save Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:172 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "" + +#: templates/helpdesk/ticket_list.html:174 +msgid "Shared?" +msgstr "" + +#: templates/helpdesk/ticket_list.html:175 +msgid "Yes, share this query with other users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:176 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:195 +msgid "Use Saved Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:202 +msgid "Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:207 +msgid "Run Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:240 +msgid "No Tickets Match Your Selection" +msgstr "" + +#: templates/helpdesk/ticket_list.html:247 +msgid "Previous" +msgstr "" + +#: templates/helpdesk/ticket_list.html:251 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:255 +msgid "Next" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Select:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "None" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Inverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "With Selected Tickets:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Take (Assign to me)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Don't Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Assign To" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Nobody (Unassign)" +msgstr "" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "" + +#: templates/helpdesk/user_settings.html:8 +msgid "" +"Use the following options to change the way your helpdesk system works for " +"you. These settings do not impact any other user." +msgstr "" + +#: templates/helpdesk/user_settings.html:14 +msgid "Save Options" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "" + +#: templates/helpdesk/registration/login.html:14 +msgid "To log in simply enter your username and password below." +msgstr "" + +#: templates/helpdesk/registration/login.html:17 +msgid "Your username and password didn't match. Please try again." +msgstr "" + +#: templates/helpdesk/registration/login.html:20 +msgid "Login" +msgstr "" + +#: views/feeds.py:39 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:44 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:50 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:55 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:102 +msgid "Helpdesk: Unassigned Tickets" +msgstr "" + +#: views/feeds.py:103 +msgid "Unassigned Open and Reopened tickets" +msgstr "" + +#: views/feeds.py:128 +msgid "Helpdesk: Recent Followups" +msgstr "" + +#: views/feeds.py:129 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "" + +#: views/feeds.py:144 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "" + +#: views/feeds.py:149 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "" + +#: views/public.py:89 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "" + +#: views/public.py:107 +msgid "Submitter accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:235 +msgid "Accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:369 +#, python-format +msgid "Assigned to %(username)s" +msgstr "" + +#: views/staff.py:392 +msgid "Updated" +msgstr "" + +#: views/staff.py:577 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "" + +#: views/staff.py:582 +msgid "Unassigned in bulk update" +msgstr "" + +#: views/staff.py:587 views/staff.py:592 +msgid "Closed in bulk update" +msgstr "" + +#: views/staff.py:806 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "" + +#: views/staff.py:910 +msgid "Ticket taken off hold" +msgstr "" + +#: views/staff.py:913 +msgid "Ticket placed on hold" +msgstr "" + +#: views/staff.py:1007 +msgid "User by Priority" +msgstr "" + +#: views/staff.py:1013 +msgid "User by Queue" +msgstr "" + +#: views/staff.py:1019 +msgid "User by Status" +msgstr "" + +#: views/staff.py:1025 +msgid "User by Month" +msgstr "" + +#: views/staff.py:1031 +msgid "Queue by Priority" +msgstr "" + +#: views/staff.py:1037 +msgid "Queue by Status" +msgstr "" + +#: views/staff.py:1043 +msgid "Queue by Month" +msgstr "" diff --git a/build/lib/helpdesk/locale/hr/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/hr/LC_MESSAGES/django.mo new file mode 100644 index 00000000..f23d6077 Binary files /dev/null and b/build/lib/helpdesk/locale/hr/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/hr/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/hr/LC_MESSAGES/django.po new file mode 100644 index 00000000..0abc0bb1 --- /dev/null +++ b/build/lib/helpdesk/locale/hr/LC_MESSAGES/django.po @@ -0,0 +1,2394 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Translators: +# Alan Pevec , 2016 +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2014-07-26 14:14+0200\n" +"PO-Revision-Date: 2016-10-09 16:56+0000\n" +"Last-Translator: Alan Pevec \n" +"Language-Team: Croatian (http://www.transifex.com/rossp/django-helpdesk/language/hr/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: hr\n" +"Plural-Forms: nplurals=3; plural=n%10==1 && n%100!=11 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2;\n" + +#: forms.py:128 forms.py:328 models.py:190 models.py:267 +#: templates/helpdesk/dashboard.html:15 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/dashboard.html:124 templates/helpdesk/rss_list.html:24 +#: templates/helpdesk/ticket_list.html:69 +#: templates/helpdesk/ticket_list.html:88 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:1032 +#: views/staff.py:1038 views/staff.py:1044 views/staff.py:1050 +msgid "Queue" +msgstr "red" + +#: forms.py:137 +msgid "Summary of the problem" +msgstr "sažetak problema" + +#: forms.py:142 +msgid "Submitter E-Mail Address" +msgstr "adresa podnositelja" + +#: forms.py:144 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "Ova adresa će primiti kopije svih javnih ažuriranja ovog problema." + +#: forms.py:150 +msgid "Description of Issue" +msgstr "opis problema" + +#: forms.py:157 +msgid "Case owner" +msgstr "vlasnik slučaja" + +#: forms.py:158 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "" + +#: forms.py:166 models.py:327 management/commands/escalate_tickets.py:154 +#: templates/helpdesk/public_view_ticket.html:23 +#: templates/helpdesk/ticket.html:184 +#: templates/helpdesk/ticket_desc_table.html:47 +#: templates/helpdesk/ticket_list.html:94 views/staff.py:429 +msgid "Priority" +msgstr "prioritet" + +#: forms.py:167 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "Pažljivo odredite prioritet. Ako niste sigurni, ostavite '3'." + +#: forms.py:174 forms.py:365 models.py:335 templates/helpdesk/ticket.html:186 +#: views/staff.py:439 +msgid "Due on" +msgstr "Rok izvršenja" + +#: forms.py:186 forms.py:370 +msgid "Attach File" +msgstr "priloži datoteku" + +#: forms.py:187 forms.py:371 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "Možete priložiti datoteku npr. dokument ili sliku ekrana." + +#: forms.py:240 +msgid "Ticket Opened" +msgstr "otvoreni slučaj" + +#: forms.py:247 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "Slučaj otvoren i dodijeljen %(name)s" + +#: forms.py:337 +msgid "Summary of your query" +msgstr "Sažetak Vašeg upita" + +#: forms.py:342 +msgid "Your E-Mail Address" +msgstr "adresa Vaše elektroničke pošte" + +#: forms.py:343 +msgid "We will e-mail you when your ticket is updated." +msgstr "Poslat ćemo Vam poruku kad Vaš slučaj bude ažuriran." + +#: forms.py:348 +msgid "Description of your issue" +msgstr "opis Vašeg prolema" + +#: forms.py:350 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "Budite što je moguće jasniji i uključite sve detalje koji nam trebaju za rješavanje Vašeg upita." + +#: forms.py:358 +msgid "Urgency" +msgstr "hitnost" + +#: forms.py:359 +msgid "Please select a priority carefully." +msgstr "" + +#: forms.py:419 +msgid "Ticket Opened Via Web" +msgstr "Slučaj otvoren na webu" + +#: forms.py:486 +msgid "Show Ticket List on Login?" +msgstr "Prikaži listu slučajeva prilikom prijave?" + +#: forms.py:487 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "" + +#: forms.py:492 +msgid "E-mail me on ticket change?" +msgstr "" + +#: forms.py:493 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:498 +msgid "E-mail me when assigned a ticket?" +msgstr "" + +#: forms.py:499 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:504 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "" + +#: forms.py:505 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:510 +msgid "Number of tickets to show per page" +msgstr "" + +#: forms.py:511 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "" + +#: forms.py:518 +msgid "Use my e-mail address when submitting tickets?" +msgstr "" + +#: forms.py:519 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "" + +#: models.py:35 models.py:261 models.py:503 models.py:817 models.py:853 +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket.html:178 templates/helpdesk/ticket_list.html:85 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:419 +msgid "Title" +msgstr "naslov" + +#: models.py:40 models.py:822 models.py:1206 +msgid "Slug" +msgstr "" + +#: models.py:41 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "" + +#: models.py:46 models.py:1054 models.py:1129 models.py:1203 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "adresa elektroničke pošte" + +#: models.py:49 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "" + +#: models.py:55 models.py:794 +msgid "Locale" +msgstr "" + +#: models.py:59 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "" + +#: models.py:63 +msgid "Allow Public Submission?" +msgstr "" + +#: models.py:66 +msgid "Should this queue be listed on the public submission form?" +msgstr "" + +#: models.py:71 +msgid "Allow E-Mail Submission?" +msgstr "Dozvoli prijave elektroničkom poštom?" + +#: models.py:74 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "" + +#: models.py:79 +msgid "Escalation Days" +msgstr "" + +#: models.py:82 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "" + +#: models.py:87 +msgid "New Ticket CC Address" +msgstr "" + +#: models.py:91 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "" + +#: models.py:97 +msgid "Updated Ticket CC Address" +msgstr "" + +#: models.py:101 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "" + +#: models.py:108 +msgid "E-Mail Box Type" +msgstr "" + +#: models.py:110 +msgid "POP 3" +msgstr "POP 3" + +#: models.py:110 +msgid "IMAP" +msgstr "IMAP" + +#: models.py:113 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "" + +#: models.py:118 +msgid "E-Mail Hostname" +msgstr "" + +#: models.py:122 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "" + +#: models.py:127 +msgid "E-Mail Port" +msgstr "" + +#: models.py:130 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "" + +#: models.py:136 +msgid "Use SSL for E-Mail?" +msgstr "" + +#: models.py:139 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "" + +#: models.py:144 +msgid "E-Mail Username" +msgstr "" + +#: models.py:148 +msgid "Username for accessing this mailbox." +msgstr "" + +#: models.py:152 +msgid "E-Mail Password" +msgstr "" + +#: models.py:156 +msgid "Password for the above username" +msgstr "" + +#: models.py:160 +msgid "IMAP Folder" +msgstr "" + +#: models.py:164 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "" + +#: models.py:171 +msgid "E-Mail Check Interval" +msgstr "" + +#: models.py:172 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "" + +#: models.py:191 templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "redovi" + +#: models.py:245 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:138 +msgid "Open" +msgstr "otvoreno" + +#: models.py:246 templates/helpdesk/ticket.html:144 +#: templates/helpdesk/ticket.html.py:150 templates/helpdesk/ticket.html:155 +#: templates/helpdesk/ticket.html.py:159 +msgid "Reopened" +msgstr "ponovno otvoreno" + +#: models.py:247 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:139 templates/helpdesk/ticket.html.py:145 +#: templates/helpdesk/ticket.html:151 +msgid "Resolved" +msgstr "riješeno" + +#: models.py:248 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:140 templates/helpdesk/ticket.html.py:146 +#: templates/helpdesk/ticket.html:152 templates/helpdesk/ticket.html.py:156 +msgid "Closed" +msgstr "zatvoreno" + +#: models.py:249 templates/helpdesk/ticket.html:141 +#: templates/helpdesk/ticket.html.py:147 templates/helpdesk/ticket.html:160 +msgid "Duplicate" +msgstr "" + +#: models.py:253 +msgid "1. Critical" +msgstr "" + +#: models.py:254 +msgid "2. High" +msgstr "" + +#: models.py:255 +msgid "3. Normal" +msgstr "" + +#: models.py:256 +msgid "4. Low" +msgstr "" + +#: models.py:257 +msgid "5. Very Low" +msgstr "" + +#: models.py:271 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/ticket_list.html:82 +#: templates/helpdesk/ticket_list.html:225 +msgid "Created" +msgstr "" + +#: models.py:273 +msgid "Date this ticket was first created" +msgstr "" + +#: models.py:277 +msgid "Modified" +msgstr "" + +#: models.py:279 +msgid "Date this ticket was most recently changed." +msgstr "" + +#: models.py:283 templates/helpdesk/public_view_ticket.html:18 +#: templates/helpdesk/ticket_desc_table.html:42 +msgid "Submitter E-Mail" +msgstr "" + +#: models.py:286 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "" + +#: models.py:295 +msgid "Assigned to" +msgstr "" + +#: models.py:299 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:70 +#: templates/helpdesk/ticket_list.html:91 +#: templates/helpdesk/ticket_list.html:225 +msgid "Status" +msgstr "" + +#: models.py:305 +msgid "On Hold" +msgstr "" + +#: models.py:308 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "" + +#: models.py:313 models.py:826 templates/helpdesk/public_view_ticket.html:41 +#: templates/helpdesk/ticket_desc_table.html:19 +msgid "Description" +msgstr "" + +#: models.py:316 +msgid "The content of the customers query." +msgstr "" + +#: models.py:320 templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Resolution" +msgstr "" + +#: models.py:323 +msgid "The resolution provided to the customer by our staff." +msgstr "" + +#: models.py:331 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "" + +#: models.py:344 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "" + +#: models.py:353 templates/helpdesk/ticket_desc_table.html:38 +#: views/feeds.py:95 views/feeds.py:121 views/feeds.py:173 views/staff.py:376 +msgid "Unassigned" +msgstr "" + +#: models.py:392 +msgid " - On Hold" +msgstr "" + +#: models.py:394 +msgid " - Open dependencies" +msgstr "" + +#: models.py:448 models.py:494 models.py:1117 models.py:1280 models.py:1309 +#: templates/helpdesk/public_homepage.html:78 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "" + +#: models.py:449 templates/helpdesk/navigation.html:17 +#: templates/helpdesk/ticket_list.html:2 +#: templates/helpdesk/ticket_list.html:224 +msgid "Tickets" +msgstr "" + +#: models.py:498 models.py:738 models.py:1047 models.py:1200 +msgid "Date" +msgstr "" + +#: models.py:510 views/staff.py:390 +msgid "Comment" +msgstr "" + +#: models.py:516 +msgid "Public" +msgstr "" + +#: models.py:519 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "" + +#: models.py:527 models.py:922 models.py:1125 views/staff.py:1008 +#: views/staff.py:1014 views/staff.py:1020 views/staff.py:1026 +msgid "User" +msgstr "" + +#: models.py:531 templates/helpdesk/ticket.html:135 +msgid "New Status" +msgstr "" + +#: models.py:535 +msgid "If the status was changed, what was it changed to?" +msgstr "" + +#: models.py:542 models.py:566 models.py:628 +msgid "Follow-up" +msgstr "" + +#: models.py:543 +msgid "Follow-ups" +msgstr "" + +#: models.py:570 models.py:1285 +msgid "Field" +msgstr "" + +#: models.py:575 +msgid "Old Value" +msgstr "" + +#: models.py:581 +msgid "New Value" +msgstr "" + +#: models.py:589 +msgid "removed" +msgstr "" + +#: models.py:591 +#, python-format +msgid "set to %s" +msgstr "" + +#: models.py:593 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "" + +#: models.py:600 +msgid "Ticket change" +msgstr "" + +#: models.py:601 +msgid "Ticket changes" +msgstr "" + +#: models.py:632 +msgid "File" +msgstr "" + +#: models.py:637 +msgid "Filename" +msgstr "" + +#: models.py:642 +msgid "MIME Type" +msgstr "" + +#: models.py:647 +msgid "Size" +msgstr "" + +#: models.py:648 +msgid "Size of this file in bytes" +msgstr "" + +#: models.py:665 +msgid "Attachment" +msgstr "" + +#: models.py:666 +msgid "Attachments" +msgstr "" + +#: models.py:685 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "" + +#: models.py:690 models.py:733 models.py:1042 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "" + +#: models.py:692 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "" + +#: models.py:697 +msgid "Body" +msgstr "" + +#: models.py:698 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "" + +#: models.py:705 +msgid "Pre-set reply" +msgstr "" + +#: models.py:706 +msgid "Pre-set replies" +msgstr "" + +#: models.py:727 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "" + +#: models.py:739 +msgid "Date on which escalation should not happen" +msgstr "" + +#: models.py:746 +msgid "Escalation exclusion" +msgstr "" + +#: models.py:747 +msgid "Escalation exclusions" +msgstr "" + +#: models.py:760 +msgid "Template Name" +msgstr "" + +#: models.py:765 +msgid "Subject" +msgstr "" + +#: models.py:767 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "" + +#: models.py:773 +msgid "Heading" +msgstr "" + +#: models.py:775 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "" + +#: models.py:781 +msgid "Plain Text" +msgstr "" + +#: models.py:782 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "" + +#: models.py:788 +msgid "HTML" +msgstr "HTML" + +#: models.py:789 +msgid "The same context is available here as in plain_text, above." +msgstr "" + +#: models.py:798 +msgid "Locale of this template." +msgstr "" + +#: models.py:806 +msgid "e-mail template" +msgstr "" + +#: models.py:807 +msgid "e-mail templates" +msgstr "" + +#: models.py:834 +msgid "Knowledge base category" +msgstr "" + +#: models.py:835 +msgid "Knowledge base categories" +msgstr "" + +#: models.py:849 templates/helpdesk/kb_index.html:11 +#: templates/helpdesk/public_homepage.html:11 +msgid "Category" +msgstr "kategorija" + +#: models.py:858 +msgid "Question" +msgstr "pitanje" + +#: models.py:862 +msgid "Answer" +msgstr "odgovor" + +#: models.py:866 +msgid "Votes" +msgstr "" + +#: models.py:867 +msgid "Total number of votes cast for this item" +msgstr "" + +#: models.py:872 +msgid "Positive Votes" +msgstr "" + +#: models.py:873 +msgid "Number of votes for this item which were POSITIVE." +msgstr "" + +#: models.py:878 +msgid "Last Updated" +msgstr "zadnje ažuriranje" + +#: models.py:879 +msgid "The date on which this question was most recently changed." +msgstr "" + +#: models.py:893 +msgid "Unrated" +msgstr "" + +#: models.py:901 +msgid "Knowledge base item" +msgstr "" + +#: models.py:902 +msgid "Knowledge base items" +msgstr "" + +#: models.py:926 templates/helpdesk/ticket_list.html:170 +msgid "Query Name" +msgstr "" + +#: models.py:928 +msgid "User-provided name for this query" +msgstr "" + +#: models.py:932 +msgid "Shared With Other Users?" +msgstr "" + +#: models.py:935 +msgid "Should other users see this query?" +msgstr "" + +#: models.py:939 +msgid "Search Query" +msgstr "" + +#: models.py:940 +msgid "Pickled query object. Be wary changing this." +msgstr "" + +#: models.py:950 +msgid "Saved search" +msgstr "" + +#: models.py:951 +msgid "Saved searches" +msgstr "" + +#: models.py:966 +msgid "Settings Dictionary" +msgstr "" + +#: models.py:967 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "" + +#: models.py:993 +msgid "User Setting" +msgstr "" + +#: models.py:994 templates/helpdesk/navigation.html:37 +#: templates/helpdesk/user_settings.html:6 +msgid "User Settings" +msgstr "" + +#: models.py:1036 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "" + +#: models.py:1048 +msgid "Date on which this e-mail address was added" +msgstr "" + +#: models.py:1056 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "" + +#: models.py:1061 +msgid "Save Emails in Mailbox?" +msgstr "" + +#: models.py:1064 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "" + +#: models.py:1101 +msgid "Ignored e-mail address" +msgstr "" + +#: models.py:1102 +msgid "Ignored e-mail addresses" +msgstr "" + +#: models.py:1124 +msgid "User who wishes to receive updates for this ticket." +msgstr "" + +#: models.py:1132 +msgid "For non-user followers, enter their e-mail address" +msgstr "" + +#: models.py:1136 +msgid "Can View Ticket?" +msgstr "" + +#: models.py:1138 +msgid "Can this CC login to view the ticket details?" +msgstr "" + +#: models.py:1142 +msgid "Can Update Ticket?" +msgstr "" + +#: models.py:1144 +msgid "Can this CC login and update the ticket?" +msgstr "" + +#: models.py:1175 +msgid "Field Name" +msgstr "" + +#: models.py:1176 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "" + +#: models.py:1181 +msgid "Label" +msgstr "" + +#: models.py:1183 +msgid "The display label for this field" +msgstr "" + +#: models.py:1187 +msgid "Help Text" +msgstr "" + +#: models.py:1188 +msgid "Shown to the user when editing the ticket" +msgstr "" + +#: models.py:1194 +msgid "Character (single line)" +msgstr "" + +#: models.py:1195 +msgid "Text (multi-line)" +msgstr "" + +#: models.py:1196 +msgid "Integer" +msgstr "" + +#: models.py:1197 +msgid "Decimal" +msgstr "" + +#: models.py:1198 +msgid "List" +msgstr "" + +#: models.py:1199 +msgid "Boolean (checkbox yes/no)" +msgstr "" + +#: models.py:1201 +msgid "Time" +msgstr "" + +#: models.py:1202 +msgid "Date & Time" +msgstr "" + +#: models.py:1204 +msgid "URL" +msgstr "" + +#: models.py:1205 +msgid "IP Address" +msgstr "" + +#: models.py:1210 +msgid "Data Type" +msgstr "" + +#: models.py:1212 +msgid "Allows you to restrict the data entered into this field" +msgstr "" + +#: models.py:1217 +msgid "Maximum Length (characters)" +msgstr "" + +#: models.py:1223 +msgid "Decimal Places" +msgstr "" + +#: models.py:1224 +msgid "Only used for decimal fields" +msgstr "" + +#: models.py:1230 +msgid "Add empty first choice to List?" +msgstr "" + +#: models.py:1232 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "" + +#: models.py:1236 +msgid "List Values" +msgstr "" + +#: models.py:1237 +msgid "For list fields only. Enter one option per line." +msgstr "" + +#: models.py:1243 +msgid "Ordering" +msgstr "" + +#: models.py:1244 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "" + +#: models.py:1258 +msgid "Required?" +msgstr "" + +#: models.py:1259 +msgid "Does the user have to enter a value for this field?" +msgstr "" + +#: models.py:1263 +msgid "Staff Only?" +msgstr "" + +#: models.py:1264 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "" + +#: models.py:1273 +msgid "Custom field" +msgstr "" + +#: models.py:1274 +msgid "Custom fields" +msgstr "" + +#: models.py:1297 +msgid "Ticket custom field value" +msgstr "" + +#: models.py:1298 +msgid "Ticket custom field values" +msgstr "" + +#: models.py:1315 +msgid "Depends On Ticket" +msgstr "" + +#: models.py:1324 +msgid "Ticket dependency" +msgstr "" + +#: models.py:1325 +msgid "Ticket dependencies" +msgstr "" + +#: management/commands/create_usersettings.py:25 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "" + +#: management/commands/escalate_tickets.py:148 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "" + +#: management/commands/get_email.py:158 +msgid "Created from e-mail" +msgstr "" + +#: management/commands/get_email.py:162 +msgid "Unknown Sender" +msgstr "" + +#: management/commands/get_email.py:216 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "" + +#: management/commands/get_email.py:220 +msgid "email_html_body.html" +msgstr "" + +#: management/commands/get_email.py:263 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:271 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:329 +msgid " (Reopened)" +msgstr "" + +#: management/commands/get_email.py:331 +msgid " (Updated)" +msgstr "" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"django-helpdesk." +msgstr "django-helpdesk." + +#: templates/helpdesk/base.html:10 +msgid "Powered by django-helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:20 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:24 templates/helpdesk/rss_list.html:31 +msgid "My Open Tickets" +msgstr "" + +#: templates/helpdesk/base.html:21 +msgid "All Recent Activity" +msgstr "" + +#: templates/helpdesk/base.html:22 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "" + +#: templates/helpdesk/base.html:52 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:18 +msgid "Helpdesk" +msgstr "Helpdesk" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:30 templates/helpdesk/rss_list.html:31 +msgid "RSS Icon" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "" + +#: templates/helpdesk/base.html:63 +msgid "API" +msgstr "" + +#: templates/helpdesk/base.html:64 templates/helpdesk/system_settings.html:6 +msgid "System Settings" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:146 +msgid "Delete Saved Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:6 +msgid "Delete Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this saved filter " +"(%(query_title)s)? To re-create it, you will need to manually re-" +"filter your ticket listing." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"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." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:14 +#: templates/helpdesk/delete_ticket.html:10 +msgid "No, Don't Delete It" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:16 +#: templates/helpdesk/delete_ticket.html:12 +msgid "Yes - Delete It" +msgstr "" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/navigation.html:65 templates/helpdesk/navigation.html:68 +#: templates/helpdesk/public_homepage.html:27 +msgid "Submit a Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +#: templates/helpdesk/public_homepage.html:28 +msgid "Please provide as descriptive a title and description as possible." +msgstr "" + +#: templates/helpdesk/create_ticket.html:30 +#: templates/helpdesk/public_homepage.html:55 +msgid "Submit Ticket" +msgstr "" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "" + +#: templates/helpdesk/dashboard.html:9 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "" + +#: templates/helpdesk/dashboard.html:14 +msgid "Helpdesk Summary" +msgstr "" + +#: templates/helpdesk/dashboard.html:36 +msgid "Current Ticket Stats" +msgstr "" + +#: templates/helpdesk/dashboard.html:37 +msgid "Average number of days until ticket is closed (all tickets): " +msgstr "" + +#: templates/helpdesk/dashboard.html:38 +msgid "" +"Average number of days until ticket is closed (tickets opened in last 60 " +"days): " +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "Click" +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "for detailed average by month." +msgstr "" + +#: templates/helpdesk/dashboard.html:40 +msgid "Distribution of open tickets, grouped by time period:" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Days since opened" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Number of open tickets" +msgstr "" + +#: templates/helpdesk/dashboard.html:57 +msgid "All Tickets submitted by you" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:225 +msgid "Pr" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:124 +msgid "Last Update" +msgstr "" + +#: templates/helpdesk/dashboard.html:77 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "" + +#: templates/helpdesk/dashboard.html:92 +msgid "You have no tickets assigned to you." +msgstr "" + +#: templates/helpdesk/dashboard.html:99 +msgid "(pick up a ticket if you start to work on it)" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/ticket_desc_table.html:38 +msgid "Take" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:262 +msgid "Delete" +msgstr "" + +#: templates/helpdesk/dashboard.html:114 +msgid "There are no unassigned tickets." +msgstr "" + +#: templates/helpdesk/dashboard.html:123 +msgid "Closed & resolved Tickets you used to work on" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:3 +#: templates/helpdesk/delete_ticket.html:6 +msgid "Delete Ticket" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this ticket (%(ticket_title)s)? All" +" traces of the ticket, including followups, attachments, and updates will be" +" irreversibly removed." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:9 +msgid "Edit a Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "Note" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "" +"Editing a ticket does not send an e-mail to the ticket owner or " +"submitter. No new details should be entered, this form should only be used " +"to fix incorrect details or clean up the submission." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:33 +msgid "Save Changes" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:6 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:8 +msgid "" +"To ignore an e-mail address and prevent any emails from that address " +"creating tickets automatically, enter the e-mail address below." +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:10 +msgid "" +"You can either enter a whole e-mail address such as " +"email@domain.com or a portion of an e-mail address with a wildcard," +" such as *@domain.com or user@*." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:6 +msgid "Un-Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:8 +#, python-format +msgid "" +"Are you sure you wish to stop removing this email address " +"(%(email_address)s) and allow their e-mails to automatically create" +" tickets in your system? You can re-add this e-mail address at any time." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:10 +msgid "Keep Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:12 +msgid "Stop Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:260 +msgid "All" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "" + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:12 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "" + +#: templates/helpdesk/kb_category.html:13 +msgid "Article" +msgstr "" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:21 +#: templates/helpdesk/navigation.html:71 +msgid "Knowledgebase" +msgstr "" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "" + +#: templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:16 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "" + +#: templates/helpdesk/kb_item.html:18 +msgid "Feedback" +msgstr "" + +#: templates/helpdesk/kb_item.html:20 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "" + +#: templates/helpdesk/kb_item.html:23 +msgid "This article was useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:24 +msgid "This article was not useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:27 +msgid "The results of voting by other readers of this article are below:" +msgstr "" + +#: templates/helpdesk/kb_item.html:30 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:31 +#, python-format +msgid "Votes: %(votes)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:32 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "" + +#: templates/helpdesk/navigation.html:16 templates/helpdesk/navigation.html:64 +msgid "Dashboard" +msgstr "" + +#: templates/helpdesk/navigation.html:18 +msgid "New Ticket" +msgstr "" + +#: templates/helpdesk/navigation.html:19 +msgid "Stats" +msgstr "" + +#: templates/helpdesk/navigation.html:24 +msgid "Saved Query" +msgstr "" + +#: templates/helpdesk/navigation.html:39 +msgid "Change password" +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Search..." +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Logout" +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Log In" +msgstr "" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:73 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "" + +#: templates/helpdesk/public_homepage.html:28 +msgid "All fields are required." +msgstr "" + +#: templates/helpdesk/public_homepage.html:66 +msgid "Please use button at upper right to login first." +msgstr "" + +#: templates/helpdesk/public_homepage.html:82 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "" + +#: templates/helpdesk/public_homepage.html:86 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:5 +msgid "Sorry, but there has been an error trying to submit your ticket." +msgstr "" + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"Our system has marked your submission as spam, so we are " +"unable to save it. If this is not spam, please press back and re-type your " +"message. Be careful to avoid sounding 'spammy', and if you have heaps of " +"links please try removing them if possible." +msgstr "" + +#: templates/helpdesk/public_spam.html:7 +msgid "" +"We are sorry for any inconvenience, however this check is required to avoid " +"our helpdesk resources being overloaded by spammers." +msgstr "" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:9 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:13 +#: templates/helpdesk/ticket_desc_table.html:32 +msgid "Submitted On" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:35 +msgid "Tags" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept and Close" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:57 +#: templates/helpdesk/ticket.html:66 +msgid "Follow-Ups" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:65 +#: templates/helpdesk/ticket.html:100 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "" + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "" + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:27 views/staff.py:1049 +msgid "Days until ticket closed by Month" +msgstr "" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "" + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "" + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "" + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "" + +#: templates/helpdesk/rss_list.html:23 +msgid "Per-Queue Feeds" +msgstr "" + +#: templates/helpdesk/rss_list.html:24 +msgid "All Open Tickets" +msgstr "" + +#: templates/helpdesk/rss_list.html:30 +msgid "Open Tickets" +msgstr "" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "" + +#: templates/helpdesk/system_settings.html:8 +msgid "The following items can be maintained by you or other superusers:" +msgstr "" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:200 +msgid "Add Another File" +msgstr "" + +#: templates/helpdesk/ticket.html:73 templates/helpdesk/ticket.html.py:86 +msgid "Private" +msgstr "" + +#: templates/helpdesk/ticket.html:119 +msgid "Respond to this ticket" +msgstr "" + +#: templates/helpdesk/ticket.html:126 +msgid "Use a Pre-set Reply" +msgstr "" + +#: templates/helpdesk/ticket.html:126 templates/helpdesk/ticket.html.py:166 +msgid "(Optional)" +msgstr "" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "" + +#: templates/helpdesk/ticket.html:131 +msgid "Comment / Resolution" +msgstr "" + +#: templates/helpdesk/ticket.html:133 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "" + +#: templates/helpdesk/ticket.html:136 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "" + +#: templates/helpdesk/ticket.html:166 +msgid "Is this update public?" +msgstr "" + +#: templates/helpdesk/ticket.html:168 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "" + +#: templates/helpdesk/ticket.html:172 +msgid "Change Further Details »" +msgstr "" + +#: templates/helpdesk/ticket.html:181 templates/helpdesk/ticket_list.html:68 +#: templates/helpdesk/ticket_list.html:97 +#: templates/helpdesk/ticket_list.html:225 +msgid "Owner" +msgstr "" + +#: templates/helpdesk/ticket.html:182 +msgid "Unassign" +msgstr "" + +#: templates/helpdesk/ticket.html:193 +msgid "Attach File(s) »" +msgstr "" + +#: templates/helpdesk/ticket.html:199 +msgid "Attach a File" +msgstr "" + +#: templates/helpdesk/ticket.html:207 +msgid "Update This Ticket" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Unhold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Hold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:9 +#, python-format +msgid "Queue: %(queue)s" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Assigned To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:43 +msgid "Ignore" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:52 +msgid "Copies To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Manage" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Subscribe" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to subscribe yourself to this ticket, if you want to receive an " +"e-mail whenever this ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:57 +msgid "Dependencies" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:59 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:60 +msgid "Remove Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "This ticket has no dependencies." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "Add Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Change Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:67 +#: templates/helpdesk/ticket_list.html:79 +msgid "Sorting" +msgstr "" + +#: templates/helpdesk/ticket_list.html:71 +#: templates/helpdesk/ticket_list.html:139 +msgid "Keywords" +msgstr "ključne riječi" + +#: templates/helpdesk/ticket_list.html:72 +msgid "Date Range" +msgstr "" + +#: templates/helpdesk/ticket_list.html:100 +msgid "Reverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:102 +msgid "Ordering applied to tickets" +msgstr "" + +#: templates/helpdesk/ticket_list.html:107 +msgid "Owner(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:111 +msgid "(ME)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:115 +msgid "Ctrl-Click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:120 +msgid "Queue(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:121 +#: templates/helpdesk/ticket_list.html:127 +msgid "Ctrl-click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:126 +msgid "Status(es)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:132 +msgid "Date (From)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:133 +msgid "Date (To)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:134 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "" + +#: templates/helpdesk/ticket_list.html:140 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "" + +#: templates/helpdesk/ticket_list.html:144 +msgid "Apply Filter" +msgstr "" + +#: templates/helpdesk/ticket_list.html:146 +#, python-format +msgid "You are currently viewing saved query \"%(query_name)s\"." +msgstr "" + +#: templates/helpdesk/ticket_list.html:149 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "" + +#: templates/helpdesk/ticket_list.html:162 +#: templates/helpdesk/ticket_list.html:181 +msgid "Save Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:172 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "" + +#: templates/helpdesk/ticket_list.html:174 +msgid "Shared?" +msgstr "" + +#: templates/helpdesk/ticket_list.html:175 +msgid "Yes, share this query with other users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:176 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:195 +msgid "Use Saved Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:202 +msgid "Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:207 +msgid "Run Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:240 +msgid "No Tickets Match Your Selection" +msgstr "" + +#: templates/helpdesk/ticket_list.html:247 +msgid "Previous" +msgstr "" + +#: templates/helpdesk/ticket_list.html:251 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:255 +msgid "Next" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Select:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "None" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Inverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "With Selected Tickets:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Take (Assign to me)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Don't Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Assign To" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Nobody (Unassign)" +msgstr "" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "" + +#: templates/helpdesk/user_settings.html:8 +msgid "" +"Use the following options to change the way your helpdesk system works for " +"you. These settings do not impact any other user." +msgstr "" + +#: templates/helpdesk/user_settings.html:14 +msgid "Save Options" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "" + +#: templates/helpdesk/registration/login.html:14 +msgid "To log in simply enter your username and password below." +msgstr "" + +#: templates/helpdesk/registration/login.html:17 +msgid "Your username and password didn't match. Please try again." +msgstr "" + +#: templates/helpdesk/registration/login.html:20 +msgid "Login" +msgstr "" + +#: views/feeds.py:39 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:44 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:50 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:55 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:102 +msgid "Helpdesk: Unassigned Tickets" +msgstr "" + +#: views/feeds.py:103 +msgid "Unassigned Open and Reopened tickets" +msgstr "" + +#: views/feeds.py:128 +msgid "Helpdesk: Recent Followups" +msgstr "" + +#: views/feeds.py:129 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "" + +#: views/feeds.py:144 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "" + +#: views/feeds.py:149 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "" + +#: views/public.py:89 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "" + +#: views/public.py:107 +msgid "Submitter accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:235 +msgid "Accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:369 +#, python-format +msgid "Assigned to %(username)s" +msgstr "" + +#: views/staff.py:392 +msgid "Updated" +msgstr "" + +#: views/staff.py:577 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "" + +#: views/staff.py:582 +msgid "Unassigned in bulk update" +msgstr "" + +#: views/staff.py:587 views/staff.py:592 +msgid "Closed in bulk update" +msgstr "" + +#: views/staff.py:806 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "" + +#: views/staff.py:910 +msgid "Ticket taken off hold" +msgstr "" + +#: views/staff.py:913 +msgid "Ticket placed on hold" +msgstr "" + +#: views/staff.py:1007 +msgid "User by Priority" +msgstr "" + +#: views/staff.py:1013 +msgid "User by Queue" +msgstr "" + +#: views/staff.py:1019 +msgid "User by Status" +msgstr "" + +#: views/staff.py:1025 +msgid "User by Month" +msgstr "" + +#: views/staff.py:1031 +msgid "Queue by Priority" +msgstr "" + +#: views/staff.py:1037 +msgid "Queue by Status" +msgstr "" + +#: views/staff.py:1043 +msgid "Queue by Month" +msgstr "" diff --git a/build/lib/helpdesk/locale/hu/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/hu/LC_MESSAGES/django.mo new file mode 100644 index 00000000..6e437ffc Binary files /dev/null and b/build/lib/helpdesk/locale/hu/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/hu/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/hu/LC_MESSAGES/django.po new file mode 100644 index 00000000..a3cca752 --- /dev/null +++ b/build/lib/helpdesk/locale/hu/LC_MESSAGES/django.po @@ -0,0 +1,2393 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2014-07-26 14:14+0200\n" +"PO-Revision-Date: 2014-08-01 09:58+0000\n" +"Last-Translator: Ross Poulton \n" +"Language-Team: Hungarian (http://www.transifex.com/projects/p/django-helpdesk/language/hu/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: hu\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: forms.py:128 forms.py:328 models.py:190 models.py:267 +#: templates/helpdesk/dashboard.html:15 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/dashboard.html:124 templates/helpdesk/rss_list.html:24 +#: templates/helpdesk/ticket_list.html:69 +#: templates/helpdesk/ticket_list.html:88 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:1032 +#: views/staff.py:1038 views/staff.py:1044 views/staff.py:1050 +msgid "Queue" +msgstr "" + +#: forms.py:137 +msgid "Summary of the problem" +msgstr "" + +#: forms.py:142 +msgid "Submitter E-Mail Address" +msgstr "" + +#: forms.py:144 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "" + +#: forms.py:150 +msgid "Description of Issue" +msgstr "" + +#: forms.py:157 +msgid "Case owner" +msgstr "" + +#: forms.py:158 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "" + +#: forms.py:166 models.py:327 management/commands/escalate_tickets.py:154 +#: templates/helpdesk/public_view_ticket.html:23 +#: templates/helpdesk/ticket.html:184 +#: templates/helpdesk/ticket_desc_table.html:47 +#: templates/helpdesk/ticket_list.html:94 views/staff.py:429 +msgid "Priority" +msgstr "" + +#: forms.py:167 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "" + +#: forms.py:174 forms.py:365 models.py:335 templates/helpdesk/ticket.html:186 +#: views/staff.py:439 +msgid "Due on" +msgstr "" + +#: forms.py:186 forms.py:370 +msgid "Attach File" +msgstr "" + +#: forms.py:187 forms.py:371 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "" + +#: forms.py:240 +msgid "Ticket Opened" +msgstr "" + +#: forms.py:247 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "" + +#: forms.py:337 +msgid "Summary of your query" +msgstr "" + +#: forms.py:342 +msgid "Your E-Mail Address" +msgstr "" + +#: forms.py:343 +msgid "We will e-mail you when your ticket is updated." +msgstr "" + +#: forms.py:348 +msgid "Description of your issue" +msgstr "" + +#: forms.py:350 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "" + +#: forms.py:358 +msgid "Urgency" +msgstr "" + +#: forms.py:359 +msgid "Please select a priority carefully." +msgstr "" + +#: forms.py:419 +msgid "Ticket Opened Via Web" +msgstr "" + +#: forms.py:486 +msgid "Show Ticket List on Login?" +msgstr "" + +#: forms.py:487 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "" + +#: forms.py:492 +msgid "E-mail me on ticket change?" +msgstr "" + +#: forms.py:493 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:498 +msgid "E-mail me when assigned a ticket?" +msgstr "" + +#: forms.py:499 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:504 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "" + +#: forms.py:505 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:510 +msgid "Number of tickets to show per page" +msgstr "" + +#: forms.py:511 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "" + +#: forms.py:518 +msgid "Use my e-mail address when submitting tickets?" +msgstr "" + +#: forms.py:519 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "" + +#: models.py:35 models.py:261 models.py:503 models.py:817 models.py:853 +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket.html:178 templates/helpdesk/ticket_list.html:85 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:419 +msgid "Title" +msgstr "" + +#: models.py:40 models.py:822 models.py:1206 +msgid "Slug" +msgstr "" + +#: models.py:41 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "" + +#: models.py:46 models.py:1054 models.py:1129 models.py:1203 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "" + +#: models.py:49 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "" + +#: models.py:55 models.py:794 +msgid "Locale" +msgstr "" + +#: models.py:59 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "" + +#: models.py:63 +msgid "Allow Public Submission?" +msgstr "" + +#: models.py:66 +msgid "Should this queue be listed on the public submission form?" +msgstr "" + +#: models.py:71 +msgid "Allow E-Mail Submission?" +msgstr "" + +#: models.py:74 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "" + +#: models.py:79 +msgid "Escalation Days" +msgstr "" + +#: models.py:82 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "" + +#: models.py:87 +msgid "New Ticket CC Address" +msgstr "" + +#: models.py:91 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "" + +#: models.py:97 +msgid "Updated Ticket CC Address" +msgstr "" + +#: models.py:101 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "" + +#: models.py:108 +msgid "E-Mail Box Type" +msgstr "" + +#: models.py:110 +msgid "POP 3" +msgstr "" + +#: models.py:110 +msgid "IMAP" +msgstr "" + +#: models.py:113 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "" + +#: models.py:118 +msgid "E-Mail Hostname" +msgstr "" + +#: models.py:122 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "" + +#: models.py:127 +msgid "E-Mail Port" +msgstr "" + +#: models.py:130 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "" + +#: models.py:136 +msgid "Use SSL for E-Mail?" +msgstr "" + +#: models.py:139 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "" + +#: models.py:144 +msgid "E-Mail Username" +msgstr "" + +#: models.py:148 +msgid "Username for accessing this mailbox." +msgstr "" + +#: models.py:152 +msgid "E-Mail Password" +msgstr "" + +#: models.py:156 +msgid "Password for the above username" +msgstr "" + +#: models.py:160 +msgid "IMAP Folder" +msgstr "" + +#: models.py:164 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "" + +#: models.py:171 +msgid "E-Mail Check Interval" +msgstr "" + +#: models.py:172 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "" + +#: models.py:191 templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "" + +#: models.py:245 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:138 +msgid "Open" +msgstr "" + +#: models.py:246 templates/helpdesk/ticket.html:144 +#: templates/helpdesk/ticket.html.py:150 templates/helpdesk/ticket.html:155 +#: templates/helpdesk/ticket.html.py:159 +msgid "Reopened" +msgstr "" + +#: models.py:247 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:139 templates/helpdesk/ticket.html.py:145 +#: templates/helpdesk/ticket.html:151 +msgid "Resolved" +msgstr "" + +#: models.py:248 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:140 templates/helpdesk/ticket.html.py:146 +#: templates/helpdesk/ticket.html:152 templates/helpdesk/ticket.html.py:156 +msgid "Closed" +msgstr "" + +#: models.py:249 templates/helpdesk/ticket.html:141 +#: templates/helpdesk/ticket.html.py:147 templates/helpdesk/ticket.html:160 +msgid "Duplicate" +msgstr "" + +#: models.py:253 +msgid "1. Critical" +msgstr "" + +#: models.py:254 +msgid "2. High" +msgstr "" + +#: models.py:255 +msgid "3. Normal" +msgstr "" + +#: models.py:256 +msgid "4. Low" +msgstr "" + +#: models.py:257 +msgid "5. Very Low" +msgstr "" + +#: models.py:271 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/ticket_list.html:82 +#: templates/helpdesk/ticket_list.html:225 +msgid "Created" +msgstr "" + +#: models.py:273 +msgid "Date this ticket was first created" +msgstr "" + +#: models.py:277 +msgid "Modified" +msgstr "" + +#: models.py:279 +msgid "Date this ticket was most recently changed." +msgstr "" + +#: models.py:283 templates/helpdesk/public_view_ticket.html:18 +#: templates/helpdesk/ticket_desc_table.html:42 +msgid "Submitter E-Mail" +msgstr "" + +#: models.py:286 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "" + +#: models.py:295 +msgid "Assigned to" +msgstr "" + +#: models.py:299 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:70 +#: templates/helpdesk/ticket_list.html:91 +#: templates/helpdesk/ticket_list.html:225 +msgid "Status" +msgstr "" + +#: models.py:305 +msgid "On Hold" +msgstr "" + +#: models.py:308 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "" + +#: models.py:313 models.py:826 templates/helpdesk/public_view_ticket.html:41 +#: templates/helpdesk/ticket_desc_table.html:19 +msgid "Description" +msgstr "" + +#: models.py:316 +msgid "The content of the customers query." +msgstr "" + +#: models.py:320 templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Resolution" +msgstr "" + +#: models.py:323 +msgid "The resolution provided to the customer by our staff." +msgstr "" + +#: models.py:331 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "" + +#: models.py:344 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "" + +#: models.py:353 templates/helpdesk/ticket_desc_table.html:38 +#: views/feeds.py:95 views/feeds.py:121 views/feeds.py:173 views/staff.py:376 +msgid "Unassigned" +msgstr "" + +#: models.py:392 +msgid " - On Hold" +msgstr "" + +#: models.py:394 +msgid " - Open dependencies" +msgstr "" + +#: models.py:448 models.py:494 models.py:1117 models.py:1280 models.py:1309 +#: templates/helpdesk/public_homepage.html:78 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "" + +#: models.py:449 templates/helpdesk/navigation.html:17 +#: templates/helpdesk/ticket_list.html:2 +#: templates/helpdesk/ticket_list.html:224 +msgid "Tickets" +msgstr "" + +#: models.py:498 models.py:738 models.py:1047 models.py:1200 +msgid "Date" +msgstr "" + +#: models.py:510 views/staff.py:390 +msgid "Comment" +msgstr "" + +#: models.py:516 +msgid "Public" +msgstr "" + +#: models.py:519 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "" + +#: models.py:527 models.py:922 models.py:1125 views/staff.py:1008 +#: views/staff.py:1014 views/staff.py:1020 views/staff.py:1026 +msgid "User" +msgstr "" + +#: models.py:531 templates/helpdesk/ticket.html:135 +msgid "New Status" +msgstr "" + +#: models.py:535 +msgid "If the status was changed, what was it changed to?" +msgstr "" + +#: models.py:542 models.py:566 models.py:628 +msgid "Follow-up" +msgstr "" + +#: models.py:543 +msgid "Follow-ups" +msgstr "" + +#: models.py:570 models.py:1285 +msgid "Field" +msgstr "" + +#: models.py:575 +msgid "Old Value" +msgstr "" + +#: models.py:581 +msgid "New Value" +msgstr "" + +#: models.py:589 +msgid "removed" +msgstr "" + +#: models.py:591 +#, python-format +msgid "set to %s" +msgstr "" + +#: models.py:593 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "" + +#: models.py:600 +msgid "Ticket change" +msgstr "" + +#: models.py:601 +msgid "Ticket changes" +msgstr "" + +#: models.py:632 +msgid "File" +msgstr "" + +#: models.py:637 +msgid "Filename" +msgstr "" + +#: models.py:642 +msgid "MIME Type" +msgstr "" + +#: models.py:647 +msgid "Size" +msgstr "" + +#: models.py:648 +msgid "Size of this file in bytes" +msgstr "" + +#: models.py:665 +msgid "Attachment" +msgstr "" + +#: models.py:666 +msgid "Attachments" +msgstr "" + +#: models.py:685 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "" + +#: models.py:690 models.py:733 models.py:1042 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "" + +#: models.py:692 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "" + +#: models.py:697 +msgid "Body" +msgstr "" + +#: models.py:698 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "" + +#: models.py:705 +msgid "Pre-set reply" +msgstr "" + +#: models.py:706 +msgid "Pre-set replies" +msgstr "" + +#: models.py:727 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "" + +#: models.py:739 +msgid "Date on which escalation should not happen" +msgstr "" + +#: models.py:746 +msgid "Escalation exclusion" +msgstr "" + +#: models.py:747 +msgid "Escalation exclusions" +msgstr "" + +#: models.py:760 +msgid "Template Name" +msgstr "" + +#: models.py:765 +msgid "Subject" +msgstr "" + +#: models.py:767 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "" + +#: models.py:773 +msgid "Heading" +msgstr "" + +#: models.py:775 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "" + +#: models.py:781 +msgid "Plain Text" +msgstr "" + +#: models.py:782 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "" + +#: models.py:788 +msgid "HTML" +msgstr "" + +#: models.py:789 +msgid "The same context is available here as in plain_text, above." +msgstr "" + +#: models.py:798 +msgid "Locale of this template." +msgstr "" + +#: models.py:806 +msgid "e-mail template" +msgstr "" + +#: models.py:807 +msgid "e-mail templates" +msgstr "" + +#: models.py:834 +msgid "Knowledge base category" +msgstr "" + +#: models.py:835 +msgid "Knowledge base categories" +msgstr "" + +#: models.py:849 templates/helpdesk/kb_index.html:11 +#: templates/helpdesk/public_homepage.html:11 +msgid "Category" +msgstr "" + +#: models.py:858 +msgid "Question" +msgstr "" + +#: models.py:862 +msgid "Answer" +msgstr "" + +#: models.py:866 +msgid "Votes" +msgstr "" + +#: models.py:867 +msgid "Total number of votes cast for this item" +msgstr "" + +#: models.py:872 +msgid "Positive Votes" +msgstr "" + +#: models.py:873 +msgid "Number of votes for this item which were POSITIVE." +msgstr "" + +#: models.py:878 +msgid "Last Updated" +msgstr "" + +#: models.py:879 +msgid "The date on which this question was most recently changed." +msgstr "" + +#: models.py:893 +msgid "Unrated" +msgstr "" + +#: models.py:901 +msgid "Knowledge base item" +msgstr "" + +#: models.py:902 +msgid "Knowledge base items" +msgstr "" + +#: models.py:926 templates/helpdesk/ticket_list.html:170 +msgid "Query Name" +msgstr "" + +#: models.py:928 +msgid "User-provided name for this query" +msgstr "" + +#: models.py:932 +msgid "Shared With Other Users?" +msgstr "" + +#: models.py:935 +msgid "Should other users see this query?" +msgstr "" + +#: models.py:939 +msgid "Search Query" +msgstr "" + +#: models.py:940 +msgid "Pickled query object. Be wary changing this." +msgstr "" + +#: models.py:950 +msgid "Saved search" +msgstr "" + +#: models.py:951 +msgid "Saved searches" +msgstr "" + +#: models.py:966 +msgid "Settings Dictionary" +msgstr "" + +#: models.py:967 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "" + +#: models.py:993 +msgid "User Setting" +msgstr "" + +#: models.py:994 templates/helpdesk/navigation.html:37 +#: templates/helpdesk/user_settings.html:6 +msgid "User Settings" +msgstr "" + +#: models.py:1036 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "" + +#: models.py:1048 +msgid "Date on which this e-mail address was added" +msgstr "" + +#: models.py:1056 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "" + +#: models.py:1061 +msgid "Save Emails in Mailbox?" +msgstr "" + +#: models.py:1064 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "" + +#: models.py:1101 +msgid "Ignored e-mail address" +msgstr "" + +#: models.py:1102 +msgid "Ignored e-mail addresses" +msgstr "" + +#: models.py:1124 +msgid "User who wishes to receive updates for this ticket." +msgstr "" + +#: models.py:1132 +msgid "For non-user followers, enter their e-mail address" +msgstr "" + +#: models.py:1136 +msgid "Can View Ticket?" +msgstr "" + +#: models.py:1138 +msgid "Can this CC login to view the ticket details?" +msgstr "" + +#: models.py:1142 +msgid "Can Update Ticket?" +msgstr "" + +#: models.py:1144 +msgid "Can this CC login and update the ticket?" +msgstr "" + +#: models.py:1175 +msgid "Field Name" +msgstr "" + +#: models.py:1176 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "" + +#: models.py:1181 +msgid "Label" +msgstr "" + +#: models.py:1183 +msgid "The display label for this field" +msgstr "" + +#: models.py:1187 +msgid "Help Text" +msgstr "" + +#: models.py:1188 +msgid "Shown to the user when editing the ticket" +msgstr "" + +#: models.py:1194 +msgid "Character (single line)" +msgstr "" + +#: models.py:1195 +msgid "Text (multi-line)" +msgstr "" + +#: models.py:1196 +msgid "Integer" +msgstr "" + +#: models.py:1197 +msgid "Decimal" +msgstr "" + +#: models.py:1198 +msgid "List" +msgstr "" + +#: models.py:1199 +msgid "Boolean (checkbox yes/no)" +msgstr "" + +#: models.py:1201 +msgid "Time" +msgstr "" + +#: models.py:1202 +msgid "Date & Time" +msgstr "" + +#: models.py:1204 +msgid "URL" +msgstr "" + +#: models.py:1205 +msgid "IP Address" +msgstr "" + +#: models.py:1210 +msgid "Data Type" +msgstr "" + +#: models.py:1212 +msgid "Allows you to restrict the data entered into this field" +msgstr "" + +#: models.py:1217 +msgid "Maximum Length (characters)" +msgstr "" + +#: models.py:1223 +msgid "Decimal Places" +msgstr "" + +#: models.py:1224 +msgid "Only used for decimal fields" +msgstr "" + +#: models.py:1230 +msgid "Add empty first choice to List?" +msgstr "" + +#: models.py:1232 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "" + +#: models.py:1236 +msgid "List Values" +msgstr "" + +#: models.py:1237 +msgid "For list fields only. Enter one option per line." +msgstr "" + +#: models.py:1243 +msgid "Ordering" +msgstr "" + +#: models.py:1244 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "" + +#: models.py:1258 +msgid "Required?" +msgstr "" + +#: models.py:1259 +msgid "Does the user have to enter a value for this field?" +msgstr "" + +#: models.py:1263 +msgid "Staff Only?" +msgstr "" + +#: models.py:1264 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "" + +#: models.py:1273 +msgid "Custom field" +msgstr "" + +#: models.py:1274 +msgid "Custom fields" +msgstr "" + +#: models.py:1297 +msgid "Ticket custom field value" +msgstr "" + +#: models.py:1298 +msgid "Ticket custom field values" +msgstr "" + +#: models.py:1315 +msgid "Depends On Ticket" +msgstr "" + +#: models.py:1324 +msgid "Ticket dependency" +msgstr "" + +#: models.py:1325 +msgid "Ticket dependencies" +msgstr "" + +#: management/commands/create_usersettings.py:25 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "" + +#: management/commands/escalate_tickets.py:148 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "" + +#: management/commands/get_email.py:158 +msgid "Created from e-mail" +msgstr "" + +#: management/commands/get_email.py:162 +msgid "Unknown Sender" +msgstr "" + +#: management/commands/get_email.py:216 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "" + +#: management/commands/get_email.py:220 +msgid "email_html_body.html" +msgstr "" + +#: management/commands/get_email.py:263 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:271 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:329 +msgid " (Reopened)" +msgstr "" + +#: management/commands/get_email.py:331 +msgid " (Updated)" +msgstr "" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"django-helpdesk." +msgstr "" + +#: templates/helpdesk/base.html:10 +msgid "Powered by django-helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:20 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:24 templates/helpdesk/rss_list.html:31 +msgid "My Open Tickets" +msgstr "" + +#: templates/helpdesk/base.html:21 +msgid "All Recent Activity" +msgstr "" + +#: templates/helpdesk/base.html:22 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "" + +#: templates/helpdesk/base.html:52 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:18 +msgid "Helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:30 templates/helpdesk/rss_list.html:31 +msgid "RSS Icon" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "" + +#: templates/helpdesk/base.html:63 +msgid "API" +msgstr "" + +#: templates/helpdesk/base.html:64 templates/helpdesk/system_settings.html:6 +msgid "System Settings" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:146 +msgid "Delete Saved Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:6 +msgid "Delete Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this saved filter " +"(%(query_title)s)? To re-create it, you will need to manually re-" +"filter your ticket listing." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"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." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:14 +#: templates/helpdesk/delete_ticket.html:10 +msgid "No, Don't Delete It" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:16 +#: templates/helpdesk/delete_ticket.html:12 +msgid "Yes - Delete It" +msgstr "" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/navigation.html:65 templates/helpdesk/navigation.html:68 +#: templates/helpdesk/public_homepage.html:27 +msgid "Submit a Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +#: templates/helpdesk/public_homepage.html:28 +msgid "Please provide as descriptive a title and description as possible." +msgstr "" + +#: templates/helpdesk/create_ticket.html:30 +#: templates/helpdesk/public_homepage.html:55 +msgid "Submit Ticket" +msgstr "" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "" + +#: templates/helpdesk/dashboard.html:9 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "" + +#: templates/helpdesk/dashboard.html:14 +msgid "Helpdesk Summary" +msgstr "" + +#: templates/helpdesk/dashboard.html:36 +msgid "Current Ticket Stats" +msgstr "" + +#: templates/helpdesk/dashboard.html:37 +msgid "Average number of days until ticket is closed (all tickets): " +msgstr "" + +#: templates/helpdesk/dashboard.html:38 +msgid "" +"Average number of days until ticket is closed (tickets opened in last 60 " +"days): " +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "Click" +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "for detailed average by month." +msgstr "" + +#: templates/helpdesk/dashboard.html:40 +msgid "Distribution of open tickets, grouped by time period:" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Days since opened" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Number of open tickets" +msgstr "" + +#: templates/helpdesk/dashboard.html:57 +msgid "All Tickets submitted by you" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:225 +msgid "Pr" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:124 +msgid "Last Update" +msgstr "" + +#: templates/helpdesk/dashboard.html:77 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "" + +#: templates/helpdesk/dashboard.html:92 +msgid "You have no tickets assigned to you." +msgstr "" + +#: templates/helpdesk/dashboard.html:99 +msgid "(pick up a ticket if you start to work on it)" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/ticket_desc_table.html:38 +msgid "Take" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:262 +msgid "Delete" +msgstr "" + +#: templates/helpdesk/dashboard.html:114 +msgid "There are no unassigned tickets." +msgstr "" + +#: templates/helpdesk/dashboard.html:123 +msgid "Closed & resolved Tickets you used to work on" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:3 +#: templates/helpdesk/delete_ticket.html:6 +msgid "Delete Ticket" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this ticket (%(ticket_title)s)? All" +" traces of the ticket, including followups, attachments, and updates will be" +" irreversibly removed." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:9 +msgid "Edit a Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "Note" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "" +"Editing a ticket does not send an e-mail to the ticket owner or " +"submitter. No new details should be entered, this form should only be used " +"to fix incorrect details or clean up the submission." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:33 +msgid "Save Changes" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:6 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:8 +msgid "" +"To ignore an e-mail address and prevent any emails from that address " +"creating tickets automatically, enter the e-mail address below." +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:10 +msgid "" +"You can either enter a whole e-mail address such as " +"email@domain.com or a portion of an e-mail address with a wildcard," +" such as *@domain.com or user@*." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:6 +msgid "Un-Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:8 +#, python-format +msgid "" +"Are you sure you wish to stop removing this email address " +"(%(email_address)s) and allow their e-mails to automatically create" +" tickets in your system? You can re-add this e-mail address at any time." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:10 +msgid "Keep Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:12 +msgid "Stop Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:260 +msgid "All" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "" + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:12 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "" + +#: templates/helpdesk/kb_category.html:13 +msgid "Article" +msgstr "" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:21 +#: templates/helpdesk/navigation.html:71 +msgid "Knowledgebase" +msgstr "" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "" + +#: templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:16 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "" + +#: templates/helpdesk/kb_item.html:18 +msgid "Feedback" +msgstr "" + +#: templates/helpdesk/kb_item.html:20 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "" + +#: templates/helpdesk/kb_item.html:23 +msgid "This article was useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:24 +msgid "This article was not useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:27 +msgid "The results of voting by other readers of this article are below:" +msgstr "" + +#: templates/helpdesk/kb_item.html:30 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:31 +#, python-format +msgid "Votes: %(votes)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:32 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "" + +#: templates/helpdesk/navigation.html:16 templates/helpdesk/navigation.html:64 +msgid "Dashboard" +msgstr "" + +#: templates/helpdesk/navigation.html:18 +msgid "New Ticket" +msgstr "" + +#: templates/helpdesk/navigation.html:19 +msgid "Stats" +msgstr "" + +#: templates/helpdesk/navigation.html:24 +msgid "Saved Query" +msgstr "" + +#: templates/helpdesk/navigation.html:39 +msgid "Change password" +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Search..." +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Logout" +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Log In" +msgstr "" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:73 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "" + +#: templates/helpdesk/public_homepage.html:28 +msgid "All fields are required." +msgstr "" + +#: templates/helpdesk/public_homepage.html:66 +msgid "Please use button at upper right to login first." +msgstr "" + +#: templates/helpdesk/public_homepage.html:82 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "" + +#: templates/helpdesk/public_homepage.html:86 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:5 +msgid "Sorry, but there has been an error trying to submit your ticket." +msgstr "" + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"Our system has marked your submission as spam, so we are " +"unable to save it. If this is not spam, please press back and re-type your " +"message. Be careful to avoid sounding 'spammy', and if you have heaps of " +"links please try removing them if possible." +msgstr "" + +#: templates/helpdesk/public_spam.html:7 +msgid "" +"We are sorry for any inconvenience, however this check is required to avoid " +"our helpdesk resources being overloaded by spammers." +msgstr "" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:9 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:13 +#: templates/helpdesk/ticket_desc_table.html:32 +msgid "Submitted On" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:35 +msgid "Tags" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept and Close" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:57 +#: templates/helpdesk/ticket.html:66 +msgid "Follow-Ups" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:65 +#: templates/helpdesk/ticket.html:100 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "" + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "" + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:27 views/staff.py:1049 +msgid "Days until ticket closed by Month" +msgstr "" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "" + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "" + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "" + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "" + +#: templates/helpdesk/rss_list.html:23 +msgid "Per-Queue Feeds" +msgstr "" + +#: templates/helpdesk/rss_list.html:24 +msgid "All Open Tickets" +msgstr "" + +#: templates/helpdesk/rss_list.html:30 +msgid "Open Tickets" +msgstr "" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "" + +#: templates/helpdesk/system_settings.html:8 +msgid "The following items can be maintained by you or other superusers:" +msgstr "" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:200 +msgid "Add Another File" +msgstr "" + +#: templates/helpdesk/ticket.html:73 templates/helpdesk/ticket.html.py:86 +msgid "Private" +msgstr "" + +#: templates/helpdesk/ticket.html:119 +msgid "Respond to this ticket" +msgstr "" + +#: templates/helpdesk/ticket.html:126 +msgid "Use a Pre-set Reply" +msgstr "" + +#: templates/helpdesk/ticket.html:126 templates/helpdesk/ticket.html.py:166 +msgid "(Optional)" +msgstr "" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "" + +#: templates/helpdesk/ticket.html:131 +msgid "Comment / Resolution" +msgstr "" + +#: templates/helpdesk/ticket.html:133 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "" + +#: templates/helpdesk/ticket.html:136 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "" + +#: templates/helpdesk/ticket.html:166 +msgid "Is this update public?" +msgstr "" + +#: templates/helpdesk/ticket.html:168 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "" + +#: templates/helpdesk/ticket.html:172 +msgid "Change Further Details »" +msgstr "" + +#: templates/helpdesk/ticket.html:181 templates/helpdesk/ticket_list.html:68 +#: templates/helpdesk/ticket_list.html:97 +#: templates/helpdesk/ticket_list.html:225 +msgid "Owner" +msgstr "" + +#: templates/helpdesk/ticket.html:182 +msgid "Unassign" +msgstr "" + +#: templates/helpdesk/ticket.html:193 +msgid "Attach File(s) »" +msgstr "" + +#: templates/helpdesk/ticket.html:199 +msgid "Attach a File" +msgstr "" + +#: templates/helpdesk/ticket.html:207 +msgid "Update This Ticket" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Unhold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Hold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:9 +#, python-format +msgid "Queue: %(queue)s" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Assigned To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:43 +msgid "Ignore" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:52 +msgid "Copies To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Manage" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Subscribe" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to subscribe yourself to this ticket, if you want to receive an " +"e-mail whenever this ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:57 +msgid "Dependencies" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:59 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:60 +msgid "Remove Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "This ticket has no dependencies." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "Add Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Change Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:67 +#: templates/helpdesk/ticket_list.html:79 +msgid "Sorting" +msgstr "" + +#: templates/helpdesk/ticket_list.html:71 +#: templates/helpdesk/ticket_list.html:139 +msgid "Keywords" +msgstr "" + +#: templates/helpdesk/ticket_list.html:72 +msgid "Date Range" +msgstr "" + +#: templates/helpdesk/ticket_list.html:100 +msgid "Reverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:102 +msgid "Ordering applied to tickets" +msgstr "" + +#: templates/helpdesk/ticket_list.html:107 +msgid "Owner(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:111 +msgid "(ME)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:115 +msgid "Ctrl-Click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:120 +msgid "Queue(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:121 +#: templates/helpdesk/ticket_list.html:127 +msgid "Ctrl-click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:126 +msgid "Status(es)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:132 +msgid "Date (From)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:133 +msgid "Date (To)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:134 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "" + +#: templates/helpdesk/ticket_list.html:140 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "" + +#: templates/helpdesk/ticket_list.html:144 +msgid "Apply Filter" +msgstr "" + +#: templates/helpdesk/ticket_list.html:146 +#, python-format +msgid "You are currently viewing saved query \"%(query_name)s\"." +msgstr "" + +#: templates/helpdesk/ticket_list.html:149 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "" + +#: templates/helpdesk/ticket_list.html:162 +#: templates/helpdesk/ticket_list.html:181 +msgid "Save Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:172 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "" + +#: templates/helpdesk/ticket_list.html:174 +msgid "Shared?" +msgstr "" + +#: templates/helpdesk/ticket_list.html:175 +msgid "Yes, share this query with other users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:176 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:195 +msgid "Use Saved Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:202 +msgid "Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:207 +msgid "Run Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:240 +msgid "No Tickets Match Your Selection" +msgstr "" + +#: templates/helpdesk/ticket_list.html:247 +msgid "Previous" +msgstr "" + +#: templates/helpdesk/ticket_list.html:251 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:255 +msgid "Next" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Select:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "None" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Inverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "With Selected Tickets:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Take (Assign to me)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Don't Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Assign To" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Nobody (Unassign)" +msgstr "" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "" + +#: templates/helpdesk/user_settings.html:8 +msgid "" +"Use the following options to change the way your helpdesk system works for " +"you. These settings do not impact any other user." +msgstr "" + +#: templates/helpdesk/user_settings.html:14 +msgid "Save Options" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "" + +#: templates/helpdesk/registration/login.html:14 +msgid "To log in simply enter your username and password below." +msgstr "" + +#: templates/helpdesk/registration/login.html:17 +msgid "Your username and password didn't match. Please try again." +msgstr "" + +#: templates/helpdesk/registration/login.html:20 +msgid "Login" +msgstr "" + +#: views/feeds.py:39 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:44 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:50 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:55 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:102 +msgid "Helpdesk: Unassigned Tickets" +msgstr "" + +#: views/feeds.py:103 +msgid "Unassigned Open and Reopened tickets" +msgstr "" + +#: views/feeds.py:128 +msgid "Helpdesk: Recent Followups" +msgstr "" + +#: views/feeds.py:129 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "" + +#: views/feeds.py:144 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "" + +#: views/feeds.py:149 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "" + +#: views/public.py:89 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "" + +#: views/public.py:107 +msgid "Submitter accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:235 +msgid "Accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:369 +#, python-format +msgid "Assigned to %(username)s" +msgstr "" + +#: views/staff.py:392 +msgid "Updated" +msgstr "" + +#: views/staff.py:577 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "" + +#: views/staff.py:582 +msgid "Unassigned in bulk update" +msgstr "" + +#: views/staff.py:587 views/staff.py:592 +msgid "Closed in bulk update" +msgstr "" + +#: views/staff.py:806 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "" + +#: views/staff.py:910 +msgid "Ticket taken off hold" +msgstr "" + +#: views/staff.py:913 +msgid "Ticket placed on hold" +msgstr "" + +#: views/staff.py:1007 +msgid "User by Priority" +msgstr "" + +#: views/staff.py:1013 +msgid "User by Queue" +msgstr "" + +#: views/staff.py:1019 +msgid "User by Status" +msgstr "" + +#: views/staff.py:1025 +msgid "User by Month" +msgstr "" + +#: views/staff.py:1031 +msgid "Queue by Priority" +msgstr "" + +#: views/staff.py:1037 +msgid "Queue by Status" +msgstr "" + +#: views/staff.py:1043 +msgid "Queue by Month" +msgstr "" diff --git a/build/lib/helpdesk/locale/it/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/it/LC_MESSAGES/django.mo new file mode 100644 index 00000000..6ebb08e7 Binary files /dev/null and b/build/lib/helpdesk/locale/it/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/it/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/it/LC_MESSAGES/django.po new file mode 100644 index 00000000..3bfc1a6e --- /dev/null +++ b/build/lib/helpdesk/locale/it/LC_MESSAGES/django.po @@ -0,0 +1,2308 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Stefano Brentegani , 2013 +# Stefano Brentegani , 2011, 2012 +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2012-08-07 20:40+1000\n" +"PO-Revision-Date: 2013-11-20 11:07+0000\n" +"Last-Translator: Stefano Brentegani \n" +"Language-Team: Italian (http://www.transifex.com/projects/p/django-helpdesk/language/it/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: it\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: forms.py:113 forms.py:360 models.py:262 +#: templates/helpdesk/dashboard.html:11 templates/helpdesk/dashboard.html:37 +#: templates/helpdesk/dashboard.html:57 templates/helpdesk/dashboard.html:77 +#: templates/helpdesk/dashboard.html:99 templates/helpdesk/rss_list.html:23 +#: templates/helpdesk/ticket_list.html:56 +#: templates/helpdesk/ticket_list.html:78 +#: templates/helpdesk/ticket_list.html:199 views/staff.py:976 +#: views/staff.py:982 views/staff.py:988 +msgid "Queue" +msgstr "Coda" + +#: forms.py:122 +msgid "Summary of the problem" +msgstr "Riassunto del problema" + +#: forms.py:127 +msgid "Submitter E-Mail Address" +msgstr "Indirizzo e-mail autore" + +#: forms.py:129 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "Questo indirizzo e-mail riceverà copie di tutti gli aggiornamenti pubblici al ticket." + +#: forms.py:135 +msgid "Description of Issue" +msgstr "Descrizione del problema" + +#: forms.py:142 +msgid "Case owner" +msgstr "Assegnato a" + +#: forms.py:143 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "Se assegni il ticket a un'altra persona, le sarà inviata subito un'e-mail coi dettagli di questa richiesta." + +#: forms.py:151 models.py:322 management/commands/escalate_tickets.py:149 +#: templates/helpdesk/public_view_ticket.html:21 +#: templates/helpdesk/ticket.html:176 +#: templates/helpdesk/ticket_desc_table.html:31 +#: templates/helpdesk/ticket_list.html:84 views/staff.py:355 +msgid "Priority" +msgstr "Priorità" + +#: forms.py:152 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "Per favore, scegli con attenzione la priorità. Nel dubbio, lascia '3'." + +#: forms.py:159 forms.py:397 models.py:330 templates/helpdesk/ticket.html:178 +#: views/staff.py:365 +msgid "Due on" +msgstr "Scadenza" + +#: forms.py:171 forms.py:402 +msgid "Attach File" +msgstr "Allega un file" + +#: forms.py:172 forms.py:403 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "Puoi allegare al ticket un file, per esempio un documento o una schermata." + +#: forms.py:180 templates/helpdesk/public_view_ticket.html:33 +#: templates/helpdesk/ticket.html:182 +#: templates/helpdesk/ticket_desc_table.html:42 +#: templates/helpdesk/ticket_list.html:61 +#: templates/helpdesk/ticket_list.html:199 views/staff.py:376 +msgid "Tags" +msgstr "Etichette" + +#: forms.py:181 +msgid "" +"Words, separated by spaces, or phrases separated by commas. These should " +"communicate significant characteristics of this ticket" +msgstr "Parole separate da spazi, o frasi separate da virgole. Dovrebbero rappresentare le caratteristiche più significative di questa richiesta." + +#: forms.py:275 +msgid "Ticket Opened" +msgstr "Ticket aperto" + +#: forms.py:282 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "Ticket aperto e assegnato a %(name)s" + +#: forms.py:369 +msgid "Summary of your query" +msgstr "Riassunto della tua ricerca" + +#: forms.py:374 +msgid "Your E-Mail Address" +msgstr "Il tuo indirizzo e-mail" + +#: forms.py:375 +msgid "We will e-mail you when your ticket is updated." +msgstr "Ti manderemo un'e-mail quando il tuo ticket sarà aggiornato." + +#: forms.py:380 +msgid "Description of your issue" +msgstr "Descrizione del problema" + +#: forms.py:382 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "Cerca di scrivere una descrizione dettagliata, includendo particolari che potrebbero aiutare nella risoluzione della richiesta." + +#: forms.py:390 +msgid "Urgency" +msgstr "Urgenza" + +#: forms.py:391 +msgid "Please select a priority carefully." +msgstr "Per favore, scegli con attenzione la priorità." + +#: forms.py:486 +msgid "Ticket Opened Via Web" +msgstr "Ticket aperto via web" + +#: forms.py:553 +msgid "Show Ticket List on Login?" +msgstr "Mostrare l'elenco dei ticket dopo il login?" + +#: forms.py:554 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "Mostrare l'elenco dei ticket dopo il login? In caso contrario sarà aperta la dashboard." + +#: forms.py:559 +msgid "E-mail me on ticket change?" +msgstr "Inviare un'e-mail quando il ticket viene modificato?" + +#: forms.py:560 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "Se il ticket è assegnato a te, vuoi ricevere un'e-mail quando altri lo modificano via web?" + +#: forms.py:565 +msgid "E-mail me when assigned a ticket?" +msgstr "Inviare un'e-mail quando ti viene assegnato un ticket?" + +#: forms.py:566 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "Vuoi ricevere un'e-mail quando ti viene assegnato un ticket via web?" + +#: forms.py:571 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "Inviare un'e-mail quando il ticket viene modificato usando le API?" + +#: forms.py:572 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "Vuoi ricevere un'e-mail quando il ticket viene modificato delle API?" + +#: forms.py:577 +msgid "Number of tickets to show per page" +msgstr "Numero di ticket mostrati per pagina" + +#: forms.py:578 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "Quanti ticket vuoi vedere nella pagina Elenco ticket?" + +#: forms.py:585 +msgid "Use my e-mail address when submitting tickets?" +msgstr "Usare la mia e-mail per creare nuovi ticket?" + +#: forms.py:586 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "Quando crei un nuovo ticket, vuoi impostare automaticamente il tuo indirizzo e-mail come autore? Se necessario, puoi modificare l'indirizzo e-mail nel momento in cui crei il ticket: questa opzione definisce solo il valore predefinito." + +#: models.py:32 models.py:256 models.py:490 models.py:787 models.py:821 +#: templates/helpdesk/dashboard.html:37 templates/helpdesk/dashboard.html:57 +#: templates/helpdesk/dashboard.html:77 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/ticket.html:170 templates/helpdesk/ticket_list.html:75 +#: templates/helpdesk/ticket_list.html:199 views/staff.py:345 +msgid "Title" +msgstr "Titolo" + +#: models.py:37 models.py:792 models.py:1162 +msgid "Slug" +msgstr "Slug" + +#: models.py:38 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "Lo slug viene utilizzato per costruire gli ID dei ticket. Una volta impostato, cerca di non cambiarlo, o potrebbero verificarsi problemi con le e-mail." + +#: models.py:43 models.py:1015 models.py:1085 models.py:1159 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "Indirizzo e-mail" + +#: models.py:46 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "Tutti i messaggi inviati relativi a questa coda useranno questo indirizzo e-mail. Se usi IMAP o POP3, questo dovrebbe essere l'indirizzo della casella postale." + +#: models.py:52 models.py:766 +msgid "Locale" +msgstr "Lingua" + +#: models.py:56 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "La lingua da utilizzare in tutte le comunicazioni per questa coda." + +#: models.py:60 +msgid "Allow Public Submission?" +msgstr "Consenti apertura pubblica" + +#: models.py:63 +msgid "Should this queue be listed on the public submission form?" +msgstr "Riportare questa coda nel modulo di apertura pubblico?" + +#: models.py:68 +msgid "Allow E-Mail Submission?" +msgstr "Consenti apertura da e-mail?" + +#: models.py:71 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "Vuoi controllare la casella di posta qui sotto per verificare la presenza di nuovi ticket?" + +#: models.py:76 +msgid "Escalation Days" +msgstr "Giorni Escalation" + +#: models.py:79 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "Quanto spesso aumentare la priorità dei ticket non presi in carico? Imposta a 0 per disattivare l'escalation." + +#: models.py:84 +msgid "New Ticket CC Address" +msgstr "Indirizzo CC per ticket nuovi" + +#: models.py:88 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "Se definito, a questo indirizzo e-mail saranno inviate le notifiche di tutti i nuovi ticket creati per questa coda. Separa più indirizzi con una virgola." + +#: models.py:94 +msgid "Updated Ticket CC Address" +msgstr "Indirizzo CC per ticket aggiornati" + +#: models.py:98 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "Se definito, a questo indirizzo e-mail saranno inviate le notifiche di tutte le attività (nuovi ticket, ticket chiusi, aggiornamenti, riassegnazioni, etc.) per questa coda. Separa più indirizzi con una virgola." + +#: models.py:105 +msgid "E-Mail Box Type" +msgstr "Tipo di casella e-mail" + +#: models.py:107 +msgid "POP 3" +msgstr "POP3" + +#: models.py:107 +msgid "IMAP" +msgstr "IMAP" + +#: models.py:110 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "Tipo di server e-mail per la creazione automatica dei ticket a partire dalla casella di posta: supporta sia POP3 che IMAP." + +#: models.py:115 +msgid "E-Mail Hostname" +msgstr "Nome host e-mail" + +#: models.py:119 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "L'indirizzo del tuo server e-mail: può essere un nome di dominio o un indirizzo IP. Può essere \"localhost\"." + +#: models.py:124 +msgid "E-Mail Port" +msgstr "Porta e-mail" + +#: models.py:127 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "Il numero della porta da usare per accedere alla posta. Il default per POP3 è \"110\", per IMAP \"143\". Alcuni server potrebbero usare valori diversi. Lascia vuoto per usare i default." + +#: models.py:133 +msgid "Use SSL for E-Mail?" +msgstr "Usare SSL per l'e-mail?" + +#: models.py:136 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "Attiva l'uso di SSL per IMAP o POP3: quando si usa SSL, le porte di default sono 993 per IMAP e 995 per POP3." + +#: models.py:141 +msgid "E-Mail Username" +msgstr "Nome utente e-mail" + +#: models.py:145 +msgid "Username for accessing this mailbox." +msgstr "Nome utente per accedere alla casella di posta." + +#: models.py:149 +msgid "E-Mail Password" +msgstr "Password e-mail" + +#: models.py:153 +msgid "Password for the above username" +msgstr "La password per l'utente." + +#: models.py:157 +msgid "IMAP Folder" +msgstr "Cartella IMAP" + +#: models.py:161 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "Se si usa IMAP, indica da quale cartella recuperare i messaggi. Questo permette di usare lo stesso account IMAP per più code, filtrando i messaggi sul server IMAP in modo da smistarli in cartelle distinte. Default: INBOX." + +#: models.py:168 +msgid "E-Mail Check Interval" +msgstr "Intervallo di verifica e-mail" + +#: models.py:169 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "La frequenza con cui viene controllata la casella di posta (in minuti)." + +#: models.py:240 templates/helpdesk/dashboard.html:11 +#: templates/helpdesk/ticket.html:130 +msgid "Open" +msgstr "Aperto" + +#: models.py:241 templates/helpdesk/ticket.html:136 +#: templates/helpdesk/ticket.html.py:142 templates/helpdesk/ticket.html:147 +#: templates/helpdesk/ticket.html.py:151 +msgid "Reopened" +msgstr "Riaperto" + +#: models.py:242 templates/helpdesk/dashboard.html:11 +#: templates/helpdesk/ticket.html:131 templates/helpdesk/ticket.html.py:137 +#: templates/helpdesk/ticket.html:143 +msgid "Resolved" +msgstr "Risolto" + +#: models.py:243 templates/helpdesk/dashboard.html:11 +#: templates/helpdesk/ticket.html:132 templates/helpdesk/ticket.html.py:138 +#: templates/helpdesk/ticket.html:144 templates/helpdesk/ticket.html.py:148 +msgid "Closed" +msgstr "Chiuso" + +#: models.py:244 templates/helpdesk/ticket.html:133 +#: templates/helpdesk/ticket.html.py:139 templates/helpdesk/ticket.html:152 +msgid "Duplicate" +msgstr "Duplicato" + +#: models.py:248 +msgid "1. Critical" +msgstr "1. Critica" + +#: models.py:249 +msgid "2. High" +msgstr "2. Alta" + +#: models.py:250 +msgid "3. Normal" +msgstr "3. Normale" + +#: models.py:251 +msgid "4. Low" +msgstr "4. Bassa" + +#: models.py:252 +msgid "5. Very Low" +msgstr "5. Molto bassa" + +#: models.py:266 templates/helpdesk/dashboard.html:77 +#: templates/helpdesk/ticket_list.html:72 +#: templates/helpdesk/ticket_list.html:199 +msgid "Created" +msgstr "Creato" + +#: models.py:268 +msgid "Date this ticket was first created" +msgstr "Data di creazione del ticket" + +#: models.py:272 +msgid "Modified" +msgstr "Modificato" + +#: models.py:274 +msgid "Date this ticket was most recently changed." +msgstr "Data di ultima modifica del ticket" + +#: models.py:278 templates/helpdesk/public_view_ticket.html:16 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Submitter E-Mail" +msgstr "e-mail autore" + +#: models.py:281 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "L'autore riceve un'e-mail per tutti i successivi aggiornamenti a questa attività." + +#: models.py:290 +msgid "Assigned to" +msgstr "Assegnato a" + +#: models.py:294 templates/helpdesk/dashboard.html:37 +#: templates/helpdesk/dashboard.html:57 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/ticket_list.html:57 +#: templates/helpdesk/ticket_list.html:81 +#: templates/helpdesk/ticket_list.html:199 +msgid "Status" +msgstr "Stato" + +#: models.py:300 +msgid "On Hold" +msgstr "Sospeso" + +#: models.py:303 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "Se il ticket è sospeso, l'escalation non avverrà automaticamente." + +#: models.py:308 models.py:796 templates/helpdesk/public_view_ticket.html:39 +#: templates/helpdesk/ticket_desc_table.html:67 +msgid "Description" +msgstr "Descrizione" + +#: models.py:311 +msgid "The content of the customers query." +msgstr "Il contenuto della richiesta del cliente." + +#: models.py:315 templates/helpdesk/public_view_ticket.html:46 +#: templates/helpdesk/ticket_desc_table.html:74 +msgid "Resolution" +msgstr "Soluzione" + +#: models.py:318 +msgid "The resolution provided to the customer by our staff." +msgstr "La soluzione fornita al cliente dal nostro staff." + +#: models.py:326 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "1 = Priorità massima, 5 = Priorità minima" + +#: models.py:339 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "L'ultima data in cui è stata aumentata la priorità di questo ticket, aggiornata automaticamente da management/commands/escalate_tickets.py." + +#: models.py:348 templates/helpdesk/ticket_desc_table.html:22 +#: views/feeds.py:91 views/feeds.py:117 views/feeds.py:169 views/staff.py:302 +msgid "Unassigned" +msgstr "Non assegnato" + +#: models.py:387 +msgid " - On Hold" +msgstr " - Sospeso" + +#: models.py:481 models.py:1073 models.py:1231 models.py:1256 +#: templates/helpdesk/public_homepage.html:26 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "Ticket" + +#: models.py:485 models.py:714 models.py:1008 models.py:1156 +msgid "Date" +msgstr "Data" + +#: models.py:497 views/staff.py:316 +msgid "Comment" +msgstr "Commento" + +#: models.py:503 +msgid "Public" +msgstr "Pubblico" + +#: models.py:506 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "I ticket pubblici possono essere consultati dall'autore e da tutto lo staff, quelli non pubblici solo dallo staff." + +#: models.py:514 models.py:888 models.py:1081 views/staff.py:952 +#: views/staff.py:958 views/staff.py:964 views/staff.py:970 +msgid "User" +msgstr "Utente" + +#: models.py:518 templates/helpdesk/ticket.html:127 +msgid "New Status" +msgstr "Nuovo stato" + +#: models.py:522 +msgid "If the status was changed, what was it changed to?" +msgstr "Il nuovo stato attribuito, in caso di modifica." + +#: models.py:551 models.py:608 +msgid "Follow-up" +msgstr "Seguito" + +#: models.py:555 models.py:1236 +msgid "Field" +msgstr "Campo" + +#: models.py:560 +msgid "Old Value" +msgstr "Valore precedente" + +#: models.py:566 +msgid "New Value" +msgstr "Nuovo valore" + +#: models.py:574 +msgid "removed" +msgstr "eliminato" + +#: models.py:576 +#, python-format +msgid "set to %s" +msgstr "impostato a %s" + +#: models.py:578 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "modificato da \"%(old_value)s\" a \"%(new_value)s\"" + +#: models.py:612 +msgid "File" +msgstr "File" + +#: models.py:617 +msgid "Filename" +msgstr "Nome file" + +#: models.py:622 +msgid "MIME Type" +msgstr "Tipo MIME" + +#: models.py:627 +msgid "Size" +msgstr "Dimensione" + +#: models.py:628 +msgid "Size of this file in bytes" +msgstr "Dimensione del file in byte" + +#: models.py:663 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "Lascia vuoto se questa risposta potrà essere utilizzata per qualsiasi coda, altrimenti seleziona le code a cui limitarne l'uso." + +#: models.py:668 models.py:709 models.py:1003 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "Nome" + +#: models.py:670 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "Usato solo per facilitare gli utenti nella scelta di una risposta - non viene mostrata all'utente." + +#: models.py:675 +msgid "Body" +msgstr "Corpo" + +#: models.py:676 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "Contesto disponibile: {{ ticket }} - oggetto ticket (e.g. {{ ticket.title }}); {{ queue }} - la coda; e {{ user }} - l'utente attuale." + +#: models.py:703 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "Lascia vuoto per applicare questa esclusione a tutte le code, altrimenti seleziona le code interessate da questa esclusione." + +#: models.py:715 +msgid "Date on which escalation should not happen" +msgstr "Data in cui non dovrebbe avvenire l'escalation" + +#: models.py:732 +msgid "Template Name" +msgstr "Nome modello" + +#: models.py:737 +msgid "Subject" +msgstr "Oggetto" + +#: models.py:739 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "Sarà preceduto da \"[ticket.ticket] ticket.title\". Consigliamo qualcosa di semplice, come \"(Aggiornato\") o \"(Chiuso)\" - è disponibile lo stesso contesto definito per il testo semplice (vedi sotto)." + +#: models.py:745 +msgid "Heading" +msgstr "Intestazione" + +#: models.py:747 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "L'intestazione utilizzata in cima alle e-mail in formato HTML - è disponibile lo stesso contesto definito per il testo semplice (vedi sotto)." + +#: models.py:753 +msgid "Plain Text" +msgstr "Testo semplice" + +#: models.py:754 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "Il contesto a disposizione comprende {{ ticket }}, {{ queue }}, e a seconda delle condizioni: {{ resolution }} o {{ comment }}." + +#: models.py:760 +msgid "HTML" +msgstr "HTML" + +#: models.py:761 +msgid "The same context is available here as in plain_text, above." +msgstr "È disponibile lo stesso contesto definito per il testo semplice (vedi sopra)." + +#: models.py:770 +msgid "Locale of this template." +msgstr "Impostazioni internazionali per questo modello." + +#: models.py:817 templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Category" +msgstr "Categoria" + +#: models.py:826 +msgid "Question" +msgstr "Domanda" + +#: models.py:830 +msgid "Answer" +msgstr "Risposta" + +#: models.py:834 +msgid "Votes" +msgstr "Voti" + +#: models.py:835 +msgid "Total number of votes cast for this item" +msgstr "Numero totale di voti espressi per questo elemento" + +#: models.py:840 +msgid "Positive Votes" +msgstr "Voti positivi" + +#: models.py:841 +msgid "Number of votes for this item which were POSITIVE." +msgstr "Numero di voti POSITIVI per questo elemento." + +#: models.py:846 +msgid "Last Updated" +msgstr "Ultimo aggiornamento" + +#: models.py:847 +msgid "The date on which this question was most recently changed." +msgstr "La data di ultima modifica di questa domanda." + +#: models.py:861 +msgid "Unrated" +msgstr "Non classificato" + +#: models.py:892 templates/helpdesk/ticket_list.html:158 +msgid "Query Name" +msgstr "Nome Ricerca" + +#: models.py:894 +msgid "User-provided name for this query" +msgstr "Il nome attribuito dall'utente a questa ricerca" + +#: models.py:898 +msgid "Shared With Other Users?" +msgstr "Condivisa con altri utenti?" + +#: models.py:901 +msgid "Should other users see this query?" +msgstr "Permettere ad altri utenti di vedere questa ricerca?" + +#: models.py:905 +msgid "Search Query" +msgstr "Ricerca" + +#: models.py:906 +msgid "Pickled query object. Be wary changing this." +msgstr "Oggetto Ricerca pickled. Modificare con estrema cautela." + +#: models.py:927 +msgid "Settings Dictionary" +msgstr "Dizionario delle impostazioni" + +#: models.py:928 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "Rappresentazione in codifica base64 di un dizionario Python serializzato con pickle. Non modificare questo campo attraverso l'admin." + +#: models.py:997 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "Lascia vuoto per ignorare questa e-mail su tutte le code, altrimenti scegli su quali code applicare." + +#: models.py:1009 +msgid "Date on which this e-mail address was added" +msgstr "Data in cui è stato aggiunto questo indirizzo e-mail" + +#: models.py:1017 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "Puoi specificare un indirizzo e-mail completo, o parziale utilizzando caratteri speciali, per esempio *@domain.com o postmaster@*." + +#: models.py:1022 +msgid "Save Emails in Mailbox?" +msgstr "Salvare le e-mail nella casella postale?" + +#: models.py:1025 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "Salvare le e-mail da questo indirizzo nella casella postale? Se non selezionato, i messaggi da questo indirizzo saranno cancellati." + +#: models.py:1080 +msgid "User who wishes to receive updates for this ticket." +msgstr "L'utente che ha richiesto di ricevere gli aggiornamenti relativi a questo ticket." + +#: models.py:1088 +msgid "For non-user followers, enter their e-mail address" +msgstr "Per follower non utenti, scrivi l'indirizzo e-mail." + +#: models.py:1092 +msgid "Can View Ticket?" +msgstr "Può vedere il ticket?" + +#: models.py:1094 +msgid "Can this CC login to view the ticket details?" +msgstr "Questo CC può autenticarsi e vedere i dettagli del ticket?" + +#: models.py:1098 +msgid "Can Update Ticket?" +msgstr "Può aggiornare il ticket?" + +#: models.py:1100 +msgid "Can this CC login and update the ticket?" +msgstr "Questo CC può autenticarsi e aggiornare il ticket?" + +#: models.py:1131 +msgid "Field Name" +msgstr "Nome campo" + +#: models.py:1132 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "Usato nel database e dietro le quinte. Deve essere univoco e composto esclusivamente da lettere minuscole senza punteggiatura." + +#: models.py:1137 +msgid "Label" +msgstr "Etichetta" + +#: models.py:1139 +msgid "The display label for this field" +msgstr "L'etichetta visualizzata per questo campo" + +#: models.py:1143 +msgid "Help Text" +msgstr "Testo guida" + +#: models.py:1144 +msgid "Shown to the user when editing the ticket" +msgstr "Mostrato all'utente quando modifica il ticket" + +#: models.py:1150 +msgid "Character (single line)" +msgstr "Carattere (una sola riga)" + +#: models.py:1151 +msgid "Text (multi-line)" +msgstr "Testo (più righe)" + +#: models.py:1152 +msgid "Integer" +msgstr "Intero" + +#: models.py:1153 +msgid "Decimal" +msgstr "Decimale" + +#: models.py:1154 +msgid "List" +msgstr "Elenco" + +#: models.py:1155 +msgid "Boolean (checkbox yes/no)" +msgstr "Booleano (casella sì/no)" + +#: models.py:1157 +msgid "Time" +msgstr "Ora" + +#: models.py:1158 +msgid "Date & Time" +msgstr "Data e ora" + +#: models.py:1160 +msgid "URL" +msgstr "URL" + +#: models.py:1161 +msgid "IP Address" +msgstr "Indirizzo IP" + +#: models.py:1166 +msgid "Data Type" +msgstr "Tipo di dato" + +#: models.py:1168 +msgid "Allows you to restrict the data entered into this field" +msgstr "Permette di vincolare il tipo di dati ammessi dal campo" + +#: models.py:1173 +msgid "Maximum Length (characters)" +msgstr "Lunghezza massima (caratteri)" + +#: models.py:1179 +msgid "Decimal Places" +msgstr "Cifre decimali" + +#: models.py:1180 +msgid "Only used for decimal fields" +msgstr "Usato solo per i campi di tipo Decimale" + +#: models.py:1186 +msgid "Add empty first choice to List?" +msgstr "Aggiungere un elemento vuoto in testa all'elenco?" + +#: models.py:1187 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "Solo per gli elenchi: aggiunge un elemento vuoto all'inizio dell'elenco, obbligando l'utente a selezionare esplicitamente un valore." + +#: models.py:1191 +msgid "List Values" +msgstr "Valori dell'elenco" + +#: models.py:1192 +msgid "For list fields only. Enter one option per line." +msgstr "Solo per campi Elenco. Una opzione per riga." + +#: models.py:1198 +msgid "Ordering" +msgstr "Ordinamento" + +#: models.py:1199 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "Prima i numeri più bassi, poi quelli più alti" + +#: models.py:1213 +msgid "Required?" +msgstr "Obbligatorio?" + +#: models.py:1214 +msgid "Does the user have to enter a value for this field?" +msgstr "L'utente deve specificare un valore per questo campo?" + +#: models.py:1218 +msgid "Staff Only?" +msgstr "Solo staff?" + +#: models.py:1219 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "Se selezionato, il campo NON sarà visibile nel modulo pubblico di inserimento" + +#: models.py:1262 +msgid "Depends On Ticket" +msgstr "Dipende dal ticket" + +#: management/commands/create_usersettings.py:21 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "Verifica la presenza di utenti senza UserSettings django-helpdesk e li crea se necessario. Fa riferimento a settings.DEFAULT_USER_SETTINGS, che può essere ridefinito in base alle tue necessità." + +#: management/commands/escalate_tickets.py:143 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "Priorità del ticket innalzata dopo %s giorni" + +#: management/commands/get_email.py:151 +msgid "Created from e-mail" +msgstr "Creato da e-mail" + +#: management/commands/get_email.py:155 +msgid "Unknown Sender" +msgstr "Mittente sconosciuto" + +#: management/commands/get_email.py:209 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "Corpo email per testo semplice non disponibile. Vedi l'allegato email_html_body.html." + +#: management/commands/get_email.py:213 +msgid "email_html_body.html" +msgstr "email_html_body.html" + +#: management/commands/get_email.py:256 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "e-mail ricevuta da %(sender_email)s" + +#: management/commands/get_email.py:264 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "Ticket riaperto a seguito di una e-mail ricevuta da %(sender_email)s" + +#: management/commands/get_email.py:322 +msgid " (Reopened)" +msgstr " (Riaperto)" + +#: management/commands/get_email.py:324 +msgid " (Updated)" +msgstr " (Aggiornato)" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"Powered by django-" +"helpdesk." +msgstr "Powered by django-helpdesk." + +#: templates/helpdesk/attribution.html:4 +msgid "For technical support please contact:" +msgstr "Per assistenza tecnica contattare:" + +#: templates/helpdesk/base.html:9 +msgid "Powered by django-helpdesk" +msgstr "Powered by django-helpdesk" + +#: templates/helpdesk/base.html:19 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:23 templates/helpdesk/rss_list.html:28 +msgid "My Open Tickets" +msgstr "I miei ticket aperti" + +#: templates/helpdesk/base.html:20 +msgid "All Recent Activity" +msgstr "Attività recenti" + +#: templates/helpdesk/base.html:21 templates/helpdesk/dashboard.html:76 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "Ticket non assegnati" + +#: templates/helpdesk/base.html:101 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:14 +msgid "Helpdesk" +msgstr "Helpdesk" + +#: templates/helpdesk/base.html:111 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:27 templates/helpdesk/rss_list.html:28 +msgid "RSS Icon" +msgstr "Icona RSS" + +#: templates/helpdesk/base.html:111 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "Feed RSS" + +#: templates/helpdesk/base.html:112 +msgid "API" +msgstr "API" + +#: templates/helpdesk/base.html:113 +msgid "User Settings" +msgstr "Preferenze utente" + +#: templates/helpdesk/base.html:115 +msgid "Change Language" +msgstr "Cambia lingua" + +#: templates/helpdesk/base.html:117 +msgid "System Settings" +msgstr "Impostazioni di sistema" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:144 +msgid "Delete Saved Query" +msgstr "Elimina ricerca salvata" + +#: templates/helpdesk/confirm_delete_saved_query.html:5 +#, python-format +msgid "" +"\n" +"

Delete Query

\n" +"\n" +"

Are you sure you want to delete this saved filter (%(query_title)s)? To re-create it, you will need to manually re-filter your ticket listing.

\n" +msgstr "\n

Elimina ricerca

\n\n

Confermi la cancellazione di questo filtro salvato (%(query_title)s)? Per ricrearlo dovrai filtrare nuovamente a mano l'elenco dei ticket.

\n" + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "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." +msgstr "Questa ricerca è condivisa, e altri utenti potrebbero usarla. Se la elimini dovranno creare manualmente un filtro equivalente." + +#: templates/helpdesk/confirm_delete_saved_query.html:15 +#: templates/helpdesk/delete_ticket.html:11 +msgid "No, Don't Delete It" +msgstr "No, non eliminare" + +#: templates/helpdesk/confirm_delete_saved_query.html:17 +#: templates/helpdesk/delete_ticket.html:13 +msgid "Yes - Delete It" +msgstr "Sì, elimina" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "Crea ticket" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/public_homepage.html:39 +msgid "Submit a Ticket" +msgstr "Crea un Ticket" + +#: templates/helpdesk/create_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "Se non specificato altrimenti, tutti i campi sono obbligatori." + +#: templates/helpdesk/create_ticket.html:11 +msgid "Please provide as descriptive a title and description as possible." +msgstr "Cerca di fornire un titolo e una descrizione il più significativi possibile." + +#: templates/helpdesk/create_ticket.html:17 +#: templates/helpdesk/edit_ticket.html:19 +#: templates/helpdesk/public_homepage.html:50 +msgid "(Optional)" +msgstr "(Facoltativo)" + +#: templates/helpdesk/create_ticket.html:26 +#: templates/helpdesk/public_homepage.html:59 +msgid "Submit Ticket" +msgstr "Invia ticket" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "Dashboard Helpdesk" + +#: templates/helpdesk/dashboard.html:10 +msgid "Helpdesk Summary" +msgstr "Riepilogo Helpdesk" + +#: templates/helpdesk/dashboard.html:25 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "Benvenuto alla tua dashboard dell'Helpdesk! Qui puoi consultare rapidamente l'elenco dei ticket che hai creato, di quelli che hai in carico e di quelli non ancora assegnati." + +#: templates/helpdesk/dashboard.html:27 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see your own " +"tickets, and those tickets that have no owner. Why not pick up an orphan " +"ticket and sort it out for a customer?" +msgstr "Benvenuto alla tua dashboard dell'Helpdesk! Qui puoi consultare rapidamente l'elenco dei tuoi ticket e di quelli non assegnati. Perché non prendi in carico uno dei ticket senza proprietario e cerchi di dare una mano a un cliente?" + +#: templates/helpdesk/dashboard.html:36 +msgid "All Tickets submitted by you" +msgstr "Tutti i ticket che hai creato" + +#: templates/helpdesk/dashboard.html:37 templates/helpdesk/dashboard.html:57 +#: templates/helpdesk/dashboard.html:77 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/ticket_list.html:199 +msgid "Pr" +msgstr "Pr" + +#: templates/helpdesk/dashboard.html:37 templates/helpdesk/dashboard.html:57 +#: templates/helpdesk/dashboard.html:99 +msgid "Last Update" +msgstr "Ultimo aggiornamento" + +#: templates/helpdesk/dashboard.html:56 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "Ticket aperti assegnati a te (su cui stai lavorando)" + +#: templates/helpdesk/dashboard.html:69 +msgid "You have no tickets assigned to you." +msgstr "Non ci sono ticket assegnati a te." + +#: templates/helpdesk/dashboard.html:76 +msgid "(pick up a ticket if you start to work on it)" +msgstr "(seleziona un ticket se vuoi prenderlo in carico)" + +#: templates/helpdesk/dashboard.html:85 +#: templates/helpdesk/ticket_desc_table.html:22 +msgid "Take" +msgstr "Prendi" + +#: templates/helpdesk/dashboard.html:85 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:234 +msgid "Delete" +msgstr "Elimina" + +#: templates/helpdesk/dashboard.html:89 +msgid "There are no unassigned tickets." +msgstr "Non ci sono ticket non assegnati." + +#: templates/helpdesk/dashboard.html:98 +msgid "Closed & resolved Tickets you used to work on" +msgstr "Ticket chiusi e risolti su cui hai lavorato" + +#: templates/helpdesk/delete_ticket.html:3 +#: templates/helpdesk/delete_ticket.html:6 +msgid "Delete Ticket" +msgstr "Elimina ticket" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "Are you sure you want to delete this ticket (%(ticket_title)s)? All traces of the ticket, including followups, attachments, and updates will be irreversibly removed." +msgstr "Confermi la cancellazione di questo ticket (%(ticket_title)s)? Ogni traccia del ticket, incluse risposte, allegati, e aggiornamenti sarà irrimediabilmente eliminata." + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "Modifica ticket" + +#: templates/helpdesk/edit_ticket.html:6 +msgid "Edit a Ticket" +msgstr "Modifica un Ticket" + +#: templates/helpdesk/edit_ticket.html:6 +msgid "Note" +msgstr "Nota" + +#: templates/helpdesk/edit_ticket.html:6 +msgid "Editing a ticket does not send an e-mail to the ticket owner or submitter. No new details should be entered, this form should only be used to fix incorrect details or clean up the submission." +msgstr "La modifica di un ticket non comporta l'invio di un'e-mail all'assegnatario o all'autore. Evita di aggiungere nuovi dettagli: questo modulo dovrebbe essere utilizzato solo per correggere dettagli errati o ripulire la segnalazione." + +#: templates/helpdesk/edit_ticket.html:28 +msgid "Save Changes" +msgstr "Salva modifiche" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "Ignora indirizzo e-mail" + +#: templates/helpdesk/email_ignore_add.html:5 +msgid "To ignore an e-mail address and prevent any emails from that address creating tickets automatically, enter the e-mail address below." +msgstr "Inserisci un indirizzo e-mail da ignorare per evitare che per i messaggi ricevuti da esso vengano creati automaticamente dei ticket." + +msgid "You can either enter a whole e-mail address such as email@domain.com or a portion of an e-mail address with a wildcard, such as *@domain.com or user@*." +msgstr "Puoi specificare un indirizzo e-mail completo, come email@dominio.com, oppure uno parziale usando un carattere jolly, come *@dominio.com o utente@*." + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "Elimina indirizzo e-mail ignorato" + +#: templates/helpdesk/email_ignore_del.html:5 +msgid "Un-Ignore E-Mail Address" +msgstr "Ripristina indirizzo e-mail" + +#, python-format +msgid "Are you sure you wish to stop removing this email address (%(email_address)s) and allow their e-mails to automatically create tickets in your system? You can re-add this e-mail address at any time." +msgstr "Confermi di non voler più ignorare questo indirizzo e-mail (%(email_address)s) e consentire che crei automaticamente ticket net tuo sistema? Potrai aggiungerlo nuovamente in qualsiasi momento." + +#: templates/helpdesk/email_ignore_del.html:11 +msgid "Keep Ignoring It" +msgstr "Continua a ignorarlo" + +#: templates/helpdesk/email_ignore_del.html:13 +msgid "Stop Ignoring It" +msgstr "Smetti di ignorarlo" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "Indirizzi e-mail ignorati" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "\n

Indirizzi e-mail ignorati

\n\n

Questi indirizzi e-mail sono attualmente ignorati nell'elaborazione dei messaggi in arrivo. Puoi aggiungere all'elenco un nuovo indirizzo e-mail o rimuovere uno di quelli già presenti, se necessario.

" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "Aggiunto il" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "Code" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "Conserva nella casella di posta" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:232 +msgid "All" +msgstr "Tutti" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "Conserva" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "Nota: Se non si seleziona l'opzione 'Conserva', le e-mail inviate da questo indirizzo saranno eliminate permanentemente." + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "Modifica seguito" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "Modifica seguito" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "Riassegna ticket:" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "Titolo:" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "Commento:" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:11 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "Categoria knowledge base: %(kbcat)s" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "Questi sono tutti gli elementi nella categoria %(kbcat)s." + +#: templates/helpdesk/kb_category.html:12 +msgid "Article" +msgstr "Articolo" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:11 +#: templates/helpdesk/navigation.html:33 +msgid "Knowledgebase" +msgstr "Knowledge base" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "Abbiamo selezionato per queste categorie alcuni articoli della knowledge base che potrebbero esserti utili. Puoi verificare che il tuo problema non sia già stato risolto prima di aprire una richiesta di assistenza." + +#: templates/helpdesk/kb_index.html:9 +#: templates/helpdesk/public_homepage.html:9 +msgid "Knowledgebase Categories" +msgstr "Categorie knowledge base" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "Knowledge base: %(item)s" + +#: templates/helpdesk/kb_item.html:13 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "Consulta altri articoli della categoria %(category_title)s, o altri articoli della knowledge base." + +#: templates/helpdesk/kb_item.html:15 +msgid "Feedback" +msgstr "Riscontro" + +#: templates/helpdesk/kb_item.html:17 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "I nostri utenti hanno la possibilità di votare gli articoli che ritengono utili, in modo da consentirci in futuro di migliorare il servizio ai clienti. Il tuo riscontro su questo articolo sarebbe molto apprezzato. Ti è stato di aiuto?" + +#: templates/helpdesk/kb_item.html:20 +msgid "This article was useful to me" +msgstr "Questo articolo mi è stato utile" + +#: templates/helpdesk/kb_item.html:21 +msgid "This article was not useful to me" +msgstr "Questo articolo non mi è stato utile" + +#: templates/helpdesk/kb_item.html:24 +msgid "The results of voting by other readers of this article are below:" +msgstr "Questo è il risultato dei voti degli altri lettori di questo articolo:" + +#: templates/helpdesk/kb_item.html:27 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "Raccomandazioni: %(recommendations)s" + +#: templates/helpdesk/kb_item.html:28 +#, python-format +msgid "Votes: %(votes)s" +msgstr "Voti: %(votes)s" + +#: templates/helpdesk/kb_item.html:29 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "Valutazione complessiva: %(score)s" + +#: templates/helpdesk/navigation.html:4 +msgid "Dashboard" +msgstr "Dashboard" + +#: templates/helpdesk/navigation.html:5 +#: templates/helpdesk/ticket_list.html:198 +msgid "Tickets" +msgstr "Ticket" + +#: templates/helpdesk/navigation.html:6 +msgid "New Ticket" +msgstr "Nuovo Ticket" + +#: templates/helpdesk/navigation.html:8 +msgid "Stats" +msgstr "Statistiche" + +#: templates/helpdesk/navigation.html:14 +#: templates/helpdesk/ticket_list.html:46 +msgid "Load Saved Query" +msgstr "Carica ricerca salvata" + +#: templates/helpdesk/navigation.html:25 templates/helpdesk/navigation.html:35 +msgid "Logout" +msgstr "Disconnetti" + +#: templates/helpdesk/navigation.html:26 +msgid "Search..." +msgstr "Cerca..." + +#: templates/helpdesk/navigation.html:26 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "Inserisci una parola chiave, o il numero di ticket per visualizzarlo direttamente." + +#: templates/helpdesk/navigation.html:31 +msgid "Submit A Ticket" +msgstr "Crea un ticket" + +#: templates/helpdesk/navigation.html:35 +msgid "Log In" +msgstr "Accedi" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:21 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "Vedi un ticket" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "Modifica lingua" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "Articoli knowledge base" + +#: templates/helpdesk/public_homepage.html:29 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "Il tuo indirizzo e-mail" + +#: templates/helpdesk/public_homepage.html:33 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "Vedi ticket" + +#: templates/helpdesk/public_homepage.html:41 +msgid "All fields are required." +msgstr "Tutti i campi sono obbligatori." + +#: templates/helpdesk/public_homepage.html:67 +msgid "Please use button at upper right to login first." +msgstr "Usa il pulsante in alto a destra per accedere." + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "Impossibile aprire il ticket" + +#: templates/helpdesk/public_spam.html:6 +msgid "Sorry, but there has been an error trying to submit your ticket." +msgstr "Ci dispiace, ma si è verificato un errore durante il salvataggio del tuo ticket." + +msgid "Our system has marked your submission as spam, so we are unable to save it. If this is not spam, please press back and re-type your message. Be careful to avoid sounding 'spammy', and if you have heaps of links please try removing them if possible." +msgstr "Il nostro sistema ha identificato la tua richiesta come spam, quindi non siamo in grado di elaborarla. Se non si tratta di spam, ti preghiamo di premere il tasto Indietro del browser e digitare nuovamente il testo. Se possibile, cerca di evitare termini che potrebbero essere scambiati per spam, e limita al massimo l'uso di link nel testo." + +msgid "We are sorry for any inconvenience, however this check is required to avoid our helpdesk resources being overloaded by spammers." +msgstr "Siamo spiacenti per il disagio, ma questo controllo è necessario per evitare che le risorse del nostro helpdesk finiscano oberate nella gestione dello spam." + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "Errore:" + +#: templates/helpdesk/public_view_ticket.html:8 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "Coda: %(queue_name)s" + +#: templates/helpdesk/public_view_ticket.html:11 +#: templates/helpdesk/ticket_desc_table.html:16 +msgid "Submitted On" +msgstr "Creato il" + +#: templates/helpdesk/public_view_ticket.html:46 +#: templates/helpdesk/ticket_desc_table.html:74 +msgid "Accept" +msgstr "Accetta" + +#: templates/helpdesk/public_view_ticket.html:46 +#: templates/helpdesk/ticket_desc_table.html:74 +msgid "Accept and Close" +msgstr "Accetta e chiudi" + +#: templates/helpdesk/public_view_ticket.html:55 +#: templates/helpdesk/ticket.html:64 +msgid "Follow-Ups" +msgstr "Risposte" + +#: templates/helpdesk/public_view_ticket.html:63 +#: templates/helpdesk/ticket.html:92 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "%(field)s modificato da %(old_value)s a %(new_value)s." + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "Report & statistiche" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "Non hai ancora creato ticket, quindi non puoi generare report." + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "Report per Utente" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "per Priorità" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "per Coda" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "per Stato" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "per Mese" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "Report per Coda" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "Puoi eseguire questa ricerca su dati filtrati utilizzando una delle tue ricerche salvate." + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "Seleziona ricerca:" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "Applica filtro" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "Vuoi filtrare questo report per visualizzare un sottoinsieme dei dati? Vai all'elenco dei ticket, applica un filtro e salva la ricerca." + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "Questi feed RSS sono a tua disposizione per l'uso nel tuo software RSS preferito. Con l'eccezione del feed 'Ultime attività', i flussi forniscono informazioni solo sui ticket aperti o riaperti. In questo modo il tuo lettore RSS non si riempirà di informazioni su attività completate o vecchie." + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "Il riepilogo dei tuoi ticket aperti, utile per avere evidenza dei nuovi ticket aperti per te" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "Ultime attività" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "Il riepilogo di tutte le attività dell'helpdesk, inclusi commenti, email, allegati e altro" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "Tutti i ticket non assegnati, utile per avere evidenza di nuovi ticket aperti pubblicamente via web o e-mail" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "Questi feed RSS permettono di vedere il riepilogo di tutti i ticket o solo dei tuoi, per ogni coda dell'helpdesk. Per esempio, se sei a capo del gruppo che gestisce una particolare coda, questo ti permette di vedere tutti i nuovi ticket in arrivo su di essa." + +#: templates/helpdesk/rss_list.html:22 +msgid "Per-Queue Feeds" +msgstr "Feed per coda" + +#: templates/helpdesk/rss_list.html:23 +msgid "All Open Tickets" +msgstr "Tutti i ticket aperti" + +#: templates/helpdesk/rss_list.html:27 +msgid "Open Tickets" +msgstr "Ticket aperti" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "Modifica le impostazioni di sistema" + +msgid "The following items can be maintained by you or other superusers:" +msgstr "Le seguenti impostazioni possono essere modificate da te o altri super-utenti:" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "Elenco indirizzi e-mail ignorati" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "Gestisci code" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "Gestisci risposte predefinite" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "Gestisci categorie knowledge base" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "Gestisci elementi knowledge base" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "Gestisci modelli e-mail" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "Gestisci utenti" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "Mostra dettagli ticket" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "Allega un altro file" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:197 +msgid "Add Another File" +msgstr "Aggiungi un altro file" + +#: templates/helpdesk/ticket.html:71 templates/helpdesk/ticket.html.py:81 +msgid "Private" +msgstr "Privato" + +#: templates/helpdesk/ticket.html:111 +msgid "Respond to this ticket" +msgstr "Rispondi a questo ticket" + +#: templates/helpdesk/ticket.html:118 +msgid "Use a Pre-set Reply" +msgstr "Usa una risposta predefinita" + +#: templates/helpdesk/ticket.html:120 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "Selezionando una risposta predefinita verranno sovrascritti i tuoi commenti qui sotto. In seguito potrai adattare la risposta standard a tuo piacimento prima di salvare l'aggiornamento." + +#: templates/helpdesk/ticket.html:123 +msgid "Comment / Resolution" +msgstr "Commento / Soluzione" + +#: templates/helpdesk/ticket.html:125 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "Puoi aggiungere al tuo messaggio i dettagli sul ticket e la coda. Per maggiori informazioni consulta la pagina della guida sul contesto." + +#: templates/helpdesk/ticket.html:128 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "Questo ticket non può essere risolto o completato finché non vengono chiusi tutti i ticket da cui dipende." + +#: templates/helpdesk/ticket.html:158 +msgid "Is this update public?" +msgstr "Aggiornamento pubblico" + +#: templates/helpdesk/ticket.html:160 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "Se l'aggiornamento è pubblico, l'autore del ticket riceverà un'e-mail col tuo commento o la soluzione." + +#: templates/helpdesk/ticket.html:164 +msgid "Change Further Details »" +msgstr "Modifica ulteriori dettagli »" + +#: templates/helpdesk/ticket.html:173 templates/helpdesk/ticket_list.html:55 +#: templates/helpdesk/ticket_list.html:87 +#: templates/helpdesk/ticket_list.html:199 +msgid "Owner" +msgstr "Assegnatario" + +#: templates/helpdesk/ticket.html:174 +msgid "Unassign" +msgstr "Disassegna" + +#: templates/helpdesk/ticket.html:190 +msgid "Attach File(s) »" +msgstr "Allega file »" + +#: templates/helpdesk/ticket.html:196 +msgid "Attach a File" +msgstr "Allega un file" + +#: templates/helpdesk/ticket.html:204 +msgid "Update This Ticket" +msgstr "Aggiorna questo ticket" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "Aggiungi CC" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "\n

Aggiungi CC

\n\n

Per inviare automaticamente un'e-mail a un utente o un indirizzo e-mail ogni volta che questo ticket viene aggiornato, seleziona l'utente o inserisci l'indirizzo e-mail.

" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "Salva CC" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "Rimuovi CC" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "\n

Rimuovi CC

\n\n

Confermi la rimozione di questo indirizzo e-mail (%(email_address)s) dall'elenco CC di questo ticket? In questo modo non riceveranno più gli aggiornamenti.

\n" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "Non eliminare" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "Sì, elimina" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "Impostazioni CC per il ticket" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "\n

Impostazioni CC per il ticket

\n\n

Le seguenti persone riceveranno un'e-mail ogni volta che il ticket %(ticket_title)s sarà aggiornato. Alcune persone possono anche visualizzare o modificare il ticket accedendo alle viste pubbliche dei ticket.

\n\n

Puoi aggiungere un nuovo indirizzo e-mail all'elenco o rimuovere quelli sottostanti, se necessario.

" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "Elenco CC" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "Visualizza" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "Aggiorna" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "Torna a %(ticket_title)s" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "Aggiungi dipendenza ticket" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "\n

Aggiungi dipendenza ticket

\n\n

L'aggiunta di una dipendenza impedirà il completamento di questo ticket fino a quando quello da cui dipende non sarà stato risolto o chiuso.

" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "Salva dipendenza ticket" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "Elimina dipendenza ticket" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "\n

Rimuovi dipendenza ticket

\n\n

Confermi la cancellazione di questo legame di dipendenza?

\n" + +#: templates/helpdesk/ticket_desc_table.html:11 +msgid "Unhold" +msgstr "Riattiva" + +#: templates/helpdesk/ticket_desc_table.html:11 +msgid "Hold" +msgstr "Sospendi" + +#: templates/helpdesk/ticket_desc_table.html:13 +#, python-format +msgid "Queue: %(queue)s" +msgstr "Coda: %(queue)s" + +#: templates/helpdesk/ticket_desc_table.html:21 +msgid "Assigned To" +msgstr "Assegnato a" + +#: templates/helpdesk/ticket_desc_table.html:27 +msgid "Ignore" +msgstr "Ignora" + +#: templates/helpdesk/ticket_desc_table.html:36 +msgid "Copies To" +msgstr "Copia a" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Manage" +msgstr "Gestisci" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "Premi qui per aggiungere / rimuovere persone dall'elenco dei destinatari degli aggiornamenti di questo ticket." + +#: templates/helpdesk/ticket_desc_table.html:48 +msgid "Dependencies" +msgstr "Dipendenze" + +#: templates/helpdesk/ticket_desc_table.html:50 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "Questo ticket non può essere risolto finché non saranno chiusi i seguenti ticket" + +#: templates/helpdesk/ticket_desc_table.html:51 +msgid "Remove Dependency" +msgstr "Rimuovi dipendenza" + +#: templates/helpdesk/ticket_desc_table.html:54 +msgid "This ticket has no dependencies." +msgstr "Questo ticket non ha dipendenze." + +#: templates/helpdesk/ticket_desc_table.html:56 +msgid "Add Dependency" +msgstr "Aggiungi dipendenza" + +#: templates/helpdesk/ticket_desc_table.html:56 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "Seleziona 'Aggiungi dipendenza' se vuoi rendere questo ticket dipendente da un altro. Un ticket non può essere completato finché non vengono chiusi tutti quelli da cui dipende." + +#: templates/helpdesk/ticket_list.html:2 +msgid "Ticket Listing" +msgstr "Elenco ticket" + +#: templates/helpdesk/ticket_list.html:41 +msgid "Query Options" +msgstr "Opzioni ricerca" + +#: templates/helpdesk/ticket_list.html:43 +msgid "Save This Query" +msgstr "Salva questa ricerca" + +#: templates/helpdesk/ticket_list.html:51 +msgid "Change Query" +msgstr "Modifica ricerca" + +#: templates/helpdesk/ticket_list.html:54 +#: templates/helpdesk/ticket_list.html:69 +msgid "Sorting" +msgstr "Ordinamento." + +#: templates/helpdesk/ticket_list.html:58 +#: templates/helpdesk/ticket_list.html:137 +msgid "Keywords" +msgstr "Parole chiave" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Date Range" +msgstr "Intervallo di date" + +#: templates/helpdesk/ticket_list.html:90 +msgid "Reverse" +msgstr "Inverti" + +#: templates/helpdesk/ticket_list.html:92 +msgid "Ordering applied to tickets" +msgstr "Ordinamento applicato ai ticket" + +#: templates/helpdesk/ticket_list.html:97 +msgid "Owner(s)" +msgstr "Assegnatari(o)" + +#: templates/helpdesk/ticket_list.html:101 +msgid "(ME)" +msgstr "(IO)" + +#: templates/helpdesk/ticket_list.html:105 +msgid "Ctrl-Click to select multiple options" +msgstr "Tieni premuto Ctrl per selezionare più opzioni" + +#: templates/helpdesk/ticket_list.html:110 +msgid "Queue(s)" +msgstr "Coda/e" + +#: templates/helpdesk/ticket_list.html:111 +#: templates/helpdesk/ticket_list.html:117 +#: templates/helpdesk/ticket_list.html:131 +msgid "Ctrl-click to select multiple options" +msgstr "Tieni premuto Ctrl per selezionare più opzioni" + +#: templates/helpdesk/ticket_list.html:116 +msgid "Status(es)" +msgstr "Stato/i" + +#: templates/helpdesk/ticket_list.html:122 +msgid "Date (From)" +msgstr "Data (da)" + +#: templates/helpdesk/ticket_list.html:123 +msgid "Date (To)" +msgstr "Data (a)" + +#: templates/helpdesk/ticket_list.html:124 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "Usa il formato AAAA-MM-GG, per esempio 2011-05-29" + +#: templates/helpdesk/ticket_list.html:130 +msgid "Tag(s)" +msgstr "Etichetta/e" + +#: templates/helpdesk/ticket_list.html:138 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "Le parole chiave non distinguono maiuscole e minuscole, e vengono cercate nei campi titolo, corpo e autore." + +#: templates/helpdesk/ticket_list.html:142 +msgid "Apply Filter" +msgstr "Applica filtro" + +#: templates/helpdesk/ticket_list.html:144 +#, python-format +msgid "You are currently viewing saved query %(query_name)s." +msgstr "Stai visualizzando la ricerca salvata %(query_name)s." + +#: templates/helpdesk/ticket_list.html:147 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "Genera un report basato su questa ricerca per vedere statistiche e grafici per questi dati." + +#: templates/helpdesk/ticket_list.html:154 +#: templates/helpdesk/ticket_list.html:169 +msgid "Save Query" +msgstr "Salva ricerca" + +#: templates/helpdesk/ticket_list.html:160 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "Questo nome compare nell'elenco delle ricerche salvate. Se condividi la tua ricerca, altri utenti vedranno questo nome, quindi scegline uno comprensibile e descrittivo!" + +#: templates/helpdesk/ticket_list.html:162 +msgid "Shared?" +msgstr "Condivisa" + +#: templates/helpdesk/ticket_list.html:163 +msgid "Yes, share this query with other users." +msgstr "Sì, condividi questa ricerca con altri utenti." + +#: templates/helpdesk/ticket_list.html:164 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "Se condividi questa ricerca, tutti gli altri utenti autenticati potranno vederla." + +#: templates/helpdesk/ticket_list.html:176 +msgid "Use Saved Query" +msgstr "Usa ricerca salvata" + +#: templates/helpdesk/ticket_list.html:178 +msgid "Query" +msgstr "Ricerca" + +#: templates/helpdesk/ticket_list.html:183 +msgid "Run Query" +msgstr "Esegui ricerca" + +#: templates/helpdesk/ticket_list.html:213 +msgid "No Tickets Match Your Selection" +msgstr "Nessun ticket corrispondente alla selezione" + +#: templates/helpdesk/ticket_list.html:219 +msgid "Previous" +msgstr "Precedente" + +#: templates/helpdesk/ticket_list.html:223 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "Pagina %(ticket_num)s di %(num_pages)s." + +#: templates/helpdesk/ticket_list.html:227 +msgid "Next" +msgstr "Successiva" + +#: templates/helpdesk/ticket_list.html:232 +msgid "Select:" +msgstr "Seleziona:" + +#: templates/helpdesk/ticket_list.html:232 +msgid "None" +msgstr "Nessuno" + +#: templates/helpdesk/ticket_list.html:232 +msgid "Inverse" +msgstr "Inverti selezione" + +#: templates/helpdesk/ticket_list.html:234 +msgid "With Selected Tickets:" +msgstr "Coi ticket selezionati:" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Take (Assign to me)" +msgstr "Prendi in carico" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Close" +msgstr "Chiudi" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Close (Don't Send E-Mail)" +msgstr "Chiudi (non inviare e-mail)" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Close (Send E-Mail)" +msgstr "Chiudi (invia e-mail)" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Assign To" +msgstr "Assegna a" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Nobody (Unassign)" +msgstr "Nessuno (disassegna)" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "Modifica preferenze utente" + +#: templates/helpdesk/user_settings.html:14 +msgid "Use the following options to change the way your helpdesk system works for you. These settings do not impact any other user." +msgstr "Le seguenti impostazioni permettono di personalizzare il funzionamento del sistema di helpdesk. La loro modifica non ha effetto sugli altri utenti." + +#: templates/helpdesk/user_settings.html:29 +msgid "Save Options" +msgstr "Salva opzioni" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "Disconnesso" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "\n

Disconnessione completata

\n\n

Grazie per il tuo contributo. Ci auguriamo che possa aiutare a risolvere qualche ticket e rendere il mondo un posto migliore.

\n\n" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "Accesso Helpdesk" + +#: templates/helpdesk/registration/login.html:9 +#: templates/helpdesk/registration/login.html:21 +msgid "Login" +msgstr "Accesso" + +#: templates/helpdesk/registration/login.html:11 +msgid "" +"To log in and begin responding to cases, simply enter your username and " +"password below." +msgstr "Per accedere e iniziare a rispondere alle richieste inserisci il tuo nome utente e la password." + +#: templates/helpdesk/registration/login.html:14 +msgid "Your username and password didn't match. Please try again." +msgstr "Nome utente e password non corrispondenti. Riprova." + +#: templates/helpdesk/registration/login.html:16 +msgid "Username" +msgstr "Nome utente" + +#: templates/helpdesk/registration/login.html:18 +msgid "Password" +msgstr "Password" + +#: views/feeds.py:35 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "Helpdesk: Ticket aperti nella coda %(queue)s per %(username)s" + +#: views/feeds.py:40 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "Helpdesk: Ticket aperti per %(username)s" + +#: views/feeds.py:46 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "Ticket aperti e riaperti nella coda %(queue)s per %(username)s" + +#: views/feeds.py:51 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "Ticket aperti e riaperti per %(username)s" + +#: views/feeds.py:98 +msgid "Helpdesk: Unassigned Tickets" +msgstr "Helpdesk: Ticket non assegnati" + +#: views/feeds.py:99 +msgid "Unassigned Open and Reopened tickets" +msgstr "Ticket aperti e riaperti non assegnati" + +#: views/feeds.py:124 +msgid "Helpdesk: Recent Followups" +msgstr "Helpdesk: Seguiti recenti" + +#: views/feeds.py:125 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "Seguiti recenti, come e-mail di risposta, commenti, allegati e soluzioni" + +#: views/feeds.py:140 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "Helpdesk: Ticket aperti per la coda %(queue)s" + +#: views/feeds.py:145 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "Ticket aperti e riaperti per la coda %(queue)s" + +#: views/public.py:91 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "ID ticket o indirizzo e-mail non valido. Riprova." + +#: views/public.py:109 +msgid "Submitter accepted resolution and closed ticket" +msgstr "L'autore ha accettato la soluzione e chiuso il ticket" + +#: views/staff.py:218 +msgid "Accepted resolution and closed ticket" +msgstr "Accetta la soluzione e chiude il ticket" + +#: views/staff.py:246 +msgid "Sorry, you need to login to do that." +msgstr "Devi essere autenticato per questa operazione." + +#: views/staff.py:295 +#, python-format +msgid "Assigned to %(username)s" +msgstr "Assegnato a %(username)s" + +#: views/staff.py:318 +msgid "Updated" +msgstr "Aggiornato" + +#: views/staff.py:496 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "Assegnato a %(username)s in aggiornamento massivo" + +#: views/staff.py:501 +msgid "Unassigned in bulk update" +msgstr "Disassegnato in aggiornamento massivo" + +#: views/staff.py:506 views/staff.py:511 +msgid "Closed in bulk update" +msgstr "Chiuso in aggiornamento massivo" + +#: views/staff.py:732 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "

Attenzione: La tua ricerca per parole chiave distingue lettere maiuscole e minuscole per via del tipo di database utilizzato. Questo significa che la ricerca non sarà accurata. Il passaggio a un sistema di database differente migliorerebbe la qualità delle ricerche! Per maggiori informazioni leggi la documentazione di Django sulla ricerca testuale con SQLite (in lingua inglese)." + +#: views/staff.py:843 +msgid "Ticket taken off hold" +msgstr "Ticket ripristinato" + +#: views/staff.py:846 +msgid "Ticket placed on hold" +msgstr "Ticket sospeso" + +#: views/staff.py:914 +msgid "Jan" +msgstr "Gen" + +#: views/staff.py:915 +msgid "Feb" +msgstr "Feb" + +#: views/staff.py:916 +msgid "Mar" +msgstr "Mar" + +#: views/staff.py:917 +msgid "Apr" +msgstr "Apr" + +#: views/staff.py:918 +msgid "May" +msgstr "Mag" + +#: views/staff.py:919 +msgid "Jun" +msgstr "Giu" + +#: views/staff.py:920 +msgid "Jul" +msgstr "Lug" + +#: views/staff.py:921 +msgid "Aug" +msgstr "Ago" + +#: views/staff.py:922 +msgid "Sep" +msgstr "Set" + +#: views/staff.py:923 +msgid "Oct" +msgstr "Ott" + +#: views/staff.py:924 +msgid "Nov" +msgstr "Nov" + +#: views/staff.py:925 +msgid "Dec" +msgstr "Dic" + +#: views/staff.py:951 +msgid "User by Priority" +msgstr "Utente per priorità" + +#: views/staff.py:957 +msgid "User by Queue" +msgstr "Utente per coda" + +#: views/staff.py:963 +msgid "User by Status" +msgstr "Utente per stato" + +#: views/staff.py:969 +msgid "User by Month" +msgstr "Utente per mese" + +#: views/staff.py:975 +msgid "Queue by Priority" +msgstr "Coda per priorità" + +#: views/staff.py:981 +msgid "Queue by Status" +msgstr "Coda per stato" + +#: views/staff.py:987 +msgid "Queue by Month" +msgstr "Coda per mese" diff --git a/build/lib/helpdesk/locale/lv/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/lv/LC_MESSAGES/django.mo new file mode 100644 index 00000000..b5c32366 Binary files /dev/null and b/build/lib/helpdesk/locale/lv/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/lv/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/lv/LC_MESSAGES/django.po new file mode 100644 index 00000000..7b3a0bd5 --- /dev/null +++ b/build/lib/helpdesk/locale/lv/LC_MESSAGES/django.po @@ -0,0 +1,2393 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2014-07-26 14:14+0200\n" +"PO-Revision-Date: 2011-02-06 23:10+0000\n" +"Last-Translator: Ross Poulton \n" +"Language-Team: Latvian (http://www.transifex.com/rossp/django-helpdesk/language/lv/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: lv\n" +"Plural-Forms: nplurals=3; plural=(n%10==1 && n%100!=11 ? 0 : n != 0 ? 1 : 2);\n" + +#: forms.py:128 forms.py:328 models.py:190 models.py:267 +#: templates/helpdesk/dashboard.html:15 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/dashboard.html:124 templates/helpdesk/rss_list.html:24 +#: templates/helpdesk/ticket_list.html:69 +#: templates/helpdesk/ticket_list.html:88 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:1032 +#: views/staff.py:1038 views/staff.py:1044 views/staff.py:1050 +msgid "Queue" +msgstr "" + +#: forms.py:137 +msgid "Summary of the problem" +msgstr "" + +#: forms.py:142 +msgid "Submitter E-Mail Address" +msgstr "" + +#: forms.py:144 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "" + +#: forms.py:150 +msgid "Description of Issue" +msgstr "" + +#: forms.py:157 +msgid "Case owner" +msgstr "" + +#: forms.py:158 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "" + +#: forms.py:166 models.py:327 management/commands/escalate_tickets.py:154 +#: templates/helpdesk/public_view_ticket.html:23 +#: templates/helpdesk/ticket.html:184 +#: templates/helpdesk/ticket_desc_table.html:47 +#: templates/helpdesk/ticket_list.html:94 views/staff.py:429 +msgid "Priority" +msgstr "" + +#: forms.py:167 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "" + +#: forms.py:174 forms.py:365 models.py:335 templates/helpdesk/ticket.html:186 +#: views/staff.py:439 +msgid "Due on" +msgstr "" + +#: forms.py:186 forms.py:370 +msgid "Attach File" +msgstr "" + +#: forms.py:187 forms.py:371 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "" + +#: forms.py:240 +msgid "Ticket Opened" +msgstr "" + +#: forms.py:247 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "" + +#: forms.py:337 +msgid "Summary of your query" +msgstr "" + +#: forms.py:342 +msgid "Your E-Mail Address" +msgstr "" + +#: forms.py:343 +msgid "We will e-mail you when your ticket is updated." +msgstr "" + +#: forms.py:348 +msgid "Description of your issue" +msgstr "" + +#: forms.py:350 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "" + +#: forms.py:358 +msgid "Urgency" +msgstr "" + +#: forms.py:359 +msgid "Please select a priority carefully." +msgstr "" + +#: forms.py:419 +msgid "Ticket Opened Via Web" +msgstr "" + +#: forms.py:486 +msgid "Show Ticket List on Login?" +msgstr "" + +#: forms.py:487 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "" + +#: forms.py:492 +msgid "E-mail me on ticket change?" +msgstr "" + +#: forms.py:493 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:498 +msgid "E-mail me when assigned a ticket?" +msgstr "" + +#: forms.py:499 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:504 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "" + +#: forms.py:505 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:510 +msgid "Number of tickets to show per page" +msgstr "" + +#: forms.py:511 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "" + +#: forms.py:518 +msgid "Use my e-mail address when submitting tickets?" +msgstr "" + +#: forms.py:519 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "" + +#: models.py:35 models.py:261 models.py:503 models.py:817 models.py:853 +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket.html:178 templates/helpdesk/ticket_list.html:85 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:419 +msgid "Title" +msgstr "" + +#: models.py:40 models.py:822 models.py:1206 +msgid "Slug" +msgstr "" + +#: models.py:41 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "" + +#: models.py:46 models.py:1054 models.py:1129 models.py:1203 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "" + +#: models.py:49 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "" + +#: models.py:55 models.py:794 +msgid "Locale" +msgstr "" + +#: models.py:59 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "" + +#: models.py:63 +msgid "Allow Public Submission?" +msgstr "" + +#: models.py:66 +msgid "Should this queue be listed on the public submission form?" +msgstr "" + +#: models.py:71 +msgid "Allow E-Mail Submission?" +msgstr "" + +#: models.py:74 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "" + +#: models.py:79 +msgid "Escalation Days" +msgstr "" + +#: models.py:82 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "" + +#: models.py:87 +msgid "New Ticket CC Address" +msgstr "" + +#: models.py:91 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "" + +#: models.py:97 +msgid "Updated Ticket CC Address" +msgstr "" + +#: models.py:101 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "" + +#: models.py:108 +msgid "E-Mail Box Type" +msgstr "" + +#: models.py:110 +msgid "POP 3" +msgstr "" + +#: models.py:110 +msgid "IMAP" +msgstr "" + +#: models.py:113 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "" + +#: models.py:118 +msgid "E-Mail Hostname" +msgstr "" + +#: models.py:122 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "" + +#: models.py:127 +msgid "E-Mail Port" +msgstr "" + +#: models.py:130 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "" + +#: models.py:136 +msgid "Use SSL for E-Mail?" +msgstr "" + +#: models.py:139 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "" + +#: models.py:144 +msgid "E-Mail Username" +msgstr "" + +#: models.py:148 +msgid "Username for accessing this mailbox." +msgstr "" + +#: models.py:152 +msgid "E-Mail Password" +msgstr "" + +#: models.py:156 +msgid "Password for the above username" +msgstr "" + +#: models.py:160 +msgid "IMAP Folder" +msgstr "" + +#: models.py:164 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "" + +#: models.py:171 +msgid "E-Mail Check Interval" +msgstr "" + +#: models.py:172 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "" + +#: models.py:191 templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "" + +#: models.py:245 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:138 +msgid "Open" +msgstr "" + +#: models.py:246 templates/helpdesk/ticket.html:144 +#: templates/helpdesk/ticket.html.py:150 templates/helpdesk/ticket.html:155 +#: templates/helpdesk/ticket.html.py:159 +msgid "Reopened" +msgstr "" + +#: models.py:247 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:139 templates/helpdesk/ticket.html.py:145 +#: templates/helpdesk/ticket.html:151 +msgid "Resolved" +msgstr "" + +#: models.py:248 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:140 templates/helpdesk/ticket.html.py:146 +#: templates/helpdesk/ticket.html:152 templates/helpdesk/ticket.html.py:156 +msgid "Closed" +msgstr "" + +#: models.py:249 templates/helpdesk/ticket.html:141 +#: templates/helpdesk/ticket.html.py:147 templates/helpdesk/ticket.html:160 +msgid "Duplicate" +msgstr "" + +#: models.py:253 +msgid "1. Critical" +msgstr "" + +#: models.py:254 +msgid "2. High" +msgstr "" + +#: models.py:255 +msgid "3. Normal" +msgstr "" + +#: models.py:256 +msgid "4. Low" +msgstr "" + +#: models.py:257 +msgid "5. Very Low" +msgstr "" + +#: models.py:271 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/ticket_list.html:82 +#: templates/helpdesk/ticket_list.html:225 +msgid "Created" +msgstr "" + +#: models.py:273 +msgid "Date this ticket was first created" +msgstr "" + +#: models.py:277 +msgid "Modified" +msgstr "" + +#: models.py:279 +msgid "Date this ticket was most recently changed." +msgstr "" + +#: models.py:283 templates/helpdesk/public_view_ticket.html:18 +#: templates/helpdesk/ticket_desc_table.html:42 +msgid "Submitter E-Mail" +msgstr "" + +#: models.py:286 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "" + +#: models.py:295 +msgid "Assigned to" +msgstr "" + +#: models.py:299 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:70 +#: templates/helpdesk/ticket_list.html:91 +#: templates/helpdesk/ticket_list.html:225 +msgid "Status" +msgstr "" + +#: models.py:305 +msgid "On Hold" +msgstr "" + +#: models.py:308 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "" + +#: models.py:313 models.py:826 templates/helpdesk/public_view_ticket.html:41 +#: templates/helpdesk/ticket_desc_table.html:19 +msgid "Description" +msgstr "" + +#: models.py:316 +msgid "The content of the customers query." +msgstr "" + +#: models.py:320 templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Resolution" +msgstr "" + +#: models.py:323 +msgid "The resolution provided to the customer by our staff." +msgstr "" + +#: models.py:331 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "" + +#: models.py:344 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "" + +#: models.py:353 templates/helpdesk/ticket_desc_table.html:38 +#: views/feeds.py:95 views/feeds.py:121 views/feeds.py:173 views/staff.py:376 +msgid "Unassigned" +msgstr "" + +#: models.py:392 +msgid " - On Hold" +msgstr "" + +#: models.py:394 +msgid " - Open dependencies" +msgstr "" + +#: models.py:448 models.py:494 models.py:1117 models.py:1280 models.py:1309 +#: templates/helpdesk/public_homepage.html:78 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "" + +#: models.py:449 templates/helpdesk/navigation.html:17 +#: templates/helpdesk/ticket_list.html:2 +#: templates/helpdesk/ticket_list.html:224 +msgid "Tickets" +msgstr "" + +#: models.py:498 models.py:738 models.py:1047 models.py:1200 +msgid "Date" +msgstr "" + +#: models.py:510 views/staff.py:390 +msgid "Comment" +msgstr "" + +#: models.py:516 +msgid "Public" +msgstr "" + +#: models.py:519 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "" + +#: models.py:527 models.py:922 models.py:1125 views/staff.py:1008 +#: views/staff.py:1014 views/staff.py:1020 views/staff.py:1026 +msgid "User" +msgstr "" + +#: models.py:531 templates/helpdesk/ticket.html:135 +msgid "New Status" +msgstr "" + +#: models.py:535 +msgid "If the status was changed, what was it changed to?" +msgstr "" + +#: models.py:542 models.py:566 models.py:628 +msgid "Follow-up" +msgstr "" + +#: models.py:543 +msgid "Follow-ups" +msgstr "" + +#: models.py:570 models.py:1285 +msgid "Field" +msgstr "" + +#: models.py:575 +msgid "Old Value" +msgstr "" + +#: models.py:581 +msgid "New Value" +msgstr "" + +#: models.py:589 +msgid "removed" +msgstr "" + +#: models.py:591 +#, python-format +msgid "set to %s" +msgstr "" + +#: models.py:593 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "" + +#: models.py:600 +msgid "Ticket change" +msgstr "" + +#: models.py:601 +msgid "Ticket changes" +msgstr "" + +#: models.py:632 +msgid "File" +msgstr "" + +#: models.py:637 +msgid "Filename" +msgstr "" + +#: models.py:642 +msgid "MIME Type" +msgstr "" + +#: models.py:647 +msgid "Size" +msgstr "" + +#: models.py:648 +msgid "Size of this file in bytes" +msgstr "" + +#: models.py:665 +msgid "Attachment" +msgstr "" + +#: models.py:666 +msgid "Attachments" +msgstr "" + +#: models.py:685 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "" + +#: models.py:690 models.py:733 models.py:1042 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "" + +#: models.py:692 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "" + +#: models.py:697 +msgid "Body" +msgstr "" + +#: models.py:698 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "" + +#: models.py:705 +msgid "Pre-set reply" +msgstr "" + +#: models.py:706 +msgid "Pre-set replies" +msgstr "" + +#: models.py:727 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "" + +#: models.py:739 +msgid "Date on which escalation should not happen" +msgstr "" + +#: models.py:746 +msgid "Escalation exclusion" +msgstr "" + +#: models.py:747 +msgid "Escalation exclusions" +msgstr "" + +#: models.py:760 +msgid "Template Name" +msgstr "" + +#: models.py:765 +msgid "Subject" +msgstr "" + +#: models.py:767 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "" + +#: models.py:773 +msgid "Heading" +msgstr "" + +#: models.py:775 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "" + +#: models.py:781 +msgid "Plain Text" +msgstr "" + +#: models.py:782 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "" + +#: models.py:788 +msgid "HTML" +msgstr "" + +#: models.py:789 +msgid "The same context is available here as in plain_text, above." +msgstr "" + +#: models.py:798 +msgid "Locale of this template." +msgstr "" + +#: models.py:806 +msgid "e-mail template" +msgstr "" + +#: models.py:807 +msgid "e-mail templates" +msgstr "" + +#: models.py:834 +msgid "Knowledge base category" +msgstr "" + +#: models.py:835 +msgid "Knowledge base categories" +msgstr "" + +#: models.py:849 templates/helpdesk/kb_index.html:11 +#: templates/helpdesk/public_homepage.html:11 +msgid "Category" +msgstr "" + +#: models.py:858 +msgid "Question" +msgstr "" + +#: models.py:862 +msgid "Answer" +msgstr "" + +#: models.py:866 +msgid "Votes" +msgstr "" + +#: models.py:867 +msgid "Total number of votes cast for this item" +msgstr "" + +#: models.py:872 +msgid "Positive Votes" +msgstr "" + +#: models.py:873 +msgid "Number of votes for this item which were POSITIVE." +msgstr "" + +#: models.py:878 +msgid "Last Updated" +msgstr "" + +#: models.py:879 +msgid "The date on which this question was most recently changed." +msgstr "" + +#: models.py:893 +msgid "Unrated" +msgstr "" + +#: models.py:901 +msgid "Knowledge base item" +msgstr "" + +#: models.py:902 +msgid "Knowledge base items" +msgstr "" + +#: models.py:926 templates/helpdesk/ticket_list.html:170 +msgid "Query Name" +msgstr "" + +#: models.py:928 +msgid "User-provided name for this query" +msgstr "" + +#: models.py:932 +msgid "Shared With Other Users?" +msgstr "" + +#: models.py:935 +msgid "Should other users see this query?" +msgstr "" + +#: models.py:939 +msgid "Search Query" +msgstr "" + +#: models.py:940 +msgid "Pickled query object. Be wary changing this." +msgstr "" + +#: models.py:950 +msgid "Saved search" +msgstr "" + +#: models.py:951 +msgid "Saved searches" +msgstr "" + +#: models.py:966 +msgid "Settings Dictionary" +msgstr "" + +#: models.py:967 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "" + +#: models.py:993 +msgid "User Setting" +msgstr "" + +#: models.py:994 templates/helpdesk/navigation.html:37 +#: templates/helpdesk/user_settings.html:6 +msgid "User Settings" +msgstr "" + +#: models.py:1036 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "" + +#: models.py:1048 +msgid "Date on which this e-mail address was added" +msgstr "" + +#: models.py:1056 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "" + +#: models.py:1061 +msgid "Save Emails in Mailbox?" +msgstr "" + +#: models.py:1064 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "" + +#: models.py:1101 +msgid "Ignored e-mail address" +msgstr "" + +#: models.py:1102 +msgid "Ignored e-mail addresses" +msgstr "" + +#: models.py:1124 +msgid "User who wishes to receive updates for this ticket." +msgstr "" + +#: models.py:1132 +msgid "For non-user followers, enter their e-mail address" +msgstr "" + +#: models.py:1136 +msgid "Can View Ticket?" +msgstr "" + +#: models.py:1138 +msgid "Can this CC login to view the ticket details?" +msgstr "" + +#: models.py:1142 +msgid "Can Update Ticket?" +msgstr "" + +#: models.py:1144 +msgid "Can this CC login and update the ticket?" +msgstr "" + +#: models.py:1175 +msgid "Field Name" +msgstr "" + +#: models.py:1176 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "" + +#: models.py:1181 +msgid "Label" +msgstr "" + +#: models.py:1183 +msgid "The display label for this field" +msgstr "" + +#: models.py:1187 +msgid "Help Text" +msgstr "" + +#: models.py:1188 +msgid "Shown to the user when editing the ticket" +msgstr "" + +#: models.py:1194 +msgid "Character (single line)" +msgstr "" + +#: models.py:1195 +msgid "Text (multi-line)" +msgstr "" + +#: models.py:1196 +msgid "Integer" +msgstr "" + +#: models.py:1197 +msgid "Decimal" +msgstr "" + +#: models.py:1198 +msgid "List" +msgstr "" + +#: models.py:1199 +msgid "Boolean (checkbox yes/no)" +msgstr "" + +#: models.py:1201 +msgid "Time" +msgstr "" + +#: models.py:1202 +msgid "Date & Time" +msgstr "" + +#: models.py:1204 +msgid "URL" +msgstr "" + +#: models.py:1205 +msgid "IP Address" +msgstr "" + +#: models.py:1210 +msgid "Data Type" +msgstr "" + +#: models.py:1212 +msgid "Allows you to restrict the data entered into this field" +msgstr "" + +#: models.py:1217 +msgid "Maximum Length (characters)" +msgstr "" + +#: models.py:1223 +msgid "Decimal Places" +msgstr "" + +#: models.py:1224 +msgid "Only used for decimal fields" +msgstr "" + +#: models.py:1230 +msgid "Add empty first choice to List?" +msgstr "" + +#: models.py:1232 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "" + +#: models.py:1236 +msgid "List Values" +msgstr "" + +#: models.py:1237 +msgid "For list fields only. Enter one option per line." +msgstr "" + +#: models.py:1243 +msgid "Ordering" +msgstr "" + +#: models.py:1244 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "" + +#: models.py:1258 +msgid "Required?" +msgstr "" + +#: models.py:1259 +msgid "Does the user have to enter a value for this field?" +msgstr "" + +#: models.py:1263 +msgid "Staff Only?" +msgstr "" + +#: models.py:1264 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "" + +#: models.py:1273 +msgid "Custom field" +msgstr "" + +#: models.py:1274 +msgid "Custom fields" +msgstr "" + +#: models.py:1297 +msgid "Ticket custom field value" +msgstr "" + +#: models.py:1298 +msgid "Ticket custom field values" +msgstr "" + +#: models.py:1315 +msgid "Depends On Ticket" +msgstr "" + +#: models.py:1324 +msgid "Ticket dependency" +msgstr "" + +#: models.py:1325 +msgid "Ticket dependencies" +msgstr "" + +#: management/commands/create_usersettings.py:25 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "" + +#: management/commands/escalate_tickets.py:148 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "" + +#: management/commands/get_email.py:158 +msgid "Created from e-mail" +msgstr "" + +#: management/commands/get_email.py:162 +msgid "Unknown Sender" +msgstr "" + +#: management/commands/get_email.py:216 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "" + +#: management/commands/get_email.py:220 +msgid "email_html_body.html" +msgstr "" + +#: management/commands/get_email.py:263 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:271 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:329 +msgid " (Reopened)" +msgstr "" + +#: management/commands/get_email.py:331 +msgid " (Updated)" +msgstr "" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"django-helpdesk." +msgstr "" + +#: templates/helpdesk/base.html:10 +msgid "Powered by django-helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:20 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:24 templates/helpdesk/rss_list.html:31 +msgid "My Open Tickets" +msgstr "" + +#: templates/helpdesk/base.html:21 +msgid "All Recent Activity" +msgstr "" + +#: templates/helpdesk/base.html:22 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "" + +#: templates/helpdesk/base.html:52 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:18 +msgid "Helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:30 templates/helpdesk/rss_list.html:31 +msgid "RSS Icon" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "" + +#: templates/helpdesk/base.html:63 +msgid "API" +msgstr "" + +#: templates/helpdesk/base.html:64 templates/helpdesk/system_settings.html:6 +msgid "System Settings" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:146 +msgid "Delete Saved Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:6 +msgid "Delete Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this saved filter " +"(%(query_title)s)? To re-create it, you will need to manually re-" +"filter your ticket listing." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"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." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:14 +#: templates/helpdesk/delete_ticket.html:10 +msgid "No, Don't Delete It" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:16 +#: templates/helpdesk/delete_ticket.html:12 +msgid "Yes - Delete It" +msgstr "" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/navigation.html:65 templates/helpdesk/navigation.html:68 +#: templates/helpdesk/public_homepage.html:27 +msgid "Submit a Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +#: templates/helpdesk/public_homepage.html:28 +msgid "Please provide as descriptive a title and description as possible." +msgstr "" + +#: templates/helpdesk/create_ticket.html:30 +#: templates/helpdesk/public_homepage.html:55 +msgid "Submit Ticket" +msgstr "" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "" + +#: templates/helpdesk/dashboard.html:9 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "" + +#: templates/helpdesk/dashboard.html:14 +msgid "Helpdesk Summary" +msgstr "" + +#: templates/helpdesk/dashboard.html:36 +msgid "Current Ticket Stats" +msgstr "" + +#: templates/helpdesk/dashboard.html:37 +msgid "Average number of days until ticket is closed (all tickets): " +msgstr "" + +#: templates/helpdesk/dashboard.html:38 +msgid "" +"Average number of days until ticket is closed (tickets opened in last 60 " +"days): " +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "Click" +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "for detailed average by month." +msgstr "" + +#: templates/helpdesk/dashboard.html:40 +msgid "Distribution of open tickets, grouped by time period:" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Days since opened" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Number of open tickets" +msgstr "" + +#: templates/helpdesk/dashboard.html:57 +msgid "All Tickets submitted by you" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:225 +msgid "Pr" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:124 +msgid "Last Update" +msgstr "" + +#: templates/helpdesk/dashboard.html:77 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "" + +#: templates/helpdesk/dashboard.html:92 +msgid "You have no tickets assigned to you." +msgstr "" + +#: templates/helpdesk/dashboard.html:99 +msgid "(pick up a ticket if you start to work on it)" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/ticket_desc_table.html:38 +msgid "Take" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:262 +msgid "Delete" +msgstr "" + +#: templates/helpdesk/dashboard.html:114 +msgid "There are no unassigned tickets." +msgstr "" + +#: templates/helpdesk/dashboard.html:123 +msgid "Closed & resolved Tickets you used to work on" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:3 +#: templates/helpdesk/delete_ticket.html:6 +msgid "Delete Ticket" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this ticket (%(ticket_title)s)? All" +" traces of the ticket, including followups, attachments, and updates will be" +" irreversibly removed." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:9 +msgid "Edit a Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "Note" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "" +"Editing a ticket does not send an e-mail to the ticket owner or " +"submitter. No new details should be entered, this form should only be used " +"to fix incorrect details or clean up the submission." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:33 +msgid "Save Changes" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:6 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:8 +msgid "" +"To ignore an e-mail address and prevent any emails from that address " +"creating tickets automatically, enter the e-mail address below." +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:10 +msgid "" +"You can either enter a whole e-mail address such as " +"email@domain.com or a portion of an e-mail address with a wildcard," +" such as *@domain.com or user@*." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:6 +msgid "Un-Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:8 +#, python-format +msgid "" +"Are you sure you wish to stop removing this email address " +"(%(email_address)s) and allow their e-mails to automatically create" +" tickets in your system? You can re-add this e-mail address at any time." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:10 +msgid "Keep Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:12 +msgid "Stop Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:260 +msgid "All" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "" + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:12 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "" + +#: templates/helpdesk/kb_category.html:13 +msgid "Article" +msgstr "" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:21 +#: templates/helpdesk/navigation.html:71 +msgid "Knowledgebase" +msgstr "" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "" + +#: templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:16 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "" + +#: templates/helpdesk/kb_item.html:18 +msgid "Feedback" +msgstr "" + +#: templates/helpdesk/kb_item.html:20 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "" + +#: templates/helpdesk/kb_item.html:23 +msgid "This article was useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:24 +msgid "This article was not useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:27 +msgid "The results of voting by other readers of this article are below:" +msgstr "" + +#: templates/helpdesk/kb_item.html:30 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:31 +#, python-format +msgid "Votes: %(votes)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:32 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "" + +#: templates/helpdesk/navigation.html:16 templates/helpdesk/navigation.html:64 +msgid "Dashboard" +msgstr "" + +#: templates/helpdesk/navigation.html:18 +msgid "New Ticket" +msgstr "" + +#: templates/helpdesk/navigation.html:19 +msgid "Stats" +msgstr "" + +#: templates/helpdesk/navigation.html:24 +msgid "Saved Query" +msgstr "" + +#: templates/helpdesk/navigation.html:39 +msgid "Change password" +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Search..." +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Logout" +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Log In" +msgstr "" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:73 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "" + +#: templates/helpdesk/public_homepage.html:28 +msgid "All fields are required." +msgstr "" + +#: templates/helpdesk/public_homepage.html:66 +msgid "Please use button at upper right to login first." +msgstr "" + +#: templates/helpdesk/public_homepage.html:82 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "" + +#: templates/helpdesk/public_homepage.html:86 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:5 +msgid "Sorry, but there has been an error trying to submit your ticket." +msgstr "" + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"Our system has marked your submission as spam, so we are " +"unable to save it. If this is not spam, please press back and re-type your " +"message. Be careful to avoid sounding 'spammy', and if you have heaps of " +"links please try removing them if possible." +msgstr "" + +#: templates/helpdesk/public_spam.html:7 +msgid "" +"We are sorry for any inconvenience, however this check is required to avoid " +"our helpdesk resources being overloaded by spammers." +msgstr "" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:9 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:13 +#: templates/helpdesk/ticket_desc_table.html:32 +msgid "Submitted On" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:35 +msgid "Tags" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept and Close" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:57 +#: templates/helpdesk/ticket.html:66 +msgid "Follow-Ups" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:65 +#: templates/helpdesk/ticket.html:100 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "" + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "" + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:27 views/staff.py:1049 +msgid "Days until ticket closed by Month" +msgstr "" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "" + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "" + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "" + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "" + +#: templates/helpdesk/rss_list.html:23 +msgid "Per-Queue Feeds" +msgstr "" + +#: templates/helpdesk/rss_list.html:24 +msgid "All Open Tickets" +msgstr "" + +#: templates/helpdesk/rss_list.html:30 +msgid "Open Tickets" +msgstr "" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "" + +#: templates/helpdesk/system_settings.html:8 +msgid "The following items can be maintained by you or other superusers:" +msgstr "" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:200 +msgid "Add Another File" +msgstr "" + +#: templates/helpdesk/ticket.html:73 templates/helpdesk/ticket.html.py:86 +msgid "Private" +msgstr "" + +#: templates/helpdesk/ticket.html:119 +msgid "Respond to this ticket" +msgstr "" + +#: templates/helpdesk/ticket.html:126 +msgid "Use a Pre-set Reply" +msgstr "" + +#: templates/helpdesk/ticket.html:126 templates/helpdesk/ticket.html.py:166 +msgid "(Optional)" +msgstr "" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "" + +#: templates/helpdesk/ticket.html:131 +msgid "Comment / Resolution" +msgstr "" + +#: templates/helpdesk/ticket.html:133 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "" + +#: templates/helpdesk/ticket.html:136 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "" + +#: templates/helpdesk/ticket.html:166 +msgid "Is this update public?" +msgstr "" + +#: templates/helpdesk/ticket.html:168 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "" + +#: templates/helpdesk/ticket.html:172 +msgid "Change Further Details »" +msgstr "" + +#: templates/helpdesk/ticket.html:181 templates/helpdesk/ticket_list.html:68 +#: templates/helpdesk/ticket_list.html:97 +#: templates/helpdesk/ticket_list.html:225 +msgid "Owner" +msgstr "" + +#: templates/helpdesk/ticket.html:182 +msgid "Unassign" +msgstr "" + +#: templates/helpdesk/ticket.html:193 +msgid "Attach File(s) »" +msgstr "" + +#: templates/helpdesk/ticket.html:199 +msgid "Attach a File" +msgstr "" + +#: templates/helpdesk/ticket.html:207 +msgid "Update This Ticket" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Unhold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Hold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:9 +#, python-format +msgid "Queue: %(queue)s" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Assigned To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:43 +msgid "Ignore" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:52 +msgid "Copies To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Manage" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Subscribe" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to subscribe yourself to this ticket, if you want to receive an " +"e-mail whenever this ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:57 +msgid "Dependencies" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:59 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:60 +msgid "Remove Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "This ticket has no dependencies." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "Add Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Change Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:67 +#: templates/helpdesk/ticket_list.html:79 +msgid "Sorting" +msgstr "" + +#: templates/helpdesk/ticket_list.html:71 +#: templates/helpdesk/ticket_list.html:139 +msgid "Keywords" +msgstr "" + +#: templates/helpdesk/ticket_list.html:72 +msgid "Date Range" +msgstr "" + +#: templates/helpdesk/ticket_list.html:100 +msgid "Reverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:102 +msgid "Ordering applied to tickets" +msgstr "" + +#: templates/helpdesk/ticket_list.html:107 +msgid "Owner(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:111 +msgid "(ME)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:115 +msgid "Ctrl-Click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:120 +msgid "Queue(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:121 +#: templates/helpdesk/ticket_list.html:127 +msgid "Ctrl-click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:126 +msgid "Status(es)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:132 +msgid "Date (From)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:133 +msgid "Date (To)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:134 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "" + +#: templates/helpdesk/ticket_list.html:140 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "" + +#: templates/helpdesk/ticket_list.html:144 +msgid "Apply Filter" +msgstr "" + +#: templates/helpdesk/ticket_list.html:146 +#, python-format +msgid "You are currently viewing saved query \"%(query_name)s\"." +msgstr "" + +#: templates/helpdesk/ticket_list.html:149 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "" + +#: templates/helpdesk/ticket_list.html:162 +#: templates/helpdesk/ticket_list.html:181 +msgid "Save Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:172 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "" + +#: templates/helpdesk/ticket_list.html:174 +msgid "Shared?" +msgstr "" + +#: templates/helpdesk/ticket_list.html:175 +msgid "Yes, share this query with other users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:176 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:195 +msgid "Use Saved Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:202 +msgid "Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:207 +msgid "Run Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:240 +msgid "No Tickets Match Your Selection" +msgstr "" + +#: templates/helpdesk/ticket_list.html:247 +msgid "Previous" +msgstr "" + +#: templates/helpdesk/ticket_list.html:251 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:255 +msgid "Next" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Select:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "None" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Inverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "With Selected Tickets:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Take (Assign to me)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Don't Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Assign To" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Nobody (Unassign)" +msgstr "" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "" + +#: templates/helpdesk/user_settings.html:8 +msgid "" +"Use the following options to change the way your helpdesk system works for " +"you. These settings do not impact any other user." +msgstr "" + +#: templates/helpdesk/user_settings.html:14 +msgid "Save Options" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "" + +#: templates/helpdesk/registration/login.html:14 +msgid "To log in simply enter your username and password below." +msgstr "" + +#: templates/helpdesk/registration/login.html:17 +msgid "Your username and password didn't match. Please try again." +msgstr "" + +#: templates/helpdesk/registration/login.html:20 +msgid "Login" +msgstr "" + +#: views/feeds.py:39 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:44 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:50 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:55 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:102 +msgid "Helpdesk: Unassigned Tickets" +msgstr "" + +#: views/feeds.py:103 +msgid "Unassigned Open and Reopened tickets" +msgstr "" + +#: views/feeds.py:128 +msgid "Helpdesk: Recent Followups" +msgstr "" + +#: views/feeds.py:129 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "" + +#: views/feeds.py:144 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "" + +#: views/feeds.py:149 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "" + +#: views/public.py:89 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "" + +#: views/public.py:107 +msgid "Submitter accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:235 +msgid "Accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:369 +#, python-format +msgid "Assigned to %(username)s" +msgstr "" + +#: views/staff.py:392 +msgid "Updated" +msgstr "" + +#: views/staff.py:577 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "" + +#: views/staff.py:582 +msgid "Unassigned in bulk update" +msgstr "" + +#: views/staff.py:587 views/staff.py:592 +msgid "Closed in bulk update" +msgstr "" + +#: views/staff.py:806 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "" + +#: views/staff.py:910 +msgid "Ticket taken off hold" +msgstr "" + +#: views/staff.py:913 +msgid "Ticket placed on hold" +msgstr "" + +#: views/staff.py:1007 +msgid "User by Priority" +msgstr "" + +#: views/staff.py:1013 +msgid "User by Queue" +msgstr "" + +#: views/staff.py:1019 +msgid "User by Status" +msgstr "" + +#: views/staff.py:1025 +msgid "User by Month" +msgstr "" + +#: views/staff.py:1031 +msgid "Queue by Priority" +msgstr "" + +#: views/staff.py:1037 +msgid "Queue by Status" +msgstr "" + +#: views/staff.py:1043 +msgid "Queue by Month" +msgstr "" diff --git a/build/lib/helpdesk/locale/nb_NO/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/nb_NO/LC_MESSAGES/django.mo new file mode 100644 index 00000000..f246387a Binary files /dev/null and b/build/lib/helpdesk/locale/nb_NO/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/nb_NO/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/nb_NO/LC_MESSAGES/django.po new file mode 100644 index 00000000..306e3d92 --- /dev/null +++ b/build/lib/helpdesk/locale/nb_NO/LC_MESSAGES/django.po @@ -0,0 +1,2394 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Translators: +# sikander , 2011 +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2014-07-26 14:14+0200\n" +"PO-Revision-Date: 2014-08-01 09:58+0000\n" +"Last-Translator: Ross Poulton \n" +"Language-Team: Norwegian Bokmål (Norway) (http://www.transifex.com/projects/p/django-helpdesk/language/nb_NO/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: nb_NO\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: forms.py:128 forms.py:328 models.py:190 models.py:267 +#: templates/helpdesk/dashboard.html:15 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/dashboard.html:124 templates/helpdesk/rss_list.html:24 +#: templates/helpdesk/ticket_list.html:69 +#: templates/helpdesk/ticket_list.html:88 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:1032 +#: views/staff.py:1038 views/staff.py:1044 views/staff.py:1050 +msgid "Queue" +msgstr "Kø" + +#: forms.py:137 +msgid "Summary of the problem" +msgstr "Sammendrag av problemet" + +#: forms.py:142 +msgid "Submitter E-Mail Address" +msgstr "Innmelders epostadresse" + +#: forms.py:144 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "Denne epostadressen vil motta kopier av alle offentlige oppdateringer i denne saken." + +#: forms.py:150 +msgid "Description of Issue" +msgstr "Beskrivelse av problemet" + +#: forms.py:157 +msgid "Case owner" +msgstr "Sakseier" + +#: forms.py:158 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "Hvis du velger en annen eier enn deg selv, vil de bli sendt en epost med detaljene i saken." + +#: forms.py:166 models.py:327 management/commands/escalate_tickets.py:154 +#: templates/helpdesk/public_view_ticket.html:23 +#: templates/helpdesk/ticket.html:184 +#: templates/helpdesk/ticket_desc_table.html:47 +#: templates/helpdesk/ticket_list.html:94 views/staff.py:429 +msgid "Priority" +msgstr "Prioritet" + +#: forms.py:167 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "Velg prioritet med omhu. Hvis du er usikker kan du la den være prioritet 3." + +#: forms.py:174 forms.py:365 models.py:335 templates/helpdesk/ticket.html:186 +#: views/staff.py:439 +msgid "Due on" +msgstr "" + +#: forms.py:186 forms.py:370 +msgid "Attach File" +msgstr "Legg ved fil" + +#: forms.py:187 forms.py:371 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "Du kan legge inn en fil i denne saken. F.eks. et dokument eller bilde." + +#: forms.py:240 +msgid "Ticket Opened" +msgstr "Sak åpnet" + +#: forms.py:247 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "" + +#: forms.py:337 +msgid "Summary of your query" +msgstr "Sammendrag av problem" + +#: forms.py:342 +msgid "Your E-Mail Address" +msgstr "Din epostadresse" + +#: forms.py:343 +msgid "We will e-mail you when your ticket is updated." +msgstr "Vi vil sende deg en epost når saken blir oppdatert." + +#: forms.py:348 +msgid "Description of your issue" +msgstr "Beskrivelse av ditt problem" + +#: forms.py:350 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "Legg inn så mange detaljer som mulig, så vi har alle detaljene vi trenger for å hjelpe deg." + +#: forms.py:358 +msgid "Urgency" +msgstr "Haster" + +#: forms.py:359 +msgid "Please select a priority carefully." +msgstr "Vær nøye med hvilken prioritet du velger." + +#: forms.py:419 +msgid "Ticket Opened Via Web" +msgstr "Sak åpnet via nettportalen" + +#: forms.py:486 +msgid "Show Ticket List on Login?" +msgstr "Vis sakslisten ved innlogging?" + +#: forms.py:487 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "Vis sakslisten ved innlogging? Hvis ikke vil oversiktssiden vises." + +#: forms.py:492 +msgid "E-mail me on ticket change?" +msgstr "Send epost ved oppdateringer i saken?" + +#: forms.py:493 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "Hvis du er sakseier og saken blir endret av noen andre via portalen, ønsker du å motta en epost på det?" + +#: forms.py:498 +msgid "E-mail me when assigned a ticket?" +msgstr "Send meg en epost når jeg blir tildelt en sak" + +#: forms.py:499 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "Hvis du blir tildelt en sak gjennom portalen, ønsker du å motta mail på det?" + +#: forms.py:504 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "Send meg en epost når en sak blir endret gjennom API" + +#: forms.py:505 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "Hvis en sak blir endret gjennom APIen, ønsker du å motta en mail på det?" + +#: forms.py:510 +msgid "Number of tickets to show per page" +msgstr "Antall saker per side" + +#: forms.py:511 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "Hvor mange saker ønsker du å se på saksliste-siden?" + +#: forms.py:518 +msgid "Use my e-mail address when submitting tickets?" +msgstr "Bruk min epostadresse når jeg lager en sak?" + +#: forms.py:519 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "Når du lager en sak, ønsker du at vi bruker din epostadresse automatisk som innsenders adresse? Du kan endre epostadressen i saken om du ønsker det. Dette valget endrer bare hva som blir satt som standard." + +#: models.py:35 models.py:261 models.py:503 models.py:817 models.py:853 +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket.html:178 templates/helpdesk/ticket_list.html:85 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:419 +msgid "Title" +msgstr "Tittel" + +#: models.py:40 models.py:822 models.py:1206 +msgid "Slug" +msgstr "" + +#: models.py:41 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "" + +#: models.py:46 models.py:1054 models.py:1129 models.py:1203 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "Epostadresse" + +#: models.py:49 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "All mail som blir sendt for denne køen vil bli sendt til følgende epostadresse. Hvis du bruker IMAP eller POP3 bør dette være adressen til den postboksen." + +#: models.py:55 models.py:794 +msgid "Locale" +msgstr "Nasjonale instillinger" + +#: models.py:59 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "Nasjonale instillinger for denne køen. All utsendelse i denne køen vil bli sendt på dette språket." + +#: models.py:63 +msgid "Allow Public Submission?" +msgstr "Tillat offentlig innsending?" + +#: models.py:66 +msgid "Should this queue be listed on the public submission form?" +msgstr "Skal denne køen bli listet opp i det offentlige innsendingsskjemaet?" + +#: models.py:71 +msgid "Allow E-Mail Submission?" +msgstr "Tillat epostinnsending?" + +#: models.py:74 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "" + +#: models.py:79 +msgid "Escalation Days" +msgstr "Antall dager før eskalering" + +#: models.py:82 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "For saker uten tekniker, hvor ofte ønsker du at prioriteringen skal eskaleres? Sett 0 for ingen eskalering." + +#: models.py:87 +msgid "New Ticket CC Address" +msgstr "" + +#: models.py:91 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "" + +#: models.py:97 +msgid "Updated Ticket CC Address" +msgstr "" + +#: models.py:101 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "" + +#: models.py:108 +msgid "E-Mail Box Type" +msgstr "" + +#: models.py:110 +msgid "POP 3" +msgstr "POP 3" + +#: models.py:110 +msgid "IMAP" +msgstr "IMAP" + +#: models.py:113 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "Servertype for epostserver ved automatisk saksopprettelse fra postboks. Både POP3 og IMAP er støttet." + +#: models.py:118 +msgid "E-Mail Hostname" +msgstr "Vertsnavnet for epostserver" + +#: models.py:122 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "Adressen til din epostserver. Kan være domenenavn, IP-adresse eller \"localhost\"." + +#: models.py:127 +msgid "E-Mail Port" +msgstr "Port for epostserver" + +#: models.py:130 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "Portnummer for å få tilgang til epost. Standard for POP3 er \"110\", og for IMAP er \"143\". Dette kan være annerledes på forskjellige serveroppsett. La feltet være tomt for å bruke standard." + +#: models.py:136 +msgid "Use SSL for E-Mail?" +msgstr "Bruke SSL for epost?" + +#: models.py:139 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "Om det skal brukes SSL for IMAP eller POP3. Standard port for SSL er \"995\" for POP3 og \"993\" for IMAP." + +#: models.py:144 +msgid "E-Mail Username" +msgstr "Epost brukernavn" + +#: models.py:148 +msgid "Username for accessing this mailbox." +msgstr "Brukernavn for å få tilgang til denne eposten." + +#: models.py:152 +msgid "E-Mail Password" +msgstr "Epost passord" + +#: models.py:156 +msgid "Password for the above username" +msgstr "Passordet for brukernavnet" + +#: models.py:160 +msgid "IMAP Folder" +msgstr "IMAP mappe" + +#: models.py:164 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "Hvis det skal brukes IMAP, hvilken mappe skal eposten hentes fra? Dette gjør at du kan bruke en IMAP-konto for flere køer, ved å filtrere beskjeder på din IMAP-server til forskjellige mapper. Standard: INNBOKS." + +#: models.py:171 +msgid "E-Mail Check Interval" +msgstr "Epost innhentingsinterval" + +#: models.py:172 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "Hvor ofte skal denne posboksen skjekkes for post? (i minutter)" + +#: models.py:191 templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "" + +#: models.py:245 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:138 +msgid "Open" +msgstr "Åpne" + +#: models.py:246 templates/helpdesk/ticket.html:144 +#: templates/helpdesk/ticket.html.py:150 templates/helpdesk/ticket.html:155 +#: templates/helpdesk/ticket.html.py:159 +msgid "Reopened" +msgstr "Gjenåpnet" + +#: models.py:247 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:139 templates/helpdesk/ticket.html.py:145 +#: templates/helpdesk/ticket.html:151 +msgid "Resolved" +msgstr "Løst" + +#: models.py:248 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:140 templates/helpdesk/ticket.html.py:146 +#: templates/helpdesk/ticket.html:152 templates/helpdesk/ticket.html.py:156 +msgid "Closed" +msgstr "Lukket" + +#: models.py:249 templates/helpdesk/ticket.html:141 +#: templates/helpdesk/ticket.html.py:147 templates/helpdesk/ticket.html:160 +msgid "Duplicate" +msgstr "" + +#: models.py:253 +msgid "1. Critical" +msgstr "1. Kritisk" + +#: models.py:254 +msgid "2. High" +msgstr "2. Høy" + +#: models.py:255 +msgid "3. Normal" +msgstr "3. Normal" + +#: models.py:256 +msgid "4. Low" +msgstr "4. Lav" + +#: models.py:257 +msgid "5. Very Low" +msgstr "5. Veldig lav" + +#: models.py:271 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/ticket_list.html:82 +#: templates/helpdesk/ticket_list.html:225 +msgid "Created" +msgstr "Opprettet" + +#: models.py:273 +msgid "Date this ticket was first created" +msgstr "Tidspunkt for opprettelse" + +#: models.py:277 +msgid "Modified" +msgstr "Endret" + +#: models.py:279 +msgid "Date this ticket was most recently changed." +msgstr "Tidspunkt for siste endring." + +#: models.py:283 templates/helpdesk/public_view_ticket.html:18 +#: templates/helpdesk/ticket_desc_table.html:42 +msgid "Submitter E-Mail" +msgstr "Innsenders epostadresse" + +#: models.py:286 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "Innsenderen vil motta en epost for alle offentlige oppdateringer av denne oppgaven." + +#: models.py:295 +msgid "Assigned to" +msgstr "" + +#: models.py:299 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:70 +#: templates/helpdesk/ticket_list.html:91 +#: templates/helpdesk/ticket_list.html:225 +msgid "Status" +msgstr "Status" + +#: models.py:305 +msgid "On Hold" +msgstr "På vent" + +#: models.py:308 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "Hvis en sak er på vent, vil den ikke bli eskalert automatisk." + +#: models.py:313 models.py:826 templates/helpdesk/public_view_ticket.html:41 +#: templates/helpdesk/ticket_desc_table.html:19 +msgid "Description" +msgstr "Beskrivelse" + +#: models.py:316 +msgid "The content of the customers query." +msgstr "" + +#: models.py:320 templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Resolution" +msgstr "Løsning" + +#: models.py:323 +msgid "The resolution provided to the customer by our staff." +msgstr "Hva som ble gjort for å løse saken." + +#: models.py:331 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "1 = Høyeste prioritet, 5 = Laveste prioritet" + +#: models.py:344 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "Tidspunktet denne saken sist ble eskalert. Oppdateres automatisk av \"management/commands/escalate_tickets.py\"." + +#: models.py:353 templates/helpdesk/ticket_desc_table.html:38 +#: views/feeds.py:95 views/feeds.py:121 views/feeds.py:173 views/staff.py:376 +msgid "Unassigned" +msgstr "Utildelt" + +#: models.py:392 +msgid " - On Hold" +msgstr "På hold" + +#: models.py:394 +msgid " - Open dependencies" +msgstr "" + +#: models.py:448 models.py:494 models.py:1117 models.py:1280 models.py:1309 +#: templates/helpdesk/public_homepage.html:78 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "Sak" + +#: models.py:449 templates/helpdesk/navigation.html:17 +#: templates/helpdesk/ticket_list.html:2 +#: templates/helpdesk/ticket_list.html:224 +msgid "Tickets" +msgstr "" + +#: models.py:498 models.py:738 models.py:1047 models.py:1200 +msgid "Date" +msgstr "Dato" + +#: models.py:510 views/staff.py:390 +msgid "Comment" +msgstr "Kommentar" + +#: models.py:516 +msgid "Public" +msgstr "Offentlig" + +#: models.py:519 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "Offentlige saker er tilgjengelig for innmelder og staben, mens lukkede saker kun er tilgjengelig for staben." + +#: models.py:527 models.py:922 models.py:1125 views/staff.py:1008 +#: views/staff.py:1014 views/staff.py:1020 views/staff.py:1026 +msgid "User" +msgstr "" + +#: models.py:531 templates/helpdesk/ticket.html:135 +msgid "New Status" +msgstr "Ny status" + +#: models.py:535 +msgid "If the status was changed, what was it changed to?" +msgstr "Hva statusen ble endret til, hvis den er endret." + +#: models.py:542 models.py:566 models.py:628 +msgid "Follow-up" +msgstr "" + +#: models.py:543 +msgid "Follow-ups" +msgstr "" + +#: models.py:570 models.py:1285 +msgid "Field" +msgstr "Felt" + +#: models.py:575 +msgid "Old Value" +msgstr "Gammel verdi" + +#: models.py:581 +msgid "New Value" +msgstr "Ny verdi" + +#: models.py:589 +msgid "removed" +msgstr "slettet" + +#: models.py:591 +#, python-format +msgid "set to %s" +msgstr "satt til %s" + +#: models.py:593 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "" + +#: models.py:600 +msgid "Ticket change" +msgstr "" + +#: models.py:601 +msgid "Ticket changes" +msgstr "" + +#: models.py:632 +msgid "File" +msgstr "Fil" + +#: models.py:637 +msgid "Filename" +msgstr "Filnavn" + +#: models.py:642 +msgid "MIME Type" +msgstr "" + +#: models.py:647 +msgid "Size" +msgstr "Størrelse" + +#: models.py:648 +msgid "Size of this file in bytes" +msgstr "Størrelsen på filen i byte" + +#: models.py:665 +msgid "Attachment" +msgstr "" + +#: models.py:666 +msgid "Attachments" +msgstr "" + +#: models.py:685 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "La denne stå tom hvis den skal brukes for alle køene, eller velg hvilke køer du ønsker å begrense dette svaret til." + +#: models.py:690 models.py:733 models.py:1042 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "Navn" + +#: models.py:692 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "" + +#: models.py:697 +msgid "Body" +msgstr "Innhold" + +#: models.py:698 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "" + +#: models.py:705 +msgid "Pre-set reply" +msgstr "" + +#: models.py:706 +msgid "Pre-set replies" +msgstr "" + +#: models.py:727 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "" + +#: models.py:739 +msgid "Date on which escalation should not happen" +msgstr "" + +#: models.py:746 +msgid "Escalation exclusion" +msgstr "" + +#: models.py:747 +msgid "Escalation exclusions" +msgstr "" + +#: models.py:760 +msgid "Template Name" +msgstr "" + +#: models.py:765 +msgid "Subject" +msgstr "Emne" + +#: models.py:767 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "" + +#: models.py:773 +msgid "Heading" +msgstr "Overskrift" + +#: models.py:775 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "" + +#: models.py:781 +msgid "Plain Text" +msgstr "" + +#: models.py:782 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "" + +#: models.py:788 +msgid "HTML" +msgstr "HTML" + +#: models.py:789 +msgid "The same context is available here as in plain_text, above." +msgstr "" + +#: models.py:798 +msgid "Locale of this template." +msgstr "" + +#: models.py:806 +msgid "e-mail template" +msgstr "" + +#: models.py:807 +msgid "e-mail templates" +msgstr "" + +#: models.py:834 +msgid "Knowledge base category" +msgstr "" + +#: models.py:835 +msgid "Knowledge base categories" +msgstr "" + +#: models.py:849 templates/helpdesk/kb_index.html:11 +#: templates/helpdesk/public_homepage.html:11 +msgid "Category" +msgstr "Kategori" + +#: models.py:858 +msgid "Question" +msgstr "Spørsmål" + +#: models.py:862 +msgid "Answer" +msgstr "Svar" + +#: models.py:866 +msgid "Votes" +msgstr "Stemmer" + +#: models.py:867 +msgid "Total number of votes cast for this item" +msgstr "Antall stemmer gitt for dette objektet" + +#: models.py:872 +msgid "Positive Votes" +msgstr "Positive stemmer" + +#: models.py:873 +msgid "Number of votes for this item which were POSITIVE." +msgstr "Antall stemmer for dette objektet som er POSITIVE." + +#: models.py:878 +msgid "Last Updated" +msgstr "Sist oppdatert" + +#: models.py:879 +msgid "The date on which this question was most recently changed." +msgstr "Tidspunktet dette spørsmålet sist ble endret." + +#: models.py:893 +msgid "Unrated" +msgstr "Uvurdert" + +#: models.py:901 +msgid "Knowledge base item" +msgstr "" + +#: models.py:902 +msgid "Knowledge base items" +msgstr "" + +#: models.py:926 templates/helpdesk/ticket_list.html:170 +msgid "Query Name" +msgstr "" + +#: models.py:928 +msgid "User-provided name for this query" +msgstr "" + +#: models.py:932 +msgid "Shared With Other Users?" +msgstr "Delt med andre brukere?" + +#: models.py:935 +msgid "Should other users see this query?" +msgstr "" + +#: models.py:939 +msgid "Search Query" +msgstr "" + +#: models.py:940 +msgid "Pickled query object. Be wary changing this." +msgstr "" + +#: models.py:950 +msgid "Saved search" +msgstr "" + +#: models.py:951 +msgid "Saved searches" +msgstr "" + +#: models.py:966 +msgid "Settings Dictionary" +msgstr "" + +#: models.py:967 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "" + +#: models.py:993 +msgid "User Setting" +msgstr "" + +#: models.py:994 templates/helpdesk/navigation.html:37 +#: templates/helpdesk/user_settings.html:6 +msgid "User Settings" +msgstr "" + +#: models.py:1036 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "" + +#: models.py:1048 +msgid "Date on which this e-mail address was added" +msgstr "Tidspunktet denne epostadressen ble endret" + +#: models.py:1056 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "" + +#: models.py:1061 +msgid "Save Emails in Mailbox?" +msgstr "" + +#: models.py:1064 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "" + +#: models.py:1101 +msgid "Ignored e-mail address" +msgstr "" + +#: models.py:1102 +msgid "Ignored e-mail addresses" +msgstr "" + +#: models.py:1124 +msgid "User who wishes to receive updates for this ticket." +msgstr "" + +#: models.py:1132 +msgid "For non-user followers, enter their e-mail address" +msgstr "" + +#: models.py:1136 +msgid "Can View Ticket?" +msgstr "" + +#: models.py:1138 +msgid "Can this CC login to view the ticket details?" +msgstr "" + +#: models.py:1142 +msgid "Can Update Ticket?" +msgstr "" + +#: models.py:1144 +msgid "Can this CC login and update the ticket?" +msgstr "" + +#: models.py:1175 +msgid "Field Name" +msgstr "" + +#: models.py:1176 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "" + +#: models.py:1181 +msgid "Label" +msgstr "" + +#: models.py:1183 +msgid "The display label for this field" +msgstr "" + +#: models.py:1187 +msgid "Help Text" +msgstr "" + +#: models.py:1188 +msgid "Shown to the user when editing the ticket" +msgstr "" + +#: models.py:1194 +msgid "Character (single line)" +msgstr "" + +#: models.py:1195 +msgid "Text (multi-line)" +msgstr "" + +#: models.py:1196 +msgid "Integer" +msgstr "" + +#: models.py:1197 +msgid "Decimal" +msgstr "" + +#: models.py:1198 +msgid "List" +msgstr "" + +#: models.py:1199 +msgid "Boolean (checkbox yes/no)" +msgstr "" + +#: models.py:1201 +msgid "Time" +msgstr "" + +#: models.py:1202 +msgid "Date & Time" +msgstr "" + +#: models.py:1204 +msgid "URL" +msgstr "" + +#: models.py:1205 +msgid "IP Address" +msgstr "" + +#: models.py:1210 +msgid "Data Type" +msgstr "" + +#: models.py:1212 +msgid "Allows you to restrict the data entered into this field" +msgstr "" + +#: models.py:1217 +msgid "Maximum Length (characters)" +msgstr "" + +#: models.py:1223 +msgid "Decimal Places" +msgstr "" + +#: models.py:1224 +msgid "Only used for decimal fields" +msgstr "" + +#: models.py:1230 +msgid "Add empty first choice to List?" +msgstr "" + +#: models.py:1232 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "" + +#: models.py:1236 +msgid "List Values" +msgstr "" + +#: models.py:1237 +msgid "For list fields only. Enter one option per line." +msgstr "" + +#: models.py:1243 +msgid "Ordering" +msgstr "" + +#: models.py:1244 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "" + +#: models.py:1258 +msgid "Required?" +msgstr "" + +#: models.py:1259 +msgid "Does the user have to enter a value for this field?" +msgstr "" + +#: models.py:1263 +msgid "Staff Only?" +msgstr "" + +#: models.py:1264 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "" + +#: models.py:1273 +msgid "Custom field" +msgstr "" + +#: models.py:1274 +msgid "Custom fields" +msgstr "" + +#: models.py:1297 +msgid "Ticket custom field value" +msgstr "" + +#: models.py:1298 +msgid "Ticket custom field values" +msgstr "" + +#: models.py:1315 +msgid "Depends On Ticket" +msgstr "" + +#: models.py:1324 +msgid "Ticket dependency" +msgstr "" + +#: models.py:1325 +msgid "Ticket dependencies" +msgstr "" + +#: management/commands/create_usersettings.py:25 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "" + +#: management/commands/escalate_tickets.py:148 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "" + +#: management/commands/get_email.py:158 +msgid "Created from e-mail" +msgstr "Opprette fra epost" + +#: management/commands/get_email.py:162 +msgid "Unknown Sender" +msgstr "Ukjent Sender" + +#: management/commands/get_email.py:216 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "" + +#: management/commands/get_email.py:220 +msgid "email_html_body.html" +msgstr "email_html_body.html" + +#: management/commands/get_email.py:263 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:271 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:329 +msgid " (Reopened)" +msgstr "" + +#: management/commands/get_email.py:331 +msgid " (Updated)" +msgstr "(Oppdatert)" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"django-helpdesk." +msgstr "" + +#: templates/helpdesk/base.html:10 +msgid "Powered by django-helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:20 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:24 templates/helpdesk/rss_list.html:31 +msgid "My Open Tickets" +msgstr "" + +#: templates/helpdesk/base.html:21 +msgid "All Recent Activity" +msgstr "" + +#: templates/helpdesk/base.html:22 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "" + +#: templates/helpdesk/base.html:52 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:18 +msgid "Helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:30 templates/helpdesk/rss_list.html:31 +msgid "RSS Icon" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "" + +#: templates/helpdesk/base.html:63 +msgid "API" +msgstr "" + +#: templates/helpdesk/base.html:64 templates/helpdesk/system_settings.html:6 +msgid "System Settings" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:146 +msgid "Delete Saved Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:6 +msgid "Delete Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this saved filter " +"(%(query_title)s)? To re-create it, you will need to manually re-" +"filter your ticket listing." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"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." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:14 +#: templates/helpdesk/delete_ticket.html:10 +msgid "No, Don't Delete It" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:16 +#: templates/helpdesk/delete_ticket.html:12 +msgid "Yes - Delete It" +msgstr "" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/navigation.html:65 templates/helpdesk/navigation.html:68 +#: templates/helpdesk/public_homepage.html:27 +msgid "Submit a Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +#: templates/helpdesk/public_homepage.html:28 +msgid "Please provide as descriptive a title and description as possible." +msgstr "" + +#: templates/helpdesk/create_ticket.html:30 +#: templates/helpdesk/public_homepage.html:55 +msgid "Submit Ticket" +msgstr "" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "" + +#: templates/helpdesk/dashboard.html:9 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "" + +#: templates/helpdesk/dashboard.html:14 +msgid "Helpdesk Summary" +msgstr "" + +#: templates/helpdesk/dashboard.html:36 +msgid "Current Ticket Stats" +msgstr "" + +#: templates/helpdesk/dashboard.html:37 +msgid "Average number of days until ticket is closed (all tickets): " +msgstr "" + +#: templates/helpdesk/dashboard.html:38 +msgid "" +"Average number of days until ticket is closed (tickets opened in last 60 " +"days): " +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "Click" +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "for detailed average by month." +msgstr "" + +#: templates/helpdesk/dashboard.html:40 +msgid "Distribution of open tickets, grouped by time period:" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Days since opened" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Number of open tickets" +msgstr "" + +#: templates/helpdesk/dashboard.html:57 +msgid "All Tickets submitted by you" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:225 +msgid "Pr" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:124 +msgid "Last Update" +msgstr "" + +#: templates/helpdesk/dashboard.html:77 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "" + +#: templates/helpdesk/dashboard.html:92 +msgid "You have no tickets assigned to you." +msgstr "" + +#: templates/helpdesk/dashboard.html:99 +msgid "(pick up a ticket if you start to work on it)" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/ticket_desc_table.html:38 +msgid "Take" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:262 +msgid "Delete" +msgstr "" + +#: templates/helpdesk/dashboard.html:114 +msgid "There are no unassigned tickets." +msgstr "" + +#: templates/helpdesk/dashboard.html:123 +msgid "Closed & resolved Tickets you used to work on" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:3 +#: templates/helpdesk/delete_ticket.html:6 +msgid "Delete Ticket" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this ticket (%(ticket_title)s)? All" +" traces of the ticket, including followups, attachments, and updates will be" +" irreversibly removed." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:9 +msgid "Edit a Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "Note" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "" +"Editing a ticket does not send an e-mail to the ticket owner or " +"submitter. No new details should be entered, this form should only be used " +"to fix incorrect details or clean up the submission." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:33 +msgid "Save Changes" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:6 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:8 +msgid "" +"To ignore an e-mail address and prevent any emails from that address " +"creating tickets automatically, enter the e-mail address below." +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:10 +msgid "" +"You can either enter a whole e-mail address such as " +"email@domain.com or a portion of an e-mail address with a wildcard," +" such as *@domain.com or user@*." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:6 +msgid "Un-Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:8 +#, python-format +msgid "" +"Are you sure you wish to stop removing this email address " +"(%(email_address)s) and allow their e-mails to automatically create" +" tickets in your system? You can re-add this e-mail address at any time." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:10 +msgid "Keep Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:12 +msgid "Stop Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:260 +msgid "All" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "" + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:12 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "" + +#: templates/helpdesk/kb_category.html:13 +msgid "Article" +msgstr "" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:21 +#: templates/helpdesk/navigation.html:71 +msgid "Knowledgebase" +msgstr "" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "" + +#: templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:16 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "" + +#: templates/helpdesk/kb_item.html:18 +msgid "Feedback" +msgstr "" + +#: templates/helpdesk/kb_item.html:20 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "" + +#: templates/helpdesk/kb_item.html:23 +msgid "This article was useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:24 +msgid "This article was not useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:27 +msgid "The results of voting by other readers of this article are below:" +msgstr "" + +#: templates/helpdesk/kb_item.html:30 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:31 +#, python-format +msgid "Votes: %(votes)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:32 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "" + +#: templates/helpdesk/navigation.html:16 templates/helpdesk/navigation.html:64 +msgid "Dashboard" +msgstr "" + +#: templates/helpdesk/navigation.html:18 +msgid "New Ticket" +msgstr "" + +#: templates/helpdesk/navigation.html:19 +msgid "Stats" +msgstr "" + +#: templates/helpdesk/navigation.html:24 +msgid "Saved Query" +msgstr "" + +#: templates/helpdesk/navigation.html:39 +msgid "Change password" +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Search..." +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Logout" +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Log In" +msgstr "" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:73 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "" + +#: templates/helpdesk/public_homepage.html:28 +msgid "All fields are required." +msgstr "" + +#: templates/helpdesk/public_homepage.html:66 +msgid "Please use button at upper right to login first." +msgstr "" + +#: templates/helpdesk/public_homepage.html:82 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "" + +#: templates/helpdesk/public_homepage.html:86 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:5 +msgid "Sorry, but there has been an error trying to submit your ticket." +msgstr "" + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"Our system has marked your submission as spam, so we are " +"unable to save it. If this is not spam, please press back and re-type your " +"message. Be careful to avoid sounding 'spammy', and if you have heaps of " +"links please try removing them if possible." +msgstr "" + +#: templates/helpdesk/public_spam.html:7 +msgid "" +"We are sorry for any inconvenience, however this check is required to avoid " +"our helpdesk resources being overloaded by spammers." +msgstr "" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:9 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:13 +#: templates/helpdesk/ticket_desc_table.html:32 +msgid "Submitted On" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:35 +msgid "Tags" +msgstr "Tagger" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept and Close" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:57 +#: templates/helpdesk/ticket.html:66 +msgid "Follow-Ups" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:65 +#: templates/helpdesk/ticket.html:100 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "" + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "" + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:27 views/staff.py:1049 +msgid "Days until ticket closed by Month" +msgstr "" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "" + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "" + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "" + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "" + +#: templates/helpdesk/rss_list.html:23 +msgid "Per-Queue Feeds" +msgstr "" + +#: templates/helpdesk/rss_list.html:24 +msgid "All Open Tickets" +msgstr "" + +#: templates/helpdesk/rss_list.html:30 +msgid "Open Tickets" +msgstr "" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "" + +#: templates/helpdesk/system_settings.html:8 +msgid "The following items can be maintained by you or other superusers:" +msgstr "" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:200 +msgid "Add Another File" +msgstr "" + +#: templates/helpdesk/ticket.html:73 templates/helpdesk/ticket.html.py:86 +msgid "Private" +msgstr "" + +#: templates/helpdesk/ticket.html:119 +msgid "Respond to this ticket" +msgstr "" + +#: templates/helpdesk/ticket.html:126 +msgid "Use a Pre-set Reply" +msgstr "" + +#: templates/helpdesk/ticket.html:126 templates/helpdesk/ticket.html.py:166 +msgid "(Optional)" +msgstr "" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "" + +#: templates/helpdesk/ticket.html:131 +msgid "Comment / Resolution" +msgstr "" + +#: templates/helpdesk/ticket.html:133 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "" + +#: templates/helpdesk/ticket.html:136 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "" + +#: templates/helpdesk/ticket.html:166 +msgid "Is this update public?" +msgstr "" + +#: templates/helpdesk/ticket.html:168 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "" + +#: templates/helpdesk/ticket.html:172 +msgid "Change Further Details »" +msgstr "" + +#: templates/helpdesk/ticket.html:181 templates/helpdesk/ticket_list.html:68 +#: templates/helpdesk/ticket_list.html:97 +#: templates/helpdesk/ticket_list.html:225 +msgid "Owner" +msgstr "" + +#: templates/helpdesk/ticket.html:182 +msgid "Unassign" +msgstr "" + +#: templates/helpdesk/ticket.html:193 +msgid "Attach File(s) »" +msgstr "" + +#: templates/helpdesk/ticket.html:199 +msgid "Attach a File" +msgstr "" + +#: templates/helpdesk/ticket.html:207 +msgid "Update This Ticket" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Unhold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Hold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:9 +#, python-format +msgid "Queue: %(queue)s" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Assigned To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:43 +msgid "Ignore" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:52 +msgid "Copies To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Manage" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Subscribe" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to subscribe yourself to this ticket, if you want to receive an " +"e-mail whenever this ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:57 +msgid "Dependencies" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:59 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:60 +msgid "Remove Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "This ticket has no dependencies." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "Add Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Change Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:67 +#: templates/helpdesk/ticket_list.html:79 +msgid "Sorting" +msgstr "" + +#: templates/helpdesk/ticket_list.html:71 +#: templates/helpdesk/ticket_list.html:139 +msgid "Keywords" +msgstr "" + +#: templates/helpdesk/ticket_list.html:72 +msgid "Date Range" +msgstr "" + +#: templates/helpdesk/ticket_list.html:100 +msgid "Reverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:102 +msgid "Ordering applied to tickets" +msgstr "" + +#: templates/helpdesk/ticket_list.html:107 +msgid "Owner(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:111 +msgid "(ME)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:115 +msgid "Ctrl-Click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:120 +msgid "Queue(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:121 +#: templates/helpdesk/ticket_list.html:127 +msgid "Ctrl-click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:126 +msgid "Status(es)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:132 +msgid "Date (From)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:133 +msgid "Date (To)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:134 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "" + +#: templates/helpdesk/ticket_list.html:140 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "" + +#: templates/helpdesk/ticket_list.html:144 +msgid "Apply Filter" +msgstr "" + +#: templates/helpdesk/ticket_list.html:146 +#, python-format +msgid "You are currently viewing saved query \"%(query_name)s\"." +msgstr "" + +#: templates/helpdesk/ticket_list.html:149 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "" + +#: templates/helpdesk/ticket_list.html:162 +#: templates/helpdesk/ticket_list.html:181 +msgid "Save Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:172 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "" + +#: templates/helpdesk/ticket_list.html:174 +msgid "Shared?" +msgstr "" + +#: templates/helpdesk/ticket_list.html:175 +msgid "Yes, share this query with other users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:176 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:195 +msgid "Use Saved Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:202 +msgid "Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:207 +msgid "Run Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:240 +msgid "No Tickets Match Your Selection" +msgstr "" + +#: templates/helpdesk/ticket_list.html:247 +msgid "Previous" +msgstr "" + +#: templates/helpdesk/ticket_list.html:251 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:255 +msgid "Next" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Select:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "None" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Inverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "With Selected Tickets:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Take (Assign to me)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Don't Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Assign To" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Nobody (Unassign)" +msgstr "" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "" + +#: templates/helpdesk/user_settings.html:8 +msgid "" +"Use the following options to change the way your helpdesk system works for " +"you. These settings do not impact any other user." +msgstr "" + +#: templates/helpdesk/user_settings.html:14 +msgid "Save Options" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "" + +#: templates/helpdesk/registration/login.html:14 +msgid "To log in simply enter your username and password below." +msgstr "" + +#: templates/helpdesk/registration/login.html:17 +msgid "Your username and password didn't match. Please try again." +msgstr "" + +#: templates/helpdesk/registration/login.html:20 +msgid "Login" +msgstr "" + +#: views/feeds.py:39 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:44 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:50 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:55 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:102 +msgid "Helpdesk: Unassigned Tickets" +msgstr "" + +#: views/feeds.py:103 +msgid "Unassigned Open and Reopened tickets" +msgstr "" + +#: views/feeds.py:128 +msgid "Helpdesk: Recent Followups" +msgstr "" + +#: views/feeds.py:129 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "" + +#: views/feeds.py:144 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "" + +#: views/feeds.py:149 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "" + +#: views/public.py:89 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "" + +#: views/public.py:107 +msgid "Submitter accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:235 +msgid "Accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:369 +#, python-format +msgid "Assigned to %(username)s" +msgstr "" + +#: views/staff.py:392 +msgid "Updated" +msgstr "" + +#: views/staff.py:577 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "" + +#: views/staff.py:582 +msgid "Unassigned in bulk update" +msgstr "" + +#: views/staff.py:587 views/staff.py:592 +msgid "Closed in bulk update" +msgstr "" + +#: views/staff.py:806 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "" + +#: views/staff.py:910 +msgid "Ticket taken off hold" +msgstr "" + +#: views/staff.py:913 +msgid "Ticket placed on hold" +msgstr "" + +#: views/staff.py:1007 +msgid "User by Priority" +msgstr "" + +#: views/staff.py:1013 +msgid "User by Queue" +msgstr "" + +#: views/staff.py:1019 +msgid "User by Status" +msgstr "" + +#: views/staff.py:1025 +msgid "User by Month" +msgstr "" + +#: views/staff.py:1031 +msgid "Queue by Priority" +msgstr "" + +#: views/staff.py:1037 +msgid "Queue by Status" +msgstr "" + +#: views/staff.py:1043 +msgid "Queue by Month" +msgstr "" diff --git a/build/lib/helpdesk/locale/pl/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/pl/LC_MESSAGES/django.mo new file mode 100644 index 00000000..78403741 Binary files /dev/null and b/build/lib/helpdesk/locale/pl/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/pl/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/pl/LC_MESSAGES/django.po new file mode 100644 index 00000000..0a45c20f --- /dev/null +++ b/build/lib/helpdesk/locale/pl/LC_MESSAGES/django.po @@ -0,0 +1,2315 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Michał Pasternak , 2011 +# Ross Poulton , 2011 +# Tomasz Sanecki , 2012 +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2012-08-07 20:40+1000\n" +"PO-Revision-Date: 2013-04-29 09:18+0000\n" +"Last-Translator: Ross Poulton \n" +"Language-Team: Polish (http://www.transifex.com/projects/p/django-helpdesk/language/pl/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: pl\n" +"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 || n%100>=20) ? 1 : 2);\n" + +#: forms.py:113 forms.py:360 models.py:262 +#: templates/helpdesk/dashboard.html:11 templates/helpdesk/dashboard.html:37 +#: templates/helpdesk/dashboard.html:57 templates/helpdesk/dashboard.html:77 +#: templates/helpdesk/dashboard.html:99 templates/helpdesk/rss_list.html:23 +#: templates/helpdesk/ticket_list.html:56 +#: templates/helpdesk/ticket_list.html:78 +#: templates/helpdesk/ticket_list.html:199 views/staff.py:976 +#: views/staff.py:982 views/staff.py:988 +msgid "Queue" +msgstr "Kolejka" + +#: forms.py:122 +msgid "Summary of the problem" +msgstr "Krótki opis problemu" + +#: forms.py:127 +msgid "Submitter E-Mail Address" +msgstr "Adres e-mail zgłaszającego" + +#: forms.py:129 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "Na ten adres e-mail wysyłane będą informacje o zmianach stanu tego zgłoszenia." + +#: forms.py:135 +msgid "Description of Issue" +msgstr "Opis zgłoszenia" + +#: forms.py:142 +msgid "Case owner" +msgstr "Przypisane do" + +#: forms.py:143 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "Jeżeli przypiszesz to zgłoszenie do kogoś innego, niż Ty, to osoba owa otrzyma e-mail ze szczegółami dotyczącymi tego zgłoszenia" + +#: forms.py:151 models.py:322 management/commands/escalate_tickets.py:149 +#: templates/helpdesk/public_view_ticket.html:21 +#: templates/helpdesk/ticket.html:176 +#: templates/helpdesk/ticket_desc_table.html:31 +#: templates/helpdesk/ticket_list.html:84 views/staff.py:355 +msgid "Priority" +msgstr "Priorytet" + +#: forms.py:152 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "Wybierz priorytet rozsądnie. Jeżeli nie wiesz, co wpisać, pozostaw '3'." + +#: forms.py:159 forms.py:397 models.py:330 templates/helpdesk/ticket.html:178 +#: views/staff.py:365 +msgid "Due on" +msgstr "Ukończyć do" + +#: forms.py:171 forms.py:402 +msgid "Attach File" +msgstr "Dołącz plik" + +#: forms.py:172 forms.py:403 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "Możesz dołączyć plik taki jak dokument lub zrzut ekranu do tego zgłoszenia." + +#: forms.py:180 templates/helpdesk/public_view_ticket.html:33 +#: templates/helpdesk/ticket.html:182 +#: templates/helpdesk/ticket_desc_table.html:42 +#: templates/helpdesk/ticket_list.html:61 +#: templates/helpdesk/ticket_list.html:199 views/staff.py:376 +msgid "Tags" +msgstr "Tagi" + +#: forms.py:181 +msgid "" +"Words, separated by spaces, or phrases separated by commas. These should " +"communicate significant characteristics of this ticket" +msgstr "Słowa oddzielone spacjami lub frazy oddzielone przecinkami. Powinny oddawać najważniejsze cechy tego zgłoszenia" + +#: forms.py:275 +msgid "Ticket Opened" +msgstr "Zgłoszenie otwarto" + +#: forms.py:282 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "Zgłoszenie otwarto i przypisano do %(name)s" + +#: forms.py:369 +msgid "Summary of your query" +msgstr "Krótki opis Twojego zapytania" + +#: forms.py:374 +msgid "Your E-Mail Address" +msgstr "Twój adres e-mail" + +#: forms.py:375 +msgid "We will e-mail you when your ticket is updated." +msgstr "Gdy Twoje zgłoszenie zostanie zaktualizowane, otrzymasz informację przez e-mail" + +#: forms.py:380 +msgid "Description of your issue" +msgstr "Opis Twojego zgłoszenia" + +#: forms.py:382 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "Opisz zgłoszenie tak dokładnie, jak to możliwe, ze wszystkimi technicznym szczegółami których możemy potrzebować, aby odnieść się do Twojego zgłoszenia" + +#: forms.py:390 +msgid "Urgency" +msgstr "Pilność" + +#: forms.py:391 +msgid "Please select a priority carefully." +msgstr "Prosimy o rozsądny wybór" + +#: forms.py:486 +msgid "Ticket Opened Via Web" +msgstr "Zgłoszenie otwarto przez stronę WWW" + +#: forms.py:553 +msgid "Show Ticket List on Login?" +msgstr "Pokazuj listę zgłoszeń po zalogowaniu się?" + +#: forms.py:554 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "Wyświetlaj listę zgłoszeń po zalogowaniu się? Jeżeli nie, wyświetlony zostanie panel sterowania." + +#: forms.py:559 +msgid "E-mail me on ticket change?" +msgstr "Powiadomienie e-mail w razie zmiany zgłoszenia?" + +#: forms.py:560 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "Jeżeli jesteś osobą do której przypisano to zgłoszenie, a zgłoszenie zostaje zaktualizowane przez przez kogoś innego przy pomocy strony WWW, to czy chcesz otrzymać e-mail w takiej sytuacji?" + +#: forms.py:565 +msgid "E-mail me when assigned a ticket?" +msgstr "Powiadomienie e-mail w razie przypisania zgłoszenia?" + +#: forms.py:566 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "Jeżeli jesteś przypisywany do zgłoszenia za pomocą strony WWW, to czy chcesz otrzymywać e-mail w takiej sytuacji?" + +#: forms.py:571 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "Powiadomienie e-mail w razie zmiany zgłoszenia przez API?" + +#: forms.py:572 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "Jeżeli zgłoszenie jest zmieniane przez API, to czy chcesz otrzymywać e-mail w takiej sytuacji?" + +#: forms.py:577 +msgid "Number of tickets to show per page" +msgstr "Ilość zgłoszeń wyświetlanych na stronie" + +#: forms.py:578 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "Ile zgłoszeń chcesz widzieć na stronie \"Lista zgłoszeń\"?" + +#: forms.py:585 +msgid "Use my e-mail address when submitting tickets?" +msgstr "Użyj własnego adresu e-mail dla nowych zgłoszeń?" + +#: forms.py:586 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "Czy system ma użyć Twojego adresu e-mail w momencie tworzenia nowego zgłoszenia? Możesz za każdym razem wpisać inny adres e-mail; ta opcja zmienia jedynie wartość domyślną." + +#: models.py:32 models.py:256 models.py:490 models.py:787 models.py:821 +#: templates/helpdesk/dashboard.html:37 templates/helpdesk/dashboard.html:57 +#: templates/helpdesk/dashboard.html:77 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/ticket.html:170 templates/helpdesk/ticket_list.html:75 +#: templates/helpdesk/ticket_list.html:199 views/staff.py:345 +msgid "Title" +msgstr "Tytuł" + +#: models.py:37 models.py:792 models.py:1162 +msgid "Slug" +msgstr "Slug" + +#: models.py:38 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "Slug to krótka etykieta, używana podczas tworzenia identyfikatora zgłoszenia. Postaraj się jej nie zmieniać, gdyż mogą wystąpić problemy z wysyłanymi e-mailami." + +#: models.py:43 models.py:1015 models.py:1085 models.py:1159 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "Adres e-mail" + +#: models.py:46 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "Wszystkie wychodzące listy e-mail dla tej kolejki będą używać tego adresu e-mail. Jeżeli korzystasz z protokołu IMAP lub POP3, to ta wartość powinna być adresem e-mail wybranej skrzynki pocztowej." + +#: models.py:52 models.py:766 +msgid "Locale" +msgstr "Język" + +#: models.py:56 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "Język dla tej kolejki. Cała korespondencja będzie odbywać się w tym języku." + +#: models.py:60 +msgid "Allow Public Submission?" +msgstr "Zezwalaj na publiczne dodawanie zgłoszeń?" + +#: models.py:63 +msgid "Should this queue be listed on the public submission form?" +msgstr "Czy ta kolejka powinna wyświetlać się użytkownikom niezalogowanym?" + +#: models.py:68 +msgid "Allow E-Mail Submission?" +msgstr "Zezwalaj na zgłoszenia przez e-mail?" + +#: models.py:71 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "Czy chcesz co jakiś czas sprawdzać poniższą skrzynkę pocztową na obecność nowych zgłoszeń?" + +#: models.py:76 +msgid "Escalation Days" +msgstr "Dni eskalacji" + +#: models.py:79 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "Dla zgłoszeń bez właściciela, jak często chcesz podnosić ich priorytet? Ustaw \"0\", aby wyłączyć. " + +#: models.py:84 +msgid "New Ticket CC Address" +msgstr "Adres w polu \"Kopia do\" dla nowych zgłoszeń" + +#: models.py:88 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "Jeżeli wprowadzisz tutaj adres e-mail, będą na niego wysyłane powiadomienia o nowych zgłoszeniach do tej kolejki. Kilka adresów e-mail należy oddzielić przecinkami." + +#: models.py:94 +msgid "Updated Ticket CC Address" +msgstr "Adres w polu \"Kopia do\" dla aktualizowanych zgłoszeń" + +#: models.py:98 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "Jeżeli wprowadzisz tutaj adres e-mail, będą na niego wysyłane powiadomienia o wszystkich zdarzeniach (nowe zgłoszenia, zamknięte zgłoszenia, aktualizacje, przypisania itp.) dla tej kolejnki. Oddziel kilka adresów przecinkami." + +#: models.py:105 +msgid "E-Mail Box Type" +msgstr "Typ skrzynki pocztowej" + +#: models.py:107 +msgid "POP 3" +msgstr "POP 3" + +#: models.py:107 +msgid "IMAP" +msgstr "IMAP" + +#: models.py:110 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "Nowe zgłoszenia przez e-mail - rodzaj skrzynki pocztowej. Obsługiwane protokoły to zarówno POP3 jak IMAP." + +#: models.py:115 +msgid "E-Mail Hostname" +msgstr "Nazwa serwera e-mail" + +#: models.py:119 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "Adres Twojego serwera e-mail: nazwa lub adres IP, a nawet \"localhost\"" + +#: models.py:124 +msgid "E-Mail Port" +msgstr "Port e-mail" + +#: models.py:127 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "Numer portu używanego do uzyskania dostępu do skrzynki e-mail. Dla POP3 to zazwyczaj \"110\", a dla IMAP to zazwyczaj \"143\". Ta wartość może być różna na różnych serwerach. Pozostaw pole puste, aby użyć wartości domyślnej." + +#: models.py:133 +msgid "Use SSL for E-Mail?" +msgstr "Szyfrowanie e-mail za pomocą SSL?" + +#: models.py:136 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "Czy używać SSL do IMAP lub POP3? Domyślny numer portu gdy używasz SSL to \"993\" dla IMAP oraz \"995\" dla POP3." + +#: models.py:141 +msgid "E-Mail Username" +msgstr "Adres e-mail" + +#: models.py:145 +msgid "Username for accessing this mailbox." +msgstr "Użytkownik z dostępem do tej skrzynki pocztowej" + +#: models.py:149 +msgid "E-Mail Password" +msgstr "Hasło e-mail" + +#: models.py:153 +msgid "Password for the above username" +msgstr "Hasło dla powyższego użytkownika do powyższej skrzynki pocztowej" + +#: models.py:157 +msgid "IMAP Folder" +msgstr "Folder IMAP" + +#: models.py:161 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "Jeżeli korzystasz z IMAP, to z jakiego folderu chcesz pobrać wiadomości? Dzięki temu ustawieniu możesz używać jednego konta IMAP dla wielu kolejek, korzystając z funkcji filtrowania serwera IMAP. Domyślnie: INBOX." + +#: models.py:168 +msgid "E-Mail Check Interval" +msgstr "Jak często sprawdzać e-mail?" + +#: models.py:169 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "Jak często sprawdzać skrzynkę e-mail? (w minutach)" + +#: models.py:240 templates/helpdesk/dashboard.html:11 +#: templates/helpdesk/ticket.html:130 +msgid "Open" +msgstr "Otwarte" + +#: models.py:241 templates/helpdesk/ticket.html:136 +#: templates/helpdesk/ticket.html.py:142 templates/helpdesk/ticket.html:147 +#: templates/helpdesk/ticket.html.py:151 +msgid "Reopened" +msgstr "Ponownie otwarte" + +#: models.py:242 templates/helpdesk/dashboard.html:11 +#: templates/helpdesk/ticket.html:131 templates/helpdesk/ticket.html.py:137 +#: templates/helpdesk/ticket.html:143 +msgid "Resolved" +msgstr "Rozwiązane" + +#: models.py:243 templates/helpdesk/dashboard.html:11 +#: templates/helpdesk/ticket.html:132 templates/helpdesk/ticket.html.py:138 +#: templates/helpdesk/ticket.html:144 templates/helpdesk/ticket.html.py:148 +msgid "Closed" +msgstr "Zamknięte" + +#: models.py:244 templates/helpdesk/ticket.html:133 +#: templates/helpdesk/ticket.html.py:139 templates/helpdesk/ticket.html:152 +msgid "Duplicate" +msgstr "Duplikat" + +#: models.py:248 +msgid "1. Critical" +msgstr "1. Krytyczn" + +#: models.py:249 +msgid "2. High" +msgstr "2. Wysoki" + +#: models.py:250 +msgid "3. Normal" +msgstr "3. Normalny" + +#: models.py:251 +msgid "4. Low" +msgstr "4. Nisk" + +#: models.py:252 +msgid "5. Very Low" +msgstr "5. Bardzo nisk" + +#: models.py:266 templates/helpdesk/dashboard.html:77 +#: templates/helpdesk/ticket_list.html:72 +#: templates/helpdesk/ticket_list.html:199 +msgid "Created" +msgstr "Utworzono" + +#: models.py:268 +msgid "Date this ticket was first created" +msgstr "Data utworzenia tego zgłoszenia" + +#: models.py:272 +msgid "Modified" +msgstr "Zmodyfikowano" + +#: models.py:274 +msgid "Date this ticket was most recently changed." +msgstr "Data ostatniej modyfikacji zgłoszenia" + +#: models.py:278 templates/helpdesk/public_view_ticket.html:16 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Submitter E-Mail" +msgstr "Adres e-mail zgłaszającego" + +#: models.py:281 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "Zgłaszający otrzyma e-mail z powiadomieniem dla każdej nie-tajnej zmiany do tego zgłoszenia." + +#: models.py:290 +msgid "Assigned to" +msgstr "Przydzielono do" + +#: models.py:294 templates/helpdesk/dashboard.html:37 +#: templates/helpdesk/dashboard.html:57 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/ticket_list.html:57 +#: templates/helpdesk/ticket_list.html:81 +#: templates/helpdesk/ticket_list.html:199 +msgid "Status" +msgstr "Stan" + +#: models.py:300 +msgid "On Hold" +msgstr "Wstrzymaj" + +#: models.py:303 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "Jeżeli zgłoszenie ma status \"Wstrzymaj\", to nie będzie automatycznie eskalowane." + +#: models.py:308 models.py:796 templates/helpdesk/public_view_ticket.html:39 +#: templates/helpdesk/ticket_desc_table.html:67 +msgid "Description" +msgstr "Opis" + +#: models.py:311 +msgid "The content of the customers query." +msgstr "Treść zgłoszenia od Klienta" + +#: models.py:315 templates/helpdesk/public_view_ticket.html:46 +#: templates/helpdesk/ticket_desc_table.html:74 +msgid "Resolution" +msgstr "Rozwiązanie" + +#: models.py:318 +msgid "The resolution provided to the customer by our staff." +msgstr "Rozwiązanie dostarczone Klientowi" + +#: models.py:326 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "1 = najwyższy priorytet, 5 = najniższy" + +#: models.py:339 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "Data, gdy utworzono to zgłoszenie - aktualizowana automatycznie za pomocą management/commands/escalate_tickets.py." + +#: models.py:348 templates/helpdesk/ticket_desc_table.html:22 +#: views/feeds.py:91 views/feeds.py:117 views/feeds.py:169 views/staff.py:302 +msgid "Unassigned" +msgstr "Nieprzydzielone" + +#: models.py:387 +msgid " - On Hold" +msgstr "- Wstrzymaj" + +#: models.py:481 models.py:1073 models.py:1231 models.py:1256 +#: templates/helpdesk/public_homepage.html:26 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "Zgłoszenie" + +#: models.py:485 models.py:714 models.py:1008 models.py:1156 +msgid "Date" +msgstr "Data" + +#: models.py:497 views/staff.py:316 +msgid "Comment" +msgstr "Komentarz" + +#: models.py:503 +msgid "Public" +msgstr "Publiczne" + +#: models.py:506 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "Publiczne zgłoszenia mogą być oglądane przez zgłaszającego oraz zespół, ale nie-publiczne zgłoszenia mogą być tylko oglądane przez zespół." + +#: models.py:514 models.py:888 models.py:1081 views/staff.py:952 +#: views/staff.py:958 views/staff.py:964 views/staff.py:970 +msgid "User" +msgstr "Użytkownik" + +#: models.py:518 templates/helpdesk/ticket.html:127 +msgid "New Status" +msgstr "Nowy status" + +#: models.py:522 +msgid "If the status was changed, what was it changed to?" +msgstr "Jeżeli status został zmieniony, to na jaki?" + +#: models.py:551 models.py:608 +msgid "Follow-up" +msgstr "Odpowiedź" + +#: models.py:555 models.py:1236 +msgid "Field" +msgstr "Pole" + +#: models.py:560 +msgid "Old Value" +msgstr "Poprzednia wartość " + +#: models.py:566 +msgid "New Value" +msgstr "Nowa wartość " + +#: models.py:574 +msgid "removed" +msgstr "usunięto" + +#: models.py:576 +#, python-format +msgid "set to %s" +msgstr "ustawiono na %s" + +#: models.py:578 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "zmieniono z \"%(old_value)s\" na \"%(new_value)s\"" + +#: models.py:612 +msgid "File" +msgstr "Plik" + +#: models.py:617 +msgid "Filename" +msgstr "Nazwa pliku" + +#: models.py:622 +msgid "MIME Type" +msgstr "Typ MIME" + +#: models.py:627 +msgid "Size" +msgstr "Rozmiar" + +#: models.py:628 +msgid "Size of this file in bytes" +msgstr "Rozmiar tego pliku w bajtach" + +#: models.py:663 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "Pozostaw puste aby pozwolić, by ta odpowiedź była używana dla wszystkich kolejek, lub wybierz te kolejki, do których chcesz jej użycie ograniczyć." + +#: models.py:668 models.py:709 models.py:1003 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "Nazwa" + +#: models.py:670 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "Wartość używana jest tylko podczas wyboru odpowiedzi - nie jest widoczna dla użytkownika końcowego." + +#: models.py:675 +msgid "Body" +msgstr "Treść" + +#: models.py:676 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "Dopuszczalne tagi: {{ ticket }} - obiekt zgłoszenia (np. {{ ticket.title }}); {{ queue }} - kolejka; {{ user }} - zalogowany użytkownik." + +#: models.py:703 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "Pozostaw puste, aby to wykluczenie dotyczyło wszystkich kolejek, lub wybierz te kolejki, które chcesz wykluczyć. XXXCHECKTHISXXX" + +#: models.py:715 +msgid "Date on which escalation should not happen" +msgstr "Data, podczas której eskalacja nie powinna nastąpić" + +#: models.py:732 +msgid "Template Name" +msgstr "Nazwa szablonu" + +#: models.py:737 +msgid "Subject" +msgstr "Temat" + +#: models.py:739 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "Wartość w tym polu będzie poprzedzona \"[ticket.ticket] ticket.title\" - ID oraz tytułem zgłoszenia. Proponujemy coś prostego, jak np \"(Zaktualizowano)\" lub \"(Zamknięto)\". Możesz zastosować podobne tagi, jak w wersji tekstowej - patrz niżej." + +#: models.py:745 +msgid "Heading" +msgstr "Nagłówek" + +#: models.py:747 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "W e-mailach HTML, nagłówek będzie widoczny na początku e-maila. Możesz zastosować podobne tagi, jak w wersji tekstowej - patrz niżej." + +#: models.py:753 +msgid "Plain Text" +msgstr "Wersja tekstowa" + +#: models.py:754 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "Dopuszczalne tagi: {{ ticket }} - zgłoszenie, {{ queue }} - kolejka; w zależności od chwili wywołania mogą być dostępne: {{ comment }} - komentarz lub {{ resolution }} - rozwiązanie." + +#: models.py:760 +msgid "HTML" +msgstr "Wersja HTML" + +#: models.py:761 +msgid "The same context is available here as in plain_text, above." +msgstr "Możesz zastosować podobne tagi, jak w wersji tekstowej - patrz wyżej." + +#: models.py:770 +msgid "Locale of this template." +msgstr "Język tego szablonu" + +#: models.py:817 templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Category" +msgstr "Kategoria" + +#: models.py:826 +msgid "Question" +msgstr "Pytanie" + +#: models.py:830 +msgid "Answer" +msgstr "Odpowiedź" + +#: models.py:834 +msgid "Votes" +msgstr "Głosy" + +#: models.py:835 +msgid "Total number of votes cast for this item" +msgstr "Całkowita ilość głosów na tą odopowiedź" + +#: models.py:840 +msgid "Positive Votes" +msgstr "Głosy pozytywne" + +#: models.py:841 +msgid "Number of votes for this item which were POSITIVE." +msgstr "Ilość głosów na tą odpowiedź, które były pozytywne." + +#: models.py:846 +msgid "Last Updated" +msgstr "Ostatnia aktualizacja" + +#: models.py:847 +msgid "The date on which this question was most recently changed." +msgstr "Data ostatniej aktualizacji tego pytania." + +#: models.py:861 +msgid "Unrated" +msgstr "Bez oceny" + +#: models.py:892 templates/helpdesk/ticket_list.html:158 +msgid "Query Name" +msgstr "Nazwa zapytania" + +#: models.py:894 +msgid "User-provided name for this query" +msgstr "Nazwa tej kwerendy, określona przez użytkownika" + +#: models.py:898 +msgid "Shared With Other Users?" +msgstr "Udostępnić innym użytkownikom?" + +#: models.py:901 +msgid "Should other users see this query?" +msgstr "Czy inni użytkownicy powinni widzieć tą kwerendę?" + +#: models.py:905 +msgid "Search Query" +msgstr "Kwerenda wyszukująca" + +#: models.py:906 +msgid "Pickled query object. Be wary changing this." +msgstr "Obiekt zapytania, przepuszczony przez Pickle. Zmieniaj ostrożnie." + +#: models.py:927 +msgid "Settings Dictionary" +msgstr "Ustawienia - słownik" + +#: models.py:928 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "To jest słownik języka Python, przepuszczony przez Pickle oraz kodowanie base64. Nie zmieniaj tego pola za pomocą panelu administracyjnego." + +#: models.py:997 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "Pozostaw puste, aby zignorować ten e-mail dla wszystkich kolejek lub wybierz kolejki, dla których chcesz zignorować ten e-mail." + +#: models.py:1009 +msgid "Date on which this e-mail address was added" +msgstr "Data dodania tego adresu e-mail" + +#: models.py:1017 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "Wpisz adres e-mail. Możesz użyć gwiazdki, np \"*@domain.com\" lub \"postmaster@*\"" + +#: models.py:1022 +msgid "Save Emails in Mailbox?" +msgstr "Zapisywać e-maile?" + +#: models.py:1025 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "Czy chcesz zapisywać listy e-mail z tego adresu w skrzynce? Jeżeli odznaczysz to pole, e-maile z tego adresu będą usuwane." + +#: models.py:1080 +msgid "User who wishes to receive updates for this ticket." +msgstr "Użytkownicy, którzy chcą otrzymywać e-maile aktualizacyjne dla tego zgłoszenia." + +#: models.py:1088 +msgid "For non-user followers, enter their e-mail address" +msgstr "Wpisz adresy e-mail osób nie posiadających konta w serwisie, które chcą obserwować to zgłoszenie" + +#: models.py:1092 +msgid "Can View Ticket?" +msgstr "Może obejrzeć zgłoszenie?" + +#: models.py:1094 +msgid "Can this CC login to view the ticket details?" +msgstr "Czy ta osoba może zalogować się, aby obejrzeć szczegóły zgłoszenia?" + +#: models.py:1098 +msgid "Can Update Ticket?" +msgstr "Może zmieniać zgłoszenie?" + +#: models.py:1100 +msgid "Can this CC login and update the ticket?" +msgstr "Czy ta osoba może zalogować się i zmieniać zgłoszenie?" + +#: models.py:1131 +msgid "Field Name" +msgstr "Nazwa pola" + +#: models.py:1132 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "Taka sama, jak w bazie danych. Musi być unikalna i składać się tylko z małych liter bez znaków przestankowych." + +#: models.py:1137 +msgid "Label" +msgstr "Etykieta" + +#: models.py:1139 +msgid "The display label for this field" +msgstr "Etykieta tego pola" + +#: models.py:1143 +msgid "Help Text" +msgstr "Tekst pomocy" + +#: models.py:1144 +msgid "Shown to the user when editing the ticket" +msgstr "Wyświetlany użytkownikowi edytującemu to zgłsozenie" + +#: models.py:1150 +msgid "Character (single line)" +msgstr "Opis (jedna linia)" + +#: models.py:1151 +msgid "Text (multi-line)" +msgstr "Tekst (wiele linii)" + +#: models.py:1152 +msgid "Integer" +msgstr "Liczba całkowita" + +#: models.py:1153 +msgid "Decimal" +msgstr "Liczba naturalna" + +#: models.py:1154 +msgid "List" +msgstr "Lista" + +#: models.py:1155 +msgid "Boolean (checkbox yes/no)" +msgstr "Wartość boolowska (tak/nie)" + +#: models.py:1157 +msgid "Time" +msgstr "Czas" + +#: models.py:1158 +msgid "Date & Time" +msgstr "Data i czas" + +#: models.py:1160 +msgid "URL" +msgstr "URL" + +#: models.py:1161 +msgid "IP Address" +msgstr "Addres IP " + +#: models.py:1166 +msgid "Data Type" +msgstr "Typ danych" + +#: models.py:1168 +msgid "Allows you to restrict the data entered into this field" +msgstr "Pozwala ograniczyć ilość możliwych wartości wpisywanych do tego pola" + +#: models.py:1173 +msgid "Maximum Length (characters)" +msgstr "Maksymalna długość (w znakach)" + +#: models.py:1179 +msgid "Decimal Places" +msgstr "Miejsca po przecinku" + +#: models.py:1180 +msgid "Only used for decimal fields" +msgstr "Tylko dla pola \"liczba naturalna\"" + +#: models.py:1186 +msgid "Add empty first choice to List?" +msgstr "Dodać pustą pozycję do listy?" + +#: models.py:1187 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "Tylko dla list: dodaje pustą pozycję na początku listy, wymuszając na użytkowniku dokonanie wyboru." + +#: models.py:1191 +msgid "List Values" +msgstr "Wartości listy" + +#: models.py:1192 +msgid "For list fields only. Enter one option per line." +msgstr "Tylko dla pola typu \"lista\". Wpisz każdą wartość w nowej linii." + +#: models.py:1198 +msgid "Ordering" +msgstr "Kolejność" + +#: models.py:1199 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "Niższe wartości są wyświetlone wcześniej; wyższe później" + +#: models.py:1213 +msgid "Required?" +msgstr "Wymagane?" + +#: models.py:1214 +msgid "Does the user have to enter a value for this field?" +msgstr "Czy użytkownik musi wpisać wartość do tego pola?" + +#: models.py:1218 +msgid "Staff Only?" +msgstr "Tylko dla pracowników?" + +#: models.py:1219 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "Jeżeli zaznaczysz to pole, to formularz zgłoszenia dla niezalogowanych użytkowników NIE będzie wyświetlał tego pola" + +#: models.py:1262 +msgid "Depends On Ticket" +msgstr "Zależnie od zgłoszenia" + +#: management/commands/create_usersettings.py:21 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "" + +#: management/commands/escalate_tickets.py:143 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "Eskalacja zgłoszenia po %s dniach" + +#: management/commands/get_email.py:151 +msgid "Created from e-mail" +msgstr "Utworzone za pomocą listu e-mail" + +#: management/commands/get_email.py:155 +msgid "Unknown Sender" +msgstr "Nadawca nieznany" + +#: management/commands/get_email.py:209 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "Brak treści listu w wersji tekstowej. Proszę obejrzeć załącznik email_html_body.html" + +#: management/commands/get_email.py:213 +msgid "email_html_body.html" +msgstr "email_html_body.html" + +#: management/commands/get_email.py:256 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "E-mail otrzymany z adresu %(sender_email)s" + +#: management/commands/get_email.py:264 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "Zgłoszenie ponownie otwarte z powodu wiadomości e-mail otrzymanej z adresu %(sender_email)s" + +#: management/commands/get_email.py:322 +msgid " (Reopened)" +msgstr " (Otwarte ponownie)" + +#: management/commands/get_email.py:324 +msgid " (Updated)" +msgstr "(Zaktualizowano)" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"Powered by django-" +"helpdesk." +msgstr "Pracuje pod kontrolą django-helpdesk." + +#: templates/helpdesk/attribution.html:4 +msgid "For technical support please contact:" +msgstr "Aby uzyskać pomoc techniczną, skontaktuj się z:" + +#: templates/helpdesk/base.html:9 +msgid "Powered by django-helpdesk" +msgstr "Pracuje pod kontrolą django-helpdesk" + +#: templates/helpdesk/base.html:19 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:23 templates/helpdesk/rss_list.html:28 +msgid "My Open Tickets" +msgstr "Moje otwarte zgłoszenia" + +#: templates/helpdesk/base.html:20 +msgid "All Recent Activity" +msgstr "Cała bieżąca aktywność" + +#: templates/helpdesk/base.html:21 templates/helpdesk/dashboard.html:76 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "Nieprzypisane zgłoszenia" + +#: templates/helpdesk/base.html:101 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:14 +msgid "Helpdesk" +msgstr "Helpdesk" + +#: templates/helpdesk/base.html:111 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:27 templates/helpdesk/rss_list.html:28 +msgid "RSS Icon" +msgstr "Ikona RSS" + +#: templates/helpdesk/base.html:111 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "Kanały RSS" + +#: templates/helpdesk/base.html:112 +msgid "API" +msgstr "API" + +#: templates/helpdesk/base.html:113 +msgid "User Settings" +msgstr "Ustawienia użytkownika" + +#: templates/helpdesk/base.html:115 +msgid "Change Language" +msgstr "Zmień język" + +#: templates/helpdesk/base.html:117 +msgid "System Settings" +msgstr "Ustawienia systemu" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:144 +msgid "Delete Saved Query" +msgstr "Usuń zapisane zapytanie" + +#: templates/helpdesk/confirm_delete_saved_query.html:5 +#, python-format +msgid "" +"\n" +"

Delete Query

\n" +"\n" +"

Are you sure you want to delete this saved filter (%(query_title)s)? To re-create it, you will need to manually re-filter your ticket listing.

\n" +msgstr "\n

Usuń zapytanie

\n\n

Czy rzeczywiście chcesz usunąć zapisany filtr (%(query_title)s)? Aby go ponownie utworzyć, musisz ponownie ręcznie przefiltrować listę zgłoszeń.

\n" + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "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." +msgstr "Udostępniłeś to zapytanie więc inni użytkownicy mogą go używać. Jeśli je usuniesz, będą musieli sami odtworzyć to zapytanie." + +#: templates/helpdesk/confirm_delete_saved_query.html:15 +#: templates/helpdesk/delete_ticket.html:11 +msgid "No, Don't Delete It" +msgstr "Nie, nie usuwaj tego" + +#: templates/helpdesk/confirm_delete_saved_query.html:17 +#: templates/helpdesk/delete_ticket.html:13 +msgid "Yes - Delete It" +msgstr "Tak, usuń to" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "Utwórz zgłoszenie" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/public_homepage.html:39 +msgid "Submit a Ticket" +msgstr "Utwórz zgłoszenie" + +#: templates/helpdesk/create_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "Jeżeli nie zaznaczono inaczej, wszystkie pola są wymagane." + +#: templates/helpdesk/create_ticket.html:11 +msgid "Please provide as descriptive a title and description as possible." +msgstr "Postaraj się aby tytuł i opis dostarczały jak najwięcej informacji." + +#: templates/helpdesk/create_ticket.html:17 +#: templates/helpdesk/edit_ticket.html:19 +#: templates/helpdesk/public_homepage.html:50 +msgid "(Optional)" +msgstr "(Opcjonalnie)" + +#: templates/helpdesk/create_ticket.html:26 +#: templates/helpdesk/public_homepage.html:59 +msgid "Submit Ticket" +msgstr "Utwórz zgłoszenie" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "Kokpit Helpdesk" + +#: templates/helpdesk/dashboard.html:10 +msgid "Helpdesk Summary" +msgstr "Podsumowanie Helpdesk" + +#: templates/helpdesk/dashboard.html:25 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "Witaj w kokpicie Helpdesk! Z tego miejsca możesz szybko przejrzeć zgłoszenia utworzone przez ciebie, zgłoszenia nad którymi pracujesz i zgłoszenia, które nie mają właściciela." + +#: templates/helpdesk/dashboard.html:27 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see your own " +"tickets, and those tickets that have no owner. Why not pick up an orphan " +"ticket and sort it out for a customer?" +msgstr "Witaj w kokpicie Helpdesk! Z tego miejsca możesz szybko przejrzeć zgłoszenia utworzone przez ciebie, zgłoszenia nad którymi pracujesz i zgłoszenia, które nie mają właściciela. Może mógłbyś zająć się jakimś zgłoszeniem i pomóc klientowi?" + +#: templates/helpdesk/dashboard.html:36 +msgid "All Tickets submitted by you" +msgstr "Wszystkie zgłoszenia utworzone przez ciebie" + +#: templates/helpdesk/dashboard.html:37 templates/helpdesk/dashboard.html:57 +#: templates/helpdesk/dashboard.html:77 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/ticket_list.html:199 +msgid "Pr" +msgstr "" + +#: templates/helpdesk/dashboard.html:37 templates/helpdesk/dashboard.html:57 +#: templates/helpdesk/dashboard.html:99 +msgid "Last Update" +msgstr "Ostatnia aktualizacja" + +#: templates/helpdesk/dashboard.html:56 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "Otwarte zgłoszenia przypisane do ciebie (pracujesz nad tymi zgłoszeniami)" + +#: templates/helpdesk/dashboard.html:69 +msgid "You have no tickets assigned to you." +msgstr "Brak zgłoszeń przypisanych do ciebie." + +#: templates/helpdesk/dashboard.html:76 +msgid "(pick up a ticket if you start to work on it)" +msgstr "(wybierz zgłoszenie gdy zaczniesz się nim zajmować)" + +#: templates/helpdesk/dashboard.html:85 +#: templates/helpdesk/ticket_desc_table.html:22 +msgid "Take" +msgstr "Weź" + +#: templates/helpdesk/dashboard.html:85 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:234 +msgid "Delete" +msgstr "Usuń" + +#: templates/helpdesk/dashboard.html:89 +msgid "There are no unassigned tickets." +msgstr "Nie ma nieprzypisanych zgłoszeń." + +#: templates/helpdesk/dashboard.html:98 +msgid "Closed & resolved Tickets you used to work on" +msgstr "Zamknięte i rozwiązane zgłoszenia nad którymi pracowałeś" + +#: templates/helpdesk/delete_ticket.html:3 +msgid "Delete Ticket" +msgstr "Usuń zgłoszenie" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "Are you sure you want to delete this ticket (%(ticket_title)s)? All traces of the ticket, including followups, attachments, and updates will be irreversibly removed." +msgstr "Czy rzeczywiście chcesz usunąć zgłoszenie (%(ticket_title)s)? Wszelkie ślady po tym zgłoszeniu, wliczając kontynuacje, załączniki i aktualizacje, będą bezpowrotnie usunięte" + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "Edytuj zgłoszenie" + +#: templates/helpdesk/edit_ticket.html:6 +msgid "Edit a Ticket" +msgstr "Edytuj zgłoszenie" + +#: templates/helpdesk/edit_ticket.html:6 +msgid "Note" +msgstr "Uwaga" + +#: templates/helpdesk/edit_ticket.html:6 +msgid "Editing a ticket does not send an e-mail to the ticket owner or submitter. No new details should be entered, this form should only be used to fix incorrect details or clean up the submission." +msgstr "Edycja zgłoszenia nie powoduje wysłania e-maila do właściciela lub zgłaszającego. Nie podawaj żadnych nowych szczegółów - formularz ten służy jedynie do poprawki detali i oczyszczania zgłoszenia." + +#: templates/helpdesk/edit_ticket.html:28 +msgid "Save Changes" +msgstr "Zapisz zmiany" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "Ignoruj adres e-mail" + +#: templates/helpdesk/email_ignore_add.html:5 +msgid "" +"\n" +"

Ignore E-Mail Address

\n" +"\n" +"

To ignore an e-mail address and prevent any emails from that address creating tickets automatically, enter the e-mail address below.

\n" +"\n" +"

You can either enter a whole e-mail address such as email@domain.com or a portion of an e-mail address with a wildcard, such as *@domain.com or user@*.

" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "Usuń ignorowany adres e-mail" + +#: templates/helpdesk/email_ignore_del.html:5 +#, python-format +msgid "" +"\n" +"

Un-Ignore E-Mail Address

\n" +"\n" +"

Are you sure you wish to stop removing this email address (%(email_address)s) and allow their e-mails to automatically create tickets in your system? You can re-add this e-mail address at any time.

\n" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:11 +msgid "Keep Ignoring It" +msgstr "Nadal ignoruj" + +#: templates/helpdesk/email_ignore_del.html:13 +msgid "Stop Ignoring It" +msgstr "Przestań ignorować" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "Ignorowane adresy e-mail" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "Data dodana" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "Kolejki" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "Zatrzymać w skrzynce?" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:232 +msgid "All" +msgstr "Wszystkie" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "Zatrzymaj" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "" + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "Ponownie przydziel zgłoszenie:" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "Tytuł:" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "Komentarz:" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:11 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "Kategoria Bazy Wiedzy: %(kbcat)s" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "Przeglądasz wszystkie pozycje w kategorii %(kbcat)s." + +#: templates/helpdesk/kb_category.html:12 +msgid "Article" +msgstr "Artykuł" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:11 +#: templates/helpdesk/navigation.html:33 +msgid "Knowledgebase" +msgstr "Baza Wiedzy" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "" + +#: templates/helpdesk/kb_index.html:9 +#: templates/helpdesk/public_homepage.html:9 +msgid "Knowledgebase Categories" +msgstr "Kategorie Bazy Wiedzy" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "Baza wiedzy: %(item)s" + +#: templates/helpdesk/kb_item.html:13 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "" + +#: templates/helpdesk/kb_item.html:15 +msgid "Feedback" +msgstr "Wsparcie" + +#: templates/helpdesk/kb_item.html:17 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "" + +#: templates/helpdesk/kb_item.html:20 +msgid "This article was useful to me" +msgstr "Ten artykuł był dla mnie pomocny" + +#: templates/helpdesk/kb_item.html:21 +msgid "This article was not useful to me" +msgstr "Ten artykuł nie był dla mnie pomocny" + +#: templates/helpdesk/kb_item.html:24 +msgid "The results of voting by other readers of this article are below:" +msgstr "Wyniki głosowania innych czytelników tego artykułu znajdują się poniżej:" + +#: templates/helpdesk/kb_item.html:27 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:28 +#, python-format +msgid "Votes: %(votes)s" +msgstr "Głosy: %(votes)s" + +#: templates/helpdesk/kb_item.html:29 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "Wynik ogólny: %(score)s" + +#: templates/helpdesk/navigation.html:4 +msgid "Dashboard" +msgstr "Kokpit" + +#: templates/helpdesk/navigation.html:5 +#: templates/helpdesk/ticket_list.html:198 +msgid "Tickets" +msgstr "Zgłoszenia" + +#: templates/helpdesk/navigation.html:6 +msgid "New Ticket" +msgstr "Nowe zgłoszenie" + +#: templates/helpdesk/navigation.html:8 +msgid "Stats" +msgstr "Statystyki" + +#: templates/helpdesk/navigation.html:14 +#: templates/helpdesk/ticket_list.html:46 +msgid "Load Saved Query" +msgstr "Wczytaj zapisane zapytanie" + +#: templates/helpdesk/navigation.html:25 templates/helpdesk/navigation.html:35 +msgid "Logout" +msgstr "Wyloguj się" + +#: templates/helpdesk/navigation.html:26 +msgid "Search..." +msgstr "Szukaj..." + +#: templates/helpdesk/navigation.html:26 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "Wpisz słowo kluczowe lub numer zgłoszenia aby przejść bezpośrednio do zgłoszenia." + +#: templates/helpdesk/navigation.html:31 +msgid "Submit A Ticket" +msgstr "Utwórz zgłoszenie" + +#: templates/helpdesk/navigation.html:35 +msgid "Log In" +msgstr "Zaloguj się" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:21 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "Wyświetl zgłoszenie" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "Zmień wyświetlany język" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "Artykuły Bazy Wiedzy" + +#: templates/helpdesk/public_homepage.html:29 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "Twój adres e-mail" + +#: templates/helpdesk/public_homepage.html:33 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "Wyświetl zgłoszenie" + +#: templates/helpdesk/public_homepage.html:41 +msgid "All fields are required." +msgstr "" + +#: templates/helpdesk/public_homepage.html:67 +msgid "Please use button at upper right to login first." +msgstr "Najpierw użyj przycisku w górnym prawym rogu aby się zalogować." + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "Nie można utworzyć zgłoszenia" + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"

Sorry, but there has been an error trying to submit your ticket.

\n" +"\n" +"

Our system has marked your submission as spam, so we are unable to save it. If this is not spam, please press back and re-type your message. Be careful to avoid sounding 'spammy', and if you have heaps of links please try removing them if possible.

\n" +"\n" +"

We are sorry for any inconvenience, however this check is required to avoid our helpdesk resources being overloaded by spammers.

\n" +msgstr "" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "Błąd:" + +#: templates/helpdesk/public_view_ticket.html:8 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "Kolejka: %(queue_name)s" + +#: templates/helpdesk/public_view_ticket.html:11 +#: templates/helpdesk/ticket_desc_table.html:16 +msgid "Submitted On" +msgstr "Utworzono dnia" + +#: templates/helpdesk/public_view_ticket.html:46 +#: templates/helpdesk/ticket_desc_table.html:74 +msgid "Accept" +msgstr "Zaakceptuj" + +#: templates/helpdesk/public_view_ticket.html:46 +#: templates/helpdesk/ticket_desc_table.html:74 +msgid "Accept and Close" +msgstr "Zaakceptuj i zamknij" + +#: templates/helpdesk/public_view_ticket.html:55 +#: templates/helpdesk/ticket.html:64 +msgid "Follow-Ups" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:63 +#: templates/helpdesk/ticket.html:92 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "" + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "Raporty i statystyki" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "Nie utworzyłeś jeszcze żadnych zgłoszeń więc nie możesz generować żadnych raportów." + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "Raporty wg. użytkownika" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "wg. priorytetu" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "wg. kolejki" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "wg. statusu" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "wg.miesiąca" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "Raporty wg. kolejki" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "Możesz uruchomić to zapytanie na przefiltrowanych danych używając zapisanego zapytania." + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "Wybierz zapytanie:" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "Filtruj raport" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "" + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "" + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "Bieżąca aktywność" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "" + +#: templates/helpdesk/rss_list.html:22 +msgid "Per-Queue Feeds" +msgstr "" + +#: templates/helpdesk/rss_list.html:23 +msgid "All Open Tickets" +msgstr "Wszystkie otwarte zgłoszenia" + +#: templates/helpdesk/rss_list.html:27 +msgid "Open Tickets" +msgstr "Otwarte zgłoszenia" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "Zmień ustawienia systemu" + +msgid "The following items can be maintained by you or other superusers:" +msgstr "Poniższe pozycje mogą być zarządzane przez ciebie oraz innych uprawnionych użytkowników:" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "Lista ignorowanych e-maili" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "Zarządzaj kolejkami" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "Zarządzaj gotowymi odpowiedziami" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "Zarządzaj kategoriami Bazy Wiedzy" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "Zarządzaj elementami Bazy Wiedzy" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "Zarządzaj szablonami e-maili" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "Zarządzaj użytkownikami" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "Wyświetl szczegóły zgłoszenia" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "Załącz kolejny plik" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:197 +msgid "Add Another File" +msgstr "Dodaj kolejny plik" + +#: templates/helpdesk/ticket.html:71 templates/helpdesk/ticket.html.py:81 +msgid "Private" +msgstr "" + +#: templates/helpdesk/ticket.html:111 +msgid "Respond to this ticket" +msgstr "Odpowiedz na to zgłoszenie" + +#: templates/helpdesk/ticket.html:118 +msgid "Use a Pre-set Reply" +msgstr "Użyj gotowej odpowiedzi" + +#: templates/helpdesk/ticket.html:120 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "" + +#: templates/helpdesk/ticket.html:123 +msgid "Comment / Resolution" +msgstr "Komentarz / Rozwiązanie" + +#: templates/helpdesk/ticket.html:125 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "To zgłoszenie nie może być rozwiązane ani zamknięte dopóki zgłoszenia od których ono zależy nie są rozwiązane." + +#: templates/helpdesk/ticket.html:158 +msgid "Is this update public?" +msgstr "Czy ta aktualizacja jest publiczna?" + +#: templates/helpdesk/ticket.html:160 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "Jeżeli aktualizacja jest publiczna, autor zgłoszenia otrzyma powiadomienie e-mailem." + +#: templates/helpdesk/ticket.html:164 +msgid "Change Further Details »" +msgstr "" + +#: templates/helpdesk/ticket.html:173 templates/helpdesk/ticket_list.html:55 +#: templates/helpdesk/ticket_list.html:87 +#: templates/helpdesk/ticket_list.html:199 +msgid "Owner" +msgstr "Właściciel" + +#: templates/helpdesk/ticket.html:174 +msgid "Unassign" +msgstr "Filtruj raport" + +#: templates/helpdesk/ticket.html:190 +msgid "Attach File(s) »" +msgstr "Załącz plik(i) »" + +#: templates/helpdesk/ticket.html:196 +msgid "Attach a File" +msgstr "Załącz plik" + +#: templates/helpdesk/ticket.html:204 +msgid "Update This Ticket" +msgstr "Zaktualizuj to zgłoszenie" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "Nie usuwaj" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "Tak, usuń" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "Zaktualizować?" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "Dodaj zależność zgłoszenia" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "\n

Dodaj zależność zgłoszenia

\n\n

Dodanie zależności zgłoszenia uniemożliwi rozwiązanie tego zgłoszenia, dopóki zależne zgłoszenia nie są rozwiązane.

" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "Zapisz zależność zgłoszenia" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "Usuń zależność zgłoszenia" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "\n

Usuń zależność zgłoszenia

\n\n

Jesteś pewien, że chcesz usunąć tą zależność zgłoszenia?

\n" + +#: templates/helpdesk/ticket_desc_table.html:11 +msgid "Unhold" +msgstr "Wznów" + +#: templates/helpdesk/ticket_desc_table.html:11 +msgid "Hold" +msgstr "Wstrzymaj" + +#: templates/helpdesk/ticket_desc_table.html:13 +#, python-format +msgid "Queue: %(queue)s" +msgstr "Kolejka: %(queue)s" + +#: templates/helpdesk/ticket_desc_table.html:21 +msgid "Assigned To" +msgstr "Przypisane do" + +#: templates/helpdesk/ticket_desc_table.html:27 +msgid "Ignore" +msgstr "Ignoruj" + +#: templates/helpdesk/ticket_desc_table.html:36 +msgid "Copies To" +msgstr "Kopie do" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Manage" +msgstr "Zarządzaj" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:48 +msgid "Dependencies" +msgstr "Zależności" + +#: templates/helpdesk/ticket_desc_table.html:50 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:51 +msgid "Remove Dependency" +msgstr "Usuń zależność" + +#: templates/helpdesk/ticket_desc_table.html:54 +msgid "This ticket has no dependencies." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:56 +msgid "Add Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:56 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "" + +#: templates/helpdesk/ticket_list.html:2 +msgid "Ticket Listing" +msgstr "" + +#: templates/helpdesk/ticket_list.html:41 +msgid "Query Options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:43 +msgid "Save This Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:51 +msgid "Change Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:54 +#: templates/helpdesk/ticket_list.html:69 +msgid "Sorting" +msgstr "" + +#: templates/helpdesk/ticket_list.html:58 +#: templates/helpdesk/ticket_list.html:137 +msgid "Keywords" +msgstr "" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Date Range" +msgstr "" + +#: templates/helpdesk/ticket_list.html:90 +msgid "Reverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:92 +msgid "Ordering applied to tickets" +msgstr "" + +#: templates/helpdesk/ticket_list.html:97 +msgid "Owner(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:101 +msgid "(ME)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:105 +msgid "Ctrl-Click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:110 +msgid "Queue(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:111 +#: templates/helpdesk/ticket_list.html:117 +#: templates/helpdesk/ticket_list.html:131 +msgid "Ctrl-click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:116 +msgid "Status(es)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:122 +msgid "Date (From)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:123 +msgid "Date (To)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:124 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "" + +#: templates/helpdesk/ticket_list.html:130 +msgid "Tag(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:138 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "" + +#: templates/helpdesk/ticket_list.html:142 +msgid "Apply Filter" +msgstr "Zastosuj filtr" + +#: templates/helpdesk/ticket_list.html:144 +#, python-format +msgid "You are currently viewing saved query %(query_name)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:147 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "" + +#: templates/helpdesk/ticket_list.html:154 +#: templates/helpdesk/ticket_list.html:169 +msgid "Save Query" +msgstr "Zapisz zapytanie" + +#: templates/helpdesk/ticket_list.html:160 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "" + +#: templates/helpdesk/ticket_list.html:162 +msgid "Shared?" +msgstr "Udostępnione?" + +#: templates/helpdesk/ticket_list.html:163 +msgid "Yes, share this query with other users." +msgstr "Tak, udostępnij to zapytanie innym użytkownikom." + +#: templates/helpdesk/ticket_list.html:164 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "Jeżeli udostępnisz to zapytanie, będzie widoczne dla wszystkich zalogowanych użytkowników." + +#: templates/helpdesk/ticket_list.html:176 +msgid "Use Saved Query" +msgstr "Użyj zapisanego zapytania" + +#: templates/helpdesk/ticket_list.html:178 +msgid "Query" +msgstr "Zapytanie" + +#: templates/helpdesk/ticket_list.html:183 +msgid "Run Query" +msgstr "Uruchom zapytanie" + +#: templates/helpdesk/ticket_list.html:213 +msgid "No Tickets Match Your Selection" +msgstr "Żadne zgłoszenie nie pasuje do twojego wyboru" + +#: templates/helpdesk/ticket_list.html:219 +msgid "Previous" +msgstr "Poprzednia" + +#: templates/helpdesk/ticket_list.html:223 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:227 +msgid "Next" +msgstr "Następna" + +#: templates/helpdesk/ticket_list.html:232 +msgid "Select:" +msgstr "Wybierz" + +#: templates/helpdesk/ticket_list.html:232 +msgid "None" +msgstr "Nic" + +#: templates/helpdesk/ticket_list.html:232 +msgid "Inverse" +msgstr "Odwrotnie" + +#: templates/helpdesk/ticket_list.html:234 +msgid "With Selected Tickets:" +msgstr "Zaznaczone zgłoszenia" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Take (Assign to me)" +msgstr "Weź (Przypisz do mnie)" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Close" +msgstr "Zamknij" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Close (Don't Send E-Mail)" +msgstr "Zamknij (nie wysyłaj e-maila)" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Close (Send E-Mail)" +msgstr "Zamknij (wyślij e-mail)" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Assign To" +msgstr "Przypisz do" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Nobody (Unassign)" +msgstr "Nikogo (nie przypisuj)" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "Zmień ustawienia użytkownika" + +#: templates/helpdesk/user_settings.html:14 +msgid "" +"\n" +"

User Settings

\n" +"\n" +"

Use the following options to change the way your helpdesk system works for you. These settings do not impact any other user.

\n" +msgstr "" + +#: templates/helpdesk/user_settings.html:29 +msgid "Save Options" +msgstr "Zapisz opcje" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "Wylogowano" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "Logowanie Helpdesk" + +#: templates/helpdesk/registration/login.html:9 +#: templates/helpdesk/registration/login.html:21 +msgid "Login" +msgstr "Logowanie" + +#: templates/helpdesk/registration/login.html:11 +msgid "" +"To log in and begin responding to cases, simply enter your username and " +"password below." +msgstr "" + +#: templates/helpdesk/registration/login.html:14 +msgid "Your username and password didn't match. Please try again." +msgstr "Nie odnaleziono takiego użytkownika i hasła. Spróbuj jeszcze raz." + +#: templates/helpdesk/registration/login.html:16 +msgid "Username" +msgstr "Nazwa użytkownika" + +#: templates/helpdesk/registration/login.html:18 +msgid "Password" +msgstr "Hasło" + +#: views/feeds.py:35 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "Helpdesk: otwarte zgłoszenia w kolejce %(queue)s dla użytkownika %(username)s" + +#: views/feeds.py:40 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "Helpdesk: otwarte zgłoszenia dla użytkownika %(username)s" + +#: views/feeds.py:46 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "Otwarte i ponownie otwarte zgłoszenia w kolejce %(queue)s dla użytkownika %(username)s" + +#: views/feeds.py:51 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "Otwarte i ponownie otwarte zgłoszenia dla użytkownika %(username)s" + +#: views/feeds.py:98 +msgid "Helpdesk: Unassigned Tickets" +msgstr "Helpdesk: zgłoszenia nieprzydzielone" + +#: views/feeds.py:99 +msgid "Unassigned Open and Reopened tickets" +msgstr "Nieprzydzielone otwarte i ponownie otwarte zgłoszenia" + +#: views/feeds.py:124 +msgid "Helpdesk: Recent Followups" +msgstr "Helpdesk: ostatnie odpowiedzi" + +#: views/feeds.py:125 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "Ostatnie odpowiedzi, takie jak e-maile, komentarze, załączniki i rozwiązania" + +#: views/feeds.py:140 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "Helpdesk: otwarte zgłoszenia w kolejce %(queue)s" + +#: views/feeds.py:145 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "Otwarte i ponownie otwarte zgłoszenia w kolejce %(queue)s" + +#: views/public.py:91 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "Nieprawidłowe ID zgłoszenia lub nieprawidłowy adres e-mail. Spróbuj ponownie." + +#: views/public.py:109 +msgid "Submitter accepted resolution and closed ticket" +msgstr "Zgłaszający przyjął rozwiązanie i zamknął to zgłoszenie." + +#: views/staff.py:218 +msgid "Accepted resolution and closed ticket" +msgstr "Zaakceptuj rozwiązanie i zamknij zgłoszenie." + +#: views/staff.py:246 +msgid "Sorry, you need to login to do that." +msgstr "Przykro mi, ale musisz być zalogowanym użytkownikiem, aby to zrobić." + +#: views/staff.py:295 +#, python-format +msgid "Assigned to %(username)s" +msgstr "Przydzielono do %(username)s" + +#: views/staff.py:318 +msgid "Updated" +msgstr "Zaktualizowano" + +#: views/staff.py:496 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "Przydzielono do %(username)s za pomocą aktualizacji wielokrotnej" + +#: views/staff.py:501 +msgid "Unassigned in bulk update" +msgstr "Nie przydzielono za pomocą aktualizacji wielokrotnej" + +#: views/staff.py:506 views/staff.py:511 +msgid "Closed in bulk update" +msgstr "Zamknięto w aktualizacji wielokrotnej" + +#: views/staff.py:732 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "

Uwaga: to wyszukiwanie słów kluczowych rozróżnia wielkie i małe litery z powodu używanej bazy danych. Oznacza to, że wyszukiwanie może nie być dokładne. Używając innej bazy danych możesz poprawić wyszukiwanie. Aby dowiedzieć się więcej, przeczytaj Django Documentation on string matching in SQLite." + +#: views/staff.py:843 +msgid "Ticket taken off hold" +msgstr "Zgłoszenia zdjęte z listy wstrzymanych" + +#: views/staff.py:846 +msgid "Ticket placed on hold" +msgstr "Zgłoszenia wstrzymane" + +#: views/staff.py:914 +msgid "Jan" +msgstr "Sty" + +#: views/staff.py:915 +msgid "Feb" +msgstr "Lut" + +#: views/staff.py:916 +msgid "Mar" +msgstr "Mar" + +#: views/staff.py:917 +msgid "Apr" +msgstr "Kwie" + +#: views/staff.py:918 +msgid "May" +msgstr "Maj" + +#: views/staff.py:919 +msgid "Jun" +msgstr "Cze" + +#: views/staff.py:920 +msgid "Jul" +msgstr "Lip" + +#: views/staff.py:921 +msgid "Aug" +msgstr "Sie" + +#: views/staff.py:922 +msgid "Sep" +msgstr "Wrze" + +#: views/staff.py:923 +msgid "Oct" +msgstr "Paź" + +#: views/staff.py:924 +msgid "Nov" +msgstr "Lis" + +#: views/staff.py:925 +msgid "Dec" +msgstr "Gru" + +#: views/staff.py:951 +msgid "User by Priority" +msgstr "Użytkownik wg. priorytetu" + +#: views/staff.py:957 +msgid "User by Queue" +msgstr "Użytkownik wg. kolejki" + +#: views/staff.py:963 +msgid "User by Status" +msgstr "Użytkownik wg. statusu" + +#: views/staff.py:969 +msgid "User by Month" +msgstr "Użytkownik wg. miesiąca" + +#: views/staff.py:975 +msgid "Queue by Priority" +msgstr "Kolejka wg. priorytetu" + +#: views/staff.py:981 +msgid "Queue by Status" +msgstr "Kolejka wg. statusu" + +#: views/staff.py:987 +msgid "Queue by Month" +msgstr "Kolejka wg. miesiąca" diff --git a/build/lib/helpdesk/locale/pt_BR/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/pt_BR/LC_MESSAGES/django.mo new file mode 100644 index 00000000..996a50ac Binary files /dev/null and b/build/lib/helpdesk/locale/pt_BR/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/pt_BR/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/pt_BR/LC_MESSAGES/django.po new file mode 100644 index 00000000..8e47ffe4 --- /dev/null +++ b/build/lib/helpdesk/locale/pt_BR/LC_MESSAGES/django.po @@ -0,0 +1,2312 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Alessandro Pinto , 2013 +# Daniel de Abreu Mendes , 2013 +# Gabriel Galiaso , 2012-2013 +# Gabriel Galiaso , 2011 +# Rafael Capucho , 2013 +# Ross Poulton , 2011 +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2012-08-07 20:40+1000\n" +"PO-Revision-Date: 2013-11-20 11:07+0000\n" +"Last-Translator: Alessandro Pinto \n" +"Language-Team: Portuguese (Brazil) (http://www.transifex.com/projects/p/django-helpdesk/language/pt_BR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: pt_BR\n" +"Plural-Forms: nplurals=2; plural=(n > 1);\n" + +#: forms.py:113 forms.py:360 models.py:262 +#: templates/helpdesk/dashboard.html:11 templates/helpdesk/dashboard.html:37 +#: templates/helpdesk/dashboard.html:57 templates/helpdesk/dashboard.html:77 +#: templates/helpdesk/dashboard.html:99 templates/helpdesk/rss_list.html:23 +#: templates/helpdesk/ticket_list.html:56 +#: templates/helpdesk/ticket_list.html:78 +#: templates/helpdesk/ticket_list.html:199 views/staff.py:976 +#: views/staff.py:982 views/staff.py:988 +msgid "Queue" +msgstr "Fila" + +#: forms.py:122 +msgid "Summary of the problem" +msgstr "Resumo do problema" + +#: forms.py:127 +msgid "Submitter E-Mail Address" +msgstr "Enviado pelo E-Mail" + +#: forms.py:129 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "Este endereço de e-mail recebe cópias de todas as atualizações dos participantes deste ticket." + +#: forms.py:135 +msgid "Description of Issue" +msgstr "Descrição do problema" + +#: forms.py:142 +msgid "Case owner" +msgstr "Proprietário do Problema" + +#: forms.py:143 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "Se você selecionar um proprietário diferente de si mesmo, eles receber por email os detalhes deste ticket imediatamente." + +#: forms.py:151 models.py:322 management/commands/escalate_tickets.py:149 +#: templates/helpdesk/public_view_ticket.html:21 +#: templates/helpdesk/ticket.html:176 +#: templates/helpdesk/ticket_desc_table.html:31 +#: templates/helpdesk/ticket_list.html:84 views/staff.py:355 +msgid "Priority" +msgstr "Prioridade" + +#: forms.py:152 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "Por favor, selecione uma prioridade com cuidado. Se tiver dúvidas, deixe-o como '3 '." + +#: forms.py:159 forms.py:397 models.py:330 templates/helpdesk/ticket.html:178 +#: views/staff.py:365 +msgid "Due on" +msgstr "Ocorrido em" + +#: forms.py:171 forms.py:402 +msgid "Attach File" +msgstr "Anexar Arquivo" + +#: forms.py:172 forms.py:403 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "Você pode anexar um arquivo como um documento ou imagem a este ticket." + +#: forms.py:180 templates/helpdesk/public_view_ticket.html:33 +#: templates/helpdesk/ticket.html:182 +#: templates/helpdesk/ticket_desc_table.html:42 +#: templates/helpdesk/ticket_list.html:61 +#: templates/helpdesk/ticket_list.html:199 views/staff.py:376 +msgid "Tags" +msgstr "Tags" + +#: forms.py:181 +msgid "" +"Words, separated by spaces, or phrases separated by commas. These should " +"communicate significant characteristics of this ticket" +msgstr "Palavras separadas por espaços ou frases separadas por virgulas. Elas devem refletir relevância para esse Ticket." + +#: forms.py:275 +msgid "Ticket Opened" +msgstr "Ticket Aberto" + +#: forms.py:282 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "Ticket Aberto e Atribuído para %(name)s " + +#: forms.py:369 +msgid "Summary of your query" +msgstr "Título do Problema" + +#: forms.py:374 +msgid "Your E-Mail Address" +msgstr "Seu Endereço de E-Mail" + +#: forms.py:375 +msgid "We will e-mail you when your ticket is updated." +msgstr "Deseja receber e-mail quando um ticket for atualizado." + +#: forms.py:380 +msgid "Description of your issue" +msgstr "Descrição do problema" + +#: forms.py:382 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "Por favor seja o mais descritivo possível." + +#: forms.py:390 +msgid "Urgency" +msgstr "Urgência" + +#: forms.py:391 +msgid "Please select a priority carefully." +msgstr "Por favor, selecione a prioridade com cuidado." + +#: forms.py:486 +msgid "Ticket Opened Via Web" +msgstr "Ticket aberto Via Web" + +#: forms.py:553 +msgid "Show Ticket List on Login?" +msgstr "Mostrar lista Ticket em Login?" + +#: forms.py:554 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "Mostrar a lista de bilhetes após o login? Caso contrário, o painel sera mostrado." + +#: forms.py:559 +msgid "E-mail me on ticket change?" +msgstr "Enviar E-mail sobre mudanças ticket?" + +#: forms.py:560 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "Você gostaria de receber um email caso você seja o dono do ticket e outra pessoa o modifique via web?" + +#: forms.py:565 +msgid "E-mail me when assigned a ticket?" +msgstr "Notificar por E-mail quando um ticket for atribuído?" + +#: forms.py:566 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "Deseja receber e-mail de ticket enviado via web?" + +#: forms.py:571 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "Enviar um E-Mail para mim quando um ticket é alterado através da API?" + +#: forms.py:572 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "Se um ticket é alterada pela API, você quer receber um E-Mail?" + +#: forms.py:577 +msgid "Number of tickets to show per page" +msgstr "Número de tickets por página" + +#: forms.py:578 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "Tickets por página" + +#: forms.py:585 +msgid "Use my e-mail address when submitting tickets?" +msgstr "Usar meu endereço de e-mail ao enviar ticket?" + +#: forms.py:586 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "Quando submeter um ticket, você quer usar automaticamente o seu endereço de e-mail como endereço de envio? Você pode digitar um endereço de e-mail diferente inserir o ticket. Esta opção somente altera o padrão." + +#: models.py:32 models.py:256 models.py:490 models.py:787 models.py:821 +#: templates/helpdesk/dashboard.html:37 templates/helpdesk/dashboard.html:57 +#: templates/helpdesk/dashboard.html:77 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/ticket.html:170 templates/helpdesk/ticket_list.html:75 +#: templates/helpdesk/ticket_list.html:199 views/staff.py:345 +msgid "Title" +msgstr "Título" + +#: models.py:37 models.py:792 models.py:1162 +msgid "Slug" +msgstr "Slug" + +#: models.py:38 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "Este slug é usada na construção do ticket ID. Uma vez definido, não tente mudá-lo ou e-mail pode ficar confuso." + +#: models.py:43 models.py:1015 models.py:1085 models.py:1159 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "Endereço de E-Mail" + +#: models.py:46 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "Todos os e-mails enviados para essa fila vai usar este endereço de e-mail. Se você usar IMAP ou POP3, este deve ser o endereço de email para essa caixa de correio." + +#: models.py:52 models.py:766 +msgid "Locale" +msgstr "Localidade" + +#: models.py:56 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "Linguagem desta fila. Todas as respostas automaticas estarão nesta linguagem" + +#: models.py:60 +msgid "Allow Public Submission?" +msgstr "Permitir Envio Público?" + +#: models.py:63 +msgid "Should this queue be listed on the public submission form?" +msgstr "Esta lista deve ser mostrada somente no formulário de Envio Píblico?" + +#: models.py:68 +msgid "Allow E-Mail Submission?" +msgstr "Permitir Envio por E-Mail?" + +#: models.py:71 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "Você quer poll caixa de e-mail para os bilhetes de novo?" + +#: models.py:76 +msgid "Escalation Days" +msgstr "Dias Escalado" + +#: models.py:79 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "Para tickets que não são realizados, quantas vezes você quiser aumentar a sua prioridade? Ajuste para 0 para nenhuma escalada." + +#: models.py:84 +msgid "New Ticket CC Address" +msgstr "Novo Ticket CC" + +#: models.py:88 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "Se um endereço de e-mail está inserido aqui, ele vai receber a notificação de todos os novos tickets criados para essa fila. Coloque uma vírgula entre vários endereços de e-mail." + +#: models.py:94 +msgid "Updated Ticket CC Address" +msgstr "Endereço de cópia alterado" + +#: models.py:98 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "Se um endereço de e-mail está inserido aqui, então ele vai receber uma notificação de todas as atividades (novos tickets, tickets fechados, atualizações, remanejamentos, etc) para esta fila. Separe vários endereços com uma vírgula." + +#: models.py:105 +msgid "E-Mail Box Type" +msgstr "Tipo de caixa de E-mail" + +#: models.py:107 +msgid "POP 3" +msgstr "POP 3" + +#: models.py:107 +msgid "IMAP" +msgstr "IMAP" + +#: models.py:110 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "Tipo de servidor de e-mail para criação de tickets automaticamente - São suportados POP3 e IMAP." + +#: models.py:115 +msgid "E-Mail Hostname" +msgstr "Hostname do E-Mail" + +#: models.py:119 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "O endereço do servidor de e-mail - o nome do domínio ou endereço IP. Pode ser \"localhost\"." + +#: models.py:124 +msgid "E-Mail Port" +msgstr "Porta do E-Mail" + +#: models.py:127 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "Porta usado para acessar o e-mail. Porta Padrão POP3 é \"110\" e IMAP é \"143\". Isso pode ser diferente e alguns servidores. Deixe em branco para usar o padrão." + +#: models.py:133 +msgid "Use SSL for E-Mail?" +msgstr "Usar SSL para e-mail?" + +#: models.py:136 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "Caso esteja usando SSL para IMAP ou POP3 - As portas padrão usando SSL é 993 para IMAP e 995 para POP3." + +#: models.py:141 +msgid "E-Mail Username" +msgstr "Usuário do E-Mail" + +#: models.py:145 +msgid "Username for accessing this mailbox." +msgstr "Nome de usuário para acessar esta conta de E-Mail." + +#: models.py:149 +msgid "E-Mail Password" +msgstr "Senha do E-mail" + +#: models.py:153 +msgid "Password for the above username" +msgstr "Senha para o usuário acima" + +#: models.py:157 +msgid "IMAP Folder" +msgstr "Pasta IMAP" + +#: models.py:161 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "Se estiver usando IMAP, qual pasta você deseja buscar as mensagens? Isso permite que você use uma conta IMAP para várias filas, filtrando mensagens em seu servidor IMAP em pastas separadas. Padrão: INBOX." + +#: models.py:168 +msgid "E-Mail Check Interval" +msgstr "Intervalo de Verificação do E-Mail" + +#: models.py:169 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "Quantas vezes você deseja verificar a conta de E-Mail? (Em Minutos)" + +#: models.py:240 templates/helpdesk/dashboard.html:11 +#: templates/helpdesk/ticket.html:130 +msgid "Open" +msgstr "Aberto" + +#: models.py:241 templates/helpdesk/ticket.html:136 +#: templates/helpdesk/ticket.html.py:142 templates/helpdesk/ticket.html:147 +#: templates/helpdesk/ticket.html.py:151 +msgid "Reopened" +msgstr "Reaberto" + +#: models.py:242 templates/helpdesk/dashboard.html:11 +#: templates/helpdesk/ticket.html:131 templates/helpdesk/ticket.html.py:137 +#: templates/helpdesk/ticket.html:143 +msgid "Resolved" +msgstr "Resolvido" + +#: models.py:243 templates/helpdesk/dashboard.html:11 +#: templates/helpdesk/ticket.html:132 templates/helpdesk/ticket.html.py:138 +#: templates/helpdesk/ticket.html:144 templates/helpdesk/ticket.html.py:148 +msgid "Closed" +msgstr "Fechado" + +#: models.py:244 templates/helpdesk/ticket.html:133 +#: templates/helpdesk/ticket.html.py:139 templates/helpdesk/ticket.html:152 +msgid "Duplicate" +msgstr "Duplicado" + +#: models.py:248 +msgid "1. Critical" +msgstr "1. Crítico" + +#: models.py:249 +msgid "2. High" +msgstr "2. Alto" + +#: models.py:250 +msgid "3. Normal" +msgstr "3. Normal" + +#: models.py:251 +msgid "4. Low" +msgstr "4. Baixo" + +#: models.py:252 +msgid "5. Very Low" +msgstr "5. Muito baixo" + +#: models.py:266 templates/helpdesk/dashboard.html:77 +#: templates/helpdesk/ticket_list.html:72 +#: templates/helpdesk/ticket_list.html:199 +msgid "Created" +msgstr "Criado" + +#: models.py:268 +msgid "Date this ticket was first created" +msgstr "Data em que este ticket foi criado" + +#: models.py:272 +msgid "Modified" +msgstr "Modificado" + +#: models.py:274 +msgid "Date this ticket was most recently changed." +msgstr "Ultima alteração do ticket." + +#: models.py:278 templates/helpdesk/public_view_ticket.html:16 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Submitter E-Mail" +msgstr "Enviado pelo E-Mail" + +#: models.py:281 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "O solicitante receberá um e-mail para todos os follow-ups públicos deixados para essa tarefa." + +#: models.py:290 +msgid "Assigned to" +msgstr "Atribuído a" + +#: models.py:294 templates/helpdesk/dashboard.html:37 +#: templates/helpdesk/dashboard.html:57 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/ticket_list.html:57 +#: templates/helpdesk/ticket_list.html:81 +#: templates/helpdesk/ticket_list.html:199 +msgid "Status" +msgstr "Andamento" + +#: models.py:300 +msgid "On Hold" +msgstr "Em espera" + +#: models.py:303 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "Se um ticket está em espera, não será automaticamente escalado." + +#: models.py:308 models.py:796 templates/helpdesk/public_view_ticket.html:39 +#: templates/helpdesk/ticket_desc_table.html:67 +msgid "Description" +msgstr "Descrição" + +#: models.py:311 +msgid "The content of the customers query." +msgstr "O conteúdo da consulta clientes." + +#: models.py:315 templates/helpdesk/public_view_ticket.html:46 +#: templates/helpdesk/ticket_desc_table.html:74 +msgid "Resolution" +msgstr "Resolução" + +#: models.py:318 +msgid "The resolution provided to the customer by our staff." +msgstr "A solução enviada pela nossa equipe ao cliente." + +#: models.py:326 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "1 = Alta Prioridade, 5 = Baixa Prioridade" + +#: models.py:339 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "A data deste último bilhete foi atribuida - automaticamente pela management/commands/escalate_tickets.py." + +#: models.py:348 templates/helpdesk/ticket_desc_table.html:22 +#: views/feeds.py:91 views/feeds.py:117 views/feeds.py:169 views/staff.py:302 +msgid "Unassigned" +msgstr "Não Atribuído" + +#: models.py:387 +msgid " - On Hold" +msgstr " - Em espera" + +#: models.py:481 models.py:1073 models.py:1231 models.py:1256 +#: templates/helpdesk/public_homepage.html:26 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "Ticket" + +#: models.py:485 models.py:714 models.py:1008 models.py:1156 +msgid "Date" +msgstr "Data" + +#: models.py:497 views/staff.py:316 +msgid "Comment" +msgstr "Comentário" + +#: models.py:503 +msgid "Public" +msgstr "Público" + +#: models.py:506 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "Tickets públicos são visíveis pelo cliente e toda a equipe, caso contrário só podem ser vistos pelos funcionários." + +#: models.py:514 models.py:888 models.py:1081 views/staff.py:952 +#: views/staff.py:958 views/staff.py:964 views/staff.py:970 +msgid "User" +msgstr "Usuário" + +#: models.py:518 templates/helpdesk/ticket.html:127 +msgid "New Status" +msgstr "Novo Status" + +#: models.py:522 +msgid "If the status was changed, what was it changed to?" +msgstr "Se o status foi alterado, foi alterado para?" + +#: models.py:551 models.py:608 +msgid "Follow-up" +msgstr "Follow-up" + +#: models.py:555 models.py:1236 +msgid "Field" +msgstr "Campo" + +#: models.py:560 +msgid "Old Value" +msgstr "Valor Antigo" + +#: models.py:566 +msgid "New Value" +msgstr "Novo valor" + +#: models.py:574 +msgid "removed" +msgstr "removidos" + +#: models.py:576 +#, python-format +msgid "set to %s" +msgstr "definido para %s" + +#: models.py:578 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "alterado de \" %(old_value)s \" para \" %(new_value)s \"" + +#: models.py:612 +msgid "File" +msgstr "Arquivo" + +#: models.py:617 +msgid "Filename" +msgstr "Nome do arquivo" + +#: models.py:622 +msgid "MIME Type" +msgstr "Tipo MIME" + +#: models.py:627 +msgid "Size" +msgstr "Tamanho" + +#: models.py:628 +msgid "Size of this file in bytes" +msgstr "Tamanho deste arquivo em bytes" + +#: models.py:663 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "Deixe em branco para permitir que essa resposta seja usada para todas as filas, ou selecione as filas que você deseja limitar esta resposta." + +#: models.py:668 models.py:709 models.py:1003 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "Nome" + +#: models.py:670 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "Usada apenas para auxiliar os usuários a selecionar uma resposta - não mostrado para o usuário." + +#: models.py:675 +msgid "Body" +msgstr "Corpo" + +#: models.py:676 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "Contexto disponível: {{ ticket }} - objeto ticket (ex: {{ ticket.title }}); {{ queue }} - A fila; e {{ user }} - o usuário atual." + +#: models.py:703 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "Deixe em branco para esta exclusão seja aplicado a todas as filas, ou selecione as filas que deseja excluir com esta entrada." + +#: models.py:715 +msgid "Date on which escalation should not happen" +msgstr "Data em que as atribuições não deve acontecer" + +#: models.py:732 +msgid "Template Name" +msgstr "Nome do Modelo" + +#: models.py:737 +msgid "Subject" +msgstr "Assunto" + +#: models.py:739 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "Este será o prefixo \"[ticket.ticket] ticket.title\". Use algo simples como \"(Atualizado)\" ou \"(Fechado)\" - mesmo contexto está disponível como na plain_text, abaixo." + +#: models.py:745 +msgid "Heading" +msgstr "Cabeçalho" + +#: models.py:747 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "Em HTML e-mails, esta será a posição no topo do e-mail - mesmo contexto está disponível como na plain_text, abaixo." + +#: models.py:753 +msgid "Plain Text" +msgstr "Texto Simples" + +#: models.py:754 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "Variaveis de contexto disponiveis {{ ticket }}, {{ queue }}, e dependendo da hora da chamada: {{ resolution }} ou {{ comment }}." + +#: models.py:760 +msgid "HTML" +msgstr "HTML" + +#: models.py:761 +msgid "The same context is available here as in plain_text, above." +msgstr "Váriaveis de contexto está disponível aqui como em plain_text, acima." + +#: models.py:770 +msgid "Locale of this template." +msgstr "Liguagem do template." + +#: models.py:817 templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Category" +msgstr "Categoria" + +#: models.py:826 +msgid "Question" +msgstr "Pergunta" + +#: models.py:830 +msgid "Answer" +msgstr "Resposta" + +#: models.py:834 +msgid "Votes" +msgstr "Votos" + +#: models.py:835 +msgid "Total number of votes cast for this item" +msgstr "Número total de votos expressos para este item" + +#: models.py:840 +msgid "Positive Votes" +msgstr "Votos positivos" + +#: models.py:841 +msgid "Number of votes for this item which were POSITIVE." +msgstr "Número de votos positivos para este item." + +#: models.py:846 +msgid "Last Updated" +msgstr "Última Atualização" + +#: models.py:847 +msgid "The date on which this question was most recently changed." +msgstr "Data de ultima alteração da pergunta." + +#: models.py:861 +msgid "Unrated" +msgstr "Sem Cortes" + +#: models.py:892 templates/helpdesk/ticket_list.html:158 +msgid "Query Name" +msgstr "Nome da consulta" + +#: models.py:894 +msgid "User-provided name for this query" +msgstr "Nome da consulta que o usuário criador deu" + +#: models.py:898 +msgid "Shared With Other Users?" +msgstr "Compartilhados com outros usuários?" + +#: models.py:901 +msgid "Should other users see this query?" +msgstr "Outros usuários podem ver esta consulta?" + +#: models.py:905 +msgid "Search Query" +msgstr "Consulta de pesquisa" + +#: models.py:906 +msgid "Pickled query object. Be wary changing this." +msgstr "Objeto de consulta serializado. Seja cauteloso ao mudar isso." + +#: models.py:927 +msgid "Settings Dictionary" +msgstr "Configurações do Dicionário" + +#: models.py:928 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "Esta é uma representação codificada em base64 de um dicionário Python serializado. Não altere este campo através do administrador." + +#: models.py:997 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "Deixe em branco para que este e-mail seja ignorado em todas as filas, ou selecione as filas que você deseja ignorar este e-mail para." + +#: models.py:1009 +msgid "Date on which this e-mail address was added" +msgstr "Data em que este endereço de E-Mail foi adicionado" + +#: models.py:1017 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "Digite um endereço de e-mail completo, ou porções com wildcards, por exemplo, *@domain.com ou postmaster@*." + +#: models.py:1022 +msgid "Save Emails in Mailbox?" +msgstr "Manter E-mails na conta de E-Mail?" + +#: models.py:1025 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "Você deseja salvar os e-mails deste endereço na caixa de correio? Se este for desmarcado os e-mails deste endereço serão deletados." + +#: models.py:1080 +msgid "User who wishes to receive updates for this ticket." +msgstr "Usuários que desejam receber atualizações para este ticket." + +#: models.py:1088 +msgid "For non-user followers, enter their e-mail address" +msgstr "Para seguidores não-usuários, entre com o e-mail" + +#: models.py:1092 +msgid "Can View Ticket?" +msgstr "O ticket pode ser visualizado?" + +#: models.py:1094 +msgid "Can this CC login to view the ticket details?" +msgstr "Pode este login CC para ver os detalhes bilhete?" + +#: models.py:1098 +msgid "Can Update Ticket?" +msgstr "O ticket pode se atualizado?" + +#: models.py:1100 +msgid "Can this CC login and update the ticket?" +msgstr "O login CC pode atualizar o ticket?" + +#: models.py:1131 +msgid "Field Name" +msgstr "Nome do Campo" + +#: models.py:1132 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "Utilize apenas letras minúsculas e sem pontuação." + +#: models.py:1137 +msgid "Label" +msgstr "Rótulo" + +#: models.py:1139 +msgid "The display label for this field" +msgstr "O rótulo de exibição para este campo" + +#: models.py:1143 +msgid "Help Text" +msgstr "Texto de Ajuda" + +#: models.py:1144 +msgid "Shown to the user when editing the ticket" +msgstr "Mostrados ao usuário durante a edição do ticket" + +#: models.py:1150 +msgid "Character (single line)" +msgstr "Caracteres (linha simples)" + +#: models.py:1151 +msgid "Text (multi-line)" +msgstr "Texto (multi-line)" + +#: models.py:1152 +msgid "Integer" +msgstr "Número inteiro" + +#: models.py:1153 +msgid "Decimal" +msgstr "Decimal" + +#: models.py:1154 +msgid "List" +msgstr "Lista" + +#: models.py:1155 +msgid "Boolean (checkbox yes/no)" +msgstr "Boolean (checkbox sim / não)" + +#: models.py:1157 +msgid "Time" +msgstr "Tempo" + +#: models.py:1158 +msgid "Date & Time" +msgstr "Data e Hora" + +#: models.py:1160 +msgid "URL" +msgstr "URL" + +#: models.py:1161 +msgid "IP Address" +msgstr "Endereço de IP" + +#: models.py:1166 +msgid "Data Type" +msgstr "Tipo de dados" + +#: models.py:1168 +msgid "Allows you to restrict the data entered into this field" +msgstr "Permite restringir os dados inseridos neste campo" + +#: models.py:1173 +msgid "Maximum Length (characters)" +msgstr "Tamanho máximo (caracteres)" + +#: models.py:1179 +msgid "Decimal Places" +msgstr "Casas decimais" + +#: models.py:1180 +msgid "Only used for decimal fields" +msgstr "Usado apenas para campos decimais" + +#: models.py:1186 +msgid "Add empty first choice to List?" +msgstr "Adicionar primeira opção vazia para Lista?" + +#: models.py:1187 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "Apenas para a lista: adiciona uma primeira entrada vazia à lista de escolhas, o que reforça que o usuário faz uma escolha ativa." + +#: models.py:1191 +msgid "List Values" +msgstr "Lista de Valores" + +#: models.py:1192 +msgid "For list fields only. Enter one option per line." +msgstr "Para os campos de lista única. Digite uma opção por linha." + +#: models.py:1198 +msgid "Ordering" +msgstr "Ordenação" + +#: models.py:1199 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "Os números mais baixos são exibidos primeiro; números mais altos são listados mais tarde" + +#: models.py:1213 +msgid "Required?" +msgstr "Requerido?" + +#: models.py:1214 +msgid "Does the user have to enter a value for this field?" +msgstr "O usuário deve digitar um valor para este campo?" + +#: models.py:1218 +msgid "Staff Only?" +msgstr "Apenas os agentes?" + +#: models.py:1219 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "Se marcada, o formulário de apresentação não irá mostrar esse campo" + +#: models.py:1262 +msgid "Depends On Ticket" +msgstr "Depende de Ticket" + +#: management/commands/create_usersettings.py:21 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "Verifique se há usuário sem configuração e criar ajustes, se necessário. Usa settings.DEFAULT_USER_SETTINGS que podem ser substituídas de acordo com a sua situação." + +#: management/commands/escalate_tickets.py:143 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "Ticket atribuido a %s dias" + +#: management/commands/get_email.py:151 +msgid "Created from e-mail" +msgstr "Criado a partir de e-mail" + +#: management/commands/get_email.py:155 +msgid "Unknown Sender" +msgstr "Remetente desconhecido" + +#: management/commands/get_email.py:209 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "Caso não contenha no email em texto. Por favor consulte o anexo email_html_body.html." + +#: management/commands/get_email.py:213 +msgid "email_html_body.html" +msgstr "email_html_body.html" + +#: management/commands/get_email.py:256 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "E-Mail Recebido de %(sender_email)s " + +#: management/commands/get_email.py:264 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "Ticket foi Re-Aberto por e-mail recebido de %(sender_email)s " + +#: management/commands/get_email.py:322 +msgid " (Reopened)" +msgstr "(Reaberto)" + +#: management/commands/get_email.py:324 +msgid " (Updated)" +msgstr "(Atualizado)" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"Powered by django-" +"helpdesk." +msgstr "Powered by django-helpdesk." + +#: templates/helpdesk/attribution.html:4 +msgid "For technical support please contact:" +msgstr "Para suporte técnico por favor entre em contato com:" + +#: templates/helpdesk/base.html:9 +msgid "Powered by django-helpdesk" +msgstr "Powered by django-helpdesk" + +#: templates/helpdesk/base.html:19 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:23 templates/helpdesk/rss_list.html:28 +msgid "My Open Tickets" +msgstr "Meus Tickets Em Aberto" + +#: templates/helpdesk/base.html:20 +msgid "All Recent Activity" +msgstr "Todas as Atividades Recentes" + +#: templates/helpdesk/base.html:21 templates/helpdesk/dashboard.html:76 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "Tickets não atribuitos" + +#: templates/helpdesk/base.html:101 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:14 +msgid "Helpdesk" +msgstr "Helpdesk" + +#: templates/helpdesk/base.html:111 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:27 templates/helpdesk/rss_list.html:28 +msgid "RSS Icon" +msgstr "Ícone RSS" + +#: templates/helpdesk/base.html:111 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "Feeds RSS" + +#: templates/helpdesk/base.html:112 +msgid "API" +msgstr "API" + +#: templates/helpdesk/base.html:113 +msgid "User Settings" +msgstr "Configuração de Usuário" + +#: templates/helpdesk/base.html:115 +msgid "Change Language" +msgstr "Trocar Idioma" + +#: templates/helpdesk/base.html:117 +msgid "System Settings" +msgstr "Configuração do Sistema" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:144 +msgid "Delete Saved Query" +msgstr "Apagar Consulta Salva" + +#: templates/helpdesk/confirm_delete_saved_query.html:5 +#, python-format +msgid "" +"\n" +"

Delete Query

\n" +"\n" +"

Are you sure you want to delete this saved filter (%(query_title)s)? To re-create it, you will need to manually re-filter your ticket listing.

\n" +msgstr "\n⏎

Apagar Consulta

⏎ ⏎

Você tem certeza que quer apagar este filtro salvo (%(query_title)s)? Para recria-lo, você precisará refiltrar manualmente a sua lista de ticket.

⏎\n" + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "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." +msgstr "Você compartilhou esta consulta para que outros usuários possam usar. Se você apaga-la, eles terão que criar manualmente sua própria consulta." + +#: templates/helpdesk/confirm_delete_saved_query.html:15 +#: templates/helpdesk/delete_ticket.html:11 +msgid "No, Don't Delete It" +msgstr "Não, Não Delete Isso" + +#: templates/helpdesk/confirm_delete_saved_query.html:17 +#: templates/helpdesk/delete_ticket.html:13 +msgid "Yes - Delete It" +msgstr "Sim - Delete Isso" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "Criar Ticket" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/public_homepage.html:39 +msgid "Submit a Ticket" +msgstr "Enviar Ticket" + +#: templates/helpdesk/create_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "Todos os campos são obrigatórios, até aviso contrário." + +#: templates/helpdesk/create_ticket.html:11 +msgid "Please provide as descriptive a title and description as possible." +msgstr "Por favor, descreva tudo o que for possível nos campos de título e descrição." + +#: templates/helpdesk/create_ticket.html:17 +#: templates/helpdesk/edit_ticket.html:19 +#: templates/helpdesk/public_homepage.html:50 +msgid "(Optional)" +msgstr "(Opcional)" + +#: templates/helpdesk/create_ticket.html:26 +#: templates/helpdesk/public_homepage.html:59 +msgid "Submit Ticket" +msgstr "Enviar Ticket" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "Painel de Controle do Helpdesk" + +#: templates/helpdesk/dashboard.html:10 +msgid "Helpdesk Summary" +msgstr "Helpdesk Sumário" + +#: templates/helpdesk/dashboard.html:25 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "Bem-vindo ao Painel de Controle do Helpdesk! Daqui, você poderá facilmente ver Tickets submetidos por você, Tickets em que você está trabalhando e Tickets sem dono." + +#: templates/helpdesk/dashboard.html:27 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see your own " +"tickets, and those tickets that have no owner. Why not pick up an orphan " +"ticket and sort it out for a customer?" +msgstr "Bem-vindo ao Painel de Controle do Helpdesk! Daqui, você poderá facilmente ver Tickets submetidos por você e aqueles Tickets que não tem nenhum dono. Que tal pegar um Ticket sem dono e resolvê-lo?" + +#: templates/helpdesk/dashboard.html:36 +msgid "All Tickets submitted by you" +msgstr "Todos os Tickets enviados por você" + +#: templates/helpdesk/dashboard.html:37 templates/helpdesk/dashboard.html:57 +#: templates/helpdesk/dashboard.html:77 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/ticket_list.html:199 +msgid "Pr" +msgstr "Prior." + +#: templates/helpdesk/dashboard.html:37 templates/helpdesk/dashboard.html:57 +#: templates/helpdesk/dashboard.html:99 +msgid "Last Update" +msgstr "Última Atualização" + +#: templates/helpdesk/dashboard.html:56 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "Tickets Abertos atribuídos a você (você está trabalhando neste ticket)" + +#: templates/helpdesk/dashboard.html:69 +msgid "You have no tickets assigned to you." +msgstr "Você não tem nenhum Ticket atribuído para você." + +#: templates/helpdesk/dashboard.html:76 +msgid "(pick up a ticket if you start to work on it)" +msgstr "(Pegue um Ticket se você desejar trabalhar no pedido)" + +#: templates/helpdesk/dashboard.html:85 +#: templates/helpdesk/ticket_desc_table.html:22 +msgid "Take" +msgstr "Pegar" + +#: templates/helpdesk/dashboard.html:85 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:234 +msgid "Delete" +msgstr "Deletar" + +#: templates/helpdesk/dashboard.html:89 +msgid "There are no unassigned tickets." +msgstr "Não existem Tickets não atribuídos" + +#: templates/helpdesk/dashboard.html:98 +msgid "Closed & resolved Tickets you used to work on" +msgstr "Tickets Fechados & Resolvidos por você" + +#: templates/helpdesk/delete_ticket.html:3 +#: templates/helpdesk/delete_ticket.html:6 +msgid "Delete Ticket" +msgstr "Deletar Ticket" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "Are you sure you want to delete this ticket (%(ticket_title)s)? All traces of the ticket, including followups, attachments, and updates will be irreversibly removed." +msgstr "Tem certeza de que deseja excluir este bilhete (%(ticket_title)s)? Todos os históricos do ticket, incluindo follow-ups, anexos e atualizações serão irreversivelmente removidos." + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "Editar Ticket" + +#: templates/helpdesk/edit_ticket.html:6 +msgid "Edit a Ticket" +msgstr "Editar Ticket" + +#: templates/helpdesk/edit_ticket.html:6 +msgid "Note" +msgstr "Nota" + +#: templates/helpdesk/edit_ticket.html:6 +msgid "Editing a ticket does not send an e-mail to the ticket owner or submitter. No new details should be entered, this form should only be used to fix incorrect details or clean up the submission." +msgstr "Edição de um ticket não envia um e-mail para o dono do ticket ou solicitante. Novos detalhes devem ser inseridos, este formulário deve ser usado apenas para corrigir dados incorretos ou limpar a sua apresentação." + +#: templates/helpdesk/edit_ticket.html:28 +msgid "Save Changes" +msgstr "Salvar Alterações" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "Ignorar Endereço de E-Mail" + +#: templates/helpdesk/email_ignore_add.html:5 +msgid "To ignore an e-mail address and prevent any emails from that address creating tickets automatically, enter the e-mail address below." +msgstr "Para ignorar um endereço de e-mail e evitar e-mails daquele endereço criando bilhetes automaticamente, insira o endereço de e-mail abaixo." + +msgid "You can either enter a whole e-mail address such as email@domain.com or a portion of an e-mail address with a wildcard, such as *@domain.com or user@*." +msgstr "Você pode digitar um endereço de e-mail inteiro, como email@domain.com ou umpedaço de um e-mail com um curinga, como *@domain.com ou user@*." + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "Deletar Endereços de E-Mail Ignorados" + +#: templates/helpdesk/email_ignore_del.html:5 +msgid "Un-Ignore E-Mail Address" +msgstr "Voltar E-Mail" + +#, python-format +msgid "Are you sure you wish to stop removing this email address (%(email_address)s) and allow their e-mails to automatically create tickets in your system? You can re-add this e-mail address at any time." +msgstr "Tem certeza de que deseja parar de remover este endereço de e-mail (%(email_address)s) e permitir que seus e-mails criem automaticamente tickets em seu sistema? Você pode voltar a adicionar este endereço de e-mail a qualquer momento." + +#: templates/helpdesk/email_ignore_del.html:11 +msgid "Keep Ignoring It" +msgstr "Continuar Ignorando Isso" + +#: templates/helpdesk/email_ignore_del.html:13 +msgid "Stop Ignoring It" +msgstr "Para de Ignorar Isso" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "Endereços de E-Mail Ignorados" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "\n

E-Mails Ignorados

\n\n

Os seguintes endereços de e-mail estão sendo ignoradas pelo processador de e-mails recebidos. Você pode adicionar um novo endereço de e-mail para a lista ou excluir qualquer um dos itens abaixo, conforme necessário.

" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "Data Adicionada" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "Filas" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "Manter na conta de e-mail?" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:232 +msgid "All" +msgstr "Todos" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "Manter" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "Nota: Se a opção 'Manter' não estiver selecionada, e-mails enviados a partir desse endereço serão excluídos permanentemente." + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "Editar follow-up" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "Editar follow-up" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "Reatribuição de Ticket:" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "Título:" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "Comentário:" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:11 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "Base de Conhecimento: %(kbcat)s" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "Você está visualizando todos os itens de %(kbcat)s." + +#: templates/helpdesk/kb_category.html:12 +msgid "Article" +msgstr "Artigo" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:11 +#: templates/helpdesk/navigation.html:33 +msgid "Knowledgebase" +msgstr "Central de Conhecimento" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "Listamos uma série de artigos da base de conhecimento para sua leitura nas seguintes categorias. Verifique para ver se algum desses artigos resolve seu problema antes de abrir um ticket." + +#: templates/helpdesk/kb_index.html:9 +#: templates/helpdesk/public_homepage.html:9 +msgid "Knowledgebase Categories" +msgstr "Base de Conhecimento" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "Central de Conhecimento: %(item)s" + +#: templates/helpdesk/kb_item.html:13 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "Visualizar outra %(category_title)s artigos, ou continue visualizando outros artigos." + +#: templates/helpdesk/kb_item.html:15 +msgid "Feedback" +msgstr "Feedback" + +#: templates/helpdesk/kb_item.html:17 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "Damos aos nossos usuários a oportunidade de votar nos itens que eles acreditam ter ajudado, para podermos servir melhor os futuros clientes. Agradecemos seus comentários sobre este artigo. Você achou útil?" + +#: templates/helpdesk/kb_item.html:20 +msgid "This article was useful to me" +msgstr "Esse artigo foi útil para mim" + +#: templates/helpdesk/kb_item.html:21 +msgid "This article was not useful to me" +msgstr "Esse artigo não foi útil pra mim" + +#: templates/helpdesk/kb_item.html:24 +msgid "The results of voting by other readers of this article are below:" +msgstr "Os resultados da votação por outros leitores deste artigo estão abaixo:" + +#: templates/helpdesk/kb_item.html:27 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "Recomendações: %(recommendations)s" + +#: templates/helpdesk/kb_item.html:28 +#, python-format +msgid "Votes: %(votes)s" +msgstr "Votos: %(votes)s" + +#: templates/helpdesk/kb_item.html:29 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "Classificação Geral: %(score)s" + +#: templates/helpdesk/navigation.html:4 +msgid "Dashboard" +msgstr "Painel de Controle" + +#: templates/helpdesk/navigation.html:5 +#: templates/helpdesk/ticket_list.html:198 +msgid "Tickets" +msgstr "Tickets" + +#: templates/helpdesk/navigation.html:6 +msgid "New Ticket" +msgstr "Novo Ticket" + +#: templates/helpdesk/navigation.html:8 +msgid "Stats" +msgstr "Estatísticas" + +#: templates/helpdesk/navigation.html:14 +#: templates/helpdesk/ticket_list.html:46 +msgid "Load Saved Query" +msgstr "Carregar consulta salva" + +#: templates/helpdesk/navigation.html:25 templates/helpdesk/navigation.html:35 +msgid "Logout" +msgstr "Sair" + +#: templates/helpdesk/navigation.html:26 +msgid "Search..." +msgstr "Pesquisar..." + +#: templates/helpdesk/navigation.html:26 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "Digite uma palavra-chave ou número para ir direto para o ticket." + +#: templates/helpdesk/navigation.html:31 +msgid "Submit A Ticket" +msgstr "Enviar um Ticket" + +#: templates/helpdesk/navigation.html:35 +msgid "Log In" +msgstr "Entrar" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:21 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "Verificar um Ticket" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "Trocar idioma" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "Artigos da Central de Conhecimento" + +#: templates/helpdesk/public_homepage.html:29 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "Seu Endereço de E-Mail" + +#: templates/helpdesk/public_homepage.html:33 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "Ver Ticket" + +#: templates/helpdesk/public_homepage.html:41 +msgid "All fields are required." +msgstr "Todos os campos são obrigatórios." + +#: templates/helpdesk/public_homepage.html:67 +msgid "Please use button at upper right to login first." +msgstr "Por favor, use o botão no canto superior direito para efetuar login." + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "Impossível Abrir o Ticket" + +#: templates/helpdesk/public_spam.html:6 +msgid "Sorry, but there has been an error trying to submit your ticket." +msgstr "Desculpe, mas houve um erro ao tentar enviar o seu ticket." + +msgid "Our system has marked your submission as spam, so we are unable to save it. If this is not spam, please press back and re-type your message. Be careful to avoid sounding 'spammy', and if you have heaps of links please try removing them if possible." +msgstr "Nosso sistema tem marcado a sua apresentação como spam, de modo que não são capazes de salvá-lo. Se isso não é spam, por favor, pressione voltar e re-digite sua mensagem. Tenha cuidado para evitar 'spam'." + +msgid "We are sorry for any inconvenience, however this check is required to avoid our helpdesk resources being overloaded by spammers." +msgstr "Lamentamos por qualquer inconveniente, porém essa verificação é necessária para evitar que nossos recursos de suporte técnico esteja sendo sobrecarregado por spammers." + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "Erro:" + +#: templates/helpdesk/public_view_ticket.html:8 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "Fila: %(queue_name)s" + +#: templates/helpdesk/public_view_ticket.html:11 +#: templates/helpdesk/ticket_desc_table.html:16 +msgid "Submitted On" +msgstr "Enviado Em" + +#: templates/helpdesk/public_view_ticket.html:46 +#: templates/helpdesk/ticket_desc_table.html:74 +msgid "Accept" +msgstr "Aceitar" + +#: templates/helpdesk/public_view_ticket.html:46 +#: templates/helpdesk/ticket_desc_table.html:74 +msgid "Accept and Close" +msgstr "Aceitar e Fechar" + +#: templates/helpdesk/public_view_ticket.html:55 +#: templates/helpdesk/ticket.html:64 +msgid "Follow-Ups" +msgstr "Sequência" + +#: templates/helpdesk/public_view_ticket.html:63 +#: templates/helpdesk/ticket.html:92 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "Alterado %(field)s de %(old_value)s para %(new_value)s." + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "Relatórios & Estatísticas" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "Você não criou nenhum ticket ainda, então você não pode executar nenhum relatório." + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "Relatórios Por Usuário" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "Prioridade" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "por Fila" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "Status" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "Mês" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "Relatórios por Fila" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "Você pode executar essa consulta em dados filtrados usando uma de suas consultas salvas." + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "Selecione consulta:" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "Filtro de relatório" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "Quer filtrar esse relatório para mostrar apenas um subconjunto de dados? Vá para Lista de Tickets, filtre e salve sua consulta." + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "Os feeds RSS estão disponíveis para que você monitore usando seu software RSS preferido. Com exceção dp feed \"Últimas atividades\", todos os feeds fornecem informações apenas sobre os casos abertos e reabertos. Isso garante que o seu leitor de RSS não fique cheio de informações sobre tarefas fechadas ou histórico." + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "Um resumo de seus tickets em aberto - útil para ficar alerta para novos tickets abertos para você" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "Atividades Recentes" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "Um resumo de todas as atividades do sistema - incluindo comentários, e-mails, anexos e mais" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "Todos os tickets não atribuídos - úteis para serem alertados para novos tickets abertos pelo público via web ou via e-mail" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "Estes feeds RSS permitem visualizar um resumo de seus próprios tickets, ou todos os tickets, para cada uma das filas em seu sistema. Por exemplo, se você gerenciar o pessoal que utiliza uma fila particular, isto pode ser usado para visualizar novos tickets que entram nessa fila." + +#: templates/helpdesk/rss_list.html:22 +msgid "Per-Queue Feeds" +msgstr "Feeds por fila" + +#: templates/helpdesk/rss_list.html:23 +msgid "All Open Tickets" +msgstr "Todos os Tickets Abertos" + +#: templates/helpdesk/rss_list.html:27 +msgid "Open Tickets" +msgstr "Tickets Abertos" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "Alterar Configuração do Sistema" + +msgid "The following items can be maintained by you or other superusers:" +msgstr "Os itens a seguir podem ser mantidos por você ou outros super-usuários:" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "Lista de E-mails ignorados" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "Filas" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "Respostas pré-formatadas" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "Base de Conhecimento" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "Itens da Base de Conhecimento" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "Modelos de E-mail" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "Usuários" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "Ver Detalhes do Ticket" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "Anexar outro arquivo" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:197 +msgid "Add Another File" +msgstr "Adicione outro arquivo" + +#: templates/helpdesk/ticket.html:71 templates/helpdesk/ticket.html.py:81 +msgid "Private" +msgstr "Privado" + +#: templates/helpdesk/ticket.html:111 +msgid "Respond to this ticket" +msgstr "Responder esse ticket" + +#: templates/helpdesk/ticket.html:118 +msgid "Use a Pre-set Reply" +msgstr "Usar uma resposta pré-formatada" + +#: templates/helpdesk/ticket.html:120 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "Selecionando uma resposta pré-definida irá sobrescrever o seu comentário abaixo. Você pode modificar a resposta pré-definida antes de salvar esta atualização." + +#: templates/helpdesk/ticket.html:123 +msgid "Comment / Resolution" +msgstr "Comentário / Solução" + +#: templates/helpdesk/ticket.html:125 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "Você pode inserir ticket e detalhes de fila em sua mensagem. Para mais informações, consulte a página de ajuda." + +#: templates/helpdesk/ticket.html:128 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "Este ticket não pode ser resolvido ou fechado até que os tickets que ele depende estejam resolvidos." + +#: templates/helpdesk/ticket.html:158 +msgid "Is this update public?" +msgstr "Essa atualização é publica?" + +#: templates/helpdesk/ticket.html:160 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "Se é público, o solicitante receberá por e-mail seu comentário ou resolução." + +#: templates/helpdesk/ticket.html:164 +msgid "Change Further Details »" +msgstr "Alterar Mais Detalhes »" + +#: templates/helpdesk/ticket.html:173 templates/helpdesk/ticket_list.html:55 +#: templates/helpdesk/ticket_list.html:87 +#: templates/helpdesk/ticket_list.html:199 +msgid "Owner" +msgstr "Dono" + +#: templates/helpdesk/ticket.html:174 +msgid "Unassign" +msgstr "Desatribuir" + +#: templates/helpdesk/ticket.html:190 +msgid "Attach File(s) »" +msgstr "Anexar Arquivo(s) »" + +#: templates/helpdesk/ticket.html:196 +msgid "Attach a File" +msgstr "Anexar um Arquivo" + +#: templates/helpdesk/ticket.html:204 +msgid "Update This Ticket" +msgstr "Atualizar esse Ticket" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "Adicionar Ticket CC" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "\n

Adicionar Ticket CC

\n\n

Para enviar automaticamente um e-mail para um usuário ou endereço de e-mail quando este bilhete é atualizado, selecione o usuário ou digitar um endereço de e-mail abaixo.

" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "Gravar Ticket CC" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "Apagar Ticket CC" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "\n

Apagar Ticket CC

\n\n

Você tem certeza que deseja apagar este endereço de e-mail (%(email_address)s) na lista CC para este ticket? Eles vão parar de receber atualizações.

\n" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "Não Deletar" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "Sim, Deletar" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "Configurações Ticket CC" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "\n

Configurações Ticket CC

\n\n

As seguintes pessoas receberão um e-mail sempre que %(ticket_title)s é atualizado. Algumas pessoas também podem ver ou editar o ticket através das exibições públicas de tickets.

\n\n

Você pode adicionar um novo e-mail para a lista ou apagar quaisquer um dos itens a seguir como obrigatório.

" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "Lista Ticket CC" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "Ver?" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "Atualizar?" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "Voltar para %(ticket_title)s" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "Adicionar dependência" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "\n

Adicionar Dependência

\n\n

Adicionando uma dependência só vai resolver este ticket quando o ticket dependente for resolvido ou fechado.

" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "Gravar Dependência" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "Apagar Dependência" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "\n

Apagar Dependência

\n\n

Tem certeza que deseja apagar a dependência desse ticket?

\n" + +#: templates/helpdesk/ticket_desc_table.html:11 +msgid "Unhold" +msgstr "Tirar de espera" + +#: templates/helpdesk/ticket_desc_table.html:11 +msgid "Hold" +msgstr "Em espera" + +#: templates/helpdesk/ticket_desc_table.html:13 +#, python-format +msgid "Queue: %(queue)s" +msgstr "Fila: %(queue)s" + +#: templates/helpdesk/ticket_desc_table.html:21 +msgid "Assigned To" +msgstr "Atribuído a" + +#: templates/helpdesk/ticket_desc_table.html:27 +msgid "Ignore" +msgstr "Ignorar" + +#: templates/helpdesk/ticket_desc_table.html:36 +msgid "Copies To" +msgstr "Cópias Para" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Manage" +msgstr "Administrar" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "Clique aqui para adicionar / remover as pessoas que devem receber um e-mail sempre que este ticket é atualizado." + +#: templates/helpdesk/ticket_desc_table.html:48 +msgid "Dependencies" +msgstr "Dependência" + +#: templates/helpdesk/ticket_desc_table.html:50 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "Este ticket não pode ser resolvido ou fechado até que os tickets que ele depende estejam resolvidos." + +#: templates/helpdesk/ticket_desc_table.html:51 +msgid "Remove Dependency" +msgstr "Remover Dependência" + +#: templates/helpdesk/ticket_desc_table.html:54 +msgid "This ticket has no dependencies." +msgstr "Esse Ticket não tem nenhuma dependência." + +#: templates/helpdesk/ticket_desc_table.html:56 +msgid "Add Dependency" +msgstr "Adicionar Dependência" + +#: templates/helpdesk/ticket_desc_table.html:56 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "Clique em 'Adicionar Dependência' se você quer fazer com que esse Ticket dependa de outro Ticket. Esse Ticket não poderá ser fechado até que todas as suas dependências estejam fechadas." + +#: templates/helpdesk/ticket_list.html:2 +msgid "Ticket Listing" +msgstr "Listagem de Tickets" + +#: templates/helpdesk/ticket_list.html:41 +msgid "Query Options" +msgstr "Opções de Consulta" + +#: templates/helpdesk/ticket_list.html:43 +msgid "Save This Query" +msgstr "Salvar Essa Consulta" + +#: templates/helpdesk/ticket_list.html:51 +msgid "Change Query" +msgstr "Alterar Consulta" + +#: templates/helpdesk/ticket_list.html:54 +#: templates/helpdesk/ticket_list.html:69 +msgid "Sorting" +msgstr "Ordenação" + +#: templates/helpdesk/ticket_list.html:58 +#: templates/helpdesk/ticket_list.html:137 +msgid "Keywords" +msgstr "Palavras-chave" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Date Range" +msgstr "Intervalo de Datas" + +#: templates/helpdesk/ticket_list.html:90 +msgid "Reverse" +msgstr "Reverso" + +#: templates/helpdesk/ticket_list.html:92 +msgid "Ordering applied to tickets" +msgstr "Ordenação aplicada aos Tickets" + +#: templates/helpdesk/ticket_list.html:97 +msgid "Owner(s)" +msgstr "Solicitante(s)" + +#: templates/helpdesk/ticket_list.html:101 +msgid "(ME)" +msgstr "(Eu)" + +#: templates/helpdesk/ticket_list.html:105 +msgid "Ctrl-Click to select multiple options" +msgstr "Segure a tecla Ctrl para poder selecionar mais de opção" + +#: templates/helpdesk/ticket_list.html:110 +msgid "Queue(s)" +msgstr "Fila(s)" + +#: templates/helpdesk/ticket_list.html:111 +#: templates/helpdesk/ticket_list.html:117 +#: templates/helpdesk/ticket_list.html:131 +msgid "Ctrl-click to select multiple options" +msgstr "Segure a tecla Ctrl para poder selecionar mais de opção" + +#: templates/helpdesk/ticket_list.html:116 +msgid "Status(es)" +msgstr "Status" + +#: templates/helpdesk/ticket_list.html:122 +msgid "Date (From)" +msgstr "Data (De)" + +#: templates/helpdesk/ticket_list.html:123 +msgid "Date (To)" +msgstr "Data (Até)" + +#: templates/helpdesk/ticket_list.html:124 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "Use YYYY-MM-DD como formato de data, ex: 2011-05-29" + +#: templates/helpdesk/ticket_list.html:130 +msgid "Tag(s)" +msgstr "Tag(s)" + +#: templates/helpdesk/ticket_list.html:138 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "Palavras-chave são case-insensitive, e será procurado nos campos título, corpo e solicitante." + +#: templates/helpdesk/ticket_list.html:142 +msgid "Apply Filter" +msgstr "Aplicar Filtro" + +#: templates/helpdesk/ticket_list.html:144 +#, python-format +msgid "You are currently viewing saved query %(query_name)s." +msgstr "Você está vendo a consulta %(query_name)s" + +#: templates/helpdesk/ticket_list.html:147 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "Execute um relatório sobre esta consulta para ver estatísticas e gráficos para os dados abaixo." + +#: templates/helpdesk/ticket_list.html:154 +#: templates/helpdesk/ticket_list.html:169 +msgid "Save Query" +msgstr "Salvar Consulta" + +#: templates/helpdesk/ticket_list.html:160 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "Esse nome aparecerá na lista de consultas salvas. Se você compartilhar sua consulta, outros usuários poderão ver essa consulta, escolha algo claro e descritivo!" + +#: templates/helpdesk/ticket_list.html:162 +msgid "Shared?" +msgstr "Compartilhar?" + +#: templates/helpdesk/ticket_list.html:163 +msgid "Yes, share this query with other users." +msgstr "Sim, compartilhe essa consulta com outros usuários" + +#: templates/helpdesk/ticket_list.html:164 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "Se você compartilhar essa consulta, ela será visível por todos os outros usuários." + +#: templates/helpdesk/ticket_list.html:176 +msgid "Use Saved Query" +msgstr "Use Consulta gravada" + +#: templates/helpdesk/ticket_list.html:178 +msgid "Query" +msgstr "Consulta" + +#: templates/helpdesk/ticket_list.html:183 +msgid "Run Query" +msgstr "Executar consulta" + +#: templates/helpdesk/ticket_list.html:213 +msgid "No Tickets Match Your Selection" +msgstr "Não existem tickets para a consulta solicitada" + +#: templates/helpdesk/ticket_list.html:219 +msgid "Previous" +msgstr "Anterior" + +#: templates/helpdesk/ticket_list.html:223 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "Página %(ticket_num)s de %(num_pages)s." + +#: templates/helpdesk/ticket_list.html:227 +msgid "Next" +msgstr "Próximo" + +#: templates/helpdesk/ticket_list.html:232 +msgid "Select:" +msgstr "Selecione:" + +#: templates/helpdesk/ticket_list.html:232 +msgid "None" +msgstr "Nenhum" + +#: templates/helpdesk/ticket_list.html:232 +msgid "Inverse" +msgstr "Inverso" + +#: templates/helpdesk/ticket_list.html:234 +msgid "With Selected Tickets:" +msgstr "Com os Tickets Selecionados:" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Take (Assign to me)" +msgstr "Pegar (Atribuir a mim)" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Close" +msgstr "Fechar" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Close (Don't Send E-Mail)" +msgstr "Fechar (Não Enviar E-Mail)" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Close (Send E-Mail)" +msgstr "Fechar (Enviar E-Mail)" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Assign To" +msgstr "Atribuir a" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Nobody (Unassign)" +msgstr "Ninguém (Sem Atribuição)" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "Alterar Configuração de Usuário" + +#: templates/helpdesk/user_settings.html:14 +msgid "Use the following options to change the way your helpdesk system works for you. These settings do not impact any other user." +msgstr "Utilize as seguintes opções para alterar a forma como o sistema funciona para você. Essas configurações não afetam qualquer outro usuário." + +#: templates/helpdesk/user_settings.html:29 +msgid "Save Options" +msgstr "Gravar opções" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "Sair" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "\n

Sair do Sistema

\n\n

Obrigado por utilizar nosso sistema.

\n" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "Login" + +#: templates/helpdesk/registration/login.html:9 +#: templates/helpdesk/registration/login.html:21 +msgid "Login" +msgstr "Autenticação de Usuário" + +#: templates/helpdesk/registration/login.html:11 +msgid "" +"To log in and begin responding to cases, simply enter your username and " +"password below." +msgstr "Para entrar e começar a solucionar os problemas entre com o seu usuário e senha abaixo." + +#: templates/helpdesk/registration/login.html:14 +msgid "Your username and password didn't match. Please try again." +msgstr "Seu usuário ou senham não coincidem. Favor tentar novamente." + +#: templates/helpdesk/registration/login.html:16 +msgid "Username" +msgstr "Usuário" + +#: templates/helpdesk/registration/login.html:18 +msgid "Password" +msgstr "Senha" + +#: views/feeds.py:35 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "Helpdesk: Tickets Abertos na fila %(queue)s para %(username)s" + +#: views/feeds.py:40 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "Helpdesk: Open for Tickets %(username)s " + +#: views/feeds.py:46 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "Tickets abertos e reabertos na fila %(queue)s para %(username)s " + +#: views/feeds.py:51 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "Ticket aberto e reaberto para %(username)s " + +#: views/feeds.py:98 +msgid "Helpdesk: Unassigned Tickets" +msgstr "Helpdesk: Tickets não atribuidos" + +#: views/feeds.py:99 +msgid "Unassigned Open and Reopened tickets" +msgstr "Tickets não atribuidos abertos e reabertos" + +#: views/feeds.py:124 +msgid "Helpdesk: Recent Followups" +msgstr "Helpdesk: Acompanhamentos Recentes" + +#: views/feeds.py:125 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "Acompanhamentos rencents, como e-mail de respostas comentários, anexos e resoluções" + +#: views/feeds.py:140 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "Helpdesk: Tickets Abertos na fila %(queue)s" + +#: views/feeds.py:145 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "Abrir e Reabrir Tickets da Fila %(queue)s" + +#: views/public.py:91 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "E-mail ou ID do ticket inválido. Por favor, tente novamente." + +#: views/public.py:109 +msgid "Submitter accepted resolution and closed ticket" +msgstr "Resolução aceita enviada e ticket encerrado" + +#: views/staff.py:218 +msgid "Accepted resolution and closed ticket" +msgstr "Resolução aceita e ticket fechado" + +#: views/staff.py:246 +msgid "Sorry, you need to login to do that." +msgstr "Desculpe, você precisa fazer o login para fazer isso." + +#: views/staff.py:295 +#, python-format +msgid "Assigned to %(username)s" +msgstr "Atribuído ao %(username)s " + +#: views/staff.py:318 +msgid "Updated" +msgstr "Atualizado" + +#: views/staff.py:496 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "Atribuído ao %(username)s em atualização em massa" + +#: views/staff.py:501 +msgid "Unassigned in bulk update" +msgstr "Desatribuir em massa" + +#: views/staff.py:506 views/staff.py:511 +msgid "Closed in bulk update" +msgstr "Atualização em massa fechada" + +#: views/staff.py:732 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "

Nota: Sua palavra-chave é case sensitive por causa de seu banco de dados. Isto significa que a pesquisa não será precisa. Ao mudar para um sistema de banco de dados diferente, você vai ter uma melhor pesquisa! Para mais informações, leia a documentação do Django sobre base de dados SQLite." + +#: views/staff.py:843 +msgid "Ticket taken off hold" +msgstr "Ticket Retomado" + +#: views/staff.py:846 +msgid "Ticket placed on hold" +msgstr "Ticket colocado em espera" + +#: views/staff.py:914 +msgid "Jan" +msgstr "Jan" + +#: views/staff.py:915 +msgid "Feb" +msgstr "Fev" + +#: views/staff.py:916 +msgid "Mar" +msgstr "Mar" + +#: views/staff.py:917 +msgid "Apr" +msgstr "Abr" + +#: views/staff.py:918 +msgid "May" +msgstr "Mai" + +#: views/staff.py:919 +msgid "Jun" +msgstr "Jun" + +#: views/staff.py:920 +msgid "Jul" +msgstr "Jul" + +#: views/staff.py:921 +msgid "Aug" +msgstr "Ago" + +#: views/staff.py:922 +msgid "Sep" +msgstr "Set" + +#: views/staff.py:923 +msgid "Oct" +msgstr "Out" + +#: views/staff.py:924 +msgid "Nov" +msgstr "Nov" + +#: views/staff.py:925 +msgid "Dec" +msgstr "Dez" + +#: views/staff.py:951 +msgid "User by Priority" +msgstr "Usuário por Prioridade" + +#: views/staff.py:957 +msgid "User by Queue" +msgstr "Usuário por fila" + +#: views/staff.py:963 +msgid "User by Status" +msgstr "Usuário por Status" + +#: views/staff.py:969 +msgid "User by Month" +msgstr "Usuário por mês" + +#: views/staff.py:975 +msgid "Queue by Priority" +msgstr "Fila por prioridade" + +#: views/staff.py:981 +msgid "Queue by Status" +msgstr "Fila por Status" + +#: views/staff.py:987 +msgid "Queue by Month" +msgstr "Fila por Mês" diff --git a/build/lib/helpdesk/locale/pt_PT/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/pt_PT/LC_MESSAGES/django.mo new file mode 100644 index 00000000..6e34f9f2 Binary files /dev/null and b/build/lib/helpdesk/locale/pt_PT/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/pt_PT/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/pt_PT/LC_MESSAGES/django.po new file mode 100644 index 00000000..e6ed8461 --- /dev/null +++ b/build/lib/helpdesk/locale/pt_PT/LC_MESSAGES/django.po @@ -0,0 +1,2393 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2014-07-26 14:14+0200\n" +"PO-Revision-Date: 2011-02-06 23:10+0000\n" +"Last-Translator: Ross Poulton \n" +"Language-Team: Portuguese (Portugal) (http://www.transifex.com/rossp/django-helpdesk/language/pt_PT/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: pt_PT\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: forms.py:128 forms.py:328 models.py:190 models.py:267 +#: templates/helpdesk/dashboard.html:15 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/dashboard.html:124 templates/helpdesk/rss_list.html:24 +#: templates/helpdesk/ticket_list.html:69 +#: templates/helpdesk/ticket_list.html:88 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:1032 +#: views/staff.py:1038 views/staff.py:1044 views/staff.py:1050 +msgid "Queue" +msgstr "" + +#: forms.py:137 +msgid "Summary of the problem" +msgstr "" + +#: forms.py:142 +msgid "Submitter E-Mail Address" +msgstr "" + +#: forms.py:144 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "" + +#: forms.py:150 +msgid "Description of Issue" +msgstr "" + +#: forms.py:157 +msgid "Case owner" +msgstr "" + +#: forms.py:158 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "" + +#: forms.py:166 models.py:327 management/commands/escalate_tickets.py:154 +#: templates/helpdesk/public_view_ticket.html:23 +#: templates/helpdesk/ticket.html:184 +#: templates/helpdesk/ticket_desc_table.html:47 +#: templates/helpdesk/ticket_list.html:94 views/staff.py:429 +msgid "Priority" +msgstr "" + +#: forms.py:167 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "" + +#: forms.py:174 forms.py:365 models.py:335 templates/helpdesk/ticket.html:186 +#: views/staff.py:439 +msgid "Due on" +msgstr "" + +#: forms.py:186 forms.py:370 +msgid "Attach File" +msgstr "" + +#: forms.py:187 forms.py:371 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "" + +#: forms.py:240 +msgid "Ticket Opened" +msgstr "" + +#: forms.py:247 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "" + +#: forms.py:337 +msgid "Summary of your query" +msgstr "" + +#: forms.py:342 +msgid "Your E-Mail Address" +msgstr "" + +#: forms.py:343 +msgid "We will e-mail you when your ticket is updated." +msgstr "" + +#: forms.py:348 +msgid "Description of your issue" +msgstr "" + +#: forms.py:350 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "" + +#: forms.py:358 +msgid "Urgency" +msgstr "" + +#: forms.py:359 +msgid "Please select a priority carefully." +msgstr "" + +#: forms.py:419 +msgid "Ticket Opened Via Web" +msgstr "" + +#: forms.py:486 +msgid "Show Ticket List on Login?" +msgstr "" + +#: forms.py:487 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "" + +#: forms.py:492 +msgid "E-mail me on ticket change?" +msgstr "" + +#: forms.py:493 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:498 +msgid "E-mail me when assigned a ticket?" +msgstr "" + +#: forms.py:499 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:504 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "" + +#: forms.py:505 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:510 +msgid "Number of tickets to show per page" +msgstr "" + +#: forms.py:511 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "" + +#: forms.py:518 +msgid "Use my e-mail address when submitting tickets?" +msgstr "" + +#: forms.py:519 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "" + +#: models.py:35 models.py:261 models.py:503 models.py:817 models.py:853 +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket.html:178 templates/helpdesk/ticket_list.html:85 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:419 +msgid "Title" +msgstr "" + +#: models.py:40 models.py:822 models.py:1206 +msgid "Slug" +msgstr "" + +#: models.py:41 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "" + +#: models.py:46 models.py:1054 models.py:1129 models.py:1203 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "" + +#: models.py:49 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "" + +#: models.py:55 models.py:794 +msgid "Locale" +msgstr "" + +#: models.py:59 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "" + +#: models.py:63 +msgid "Allow Public Submission?" +msgstr "" + +#: models.py:66 +msgid "Should this queue be listed on the public submission form?" +msgstr "" + +#: models.py:71 +msgid "Allow E-Mail Submission?" +msgstr "" + +#: models.py:74 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "" + +#: models.py:79 +msgid "Escalation Days" +msgstr "" + +#: models.py:82 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "" + +#: models.py:87 +msgid "New Ticket CC Address" +msgstr "" + +#: models.py:91 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "" + +#: models.py:97 +msgid "Updated Ticket CC Address" +msgstr "" + +#: models.py:101 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "" + +#: models.py:108 +msgid "E-Mail Box Type" +msgstr "" + +#: models.py:110 +msgid "POP 3" +msgstr "" + +#: models.py:110 +msgid "IMAP" +msgstr "" + +#: models.py:113 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "" + +#: models.py:118 +msgid "E-Mail Hostname" +msgstr "" + +#: models.py:122 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "" + +#: models.py:127 +msgid "E-Mail Port" +msgstr "" + +#: models.py:130 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "" + +#: models.py:136 +msgid "Use SSL for E-Mail?" +msgstr "" + +#: models.py:139 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "" + +#: models.py:144 +msgid "E-Mail Username" +msgstr "" + +#: models.py:148 +msgid "Username for accessing this mailbox." +msgstr "" + +#: models.py:152 +msgid "E-Mail Password" +msgstr "" + +#: models.py:156 +msgid "Password for the above username" +msgstr "" + +#: models.py:160 +msgid "IMAP Folder" +msgstr "" + +#: models.py:164 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "" + +#: models.py:171 +msgid "E-Mail Check Interval" +msgstr "" + +#: models.py:172 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "" + +#: models.py:191 templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "" + +#: models.py:245 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:138 +msgid "Open" +msgstr "" + +#: models.py:246 templates/helpdesk/ticket.html:144 +#: templates/helpdesk/ticket.html.py:150 templates/helpdesk/ticket.html:155 +#: templates/helpdesk/ticket.html.py:159 +msgid "Reopened" +msgstr "" + +#: models.py:247 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:139 templates/helpdesk/ticket.html.py:145 +#: templates/helpdesk/ticket.html:151 +msgid "Resolved" +msgstr "" + +#: models.py:248 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:140 templates/helpdesk/ticket.html.py:146 +#: templates/helpdesk/ticket.html:152 templates/helpdesk/ticket.html.py:156 +msgid "Closed" +msgstr "" + +#: models.py:249 templates/helpdesk/ticket.html:141 +#: templates/helpdesk/ticket.html.py:147 templates/helpdesk/ticket.html:160 +msgid "Duplicate" +msgstr "" + +#: models.py:253 +msgid "1. Critical" +msgstr "" + +#: models.py:254 +msgid "2. High" +msgstr "" + +#: models.py:255 +msgid "3. Normal" +msgstr "" + +#: models.py:256 +msgid "4. Low" +msgstr "" + +#: models.py:257 +msgid "5. Very Low" +msgstr "" + +#: models.py:271 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/ticket_list.html:82 +#: templates/helpdesk/ticket_list.html:225 +msgid "Created" +msgstr "" + +#: models.py:273 +msgid "Date this ticket was first created" +msgstr "" + +#: models.py:277 +msgid "Modified" +msgstr "" + +#: models.py:279 +msgid "Date this ticket was most recently changed." +msgstr "" + +#: models.py:283 templates/helpdesk/public_view_ticket.html:18 +#: templates/helpdesk/ticket_desc_table.html:42 +msgid "Submitter E-Mail" +msgstr "" + +#: models.py:286 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "" + +#: models.py:295 +msgid "Assigned to" +msgstr "" + +#: models.py:299 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:70 +#: templates/helpdesk/ticket_list.html:91 +#: templates/helpdesk/ticket_list.html:225 +msgid "Status" +msgstr "" + +#: models.py:305 +msgid "On Hold" +msgstr "" + +#: models.py:308 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "" + +#: models.py:313 models.py:826 templates/helpdesk/public_view_ticket.html:41 +#: templates/helpdesk/ticket_desc_table.html:19 +msgid "Description" +msgstr "" + +#: models.py:316 +msgid "The content of the customers query." +msgstr "" + +#: models.py:320 templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Resolution" +msgstr "" + +#: models.py:323 +msgid "The resolution provided to the customer by our staff." +msgstr "" + +#: models.py:331 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "" + +#: models.py:344 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "" + +#: models.py:353 templates/helpdesk/ticket_desc_table.html:38 +#: views/feeds.py:95 views/feeds.py:121 views/feeds.py:173 views/staff.py:376 +msgid "Unassigned" +msgstr "" + +#: models.py:392 +msgid " - On Hold" +msgstr "" + +#: models.py:394 +msgid " - Open dependencies" +msgstr "" + +#: models.py:448 models.py:494 models.py:1117 models.py:1280 models.py:1309 +#: templates/helpdesk/public_homepage.html:78 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "" + +#: models.py:449 templates/helpdesk/navigation.html:17 +#: templates/helpdesk/ticket_list.html:2 +#: templates/helpdesk/ticket_list.html:224 +msgid "Tickets" +msgstr "" + +#: models.py:498 models.py:738 models.py:1047 models.py:1200 +msgid "Date" +msgstr "" + +#: models.py:510 views/staff.py:390 +msgid "Comment" +msgstr "" + +#: models.py:516 +msgid "Public" +msgstr "" + +#: models.py:519 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "" + +#: models.py:527 models.py:922 models.py:1125 views/staff.py:1008 +#: views/staff.py:1014 views/staff.py:1020 views/staff.py:1026 +msgid "User" +msgstr "" + +#: models.py:531 templates/helpdesk/ticket.html:135 +msgid "New Status" +msgstr "" + +#: models.py:535 +msgid "If the status was changed, what was it changed to?" +msgstr "" + +#: models.py:542 models.py:566 models.py:628 +msgid "Follow-up" +msgstr "" + +#: models.py:543 +msgid "Follow-ups" +msgstr "" + +#: models.py:570 models.py:1285 +msgid "Field" +msgstr "" + +#: models.py:575 +msgid "Old Value" +msgstr "" + +#: models.py:581 +msgid "New Value" +msgstr "" + +#: models.py:589 +msgid "removed" +msgstr "" + +#: models.py:591 +#, python-format +msgid "set to %s" +msgstr "" + +#: models.py:593 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "" + +#: models.py:600 +msgid "Ticket change" +msgstr "" + +#: models.py:601 +msgid "Ticket changes" +msgstr "" + +#: models.py:632 +msgid "File" +msgstr "" + +#: models.py:637 +msgid "Filename" +msgstr "" + +#: models.py:642 +msgid "MIME Type" +msgstr "" + +#: models.py:647 +msgid "Size" +msgstr "" + +#: models.py:648 +msgid "Size of this file in bytes" +msgstr "" + +#: models.py:665 +msgid "Attachment" +msgstr "" + +#: models.py:666 +msgid "Attachments" +msgstr "" + +#: models.py:685 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "" + +#: models.py:690 models.py:733 models.py:1042 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "" + +#: models.py:692 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "" + +#: models.py:697 +msgid "Body" +msgstr "" + +#: models.py:698 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "" + +#: models.py:705 +msgid "Pre-set reply" +msgstr "" + +#: models.py:706 +msgid "Pre-set replies" +msgstr "" + +#: models.py:727 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "" + +#: models.py:739 +msgid "Date on which escalation should not happen" +msgstr "" + +#: models.py:746 +msgid "Escalation exclusion" +msgstr "" + +#: models.py:747 +msgid "Escalation exclusions" +msgstr "" + +#: models.py:760 +msgid "Template Name" +msgstr "" + +#: models.py:765 +msgid "Subject" +msgstr "" + +#: models.py:767 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "" + +#: models.py:773 +msgid "Heading" +msgstr "" + +#: models.py:775 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "" + +#: models.py:781 +msgid "Plain Text" +msgstr "" + +#: models.py:782 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "" + +#: models.py:788 +msgid "HTML" +msgstr "" + +#: models.py:789 +msgid "The same context is available here as in plain_text, above." +msgstr "" + +#: models.py:798 +msgid "Locale of this template." +msgstr "" + +#: models.py:806 +msgid "e-mail template" +msgstr "" + +#: models.py:807 +msgid "e-mail templates" +msgstr "" + +#: models.py:834 +msgid "Knowledge base category" +msgstr "" + +#: models.py:835 +msgid "Knowledge base categories" +msgstr "" + +#: models.py:849 templates/helpdesk/kb_index.html:11 +#: templates/helpdesk/public_homepage.html:11 +msgid "Category" +msgstr "" + +#: models.py:858 +msgid "Question" +msgstr "" + +#: models.py:862 +msgid "Answer" +msgstr "" + +#: models.py:866 +msgid "Votes" +msgstr "" + +#: models.py:867 +msgid "Total number of votes cast for this item" +msgstr "" + +#: models.py:872 +msgid "Positive Votes" +msgstr "" + +#: models.py:873 +msgid "Number of votes for this item which were POSITIVE." +msgstr "" + +#: models.py:878 +msgid "Last Updated" +msgstr "" + +#: models.py:879 +msgid "The date on which this question was most recently changed." +msgstr "" + +#: models.py:893 +msgid "Unrated" +msgstr "" + +#: models.py:901 +msgid "Knowledge base item" +msgstr "" + +#: models.py:902 +msgid "Knowledge base items" +msgstr "" + +#: models.py:926 templates/helpdesk/ticket_list.html:170 +msgid "Query Name" +msgstr "" + +#: models.py:928 +msgid "User-provided name for this query" +msgstr "" + +#: models.py:932 +msgid "Shared With Other Users?" +msgstr "" + +#: models.py:935 +msgid "Should other users see this query?" +msgstr "" + +#: models.py:939 +msgid "Search Query" +msgstr "" + +#: models.py:940 +msgid "Pickled query object. Be wary changing this." +msgstr "" + +#: models.py:950 +msgid "Saved search" +msgstr "" + +#: models.py:951 +msgid "Saved searches" +msgstr "" + +#: models.py:966 +msgid "Settings Dictionary" +msgstr "" + +#: models.py:967 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "" + +#: models.py:993 +msgid "User Setting" +msgstr "" + +#: models.py:994 templates/helpdesk/navigation.html:37 +#: templates/helpdesk/user_settings.html:6 +msgid "User Settings" +msgstr "" + +#: models.py:1036 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "" + +#: models.py:1048 +msgid "Date on which this e-mail address was added" +msgstr "" + +#: models.py:1056 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "" + +#: models.py:1061 +msgid "Save Emails in Mailbox?" +msgstr "" + +#: models.py:1064 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "" + +#: models.py:1101 +msgid "Ignored e-mail address" +msgstr "" + +#: models.py:1102 +msgid "Ignored e-mail addresses" +msgstr "" + +#: models.py:1124 +msgid "User who wishes to receive updates for this ticket." +msgstr "" + +#: models.py:1132 +msgid "For non-user followers, enter their e-mail address" +msgstr "" + +#: models.py:1136 +msgid "Can View Ticket?" +msgstr "" + +#: models.py:1138 +msgid "Can this CC login to view the ticket details?" +msgstr "" + +#: models.py:1142 +msgid "Can Update Ticket?" +msgstr "" + +#: models.py:1144 +msgid "Can this CC login and update the ticket?" +msgstr "" + +#: models.py:1175 +msgid "Field Name" +msgstr "" + +#: models.py:1176 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "" + +#: models.py:1181 +msgid "Label" +msgstr "" + +#: models.py:1183 +msgid "The display label for this field" +msgstr "" + +#: models.py:1187 +msgid "Help Text" +msgstr "" + +#: models.py:1188 +msgid "Shown to the user when editing the ticket" +msgstr "" + +#: models.py:1194 +msgid "Character (single line)" +msgstr "" + +#: models.py:1195 +msgid "Text (multi-line)" +msgstr "" + +#: models.py:1196 +msgid "Integer" +msgstr "" + +#: models.py:1197 +msgid "Decimal" +msgstr "" + +#: models.py:1198 +msgid "List" +msgstr "" + +#: models.py:1199 +msgid "Boolean (checkbox yes/no)" +msgstr "" + +#: models.py:1201 +msgid "Time" +msgstr "" + +#: models.py:1202 +msgid "Date & Time" +msgstr "" + +#: models.py:1204 +msgid "URL" +msgstr "" + +#: models.py:1205 +msgid "IP Address" +msgstr "" + +#: models.py:1210 +msgid "Data Type" +msgstr "" + +#: models.py:1212 +msgid "Allows you to restrict the data entered into this field" +msgstr "" + +#: models.py:1217 +msgid "Maximum Length (characters)" +msgstr "" + +#: models.py:1223 +msgid "Decimal Places" +msgstr "" + +#: models.py:1224 +msgid "Only used for decimal fields" +msgstr "" + +#: models.py:1230 +msgid "Add empty first choice to List?" +msgstr "" + +#: models.py:1232 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "" + +#: models.py:1236 +msgid "List Values" +msgstr "" + +#: models.py:1237 +msgid "For list fields only. Enter one option per line." +msgstr "" + +#: models.py:1243 +msgid "Ordering" +msgstr "" + +#: models.py:1244 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "" + +#: models.py:1258 +msgid "Required?" +msgstr "" + +#: models.py:1259 +msgid "Does the user have to enter a value for this field?" +msgstr "" + +#: models.py:1263 +msgid "Staff Only?" +msgstr "" + +#: models.py:1264 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "" + +#: models.py:1273 +msgid "Custom field" +msgstr "" + +#: models.py:1274 +msgid "Custom fields" +msgstr "" + +#: models.py:1297 +msgid "Ticket custom field value" +msgstr "" + +#: models.py:1298 +msgid "Ticket custom field values" +msgstr "" + +#: models.py:1315 +msgid "Depends On Ticket" +msgstr "" + +#: models.py:1324 +msgid "Ticket dependency" +msgstr "" + +#: models.py:1325 +msgid "Ticket dependencies" +msgstr "" + +#: management/commands/create_usersettings.py:25 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "" + +#: management/commands/escalate_tickets.py:148 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "" + +#: management/commands/get_email.py:158 +msgid "Created from e-mail" +msgstr "" + +#: management/commands/get_email.py:162 +msgid "Unknown Sender" +msgstr "" + +#: management/commands/get_email.py:216 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "" + +#: management/commands/get_email.py:220 +msgid "email_html_body.html" +msgstr "" + +#: management/commands/get_email.py:263 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:271 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:329 +msgid " (Reopened)" +msgstr "" + +#: management/commands/get_email.py:331 +msgid " (Updated)" +msgstr "" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"django-helpdesk." +msgstr "" + +#: templates/helpdesk/base.html:10 +msgid "Powered by django-helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:20 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:24 templates/helpdesk/rss_list.html:31 +msgid "My Open Tickets" +msgstr "" + +#: templates/helpdesk/base.html:21 +msgid "All Recent Activity" +msgstr "" + +#: templates/helpdesk/base.html:22 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "" + +#: templates/helpdesk/base.html:52 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:18 +msgid "Helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:30 templates/helpdesk/rss_list.html:31 +msgid "RSS Icon" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "" + +#: templates/helpdesk/base.html:63 +msgid "API" +msgstr "" + +#: templates/helpdesk/base.html:64 templates/helpdesk/system_settings.html:6 +msgid "System Settings" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:146 +msgid "Delete Saved Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:6 +msgid "Delete Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this saved filter " +"(%(query_title)s)? To re-create it, you will need to manually re-" +"filter your ticket listing." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"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." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:14 +#: templates/helpdesk/delete_ticket.html:10 +msgid "No, Don't Delete It" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:16 +#: templates/helpdesk/delete_ticket.html:12 +msgid "Yes - Delete It" +msgstr "" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/navigation.html:65 templates/helpdesk/navigation.html:68 +#: templates/helpdesk/public_homepage.html:27 +msgid "Submit a Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +#: templates/helpdesk/public_homepage.html:28 +msgid "Please provide as descriptive a title and description as possible." +msgstr "" + +#: templates/helpdesk/create_ticket.html:30 +#: templates/helpdesk/public_homepage.html:55 +msgid "Submit Ticket" +msgstr "" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "" + +#: templates/helpdesk/dashboard.html:9 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "" + +#: templates/helpdesk/dashboard.html:14 +msgid "Helpdesk Summary" +msgstr "" + +#: templates/helpdesk/dashboard.html:36 +msgid "Current Ticket Stats" +msgstr "" + +#: templates/helpdesk/dashboard.html:37 +msgid "Average number of days until ticket is closed (all tickets): " +msgstr "" + +#: templates/helpdesk/dashboard.html:38 +msgid "" +"Average number of days until ticket is closed (tickets opened in last 60 " +"days): " +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "Click" +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "for detailed average by month." +msgstr "" + +#: templates/helpdesk/dashboard.html:40 +msgid "Distribution of open tickets, grouped by time period:" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Days since opened" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Number of open tickets" +msgstr "" + +#: templates/helpdesk/dashboard.html:57 +msgid "All Tickets submitted by you" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:225 +msgid "Pr" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:124 +msgid "Last Update" +msgstr "" + +#: templates/helpdesk/dashboard.html:77 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "" + +#: templates/helpdesk/dashboard.html:92 +msgid "You have no tickets assigned to you." +msgstr "" + +#: templates/helpdesk/dashboard.html:99 +msgid "(pick up a ticket if you start to work on it)" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/ticket_desc_table.html:38 +msgid "Take" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:262 +msgid "Delete" +msgstr "" + +#: templates/helpdesk/dashboard.html:114 +msgid "There are no unassigned tickets." +msgstr "" + +#: templates/helpdesk/dashboard.html:123 +msgid "Closed & resolved Tickets you used to work on" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:3 +#: templates/helpdesk/delete_ticket.html:6 +msgid "Delete Ticket" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this ticket (%(ticket_title)s)? All" +" traces of the ticket, including followups, attachments, and updates will be" +" irreversibly removed." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:9 +msgid "Edit a Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "Note" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "" +"Editing a ticket does not send an e-mail to the ticket owner or " +"submitter. No new details should be entered, this form should only be used " +"to fix incorrect details or clean up the submission." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:33 +msgid "Save Changes" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:6 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:8 +msgid "" +"To ignore an e-mail address and prevent any emails from that address " +"creating tickets automatically, enter the e-mail address below." +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:10 +msgid "" +"You can either enter a whole e-mail address such as " +"email@domain.com or a portion of an e-mail address with a wildcard," +" such as *@domain.com or user@*." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:6 +msgid "Un-Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:8 +#, python-format +msgid "" +"Are you sure you wish to stop removing this email address " +"(%(email_address)s) and allow their e-mails to automatically create" +" tickets in your system? You can re-add this e-mail address at any time." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:10 +msgid "Keep Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:12 +msgid "Stop Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:260 +msgid "All" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "" + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:12 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "" + +#: templates/helpdesk/kb_category.html:13 +msgid "Article" +msgstr "" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:21 +#: templates/helpdesk/navigation.html:71 +msgid "Knowledgebase" +msgstr "" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "" + +#: templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:16 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "" + +#: templates/helpdesk/kb_item.html:18 +msgid "Feedback" +msgstr "" + +#: templates/helpdesk/kb_item.html:20 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "" + +#: templates/helpdesk/kb_item.html:23 +msgid "This article was useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:24 +msgid "This article was not useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:27 +msgid "The results of voting by other readers of this article are below:" +msgstr "" + +#: templates/helpdesk/kb_item.html:30 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:31 +#, python-format +msgid "Votes: %(votes)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:32 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "" + +#: templates/helpdesk/navigation.html:16 templates/helpdesk/navigation.html:64 +msgid "Dashboard" +msgstr "" + +#: templates/helpdesk/navigation.html:18 +msgid "New Ticket" +msgstr "" + +#: templates/helpdesk/navigation.html:19 +msgid "Stats" +msgstr "" + +#: templates/helpdesk/navigation.html:24 +msgid "Saved Query" +msgstr "" + +#: templates/helpdesk/navigation.html:39 +msgid "Change password" +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Search..." +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Logout" +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Log In" +msgstr "" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:73 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "" + +#: templates/helpdesk/public_homepage.html:28 +msgid "All fields are required." +msgstr "" + +#: templates/helpdesk/public_homepage.html:66 +msgid "Please use button at upper right to login first." +msgstr "" + +#: templates/helpdesk/public_homepage.html:82 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "" + +#: templates/helpdesk/public_homepage.html:86 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:5 +msgid "Sorry, but there has been an error trying to submit your ticket." +msgstr "" + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"Our system has marked your submission as spam, so we are " +"unable to save it. If this is not spam, please press back and re-type your " +"message. Be careful to avoid sounding 'spammy', and if you have heaps of " +"links please try removing them if possible." +msgstr "" + +#: templates/helpdesk/public_spam.html:7 +msgid "" +"We are sorry for any inconvenience, however this check is required to avoid " +"our helpdesk resources being overloaded by spammers." +msgstr "" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:9 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:13 +#: templates/helpdesk/ticket_desc_table.html:32 +msgid "Submitted On" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:35 +msgid "Tags" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept and Close" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:57 +#: templates/helpdesk/ticket.html:66 +msgid "Follow-Ups" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:65 +#: templates/helpdesk/ticket.html:100 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "" + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "" + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:27 views/staff.py:1049 +msgid "Days until ticket closed by Month" +msgstr "" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "" + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "" + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "" + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "" + +#: templates/helpdesk/rss_list.html:23 +msgid "Per-Queue Feeds" +msgstr "" + +#: templates/helpdesk/rss_list.html:24 +msgid "All Open Tickets" +msgstr "" + +#: templates/helpdesk/rss_list.html:30 +msgid "Open Tickets" +msgstr "" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "" + +#: templates/helpdesk/system_settings.html:8 +msgid "The following items can be maintained by you or other superusers:" +msgstr "" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:200 +msgid "Add Another File" +msgstr "" + +#: templates/helpdesk/ticket.html:73 templates/helpdesk/ticket.html.py:86 +msgid "Private" +msgstr "" + +#: templates/helpdesk/ticket.html:119 +msgid "Respond to this ticket" +msgstr "" + +#: templates/helpdesk/ticket.html:126 +msgid "Use a Pre-set Reply" +msgstr "" + +#: templates/helpdesk/ticket.html:126 templates/helpdesk/ticket.html.py:166 +msgid "(Optional)" +msgstr "" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "" + +#: templates/helpdesk/ticket.html:131 +msgid "Comment / Resolution" +msgstr "" + +#: templates/helpdesk/ticket.html:133 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "" + +#: templates/helpdesk/ticket.html:136 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "" + +#: templates/helpdesk/ticket.html:166 +msgid "Is this update public?" +msgstr "" + +#: templates/helpdesk/ticket.html:168 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "" + +#: templates/helpdesk/ticket.html:172 +msgid "Change Further Details »" +msgstr "" + +#: templates/helpdesk/ticket.html:181 templates/helpdesk/ticket_list.html:68 +#: templates/helpdesk/ticket_list.html:97 +#: templates/helpdesk/ticket_list.html:225 +msgid "Owner" +msgstr "" + +#: templates/helpdesk/ticket.html:182 +msgid "Unassign" +msgstr "" + +#: templates/helpdesk/ticket.html:193 +msgid "Attach File(s) »" +msgstr "" + +#: templates/helpdesk/ticket.html:199 +msgid "Attach a File" +msgstr "" + +#: templates/helpdesk/ticket.html:207 +msgid "Update This Ticket" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Unhold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Hold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:9 +#, python-format +msgid "Queue: %(queue)s" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Assigned To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:43 +msgid "Ignore" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:52 +msgid "Copies To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Manage" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Subscribe" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to subscribe yourself to this ticket, if you want to receive an " +"e-mail whenever this ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:57 +msgid "Dependencies" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:59 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:60 +msgid "Remove Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "This ticket has no dependencies." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "Add Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Change Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:67 +#: templates/helpdesk/ticket_list.html:79 +msgid "Sorting" +msgstr "" + +#: templates/helpdesk/ticket_list.html:71 +#: templates/helpdesk/ticket_list.html:139 +msgid "Keywords" +msgstr "" + +#: templates/helpdesk/ticket_list.html:72 +msgid "Date Range" +msgstr "" + +#: templates/helpdesk/ticket_list.html:100 +msgid "Reverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:102 +msgid "Ordering applied to tickets" +msgstr "" + +#: templates/helpdesk/ticket_list.html:107 +msgid "Owner(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:111 +msgid "(ME)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:115 +msgid "Ctrl-Click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:120 +msgid "Queue(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:121 +#: templates/helpdesk/ticket_list.html:127 +msgid "Ctrl-click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:126 +msgid "Status(es)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:132 +msgid "Date (From)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:133 +msgid "Date (To)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:134 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "" + +#: templates/helpdesk/ticket_list.html:140 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "" + +#: templates/helpdesk/ticket_list.html:144 +msgid "Apply Filter" +msgstr "" + +#: templates/helpdesk/ticket_list.html:146 +#, python-format +msgid "You are currently viewing saved query \"%(query_name)s\"." +msgstr "" + +#: templates/helpdesk/ticket_list.html:149 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "" + +#: templates/helpdesk/ticket_list.html:162 +#: templates/helpdesk/ticket_list.html:181 +msgid "Save Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:172 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "" + +#: templates/helpdesk/ticket_list.html:174 +msgid "Shared?" +msgstr "" + +#: templates/helpdesk/ticket_list.html:175 +msgid "Yes, share this query with other users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:176 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:195 +msgid "Use Saved Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:202 +msgid "Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:207 +msgid "Run Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:240 +msgid "No Tickets Match Your Selection" +msgstr "" + +#: templates/helpdesk/ticket_list.html:247 +msgid "Previous" +msgstr "" + +#: templates/helpdesk/ticket_list.html:251 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:255 +msgid "Next" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Select:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "None" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Inverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "With Selected Tickets:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Take (Assign to me)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Don't Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Assign To" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Nobody (Unassign)" +msgstr "" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "" + +#: templates/helpdesk/user_settings.html:8 +msgid "" +"Use the following options to change the way your helpdesk system works for " +"you. These settings do not impact any other user." +msgstr "" + +#: templates/helpdesk/user_settings.html:14 +msgid "Save Options" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "" + +#: templates/helpdesk/registration/login.html:14 +msgid "To log in simply enter your username and password below." +msgstr "" + +#: templates/helpdesk/registration/login.html:17 +msgid "Your username and password didn't match. Please try again." +msgstr "" + +#: templates/helpdesk/registration/login.html:20 +msgid "Login" +msgstr "" + +#: views/feeds.py:39 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:44 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:50 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:55 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:102 +msgid "Helpdesk: Unassigned Tickets" +msgstr "" + +#: views/feeds.py:103 +msgid "Unassigned Open and Reopened tickets" +msgstr "" + +#: views/feeds.py:128 +msgid "Helpdesk: Recent Followups" +msgstr "" + +#: views/feeds.py:129 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "" + +#: views/feeds.py:144 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "" + +#: views/feeds.py:149 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "" + +#: views/public.py:89 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "" + +#: views/public.py:107 +msgid "Submitter accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:235 +msgid "Accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:369 +#, python-format +msgid "Assigned to %(username)s" +msgstr "" + +#: views/staff.py:392 +msgid "Updated" +msgstr "" + +#: views/staff.py:577 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "" + +#: views/staff.py:582 +msgid "Unassigned in bulk update" +msgstr "" + +#: views/staff.py:587 views/staff.py:592 +msgid "Closed in bulk update" +msgstr "" + +#: views/staff.py:806 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "" + +#: views/staff.py:910 +msgid "Ticket taken off hold" +msgstr "" + +#: views/staff.py:913 +msgid "Ticket placed on hold" +msgstr "" + +#: views/staff.py:1007 +msgid "User by Priority" +msgstr "" + +#: views/staff.py:1013 +msgid "User by Queue" +msgstr "" + +#: views/staff.py:1019 +msgid "User by Status" +msgstr "" + +#: views/staff.py:1025 +msgid "User by Month" +msgstr "" + +#: views/staff.py:1031 +msgid "Queue by Priority" +msgstr "" + +#: views/staff.py:1037 +msgid "Queue by Status" +msgstr "" + +#: views/staff.py:1043 +msgid "Queue by Month" +msgstr "" diff --git a/build/lib/helpdesk/locale/ru/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/ru/LC_MESSAGES/django.mo new file mode 100644 index 00000000..2134f135 Binary files /dev/null and b/build/lib/helpdesk/locale/ru/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/ru/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/ru/LC_MESSAGES/django.po new file mode 100644 index 00000000..c1d484a1 --- /dev/null +++ b/build/lib/helpdesk/locale/ru/LC_MESSAGES/django.po @@ -0,0 +1,2879 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Translators: +# Антон Комолов , 2011 +# Dmitry Sharavyov , 2016 +# gorblnu4 , 2011 +# Ross Poulton , 2011 +# Антон Комолов , 2011 +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2017-03-08 21:58+0300\n" +"PO-Revision-Date: 2016-07-25 22:09+0000\n" +"Last-Translator: Dmitry Sharavyov \n" +"Language-Team: Russian (http://www.transifex.com/rossp/django-helpdesk/" +"language/ru/)\n" +"Language: ru\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" + +#: admin.py:29 models.py:404 templates/helpdesk/public_view_ticket.html:19 +#: templates/helpdesk/ticket_desc_table.html:52 +msgid "Submitter E-Mail" +msgstr "Электронный адрес отправителя" + +#: forms.py:139 models.py:269 models.py:388 +#: templates/helpdesk/include/tickets.html:18 +#: templates/helpdesk/include/unassigned.html:18 +#: templates/helpdesk/report_index.html:39 templates/helpdesk/rss_list.html:34 +#: templates/helpdesk/ticket_list.html:62 +#: templates/helpdesk/ticket_list.html:81 +#: templates/helpdesk/ticket_list.html:222 views/staff.py:1178 +#: views/staff.py:1184 views/staff.py:1190 views/staff.py:1196 +msgid "Queue" +msgstr "Очередь" + +#: forms.py:148 +msgid "Summary of the problem" +msgstr "Краткое описание проблемы" + +#: forms.py:153 +msgid "Description of your issue" +msgstr "Описание вашей проблемы." + +#: forms.py:155 +msgid "Please be as descriptive as possible and include all details" +msgstr "" +"Пожалуйста, будьте максимально информативным, нам пригодятся любые " +"подробности касающиеся вашего запроса." + +#: forms.py:163 management/commands/escalate_tickets.py:156 models.py:447 +#: templates/helpdesk/public_view_ticket.html:24 +#: templates/helpdesk/ticket.html:211 +#: templates/helpdesk/ticket_desc_table.html:57 +#: templates/helpdesk/ticket_list.html:87 views/staff.py:496 +msgid "Priority" +msgstr "Приоритет" + +#: forms.py:164 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "" +"Пожалуйста, выбирайте приоритет внимательно. Если не уверены, оставьте 3, " +"как есть." + +#: forms.py:170 models.py:455 templates/helpdesk/ticket.html:213 +#: views/staff.py:506 +msgid "Due on" +msgstr "Выполнить до" + +#: forms.py:175 +msgid "Attach File" +msgstr "Прикрепить файл" + +#: forms.py:176 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "Вы можете прикрепить файл, например, документ или скриншот, к тикету." + +#: forms.py:299 +msgid "Submitter E-Mail Address" +msgstr "Адрес электронной почты отправителя" + +#: forms.py:301 +msgid "" +"This e-mail address will receive copies of all public updates to this ticket." +msgstr "" +"На этот адрес электронной почты будут посылаться копии всех публичных " +"обновлений этого тикета" + +#: forms.py:309 +msgid "Case owner" +msgstr "Владелец" + +#: forms.py:310 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "" +"Если вы выберете отличного от себя владельца, ему будут высланы детали этого " +"тикета немедленно." + +#: forms.py:338 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "Тикет открыт и назначен %(name)s" + +#: forms.py:339 +msgid "" +msgstr "" + +#: forms.py:342 +msgid "Ticket Opened" +msgstr "Тикет открыт" + +#: forms.py:362 +msgid "Your E-Mail Address" +msgstr "Ваш адрес электронной почты" + +#: forms.py:363 +msgid "We will e-mail you when your ticket is updated." +msgstr "Мы известим вас по электронной почте, когда тикет обновится." + +#: forms.py:384 +msgid "Ticket Opened Via Web" +msgstr "Тикет открыт через Web" + +#: forms.py:397 +msgid "Show Ticket List on Login?" +msgstr "Показывать список тикетов после входа?" + +#: forms.py:398 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "Показывать список тикетов после входа? Иначе будет показана панель." + +#: forms.py:403 +msgid "E-mail me on ticket change?" +msgstr "Уведомлять меня по электронной почте о изменениях тикета?" + +#: forms.py:404 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody " +"else, do you want to receive an e-mail?" +msgstr "" +"Если вы владелец тикета и тикет меняется через web кем-то еще, вы хотите " +"получить уведомление по электронной почте?" + +#: forms.py:409 +msgid "E-mail me when assigned a ticket?" +msgstr "Уведомить меня по электронной почте о назначенных мне тикетах?" + +#: forms.py:410 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "" +"Хотите ли получать уведомления по электронной почте если кто-то назначил вам " +"тикет через web?" + +#: forms.py:415 +msgid "Number of tickets to show per page" +msgstr "Количество тикетов на страницу" + +#: forms.py:416 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "Как много тикетов вы хотите видеть на странице?" + +#: forms.py:422 +msgid "Use my e-mail address when submitting tickets?" +msgstr "Использовать мой адрес электронной почты при отправке тикета?" + +#: forms.py:423 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "" +"Когда вы отправляете тикет, вы хотите, чтобы автоматически использовался ваш " +"адрес электронной почты в качестве отправителя? Вы можете ввести другой " +"адрес электронной почты при создании тикета в случае необходимости. Этот " +"вариант только изменит значение по умолчанию." + +#: management/commands/create_queue_permissions.py:69 +#: migrations/0009_migrate_queuemembership.py:30 models.py:322 +msgid "Permission for queue: " +msgstr "Право на очередь:" + +#: management/commands/create_usersettings.py:24 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "" +"Проверить пользователя без django-helpdesk UserSettings и создать настройки, " +"если требуется. Используйте settings.DEFAULT_USER_SETTINGS в файле " +"настройки, который может быть изменен в зависимости от ситуации." + +#: management/commands/escalate_tickets.py:150 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "Тикет поднят после %s дней" + +#: management/commands/get_email.py:264 +msgid "Created from e-mail" +msgstr "Создан из электронной почты" + +#: management/commands/get_email.py:270 +msgid "Unknown Sender" +msgstr "Неизвестный отправитель" + +#: management/commands/get_email.py:311 +msgid "email_html_body.html" +msgstr "email_html_body.html" + +#: management/commands/get_email.py:324 +#| msgid "" +#| "No plain-text email body available. Please see attachment email_html_body." +#| "html." +msgid "" +"No plain-text email body available. Please see attachment \"email_html_body." +"html\"." +msgstr "" +"Тело email-сообщения недоступно. Пожалуйста, посмотрите email_html_body.html." + +#: management/commands/get_email.py:358 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "Электронное сообщение получено от %(sender_email)s" + +#: management/commands/get_email.py:366 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "" +"Тикет заново открыт полученным от %(sender_email)s электронным сообщением" + +#: models.py:33 models.py:382 models.py:636 models.py:942 models.py:979 +#: templates/helpdesk/include/tickets.html:17 +#: templates/helpdesk/include/unassigned.html:17 +#: templates/helpdesk/ticket.html:205 templates/helpdesk/ticket_list.html:78 +#: templates/helpdesk/ticket_list.html:221 views/staff.py:468 +msgid "Title" +msgstr "Заголовок" + +#: models.py:38 models.py:947 models.py:1334 +msgid "Slug" +msgstr "ЧПУ" + +#: models.py:41 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "" +"Эта строка используется для конструирования идентификатора тикета. Однажды " +"установив, старайтесь не менять его, или электронная почта может " +"перепутаться." + +#: models.py:46 models.py:1180 models.py:1251 models.py:1331 +#: templates/helpdesk/email_ignore_list.html:25 +msgid "E-Mail Address" +msgstr "Адрес электронной почты" + +#: models.py:49 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use " +"IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "" +"Все исходящие электронные письма этой очереди будут использовать этот " +"электронный адрес. Если вы используете IMAP или POP3 это и есть этот " +"электронный адрес." + +#: models.py:55 models.py:918 +msgid "Locale" +msgstr "Локаль" + +#: models.py:59 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "Локаль этой очереди. Вся переписка в этой очереди будет на этом языке." + +#: models.py:64 +msgid "Allow Public Submission?" +msgstr "Разрешить общедоступное размещение тикетов?" + +#: models.py:67 +msgid "Should this queue be listed on the public submission form?" +msgstr "Должна ли эта очередь быть доступна в публичной форме заявки?" + +#: models.py:71 +msgid "Allow E-Mail Submission?" +msgstr "Разрешить размещение тикета через электронную почту?" + +#: models.py:74 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "" +"Хотите ли вы опрашивать ниже указанный электронный адрес на наличие новых " +"тикетов?" + +#: models.py:79 +msgid "Escalation Days" +msgstr "Дни поднятия" + +#: models.py:82 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "" +"Как часто вы желаете увеличивать их приоритет для тикетов которые не на " +"удержании? 0 для отключения подъёма." + +#: models.py:87 +msgid "New Ticket CC Address" +msgstr "Поле \"Копия\" нового тикета" + +#: models.py:91 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple e-" +"mail addresses." +msgstr "" +"Если здесь ввести адрес электронной почты, то он будет получать уведомления " +"обо всех новых тикетах, созданных в этой очереди. Введите запятую между " +"несколькими адресами электронной почты." + +#: models.py:97 +msgid "Updated Ticket CC Address" +msgstr "Поле \"Копия\" обновлённого тикета" + +#: models.py:101 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "" +"Если ввести здесь адрес электронной почты, то он будет получать уведомления " +"о всей деятельности (новые тикеты, закрытие тикета, обновления, назначений и " +"т.д.) в данной очереди. Разделяйте адреса запятыми." + +#: models.py:108 +msgid "E-Mail Box Type" +msgstr "Тип электронного ящика" + +#: models.py:110 +msgid "POP 3" +msgstr "POP3" + +#: models.py:110 +msgid "IMAP" +msgstr "IMAP" + +#: models.py:110 +msgid "Local Directory" +msgstr "" + +#: models.py:113 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported, as well as reading from a local directory." +msgstr "" +"Тип ящика электронной почты, из которого будут создаваться автоматические " +"тикеты. Поддерживаются POP3 и IMAP." + +#: models.py:119 +msgid "E-Mail Hostname" +msgstr "Имя хоста сервера электронной почты" + +#: models.py:123 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "" +"Адрес вашего сервера электронной почты - может быть имя, или IP адрес. Или " +"даже \"localhost\"." + +#: models.py:128 +msgid "E-Mail Port" +msgstr "Порт электронный почты" + +#: models.py:131 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "" +"Номер порта для доступа к электронному ящику. По умолчанию \"110\" для POP3, " +"и \"143\" для IMAP. Настройки могут отличатся на разных серверах. Оставьте " +"пустым для использования значения по умолчанию." + +#: models.py:137 +msgid "Use SSL for E-Mail?" +msgstr "Использовать SSL для электронной почты?" + +#: models.py:140 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "" +"Использовать SSL для IMAP или POP3 - порты по умолчанию для SSL 993 для IMAP " +"и 995 для POP3." + +#: models.py:145 +msgid "E-Mail Username" +msgstr "Имя пользователя электронной почты" + +#: models.py:149 +msgid "Username for accessing this mailbox." +msgstr "Имя пользователя для доступа к этому электронному ящику." + +#: models.py:153 +msgid "E-Mail Password" +msgstr "Пароль электронной почты" + +#: models.py:157 +msgid "Password for the above username" +msgstr "Пароль для выше указанного имени пользователя" + +#: models.py:161 +msgid "IMAP Folder" +msgstr "Папка IMAP" + +#: models.py:165 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "" +"Если используется IMAP, из какой папки вы желаете скачивать сообщения? " +"Фильтрация сообщений на сервере позволяет вам использовать один IMAP аккаунт " +"для множества очередей. По умолчанию: INBOX." + +#: models.py:172 +#, fuzzy +#| msgid "E-Mail Port" +msgid "E-Mail Local Directory" +msgstr "Порт электронный почты" + +#: models.py:176 +msgid "" +"If using a local directory, what directory path do you wish to poll for new " +"email? Example: /var/lib/mail/helpdesk/" +msgstr "" + +#: models.py:182 +msgid "Django auth permission name" +msgstr "Наименование права доступа Django" + +#: models.py:187 +msgid "Name used in the django.contrib.auth permission system" +msgstr "Имя, используемое в django.contrib.auth" + +#: models.py:191 +msgid "E-Mail Check Interval" +msgstr "Интервал проверки электронной почты" + +#: models.py:192 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "Как часто вы хотите проверять этот ящик? (в минутах)" + +#: models.py:206 +msgid "Socks Proxy Type" +msgstr "Тип Socks-прокси" + +#: models.py:208 +msgid "SOCKS4" +msgstr "" + +#: models.py:208 +msgid "SOCKS5" +msgstr "" + +#: models.py:211 +msgid "" +"SOCKS4 or SOCKS5 allows you to proxy your connections through a SOCKS server." +msgstr "" + +#: models.py:215 +msgid "Socks Proxy Host" +msgstr "Хост Socks-прокси" + +#: models.py:218 +msgid "Socks proxy IP address. Default: 127.0.0.1" +msgstr "IP-адрес Socks-прокси. По-умолчанию: 127.0.0.1" + +#: models.py:222 +msgid "Socks Proxy Port" +msgstr "Порт Socks-прокси" + +#: models.py:225 +msgid "Socks proxy port number. Default: 9150 (default TOR port)" +msgstr "Номер порта Socks-прокси. По-умолчанию: 9150 (порт TOR по-умолчанию)" + +#: models.py:229 +msgid "Logging Type" +msgstr "Тип журналирования" + +#: models.py:232 templates/helpdesk/ticket_list.html:247 +msgid "None" +msgstr "Ничего" + +#: models.py:233 +msgid "Debug" +msgstr "Отладка" + +#: models.py:234 +msgid "Information" +msgstr "Информация" + +#: models.py:235 +msgid "Warning" +msgstr "Внимание" + +#: models.py:236 +msgid "Error" +msgstr "Ошибка" + +#: models.py:237 +msgid "Critical" +msgstr "Критичный" + +#: models.py:241 +msgid "" +"Set the default logging level. All messages at that level or above will be " +"logged to the directory set below. If no level is set, logging will be " +"disabled." +msgstr "" + +#: models.py:247 +msgid "Logging Directory" +msgstr "" + +#: models.py:251 +msgid "" +"If logging is enabled, what directory should we use to store log files for " +"this queue? If no directory is set, default to /var/log/helpdesk/" +msgstr "" + +#: models.py:261 +msgid "Default owner" +msgstr "Владелец по-умолчанию" + +#: models.py:270 templates/helpdesk/email_ignore_list.html:27 +msgid "Queues" +msgstr "Очереди" + +#: models.py:366 templates/helpdesk/report_index.html:40 +#: templates/helpdesk/ticket.html:156 +msgid "Open" +msgstr "Открытый" + +#: models.py:367 templates/helpdesk/ticket.html:164 +#: templates/helpdesk/ticket.html:172 templates/helpdesk/ticket.html:178 +#: templates/helpdesk/ticket.html:183 +msgid "Reopened" +msgstr "Переоткрытый" + +#: models.py:368 templates/helpdesk/report_index.html:41 +#: templates/helpdesk/ticket.html:157 templates/helpdesk/ticket.html:165 +#: templates/helpdesk/ticket.html:173 +msgid "Resolved" +msgstr "Решённый" + +#: models.py:369 templates/helpdesk/report_index.html:42 +#: templates/helpdesk/ticket.html:158 templates/helpdesk/ticket.html:166 +#: templates/helpdesk/ticket.html:174 templates/helpdesk/ticket.html:179 +msgid "Closed" +msgstr "Закрытый" + +#: models.py:370 templates/helpdesk/ticket.html:159 +#: templates/helpdesk/ticket.html:167 templates/helpdesk/ticket.html:184 +msgid "Duplicate" +msgstr "Дубликат" + +#: models.py:374 +msgid "1. Critical" +msgstr "1. Критичный" + +#: models.py:375 +msgid "2. High" +msgstr "2. Высокий" + +#: models.py:376 +msgid "3. Normal" +msgstr "3. Нормальный" + +#: models.py:377 +msgid "4. Low" +msgstr "4. Низкий" + +#: models.py:378 +msgid "5. Very Low" +msgstr "5. Очень низкий" + +#: models.py:392 templates/helpdesk/include/unassigned.html:19 +#: templates/helpdesk/ticket_list.html:75 +#: templates/helpdesk/ticket_list.html:224 +msgid "Created" +msgstr "Создан" + +#: models.py:394 +msgid "Date this ticket was first created" +msgstr "Дата создания этого тикета" + +#: models.py:398 +msgid "Modified" +msgstr "Изменённый" + +#: models.py:400 +msgid "Date this ticket was most recently changed." +msgstr "Дата когда тикет был последний раз изменён." + +#: models.py:407 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "" +"Отправитель будет получать электронные сообщения обо всех публичных " +"дополнениях к этой задаче." + +#: models.py:416 +msgid "Assigned to" +msgstr "Связан с" + +#: models.py:420 templates/helpdesk/include/tickets.html:19 +#: templates/helpdesk/ticket_list.html:63 +#: templates/helpdesk/ticket_list.html:84 +#: templates/helpdesk/ticket_list.html:223 views/staff.py:478 +msgid "Status" +msgstr "Статус" + +#: models.py:426 +msgid "On Hold" +msgstr "Удерживаемый" + +#: models.py:429 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "Если тикет на удержании он не будет автоматически поднят." + +#: models.py:433 models.py:951 templates/helpdesk/public_view_ticket.html:42 +#: templates/helpdesk/ticket_desc_table.html:29 +msgid "Description" +msgstr "Описание" + +#: models.py:436 +msgid "The content of the customers query." +msgstr "Содержимое запроса клиента." + +#: models.py:440 templates/helpdesk/public_view_ticket.html:49 +#: templates/helpdesk/ticket_desc_table.html:36 +msgid "Resolution" +msgstr "Решение" + +#: models.py:443 +msgid "The resolution provided to the customer by our staff." +msgstr "Решение предоставлено клиенту нашими сотрудниками." + +#: models.py:451 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "1 = Наивысший Приоритет, 5 = Низший Приоритет" + +#: models.py:464 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "" +"Дата когда тикет последний раз поднят, автоматически обновляется вызовом " +"management/commands/escalate_tickets.py." + +#: models.py:473 templates/helpdesk/ticket_desc_table.html:48 views/feeds.py:93 +#: views/feeds.py:118 views/feeds.py:170 views/staff.py:440 +msgid "Unassigned" +msgstr "Неназначенный" + +#: models.py:513 +msgid " - On Hold" +msgstr " - На Удержании" + +#: models.py:516 +msgid " - Open dependencies" +msgstr " - Открыты зависимости" + +#: models.py:571 models.py:627 models.py:1239 models.py:1413 models.py:1446 +#: templates/helpdesk/public_homepage.html:79 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "Тикет" + +#: models.py:572 templates/helpdesk/navigation.html:23 +#: templates/helpdesk/ticket_list.html:4 +msgid "Tickets" +msgstr "Тикеты" + +#: models.py:631 models.py:862 models.py:1173 models.py:1328 +msgid "Date" +msgstr "Дата" + +#: models.py:643 views/staff.py:457 +msgid "Comment" +msgstr "Комментарий" + +#: models.py:649 +msgid "Public" +msgstr "Публичный" + +#: models.py:652 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "" +"Публичные тикеты видны отправителям и коллективу, а не публичные только " +"коллективу." + +#: models.py:660 models.py:1048 models.py:1247 +#: templates/helpdesk/ticket_cc_add.html:20 views/staff.py:1153 +#: views/staff.py:1159 views/staff.py:1166 views/staff.py:1172 +msgid "User" +msgstr "Пользователь" + +#: models.py:664 templates/helpdesk/ticket.html:152 +msgid "New Status" +msgstr "Новый статус" + +#: models.py:668 +msgid "If the status was changed, what was it changed to?" +msgstr "Если статус был изменён, на что он был изменён?" + +#: models.py:675 models.py:700 models.py:762 +msgid "Follow-up" +msgstr "Наблюдение" + +#: models.py:676 +msgid "Follow-ups" +msgstr "" + +#: models.py:704 models.py:1418 +msgid "Field" +msgstr "Поле" + +#: models.py:709 +msgid "Old Value" +msgstr "Старое значение" + +#: models.py:715 +msgid "New Value" +msgstr "Новое значение" + +#: models.py:723 +msgid "removed" +msgstr "удалённый" + +#: models.py:725 +#, python-format +msgid "set to %s" +msgstr "установлен в %s" + +#: models.py:727 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "изменён с \"%(old_value)s\" на \"%(new_value)s\"" + +#: models.py:734 +msgid "Ticket change" +msgstr "Изменение тикета" + +#: models.py:735 +msgid "Ticket changes" +msgstr "Изменения тикета" + +#: models.py:766 +msgid "File" +msgstr "Файл" + +#: models.py:772 +msgid "Filename" +msgstr "Имя файла" + +#: models.py:777 +msgid "MIME Type" +msgstr "MIME тип" + +#: models.py:782 +msgid "Size" +msgstr "Размер" + +#: models.py:783 +msgid "Size of this file in bytes" +msgstr "Размер этого файла в байтах" + +#: models.py:791 +msgid "Attachment" +msgstr "Вложение" + +#: models.py:792 +msgid "Attachments" +msgstr "Вложения" + +#: models.py:809 +msgid "Pre-set reply" +msgstr "" + +#: models.py:810 +msgid "Pre-set replies" +msgstr "" + +#: models.py:815 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "" +"Оставьте пустым что бы позволить всем очередям использовать этот ответ, или " +"выберете каким очередям можно использовать этот ответ." + +#: models.py:820 models.py:857 models.py:1168 +#: templates/helpdesk/email_ignore_list.html:24 +msgid "Name" +msgstr "Имя" + +#: models.py:822 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "" +"Используется пользователям только что бы помочь им выбрать ответ - " +"пользователю не показывается." + +#: models.py:827 +msgid "Body" +msgstr "Тело" + +#: models.py:828 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); " +"{{ queue }} - The queue; and {{ user }} - the current user." +msgstr "" +"Доступный контекст: {{ ticket }} - тикет (например {{ ticket.title }}); " +"{{ queue }} - очередь; и {{ user }} - текущий пользователь." + +#: models.py:852 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "" +"Оставьте пустым что бы это исключение применялось ко всем очередям, или " +"выберите очереди для который применять исключение." + +#: models.py:863 +msgid "Date on which escalation should not happen" +msgstr "Дата когда новые тикеты не должны подниматься." + +#: models.py:870 +msgid "Escalation exclusion" +msgstr "" + +#: models.py:871 +msgid "Escalation exclusions" +msgstr "" + +#: models.py:885 +msgid "Template Name" +msgstr "Имя шаблона" + +#: models.py:890 +msgid "Subject" +msgstr "Тема" + +#: models.py:892 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is " +"available as in plain_text, below." +msgstr "" +"Добавится приставка \"[ticket.ticket] ticket.title\". Мы рекомендуем что " +"нибудь простое например \"(Updated\") или \"(Closed)\" - тот же контекст " +"доступен ниже в plain_text." + +#: models.py:898 +msgid "Heading" +msgstr "Заголовок" + +#: models.py:900 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same " +"context is available as in plain_text, below." +msgstr "" +"В HTML электронных письмах, это будет в заголовке - тот же контекст доступен " +"в виде plain_text ниже." + +#: models.py:906 +msgid "Plain Text" +msgstr "Чистый текст" + +#: models.py:907 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "" +"Доступный контекст для включения {{ ticket }}, {{ queue }}, и в зависимости " +"от времени вызова: {{ resolution }} или {{ comment }}." + +#: models.py:913 +msgid "HTML" +msgstr "HTML" + +#: models.py:914 +msgid "The same context is available here as in plain_text, above." +msgstr "Тот же самый контекст доступен здесь как в plain_text выше." + +#: models.py:922 +msgid "Locale of this template." +msgstr "Локаль этого шаблона." + +#: models.py:930 +msgid "e-mail template" +msgstr "шаблон e-mail" + +#: models.py:931 +msgid "e-mail templates" +msgstr "шаблоны e-mail" + +#: models.py:959 +msgid "Knowledge base category" +msgstr "категорию Базы Знаний" + +#: models.py:960 +msgid "Knowledge base categories" +msgstr "Категории Базы Знаний" + +#: models.py:975 templates/helpdesk/public_homepage.html:12 +msgid "Category" +msgstr "Категория" + +#: models.py:984 +msgid "Question" +msgstr "Вопрос" + +#: models.py:988 +msgid "Answer" +msgstr "Ответ" + +#: models.py:992 +msgid "Votes" +msgstr "Голоса" + +#: models.py:993 +msgid "Total number of votes cast for this item" +msgstr "Общее количество отданных голосов" + +#: models.py:998 +msgid "Positive Votes" +msgstr "Положительные голоса" + +#: models.py:999 +msgid "Number of votes for this item which were POSITIVE." +msgstr "Количество положительно проголосовавших." + +#: models.py:1004 +msgid "Last Updated" +msgstr "Последний раз обновлялось" + +#: models.py:1005 +msgid "The date on which this question was most recently changed." +msgstr "Дата когда этот вопрос был последний раз изменён." + +#: models.py:1018 +msgid "Unrated" +msgstr "Неоценённый" + +#: models.py:1026 +msgid "Knowledge base item" +msgstr "Запись базы знаний" + +#: models.py:1027 +msgid "Knowledge base items" +msgstr "Записи базы знаний" + +#: models.py:1052 templates/helpdesk/ticket_list.html:159 +msgid "Query Name" +msgstr "Имя запроса" + +#: models.py:1054 +msgid "User-provided name for this query" +msgstr "Имя запроса определённое пользователем" + +#: models.py:1058 +msgid "Shared With Other Users?" +msgstr "Доступен остальным пользователям?" + +#: models.py:1061 +msgid "Should other users see this query?" +msgstr "Виден ли этот запрос другим пользователям?" + +#: models.py:1065 +msgid "Search Query" +msgstr "Поисковый запрос" + +#: models.py:1066 +msgid "Pickled query object. Be wary changing this." +msgstr "Pickle-упакованные объекты запросов. Не изменяйте их." + +#: models.py:1076 +msgid "Saved search" +msgstr "Сохранённый поиск" + +#: models.py:1077 +msgid "Saved searches" +msgstr "Сохранённые поиски" + +#: models.py:1095 +msgid "Settings Dictionary" +msgstr "Словарь настроек" + +#: models.py:1096 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "" +"Это base64-кодированное представление pickle-упакованного Python словаря. Не " +"изменяйте его через административный интерфейс." + +#: models.py:1129 +msgid "User Setting" +msgstr "Пользовательская настройка" + +#: models.py:1130 templates/helpdesk/navigation.html:71 +#: templates/helpdesk/user_settings.html:6 +msgid "User Settings" +msgstr "Настройки пользователя" + +#: models.py:1157 +msgid "Ignored e-mail address" +msgstr "Игнорируемый e-mail-адрес" + +#: models.py:1158 +msgid "Ignored e-mail addresses" +msgstr "Игнорируемые e-mail-адреса" + +#: models.py:1163 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "" +"Оставьте пустым, чтобы этот адрес электронной почты был проигнорирован во " +"всех очередях, или выберите те очереди, для которых он будет проигнорирован." + +#: models.py:1174 +msgid "Date on which this e-mail address was added" +msgstr "Дата добавления этого адреса электронной почты" + +#: models.py:1182 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "" +"Введите электронный адрес почты - полный или шаблон с подстановочными " +"знаками, например, *@domain.com или postmaster@*." + +#: models.py:1187 +msgid "Save Emails in Mailbox?" +msgstr "Сохранять сообщения в почтовом ящике?" + +#: models.py:1190 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "" +"Хотите ли вы сохранить сообщения с этого адреса в почтовом ящике? Если " +"убрать данную опцию, сообщения электронной почты с этого адреса будут " +"удалены." + +#: models.py:1246 +msgid "User who wishes to receive updates for this ticket." +msgstr "Пользователи желающие получать обновления для этого тикета" + +#: models.py:1254 +msgid "For non-user followers, enter their e-mail address" +msgstr "" +"Для незарегистрированных пользователей введите их электронные адреса почты" + +#: models.py:1258 +msgid "Can View Ticket?" +msgstr "Может посмотреть тикет?" + +#: models.py:1261 +msgid "Can this CC login to view the ticket details?" +msgstr "Может ли этот адрес из поля \"Копия\" войти, чтобы просмотреть тикет? " + +#: models.py:1265 +msgid "Can Update Ticket?" +msgstr "Может изменить тикет?" + +#: models.py:1268 +msgid "Can this CC login and update the ticket?" +msgstr "Может ли этот адрес из поля \"Копия\" войти и изменить тикет?" + +#: models.py:1302 +msgid "Field Name" +msgstr "Название Поля" + +#: models.py:1303 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of " +"only lowercase letters with no punctuation." +msgstr "" +"При использовании в базе данных и за кулисами. Должно быть уникальным и " +"состоять только из строчных латинских букв, без знаков препинания." + +#: models.py:1309 +msgid "Label" +msgstr "Метка" + +#: models.py:1311 +msgid "The display label for this field" +msgstr "Отображаемое название для этого поля" + +#: models.py:1315 +msgid "Help Text" +msgstr "Текст подсказки" + +#: models.py:1316 +msgid "Shown to the user when editing the ticket" +msgstr "Виден пользователю при редактировании тикета" + +#: models.py:1322 +msgid "Character (single line)" +msgstr "Символьный (одна строчка)" + +#: models.py:1323 +msgid "Text (multi-line)" +msgstr "Текстовый (много строк)" + +#: models.py:1324 +msgid "Integer" +msgstr "Целочисленный" + +#: models.py:1325 +msgid "Decimal" +msgstr "Вещественный" + +#: models.py:1326 +msgid "List" +msgstr "Список" + +#: models.py:1327 +msgid "Boolean (checkbox yes/no)" +msgstr "Boolean (флажок да / нет)" + +#: models.py:1329 +msgid "Time" +msgstr "Время" + +#: models.py:1330 +msgid "Date & Time" +msgstr "Дата и время" + +#: models.py:1332 +msgid "URL" +msgstr "Ссылка" + +#: models.py:1333 +msgid "IP Address" +msgstr "IP адрес" + +#: models.py:1338 +msgid "Data Type" +msgstr "Тип данных" + +#: models.py:1340 +msgid "Allows you to restrict the data entered into this field" +msgstr "Позволяет ограничить данные, введенные в это поле" + +#: models.py:1345 +msgid "Maximum Length (characters)" +msgstr "Максимальная длина (символьный)" + +#: models.py:1351 +msgid "Decimal Places" +msgstr "Число знаков после запятой" + +#: models.py:1352 +msgid "Only used for decimal fields" +msgstr "Используется только для вещественных полей" + +#: models.py:1358 +msgid "Add empty first choice to List?" +msgstr "Добавить пустое значение первым в список выбора?" + +#: models.py:1360 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces " +"that the user makes an active choice." +msgstr "" +"Только для списка: Добавляет пустое значение первой записью в список выбора, " +"который гарантирует, что пользователь точно сделает выбор." + +#: models.py:1365 +msgid "List Values" +msgstr "Значения списка" + +#: models.py:1366 +msgid "For list fields only. Enter one option per line." +msgstr "Только для полей списка. Вводите по одному значению на строку" + +#: models.py:1372 +msgid "Ordering" +msgstr "Сортировка" + +#: models.py:1373 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "" +"Более низкие числа отображаются сначала; более высокие значения перечислены " +"позже" + +#: models.py:1387 +msgid "Required?" +msgstr "Обязателен?" + +#: models.py:1388 +msgid "Does the user have to enter a value for this field?" +msgstr "Обязательно ли вводить значение этого поля?" + +#: models.py:1393 +msgid "Staff Only?" +msgstr "Только для персонала?" + +#: models.py:1394 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "" +"Если это отметить, то общедоступная форма представления не покажет этого поля" + +#: models.py:1405 +msgid "Custom field" +msgstr "настраиваемое поле" + +#: models.py:1406 +msgid "Custom fields" +msgstr "Настраиваемые поля" + +#: models.py:1428 +msgid "Ticket custom field value" +msgstr "Значение пользовательского поля тикета" + +#: models.py:1429 +msgid "Ticket custom field values" +msgstr "Значения текстового поля тикета" + +#: models.py:1441 +msgid "Ticket dependency" +msgstr "Зависимость тикета" + +#: models.py:1442 +msgid "Ticket dependencies" +msgstr "Зависимости тикетов" + +#: models.py:1452 +msgid "Depends On Ticket" +msgstr "Зависит от тикета" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"django-" +"helpdesk." +msgstr "" + +#: templates/helpdesk/base.html:18 +msgid "Powered by django-helpdesk" +msgstr "Работает на django-helpdesk" + +#: templates/helpdesk/base.html:77 templates/helpdesk/rss_list.html:10 +#: templates/helpdesk/rss_list.html:36 +msgid "My Open Tickets" +msgstr "Мои открытые тикеты" + +#: templates/helpdesk/base.html:78 +msgid "All Recent Activity" +msgstr "Вся последняя активность" + +#: templates/helpdesk/base.html:79 templates/helpdesk/include/unassigned.html:7 +#: templates/helpdesk/rss_list.html:16 +msgid "Unassigned Tickets" +msgstr "Неназначенные тикеты" + +#: templates/helpdesk/base.html:119 templates/helpdesk/navigation.html:12 +#: templates/helpdesk/public_base.html:16 +#: templates/helpdesk/public_base.html:50 +msgid "Helpdesk" +msgstr "Помощь и поддержка" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:139 +msgid "Delete Saved Query" +msgstr "Удалить сохранный запрос" + +#: templates/helpdesk/confirm_delete_saved_query.html:6 +msgid "Delete Query" +msgstr "Удалить запрос" + +#: templates/helpdesk/confirm_delete_saved_query.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this saved filter (%(query_title)s)? To re-create it, you will need to manually re-filter your ticket " +"listing." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"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." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:15 +#: templates/helpdesk/delete_ticket.html:10 +msgid "No, Don't Delete It" +msgstr "Нет, не удалять" + +#: templates/helpdesk/confirm_delete_saved_query.html:18 +#: templates/helpdesk/delete_ticket.html:13 +msgid "Yes I Understand - Delete It Anyway" +msgstr "Да, Я Понимаю - Всё Равно Удалить" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "Создать тикет" + +#: templates/helpdesk/create_ticket.html:27 +#: templates/helpdesk/navigation.html:95 templates/helpdesk/navigation.html:98 +#: templates/helpdesk/public_homepage.html:28 +msgid "Submit a Ticket" +msgstr "Создать тикет" + +#: templates/helpdesk/create_ticket.html:31 +#: templates/helpdesk/edit_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "" + +#: templates/helpdesk/create_ticket.html:31 +#: templates/helpdesk/edit_ticket.html:11 +#: templates/helpdesk/public_homepage.html:29 +msgid "Please provide as descriptive a title and description as possible." +msgstr "" + +#: templates/helpdesk/create_ticket.html:41 templates/helpdesk/ticket.html:143 +#: templates/helpdesk/ticket.html:192 +msgid "(Optional)" +msgstr "(Опционально)" + +#: templates/helpdesk/create_ticket.html:50 +#: templates/helpdesk/public_homepage.html:56 +msgid "Submit Ticket" +msgstr "Отправить тикет" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "Панель управления Helpdesk" + +#: templates/helpdesk/dashboard.html:12 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no " +"owner." +msgstr "" +"Добро пожаловать на вашу панель Helpdesk! Отсюда вы можете быстро увидеть " +"ваши собственные тикеты, а также те, которые еще не имеют владельца." + +#: templates/helpdesk/dashboard.html:18 +msgid "All Tickets submitted by you" +msgstr "Все тикеты, отправленные вами" + +#: templates/helpdesk/dashboard.html:22 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "Открытые тикеты, назначенные Вам (вы работаете с этими тикетами)" + +#: templates/helpdesk/dashboard.html:23 +msgid "You have no tickets assigned to you." +msgstr "Нет тикетов, назначенных вам." + +#: templates/helpdesk/dashboard.html:29 +msgid "Closed & resolved Tickets you used to work on" +msgstr "Закрыт и решены тикеты, связанные с вами" + +#: templates/helpdesk/delete_ticket.html:3 +#: templates/helpdesk/delete_ticket.html:6 +msgid "Delete Ticket" +msgstr "Удалить тикет" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this ticket (%(ticket_title)s)? All " +"traces of the ticket, including followups, attachments, and updates will be " +"irreversibly removed." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "Редактировать тикет" + +#: templates/helpdesk/edit_ticket.html:9 +msgid "Edit a Ticket" +msgstr "Редактировать заявку" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "Note" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "" +"Editing a ticket does not send an e-mail to the ticket owner or " +"submitter. No new details should be entered, this form should only be used " +"to fix incorrect details or clean up the submission." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:33 +msgid "Save Changes" +msgstr "Сохранить изменения" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:6 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "Игнорировать адрес электронной почты" + +#: templates/helpdesk/email_ignore_add.html:8 +msgid "" +"To ignore an e-mail address and prevent any emails from that address " +"creating tickets automatically, enter the e-mail address below." +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:10 +msgid "" +"You can either enter a whole e-mail address such as email@domain.com or a portion of an e-mail address with a wildcard, such as *@domain." +"com or user@*." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "Удалить игнорируемый адрес электронной почты" + +#: templates/helpdesk/email_ignore_del.html:6 +msgid "Un-Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:8 +#, python-format +msgid "" +"Are you sure you wish to stop removing this email address (" +"%(email_address)s) and allow their e-mails to automatically create " +"tickets in your system? You can re-add this e-mail address at any time." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:10 +msgid "Keep Ignoring It" +msgstr "Продолжать игнорировать" + +#: templates/helpdesk/email_ignore_del.html:13 +msgid "Stop Ignoring It" +msgstr "Разблокировать, пусть присылает письма" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:15 +msgid "Ignored E-Mail Addresses" +msgstr "Игнорируемые адреса электронной почты" + +#: templates/helpdesk/email_ignore_list.html:5 +#, fuzzy +#| msgid "" +#| "\n" +#| "

Ignored E-Mail Addresses

\n" +#| "\n" +#| "

The following e-mail addresses are currently being ignored by the " +#| "incoming e-mail processor. You can add a new e-mail " +#| "address to the list or delete any of the items below as required.

" +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the " +"incoming e-mail processor. You can add a new item or delete any of the items " +"below as required.

" +msgstr "" +"\n" +"

Игнорируемые адреса электронной почты

\n" +"\n" +"

Следующие адреса электронной почты в настоящее время игнорируются " +"обработчиком входящей почты. Вы можете добавить в список " +"новый адрес или удалить любые перечисленные ниже на свое усмотрение.

" + +#: templates/helpdesk/email_ignore_list.html:19 +msgid "Add an Email" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:26 +msgid "Date Added" +msgstr "Дата добавления" + +#: templates/helpdesk/email_ignore_list.html:28 +msgid "Keep in mailbox?" +msgstr "Сохранять в почтовом ящике?" + +#: templates/helpdesk/email_ignore_list.html:29 +#: templates/helpdesk/email_ignore_list.html:40 +#: templates/helpdesk/include/unassigned.html:33 +#: templates/helpdesk/ticket.html:103 templates/helpdesk/ticket.html:116 +#: templates/helpdesk/ticket_cc_list.html:28 +#: templates/helpdesk/ticket_cc_list.html:37 +#: templates/helpdesk/ticket_desc_table.html:17 +#: templates/helpdesk/ticket_list.html:251 +msgid "Delete" +msgstr "Удалить" + +#: templates/helpdesk/email_ignore_list.html:38 +#: templates/helpdesk/ticket_list.html:246 +msgid "All" +msgstr "Все" + +#: templates/helpdesk/email_ignore_list.html:39 +msgid "Keep" +msgstr "Оставить" + +#: templates/helpdesk/email_ignore_list.html:56 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "" +"Замечание: Если флаг \"Оставить\" не установлен, то " +"сообщения, отправленные с этого адреса будут навсегда удалены." + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "Изменить наблюдение" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Edit FollowUp" +msgstr "Изменить наблюдение" + +#: templates/helpdesk/followup_edit.html:21 +msgid "Reassign ticket:" +msgstr "Переназначение тикета:" + +#: templates/helpdesk/followup_edit.html:23 +msgid "Title:" +msgstr "Заголовок:" + +#: templates/helpdesk/followup_edit.html:25 +msgid "Comment:" +msgstr "Комментарий" + +#: templates/helpdesk/include/stats.html:7 +msgid "Helpdesk Summary" +msgstr "Сводка по Helpdesk" + +#: templates/helpdesk/include/stats.html:27 +#, fuzzy +#| msgid "View Ticket" +msgid "View Tickets" +msgstr "Просмотреть тикет" + +#: templates/helpdesk/include/stats.html:27 +#, fuzzy +#| msgid "Number of tickets to show per page" +msgid "No tickets in this range" +msgstr "Количество тикетов на страницу" + +#: templates/helpdesk/include/tickets.html:7 +msgid "Your Tickets" +msgstr "Ваши Тикеты" + +#: templates/helpdesk/include/tickets.html:16 +#: templates/helpdesk/include/unassigned.html:16 +#: templates/helpdesk/ticket_list.html:220 +msgid "Pr" +msgstr "Приоритет" + +#: templates/helpdesk/include/tickets.html:20 +#: templates/helpdesk/kb_category.html:30 +msgid "Last Update" +msgstr "Последнее обновление" + +#: templates/helpdesk/include/tickets.html:34 +msgid "You do not have any pending tickets." +msgstr "" + +#: templates/helpdesk/include/unassigned.html:7 +msgid "(pick up a ticket if you start to work on it)" +msgstr "(забрать тикет, если вы начинаете работать с ним)" + +#: templates/helpdesk/include/unassigned.html:32 +#: templates/helpdesk/ticket_desc_table.html:48 +msgid "Take" +msgstr "Взять" + +#: templates/helpdesk/include/unassigned.html:37 +#: templates/helpdesk/report_index.html:54 +msgid "There are no unassigned tickets." +msgstr "Нет неназначенных тикетов." + +#: templates/helpdesk/kb_category.html:4 +#, fuzzy +#| msgid "Knowledge base category" +msgid "Knowledgebase Category" +msgstr "категорию Базы Знаний" + +#: templates/helpdesk/kb_category.html:4 +#, python-format +msgid "%(kbcat)s" +msgstr "" + +#: templates/helpdesk/kb_category.html:8 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "Вы просматриваете всё содержимое в категории %(kbcat)s." + +#: templates/helpdesk/kb_category.html:26 +#, python-format +#| msgid "" +#| "View Answer " +msgid "View Answer " +msgstr "Просмотреть Ответ " + +#: templates/helpdesk/kb_category.html:29 +#, fuzzy +#| msgid "Sorting" +msgid "Rating" +msgstr "Сортировка" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/kb_item.html:4 +#: templates/helpdesk/navigation.html:33 templates/helpdesk/navigation.html:101 +msgid "Knowledgebase" +msgstr "База Знаний" + +#: templates/helpdesk/kb_index.html:6 +#, fuzzy +#| msgid "" +#| "We have listed a number of knowledgebase articles for your perusal in the " +#| "following categories. Please check to see if any of these articles " +#| "address your problem prior to opening a support ticket." +msgid "" +"We have listed a number of Knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "" +"Мы перечислили ряд статей в Базе Знаний для вашего ознакомления по следующим " +"категориям. Пожалуйста, проверьте до создания тикета, что ваш случай не " +"описан в какой-либо из этих статей." + +#: templates/helpdesk/kb_index.html:20 +msgid "View articles" +msgstr "Просмотреть записи" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "%(item)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:17 +msgid "Did you find this article useful?" +msgstr "Находите ли Вы эту запись полезной?" + +#: templates/helpdesk/kb_item.html:28 +msgid "The results of voting by other readers of this article are below:" +msgstr "Результаты голосования других прочитавших эту статью указаны ниже:" + +#: templates/helpdesk/kb_item.html:30 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "Рекомендации: %(recommendations)s" + +#: templates/helpdesk/kb_item.html:31 +#, python-format +msgid "Votes: %(votes)s" +msgstr "Голоса: %(votes)s" + +#: templates/helpdesk/kb_item.html:32 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "Общий рейтинг: %(score)s" + +#: templates/helpdesk/kb_item.html:40 +#, python-format +msgid "" +"View other %(category_title)s articles, or continue viewing other knowledgebase articles." +msgstr "" +"Смотреть другие %(category_title)s " +"статьи, или продолжить просмотр остальных статьей Базы " +"Знаний." + +#: templates/helpdesk/navigation.html:7 +msgid "Toggle navigation" +msgstr "Переключить навигацию" + +#: templates/helpdesk/navigation.html:20 templates/helpdesk/navigation.html:94 +msgid "Dashboard" +msgstr "Панель" + +#: templates/helpdesk/navigation.html:26 +msgid "New Ticket" +msgstr "Новый Тикет" + +#: templates/helpdesk/navigation.html:29 +msgid "Stats" +msgstr "Статистика" + +#: templates/helpdesk/navigation.html:38 +msgid "Saved Query" +msgstr "Сохранённый запрос" + +#: templates/helpdesk/navigation.html:53 +msgid "Search..." +msgstr "Поиск..." + +#: templates/helpdesk/navigation.html:53 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "" +"Введите ключевое слово или номер тикета, чтобы перейти прямо на этот тикет." + +#: templates/helpdesk/navigation.html:57 +#: templates/helpdesk/ticket_list.html:251 +msgid "Go" +msgstr "" + +#: templates/helpdesk/navigation.html:73 templates/helpdesk/rss_list.html:3 +#: templates/helpdesk/rss_list.html:5 +msgid "RSS Feeds" +msgstr "RSS ленты новостей" + +#: templates/helpdesk/navigation.html:75 +msgid "Change password" +msgstr "Сменить пароль" + +#: templates/helpdesk/navigation.html:79 +#: templates/helpdesk/system_settings.html:6 +msgid "System Settings" +msgstr "Системные настройки" + +#: templates/helpdesk/navigation.html:82 templates/helpdesk/navigation.html:103 +msgid "Logout" +msgstr "Выход" + +#: templates/helpdesk/navigation.html:103 +msgid "Log In" +msgstr "Войти" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:74 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:3 +msgid "View a Ticket" +msgstr "Просмотреть тикет" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "Изменение языка отображения" + +#: templates/helpdesk/public_homepage.html:7 +msgid "Knowledgebase Articles" +msgstr "Категории Статей" + +#: templates/helpdesk/public_homepage.html:10 +msgid "Knowledgebase Categories" +msgstr "Категории Базы Знаний" + +#: templates/helpdesk/public_homepage.html:29 +msgid "All fields are required." +msgstr "" + +#: templates/helpdesk/public_homepage.html:67 +msgid "Please use button at upper right to login first." +msgstr "" +"Пожалуйста, используйте кнопку в правом верхнем углу для входа сначала." + +#: templates/helpdesk/public_homepage.html:83 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "Ваш адрес электронной почты" + +#: templates/helpdesk/public_homepage.html:87 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "Просмотреть тикет" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "Невозможно открыть тикет" + +#: templates/helpdesk/public_spam.html:5 +msgid "Sorry, but there has been an error trying to submit your ticket." +msgstr "" + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"Our system has marked your submission as spam, so we are " +"unable to save it. If this is not spam, please press back and re-type your " +"message. Be careful to avoid sounding 'spammy', and if you have heaps of " +"links please try removing them if possible." +msgstr "" + +#: templates/helpdesk/public_spam.html:7 +msgid "" +"We are sorry for any inconvenience, however this check is required to avoid " +"our helpdesk resources being overloaded by spammers." +msgstr "" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "Ошибка:" + +#: templates/helpdesk/public_view_ticket.html:10 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "Очередь: %(queue_name)s" + +#: templates/helpdesk/public_view_ticket.html:14 +#: templates/helpdesk/ticket_desc_table.html:42 +msgid "Submitted On" +msgstr "Отправлен в" + +#: templates/helpdesk/public_view_ticket.html:36 +msgid "Tags" +msgstr "Тэги" + +#: templates/helpdesk/public_view_ticket.html:49 +#: templates/helpdesk/ticket_desc_table.html:36 +msgid "Accept and Close" +msgstr "Принять и закрыть" + +#: templates/helpdesk/public_view_ticket.html:58 +#: templates/helpdesk/ticket.html:80 +msgid "Follow-Ups" +msgstr "Наблюдения" + +#: templates/helpdesk/public_view_ticket.html:66 +#: templates/helpdesk/ticket.html:97 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "Изменено %(field)s с %(old_value)s на %(new_value)s." + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "Вы больше не авторизированы" + +#: templates/helpdesk/registration/logged_out.html:4 +#, fuzzy +#| msgid "" +#| "\n" +#| "

Logged Out

\n" +#| "\n" +#| "

Thanks for being here. Hopefully you've helped resolve a few tickets " +#| "and make the world a better place.

\n" +#| "\n" +msgid "" +"\n" +"\n" +"
\n" +"
\n" +"

Successfully Logged Out

\n" +"

Thanks for being here. Hopefully you've helped resolve a few " +"tickets and make the world a better place.

\n" +"
\n" +"
\n" +"\n" +msgstr "" +"\n" +"

Выход произведён

\n" +"\n" +"

Спасибо что были здесь. Надеемся, вы помогли решить несколько тикетов и " +"сделать мир лучше.

\n" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "Вход в Helpdesk" + +#: templates/helpdesk/registration/login.html:13 +msgid "Please Sign In" +msgstr "" + +#: templates/helpdesk/registration/login.html:18 +msgid "Your username and password didn't match. Please try again." +msgstr "" +"Введённые имя пользователя и пароль не подошли. Пожалуйста попробуйте ещё " +"раз." + +#: templates/helpdesk/registration/login.html:29 +msgid "Remember Me" +msgstr "Запомнить меня" + +#: templates/helpdesk/registration/login.html:32 +msgid "Login" +msgstr "Вход" + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:4 +#: templates/helpdesk/report_output.html:29 +msgid "Reports & Statistics" +msgstr "Отчёты и Статистика" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "" +"Вы еще не создали ни одного тикета, так что вы не можете просмотреть отчеты." + +#: templates/helpdesk/report_index.html:16 +msgid "Current Ticket Stats" +msgstr "" + +#: templates/helpdesk/report_index.html:24 +msgid "Average number of days until ticket is closed (all tickets): " +msgstr "Среднее число дней до закрытия тикета (все тикеты)" + +#: templates/helpdesk/report_index.html:28 +msgid "" +"Average number of days until ticket is closed (tickets opened in last 60 " +"days): " +msgstr "Среднее число дней до закрытия тикета (за последние 60 дней)" + +#: templates/helpdesk/report_index.html:29 +msgid "Click" +msgstr "Щелкните" + +#: templates/helpdesk/report_index.html:29 +msgid "for detailed average by month." +msgstr "для детального отчета за месяц." + +#: templates/helpdesk/report_index.html:71 +msgid "Generate Report" +msgstr "Создать отчёт" + +#: templates/helpdesk/report_index.html:76 +msgid "Reports By User" +msgstr "Отчеты в разрезе Пользователей" + +#: templates/helpdesk/report_index.html:78 +#: templates/helpdesk/report_index.html:86 +msgid "by Priority" +msgstr "по Приоритету" + +#: templates/helpdesk/report_index.html:79 +msgid "by Queue" +msgstr "по Очереди" + +#: templates/helpdesk/report_index.html:80 +#: templates/helpdesk/report_index.html:87 +msgid "by Status" +msgstr "по Статусу" + +#: templates/helpdesk/report_index.html:81 +#: templates/helpdesk/report_index.html:88 +msgid "by Month" +msgstr "по Месяцам" + +#: templates/helpdesk/report_index.html:84 +msgid "Reports By Queue" +msgstr "Отчеты в разрезе Очередей" + +#: templates/helpdesk/report_index.html:89 views/staff.py:1195 +msgid "Days until ticket closed by Month" +msgstr "" + +#: templates/helpdesk/report_output.html:35 +msgid "Saved Queries" +msgstr "Сохранённые запросы" + +#: templates/helpdesk/report_output.html:40 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "" +"Этот запрос можно выполнить на отфильтрованных данных с помощью одного из " +"ваших сохраненных запросов." + +#: templates/helpdesk/report_output.html:42 +msgid "Select Query:" +msgstr "Выберите запрос:" + +#: templates/helpdesk/report_output.html:47 +msgid "Filter Report" +msgstr "Отчет фильтра" + +#: templates/helpdesk/report_output.html:50 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "" +"Хотите, чтобы этот отчет показал только подмножество данных? Перейдите к " +"списку тикетов, отфильтруйте запрос и сохраните запрос." + +#: templates/helpdesk/rss_list.html:7 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "" +"Следующие RSS-каналы доступны для вас что бы следить за обновлениями, " +"используя предпочтительное RSS программное обеспечение. За исключением " +"канала \"Последняя активность\", все каналы представляют информацию только " +"по открытым и возобновленным тикетам. Это позволяет не замусоривать RSS " +"программу информацией о закрытых или устаревших задачах." + +#: templates/helpdesk/rss_list.html:11 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "" +"Кратко о ваших открытых тикетах - полезно для получения уведомлений о новых " +"тикетах открытых вами" + +#: templates/helpdesk/rss_list.html:13 +msgid "Latest Activity" +msgstr "Последняя активность" + +#: templates/helpdesk/rss_list.html:14 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "" +"Кратко обо всей активности - включая комментарии, электронные письма, " +"вложенные файлы и так далее" + +#: templates/helpdesk/rss_list.html:17 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "" +"Все неназначенные тикеты - полезно что бы знать обо всех новых тикетах " +"открытых через браузер или электронную почту" + +#: templates/helpdesk/rss_list.html:20 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "" +"Эти ленты RSS позволят вам видеть сводку по вашим собственным или всем " +"тикетам, для любой очереди. Например, если вы управляете персоналом, " +"использующим определенную очередь, можно использовать ленту RSS для " +"просмотра новых тикетов этой очереди." + +#: templates/helpdesk/rss_list.html:26 +msgid "Per-Queue Feeds" +msgstr "Ленты Новостей по Очередям" + +#: templates/helpdesk/rss_list.html:35 +msgid "All Open Tickets" +msgstr "Все открытые Тикеты" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "Изменить системные настройки" + +#: templates/helpdesk/system_settings.html:8 +msgid "The following items can be maintained by you or other superusers:" +msgstr "" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "Игнорируемые адреса электронной почты" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "Настройка очередей" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "Настойка предопределённых ответов" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "Настройка категорий Базы знаний" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "Изменение статей Базы знаний" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "Настройка шаблонов электронных сообщений" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "Изменение пользователей" + +#: templates/helpdesk/ticket.html:4 +msgid "View Ticket Details" +msgstr "Просмотреть Тикет" + +#: templates/helpdesk/ticket.html:44 templates/helpdesk/ticket.html:231 +msgid "No files selected." +msgstr "" + +#: templates/helpdesk/ticket.html:91 +msgid "Private" +msgstr "Приватный" + +#: templates/helpdesk/ticket.html:112 +#: templates/helpdesk/ticket_desc_table.html:16 +msgid "Edit" +msgstr "" + +#: templates/helpdesk/ticket.html:136 +msgid "Respond to this ticket" +msgstr "Ответить на этот тикет" + +#: templates/helpdesk/ticket.html:143 +msgid "Use a Pre-set Reply" +msgstr "Использовать предопределённые ответы" + +#: templates/helpdesk/ticket.html:145 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "" +"Выбор предопределенного ответа перезапишет ваш комментарий. После чего (до " +"сохранения этого обновления) можно исправить предопределенный ответ по " +"своему усмотрению." + +#: templates/helpdesk/ticket.html:148 +msgid "Comment / Resolution" +msgstr "Комментарий / Решение" + +#: templates/helpdesk/ticket.html:150 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "" +"Вы можете вставить детали о тикете и очереди в ваше сообщение. Для " +"дополнительной информации смотрите Страница " +"помощи про Контекст." + +#: templates/helpdesk/ticket.html:153 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are " +"resolved." +msgstr "" +"Этот тикет не может быть разрешен или закрыт, пока не будут закрыты или " +"решены тикеты от которых он зависит." + +#: templates/helpdesk/ticket.html:192 +msgid "Is this update public?" +msgstr "Это публичный тикет?" + +#: templates/helpdesk/ticket.html:194 +msgid "Yes, make this update public." +msgstr "Это публичный тикет?" + +#: templates/helpdesk/ticket.html:195 +msgid "" +"If this is public, the submitter will be e-mailed your comment or resolution." +msgstr "" +"Если это публичный, отправитель получит по электронной почте ваш комментарий " +"или решение." + +#: templates/helpdesk/ticket.html:199 +msgid "Change Further Details »" +msgstr "Изменить дополнительную информацию »" + +#: templates/helpdesk/ticket.html:208 templates/helpdesk/ticket_list.html:61 +#: templates/helpdesk/ticket_list.html:90 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:487 +msgid "Owner" +msgstr "Владелец" + +#: templates/helpdesk/ticket.html:209 +msgid "Unassign" +msgstr "Не назначен" + +#: templates/helpdesk/ticket.html:220 +msgid "Attach File(s) »" +msgstr "Прикрепить файл(ы) »" + +#: templates/helpdesk/ticket.html:225 +msgid "Attach a File" +msgstr "Прикрепить файл" + +#: templates/helpdesk/ticket.html:228 +msgid "Add Another File" +msgstr "Добавить другой файл" + +#: templates/helpdesk/ticket.html:240 +msgid "Update This Ticket" +msgstr "Обновить этот тикет" + +#: templates/helpdesk/ticket_attachment_del.html:3 +msgid "Delete Ticket Attachment" +msgstr "Удалить вложение" + +#: templates/helpdesk/ticket_attachment_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket Attachment

\n" +"\n" +"

Are you sure you wish to delete the attachment %(filename)s from " +"this ticket? The attachment data will be permanently deleted from the " +"database, but the attachment itself will still exist on the server.

\n" +msgstr "" + +#: templates/helpdesk/ticket_attachment_del.html:11 +#: templates/helpdesk/ticket_cc_del.html:12 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "Не удалять" + +#: templates/helpdesk/ticket_attachment_del.html:14 +#: templates/helpdesk/ticket_dependency_del.html:14 +msgid "Yes, I Understand - Delete" +msgstr "Да, Я Понимаю - Удалить" + +#: templates/helpdesk/ticket_cc_add.html:3 +#: templates/helpdesk/ticket_cc_add.html:6 +msgid "Add Ticket CC" +msgstr "Добавить адрес в поле \"Копия\"" + +#: templates/helpdesk/ticket_cc_add.html:12 +#, fuzzy +#| msgid "" +#| "\n" +#| "

Add Ticket CC

\n" +#| "\n" +#| "

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.

" +msgid "" +"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." +msgstr "" +"\n" +"

Добавить адрес в поле \"Копия\"

\n" +"\n" +"

Для автоматической отправки электронной почты пользователю или на адрес " +"электронной почты, если тикет обновится, выберите пользователя или введите " +"адрес электронной почты ниже.

" + +#: templates/helpdesk/ticket_cc_add.html:18 +msgid "Email" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:27 +msgid "Add Email" +msgstr "Добавить e-mail" + +#: templates/helpdesk/ticket_cc_add.html:37 +#: templates/helpdesk/ticket_cc_add.html:51 +msgid "Save Ticket CC" +msgstr "Нет, не удалять" + +#: templates/helpdesk/ticket_cc_add.html:41 +msgid "Add User" +msgstr "Добавить пользователя" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "Да - удалить" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (" +"%(email_address)s) from the CC list for this ticket? They will stop " +"receiving updates.

\n" +msgstr "" +"\n" +"

Удалить адрес в поле \"Копия\"

\n" +"\n" +"

Вы уверены что хотите удалить этот адрес электронной почты (" +"%(email_address)s) из поля \"Копия\" для этого тикета? Они прекратят " +"получать обновления тикета.

\n" + +#: templates/helpdesk/ticket_cc_del.html:15 +msgid "Yes I Understand - Delete" +msgstr "Да, Я Понимаю - Удалить" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "Настройки поля \"Копия\" тикета" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever " +"%(ticket_title)s is updated. Some people can also view or edit the " +"ticket via the public ticket views.

\n" +"\n" +"

You can add a new recipient to the list or delete any of the items below " +"as required.

" +msgstr "" +"\n" +"

Настройки поля \"Копия\" тикета

\n" +"\n" +"

Следующие люди будут получать сообщения по электронной почте всякий раз, " +"когда %(ticket_title)s обновится. Некоторые люди " +"могут также просмотреть или изменить тикет с помощью общедоступного " +"интерфейса.

\n" +"\n" +"

Вы можете добавить новый адрес электронной почты к списку или удалить любой из пунктов ниже по мере необходимости.

" + +#: templates/helpdesk/ticket_cc_list.html:16 +msgid "Ticket CC List" +msgstr "Список в поле \"Копия\"" + +#: templates/helpdesk/ticket_cc_list.html:20 +msgid "Add an Email or Helpdesk User" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:25 +msgid "E-Mail Address or Helpdesk User" +msgstr "Адрес электронной почты или имя пользователя" + +#: templates/helpdesk/ticket_cc_list.html:26 +msgid "View?" +msgstr "Посмотреть?" + +#: templates/helpdesk/ticket_cc_list.html:27 +msgid "Update?" +msgstr "Обновить?" + +#: templates/helpdesk/ticket_cc_list.html:53 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "Вернутся к %(ticket_title)s" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "Добавить зависимость" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the " +"dependent ticket has been resolved or closed.

" +msgstr "" +"\n" +"

Добавить зависимость

\n" +"\n" +"

Добавляя зависимость этому тикету, вы оставляете решение проблемы до тех " +"пор, пока не закроют или решат зависимый тикет.

" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "Сохранить зависимость тикета" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "Удалить зависимость тикета" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "" +"\n" +"

Удалить зависимость тикета

\n" +"\n" +"

Вы уверены, что хотите удалить зависимость для этого тикета?

\n" + +#: templates/helpdesk/ticket_desc_table.html:8 +#, fuzzy +#| msgid "Helpdesk Summary" +msgid "Ticket Summary" +msgstr "Сводка по Helpdesk" + +#: templates/helpdesk/ticket_desc_table.html:18 +msgid "Unhold" +msgstr "Снять с удержания" + +#: templates/helpdesk/ticket_desc_table.html:18 +msgid "Hold" +msgstr "Удерживать" + +#: templates/helpdesk/ticket_desc_table.html:20 +#, python-format +msgid "Queue: %(queue)s" +msgstr "Очередь: %(queue)s" + +#: templates/helpdesk/ticket_desc_table.html:47 +msgid "Assigned To" +msgstr "Назначен " + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Ignore" +msgstr "Игнорировать" + +#: templates/helpdesk/ticket_desc_table.html:62 +msgid "Copies To" +msgstr "Копии для" + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this " +"ticket is updated." +msgstr "" +"Нажмите здесь, чтобы добавить / удалить людей, которые должны получать " +"сообщения электронной почты каждый раз, когда этот тикет обновляется." + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "Manage" +msgstr "Настроить" + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "" +"Click here to subscribe yourself to this ticket, if you want to receive an e-" +"mail whenever this ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "Subscribe" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:67 +msgid "Dependencies" +msgstr "Зависимости" + +#: templates/helpdesk/ticket_desc_table.html:69 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "" +"Этот тикет не может быть разрешен или закрыт, пока не будут закрыты или " +"решены следующие тикеты" + +#: templates/helpdesk/ticket_desc_table.html:70 +msgid "Remove Dependency" +msgstr "Удалить зависимость" + +#: templates/helpdesk/ticket_desc_table.html:73 +msgid "This ticket has no dependencies." +msgstr "Этот тикет не имеет зависимостей." + +#: templates/helpdesk/ticket_desc_table.html:75 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "" +"Нажмите на 'Добавить зависимость', если вы хотите сделать этот тикет " +"зависимым от другого тикета. Тикет не может быть закрыт, пока не будут " +"закрыты все тикеты, от которых он зависит." + +#: templates/helpdesk/ticket_desc_table.html:75 +msgid "Add Dependency" +msgstr "Добавить зависимость" + +#: templates/helpdesk/ticket_list.html:13 +msgid "No Tickets Match Your Selection" +msgstr "Тикетов, соответствующих вашему запросу, не найдено" + +#: templates/helpdesk/ticket_list.html:45 +#, fuzzy +#| msgid "Question" +msgid "Query Selection" +msgstr "Вопрос" + +#: templates/helpdesk/ticket_list.html:53 +msgid "Change Query" +msgstr "Изменить запрос" + +#: templates/helpdesk/ticket_list.html:60 +#: templates/helpdesk/ticket_list.html:72 +msgid "Sorting" +msgstr "Сортировка" + +#: templates/helpdesk/ticket_list.html:64 +#: templates/helpdesk/ticket_list.html:132 +msgid "Keywords" +msgstr "Ключевые слова" + +#: templates/helpdesk/ticket_list.html:65 +msgid "Date Range" +msgstr "Диапазон дат" + +#: templates/helpdesk/ticket_list.html:93 +msgid "Reverse" +msgstr "Реверс" + +#: templates/helpdesk/ticket_list.html:95 +msgid "Ordering applied to tickets" +msgstr "Сортировка применяема к тикетам" + +#: templates/helpdesk/ticket_list.html:100 +msgid "Owner(s)" +msgstr "Владелец(ы)" + +#: templates/helpdesk/ticket_list.html:104 +msgid "(ME)" +msgstr "(МЕНЯ)" + +#: templates/helpdesk/ticket_list.html:108 +msgid "Ctrl-Click to select multiple options" +msgstr "Нажмите Ctrl для выбора нескольких вариантов" + +#: templates/helpdesk/ticket_list.html:113 +msgid "Queue(s)" +msgstr "Очередь(и)" + +#: templates/helpdesk/ticket_list.html:114 +#: templates/helpdesk/ticket_list.html:120 +msgid "Ctrl-click to select multiple options" +msgstr "Нажмите Ctrl для выбора нескольких вариантов" + +#: templates/helpdesk/ticket_list.html:119 +msgid "Status(es)" +msgstr "Статус(ы)" + +#: templates/helpdesk/ticket_list.html:125 +msgid "Date (From)" +msgstr "Дата (с)" + +#: templates/helpdesk/ticket_list.html:126 +msgid "Date (To)" +msgstr "Дата (по)" + +#: templates/helpdesk/ticket_list.html:127 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "Использовать формат даты гггг-мм-дд, например 2011-05-29" + +#: templates/helpdesk/ticket_list.html:133 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and " +"submitter fields." +msgstr "" +"Ключевые слова не зависят от регистра букв и будут искаться в полях " +"заголовка, тексте и отправителях." + +#: templates/helpdesk/ticket_list.html:137 +msgid "Apply Filter" +msgstr "Применить фильтр" + +#: templates/helpdesk/ticket_list.html:139 +#, python-format +msgid "" +"You are currently viewing saved query \"%(query_name)s\"." +msgstr "" + +#: templates/helpdesk/ticket_list.html:142 +#, python-format +msgid "" +"
Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "" +"Выполнить отчет для этого " +"запроса, чтобы просмотреть статистику и графики для данных, перечисленных " +"ниже." + +#: templates/helpdesk/ticket_list.html:151 +#: templates/helpdesk/ticket_list.html:169 +msgid "Save Query" +msgstr "Сохранить запрос" + +#: templates/helpdesk/ticket_list.html:161 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "" +"Это название появится в выпадающем списке сохраненных запросов. Если вы " +"дадите доступ к своему запросу другим пользователям, они увидят это " +"название, так что выберите что-нибудь четкое, информативное!" + +#: templates/helpdesk/ticket_list.html:163 +msgid "Shared?" +msgstr "Общие?" + +#: templates/helpdesk/ticket_list.html:164 +msgid "Yes, share this query with other users." +msgstr "Да, поделится этим запросом с другими пользователями." + +#: templates/helpdesk/ticket_list.html:165 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "" +"Если вы поделитесь этим запросом, его смогут видеть все " +"авторизированные пользователи." + +#: templates/helpdesk/ticket_list.html:178 +msgid "Use Saved Query" +msgstr "Использовать сохранённый запрос" + +#: templates/helpdesk/ticket_list.html:184 +msgid "Query" +msgstr "Запрос" + +#: templates/helpdesk/ticket_list.html:189 +msgid "Run Query" +msgstr "Выполнить запрос" + +#: templates/helpdesk/ticket_list.html:209 +msgid "Query Results" +msgstr "Результаты запроса" + +#: templates/helpdesk/ticket_list.html:245 +msgid "Select:" +msgstr "Выбрать:" + +#: templates/helpdesk/ticket_list.html:248 +msgid "Invert" +msgstr "Инвертировать" + +#: templates/helpdesk/ticket_list.html:251 +msgid "With Selected Tickets:" +msgstr "С выбранными тикетами:" + +#: templates/helpdesk/ticket_list.html:251 +msgid "Take (Assign to me)" +msgstr "Принять (Связать со мной)" + +#: templates/helpdesk/ticket_list.html:251 +msgid "Close" +msgstr "Закрыть" + +#: templates/helpdesk/ticket_list.html:251 +msgid "Close (Don't Send E-Mail)" +msgstr "Закрыть (не отправлять E-Mail)" + +#: templates/helpdesk/ticket_list.html:251 +msgid "Close (Send E-Mail)" +msgstr "Закрыть (отправить E-Mail)" + +#: templates/helpdesk/ticket_list.html:251 +msgid "Assign To" +msgstr "Назначить" + +#: templates/helpdesk/ticket_list.html:251 +msgid "Nobody (Unassign)" +msgstr "Никому (Несвязанные)" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "Изменить Настройки Пользователя" + +#: templates/helpdesk/user_settings.html:8 +msgid "" +"Use the following options to change the way your helpdesk system works for " +"you. These settings do not impact any other user." +msgstr "" + +#: templates/helpdesk/user_settings.html:13 +msgid "Save Options" +msgstr "Сохранить настройки" + +#: views/feeds.py:37 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "Helpdesk: открытые тикеты в очереди %(queue)s для %(username)s" + +#: views/feeds.py:42 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "Helpdesk: открытые тикеты для %(username)s" + +#: views/feeds.py:48 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "Открытые и переоткрытые тикеты в очереди %(queue)s для %(username)s" + +#: views/feeds.py:53 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "Открытые и переоткрытые тикеты для %(username)s" + +#: views/feeds.py:100 +msgid "Helpdesk: Unassigned Tickets" +msgstr "Helpdesk: неназначенные тикеты" + +#: views/feeds.py:101 +msgid "Unassigned Open and Reopened tickets" +msgstr "Неназначенные открытые и переоткрытые тикеты" + +#: views/feeds.py:125 +msgid "Helpdesk: Recent Followups" +msgstr "Helpdesk: недавние дополнения" + +#: views/feeds.py:126 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "" +"Недавние дополнения, такие как ответы на электронную почту, комментарии, " +"прикрепленные файлы и решения" + +#: views/feeds.py:141 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "Helpdesk: открытые тикеты в очереди %(queue)s" + +#: views/feeds.py:146 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "Открытые и переоткрытые тикеты в очереди %(queue)s" + +#: views/public.py:86 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "" +"Неверный ID тикета или адрес электронной почты, Пожалуйста попробуйте ещё." + +#: views/public.py:109 +msgid "Submitter accepted resolution and closed ticket" +msgstr "Отправитель одобрил решение и закрыл тикет" + +#: views/staff.py:287 +msgid "Accepted resolution and closed ticket" +msgstr "Принято решение и тикет закрыт" + +#: views/staff.py:433 +#, python-format +msgid "Assigned to %(username)s" +msgstr "Назначен %(username)s" + +#: views/staff.py:459 +msgid "Updated" +msgstr "Обновлено" + +#: views/staff.py:659 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "Назначен на %(username)s при массовом обновлении" + +#: views/staff.py:670 +msgid "Unassigned in bulk update" +msgstr "Нераспределен при массовом обновлении" + +#: views/staff.py:679 views/staff.py:689 +msgid "Closed in bulk update" +msgstr "Закрыт при массовом обновлении" + +#: views/staff.py:902 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string " +"matching in SQLite." +msgstr "" +"

Замечание: ваш поиск по ключевым словам происходит с " +"учетом регистра из-за вашей базы данных. Это означает, что поиск не " +"будет точным. При переключении на другую систему баз данных, вы " +"получите лучший поиск! Для получения дополнительной информации ознакомьтесь " +"с Django документацией про сравнение строк в SQLite." + +#: views/staff.py:1012 +msgid "Ticket taken off hold" +msgstr "Удержание тикета снято" + +#: views/staff.py:1015 +msgid "Ticket placed on hold" +msgstr "Тикет удерживается" + +#: views/staff.py:1152 +msgid "User by Priority" +msgstr "Пользователи по Приоритетам" + +#: views/staff.py:1158 +msgid "User by Queue" +msgstr "Пользователи по Очередям" + +#: views/staff.py:1165 +msgid "User by Status" +msgstr "Пользователи по Статусам" + +#: views/staff.py:1171 +msgid "User by Month" +msgstr "Пользователи по Месяцам" + +#: views/staff.py:1177 +msgid "Queue by Priority" +msgstr "Очереди по Приоритетам" + +#: views/staff.py:1183 +msgid "Queue by Status" +msgstr "Очереди по Статусам" + +#: views/staff.py:1189 +msgid "Queue by Month" +msgstr "Очереди по Месяцам" + +#~ msgid "Description of Issue" +#~ msgstr "Описание проблемы" + +#~ msgid "Summary of your query" +#~ msgstr "Краткое описание вашего запроса" + +#~ msgid "Urgency" +#~ msgstr "Срочность" + +#~ msgid "Please select a priority carefully." +#~ msgstr "Пожалуйста, тщательно выберите приоритеты." + +#~ msgid "E-mail me when a ticket is changed via the API?" +#~ msgstr "Уведомить меня когда тикет изменён через API?" + +#~ msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +#~ msgstr "" +#~ "Хотите ли вы получать электронное уведомление если тикет был изменён " +#~ "через API" + +#~ msgid " (Reopened)" +#~ msgstr " (Возобновлено)" + +#~ msgid " (Updated)" +#~ msgstr "(Обновлено)" + +#~ msgid "RSS Icon" +#~ msgstr "Иконка RSS" + +#~ msgid "API" +#~ msgstr "API" + +#~ msgid "Days since opened" +#~ msgstr "Дней с момента открытия" + +#~ msgid "Number of open tickets" +#~ msgstr "Число открытых тикетов" + +#~ msgid "Knowledgebase Category: %(kbcat)s" +#~ msgstr "Категория Базы Знаний: %(kbcat)s" + +#~ msgid "Article" +#~ msgstr "Статья" + +#~ msgid "Knowledgebase: %(item)s" +#~ msgstr "База Знаний: %(item)s" + +#~ msgid "Feedback" +#~ msgstr "Обратная Связь" + +#~ msgid "" +#~ "We give our users an opportunity to vote for items that they believe have " +#~ "helped them out, in order for us to better serve future customers. We " +#~ "would appreciate your feedback on this article. Did you find it useful?" +#~ msgstr "" +#~ "Мы предоставляем нашим пользователям возможность голосовать за статьи, " +#~ "которые по их мнению, способствовали им, с тем чтобы мы могли лучше " +#~ "обслуживать клиентов в будущем. Мы будем признательны за ваши отзывы на " +#~ "эту статью. Было ли это полезным?" + +#~ msgid "This article was useful to me" +#~ msgstr "Эта статья была полезна для меня" + +#~ msgid "This article was not useful to me" +#~ msgstr "Эта статья была бесполезна для меня" + +#~ msgid "Accept" +#~ msgstr "Принять" + +#~ msgid "Open Tickets" +#~ msgstr "Открытые Тикеты" + +#~ msgid "Attach another File" +#~ msgstr "Прикрепить другой файл" + +#~ msgid "Yes, Delete" +#~ msgstr "Удалить" + +#~ msgid "Previous" +#~ msgstr "Предыдущий" + +#~ msgid "Page %(ticket_num)s of %(num_pages)s." +#~ msgstr "Страница %(ticket_num)s из %(num_pages)s." + +#~ msgid "Next" +#~ msgstr "Следующая" diff --git a/build/lib/helpdesk/locale/sv/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/sv/LC_MESSAGES/django.mo new file mode 100644 index 00000000..0c4be203 Binary files /dev/null and b/build/lib/helpdesk/locale/sv/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/sv/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/sv/LC_MESSAGES/django.po new file mode 100644 index 00000000..28fd6237 --- /dev/null +++ b/build/lib/helpdesk/locale/sv/LC_MESSAGES/django.po @@ -0,0 +1,2322 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Alexander Nordlund , 2012 +# osterberg , 2012 +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2012-08-07 20:40+1000\n" +"PO-Revision-Date: 2013-04-29 09:18+0000\n" +"Last-Translator: Ross Poulton \n" +"Language-Team: Swedish (http://www.transifex.com/projects/p/django-helpdesk/language/sv/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: sv\n" +"Plural-Forms: nplurals=2; plural=(n != 1);\n" + +#: forms.py:113 forms.py:360 models.py:262 +#: templates/helpdesk/dashboard.html:11 templates/helpdesk/dashboard.html:37 +#: templates/helpdesk/dashboard.html:57 templates/helpdesk/dashboard.html:77 +#: templates/helpdesk/dashboard.html:99 templates/helpdesk/rss_list.html:23 +#: templates/helpdesk/ticket_list.html:56 +#: templates/helpdesk/ticket_list.html:78 +#: templates/helpdesk/ticket_list.html:199 views/staff.py:976 +#: views/staff.py:982 views/staff.py:988 +msgid "Queue" +msgstr "Kö" + +#: forms.py:122 +msgid "Summary of the problem" +msgstr "" + +#: forms.py:127 +msgid "Submitter E-Mail Address" +msgstr "" + +#: forms.py:129 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "" + +#: forms.py:135 +msgid "Description of Issue" +msgstr "" + +#: forms.py:142 +msgid "Case owner" +msgstr "" + +#: forms.py:143 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "" + +#: forms.py:151 models.py:322 management/commands/escalate_tickets.py:149 +#: templates/helpdesk/public_view_ticket.html:21 +#: templates/helpdesk/ticket.html:176 +#: templates/helpdesk/ticket_desc_table.html:31 +#: templates/helpdesk/ticket_list.html:84 views/staff.py:355 +msgid "Priority" +msgstr "Prio" + +#: forms.py:152 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "" + +#: forms.py:159 forms.py:397 models.py:330 templates/helpdesk/ticket.html:178 +#: views/staff.py:365 +msgid "Due on" +msgstr "" + +#: forms.py:171 forms.py:402 +msgid "Attach File" +msgstr "Bifogad fil" + +#: forms.py:172 forms.py:403 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "" + +#: forms.py:180 templates/helpdesk/public_view_ticket.html:33 +#: templates/helpdesk/ticket.html:182 +#: templates/helpdesk/ticket_desc_table.html:42 +#: templates/helpdesk/ticket_list.html:61 +#: templates/helpdesk/ticket_list.html:199 views/staff.py:376 +msgid "Tags" +msgstr "Tagar" + +#: forms.py:181 +msgid "" +"Words, separated by spaces, or phrases separated by commas. These should " +"communicate significant characteristics of this ticket" +msgstr "" + +#: forms.py:275 +msgid "Ticket Opened" +msgstr "" + +#: forms.py:282 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "" + +#: forms.py:369 +msgid "Summary of your query" +msgstr "" + +#: forms.py:374 +msgid "Your E-Mail Address" +msgstr "Din E-postadress" + +#: forms.py:375 +msgid "We will e-mail you when your ticket is updated." +msgstr "" + +#: forms.py:380 +msgid "Description of your issue" +msgstr "" + +#: forms.py:382 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "" + +#: forms.py:390 +msgid "Urgency" +msgstr "" + +#: forms.py:391 +msgid "Please select a priority carefully." +msgstr "" + +#: forms.py:486 +msgid "Ticket Opened Via Web" +msgstr "" + +#: forms.py:553 +msgid "Show Ticket List on Login?" +msgstr "" + +#: forms.py:554 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "" + +#: forms.py:559 +msgid "E-mail me on ticket change?" +msgstr "" + +#: forms.py:560 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:565 +msgid "E-mail me when assigned a ticket?" +msgstr "" + +#: forms.py:566 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:571 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "" + +#: forms.py:572 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:577 +msgid "Number of tickets to show per page" +msgstr "" + +#: forms.py:578 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "" + +#: forms.py:585 +msgid "Use my e-mail address when submitting tickets?" +msgstr "" + +#: forms.py:586 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "" + +#: models.py:32 models.py:256 models.py:490 models.py:787 models.py:821 +#: templates/helpdesk/dashboard.html:37 templates/helpdesk/dashboard.html:57 +#: templates/helpdesk/dashboard.html:77 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/ticket.html:170 templates/helpdesk/ticket_list.html:75 +#: templates/helpdesk/ticket_list.html:199 views/staff.py:345 +msgid "Title" +msgstr "Titel" + +#: models.py:37 models.py:792 models.py:1162 +msgid "Slug" +msgstr "Skvätt" + +#: models.py:38 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "" + +#: models.py:43 models.py:1015 models.py:1085 models.py:1159 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "" + +#: models.py:46 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "" + +#: models.py:52 models.py:766 +msgid "Locale" +msgstr "" + +#: models.py:56 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "" + +#: models.py:60 +msgid "Allow Public Submission?" +msgstr "" + +#: models.py:63 +msgid "Should this queue be listed on the public submission form?" +msgstr "" + +#: models.py:68 +msgid "Allow E-Mail Submission?" +msgstr "" + +#: models.py:71 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "" + +#: models.py:76 +msgid "Escalation Days" +msgstr "" + +#: models.py:79 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "" + +#: models.py:84 +msgid "New Ticket CC Address" +msgstr "" + +#: models.py:88 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "" + +#: models.py:94 +msgid "Updated Ticket CC Address" +msgstr "" + +#: models.py:98 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "" + +#: models.py:105 +msgid "E-Mail Box Type" +msgstr "" + +#: models.py:107 +msgid "POP 3" +msgstr "POP3" + +#: models.py:107 +msgid "IMAP" +msgstr "IMAP" + +#: models.py:110 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "" + +#: models.py:115 +msgid "E-Mail Hostname" +msgstr "" + +#: models.py:119 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "" + +#: models.py:124 +msgid "E-Mail Port" +msgstr "Email Port" + +#: models.py:127 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "" + +#: models.py:133 +msgid "Use SSL for E-Mail?" +msgstr "" + +#: models.py:136 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "" + +#: models.py:141 +msgid "E-Mail Username" +msgstr "Email Användarnamn" + +#: models.py:145 +msgid "Username for accessing this mailbox." +msgstr "" + +#: models.py:149 +msgid "E-Mail Password" +msgstr "Email Lösenord" + +#: models.py:153 +msgid "Password for the above username" +msgstr "Lösenord för ovanstående användarnamn" + +#: models.py:157 +msgid "IMAP Folder" +msgstr "" + +#: models.py:161 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "" + +#: models.py:168 +msgid "E-Mail Check Interval" +msgstr "" + +#: models.py:169 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "" + +#: models.py:240 templates/helpdesk/dashboard.html:11 +#: templates/helpdesk/ticket.html:130 +msgid "Open" +msgstr "Öppen" + +#: models.py:241 templates/helpdesk/ticket.html:136 +#: templates/helpdesk/ticket.html.py:142 templates/helpdesk/ticket.html:147 +#: templates/helpdesk/ticket.html.py:151 +msgid "Reopened" +msgstr "" + +#: models.py:242 templates/helpdesk/dashboard.html:11 +#: templates/helpdesk/ticket.html:131 templates/helpdesk/ticket.html.py:137 +#: templates/helpdesk/ticket.html:143 +msgid "Resolved" +msgstr "Löst" + +#: models.py:243 templates/helpdesk/dashboard.html:11 +#: templates/helpdesk/ticket.html:132 templates/helpdesk/ticket.html.py:138 +#: templates/helpdesk/ticket.html:144 templates/helpdesk/ticket.html.py:148 +msgid "Closed" +msgstr "Stängd" + +#: models.py:244 templates/helpdesk/ticket.html:133 +#: templates/helpdesk/ticket.html.py:139 templates/helpdesk/ticket.html:152 +msgid "Duplicate" +msgstr "Dublett" + +#: models.py:248 +msgid "1. Critical" +msgstr "1. Kritisk" + +#: models.py:249 +msgid "2. High" +msgstr "2. Hög" + +#: models.py:250 +msgid "3. Normal" +msgstr "3. Normal" + +#: models.py:251 +msgid "4. Low" +msgstr "4. Låg" + +#: models.py:252 +msgid "5. Very Low" +msgstr "5. Väldigt låg" + +#: models.py:266 templates/helpdesk/dashboard.html:77 +#: templates/helpdesk/ticket_list.html:72 +#: templates/helpdesk/ticket_list.html:199 +msgid "Created" +msgstr "Skapad" + +#: models.py:268 +msgid "Date this ticket was first created" +msgstr "" + +#: models.py:272 +msgid "Modified" +msgstr "Ändrad" + +#: models.py:274 +msgid "Date this ticket was most recently changed." +msgstr "" + +#: models.py:278 templates/helpdesk/public_view_ticket.html:16 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Submitter E-Mail" +msgstr "" + +#: models.py:281 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "" + +#: models.py:290 +msgid "Assigned to" +msgstr "Tilldelad" + +#: models.py:294 templates/helpdesk/dashboard.html:37 +#: templates/helpdesk/dashboard.html:57 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/ticket_list.html:57 +#: templates/helpdesk/ticket_list.html:81 +#: templates/helpdesk/ticket_list.html:199 +msgid "Status" +msgstr "Status" + +#: models.py:300 +msgid "On Hold" +msgstr "" + +#: models.py:303 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "" + +#: models.py:308 models.py:796 templates/helpdesk/public_view_ticket.html:39 +#: templates/helpdesk/ticket_desc_table.html:67 +msgid "Description" +msgstr "Beskrivning" + +#: models.py:311 +msgid "The content of the customers query." +msgstr "" + +#: models.py:315 templates/helpdesk/public_view_ticket.html:46 +#: templates/helpdesk/ticket_desc_table.html:74 +msgid "Resolution" +msgstr "Lösning" + +#: models.py:318 +msgid "The resolution provided to the customer by our staff." +msgstr "" + +#: models.py:326 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "1 = Högst priorite, 5 = Lägsta prioritet" + +#: models.py:339 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "" + +#: models.py:348 templates/helpdesk/ticket_desc_table.html:22 +#: views/feeds.py:91 views/feeds.py:117 views/feeds.py:169 views/staff.py:302 +msgid "Unassigned" +msgstr "" + +#: models.py:387 +msgid " - On Hold" +msgstr "" + +#: models.py:481 models.py:1073 models.py:1231 models.py:1256 +#: templates/helpdesk/public_homepage.html:26 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "Ärende" + +#: models.py:485 models.py:714 models.py:1008 models.py:1156 +msgid "Date" +msgstr "Datum" + +#: models.py:497 views/staff.py:316 +msgid "Comment" +msgstr "Kommentar" + +#: models.py:503 +msgid "Public" +msgstr "Publik" + +#: models.py:506 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "" + +#: models.py:514 models.py:888 models.py:1081 views/staff.py:952 +#: views/staff.py:958 views/staff.py:964 views/staff.py:970 +msgid "User" +msgstr "Användare" + +#: models.py:518 templates/helpdesk/ticket.html:127 +msgid "New Status" +msgstr "" + +#: models.py:522 +msgid "If the status was changed, what was it changed to?" +msgstr "" + +#: models.py:551 models.py:608 +msgid "Follow-up" +msgstr "" + +#: models.py:555 models.py:1236 +msgid "Field" +msgstr "Fält" + +#: models.py:560 +msgid "Old Value" +msgstr "Tidigare värde" + +#: models.py:566 +msgid "New Value" +msgstr "Nytt värde" + +#: models.py:574 +msgid "removed" +msgstr "borttagen" + +#: models.py:576 +#, python-format +msgid "set to %s" +msgstr "ändrad till %s" + +#: models.py:578 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "" + +#: models.py:612 +msgid "File" +msgstr "Fil" + +#: models.py:617 +msgid "Filename" +msgstr "Filnamn" + +#: models.py:622 +msgid "MIME Type" +msgstr "" + +#: models.py:627 +msgid "Size" +msgstr "Storlek" + +#: models.py:628 +msgid "Size of this file in bytes" +msgstr "Filstorleken i bytes" + +#: models.py:663 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "" + +#: models.py:668 models.py:709 models.py:1003 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "Namn" + +#: models.py:670 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "" + +#: models.py:675 +msgid "Body" +msgstr "" + +#: models.py:676 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "" + +#: models.py:703 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "" + +#: models.py:715 +msgid "Date on which escalation should not happen" +msgstr "" + +#: models.py:732 +msgid "Template Name" +msgstr "" + +#: models.py:737 +msgid "Subject" +msgstr "Ämne" + +#: models.py:739 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "" + +#: models.py:745 +msgid "Heading" +msgstr "Rubrik" + +#: models.py:747 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "" + +#: models.py:753 +msgid "Plain Text" +msgstr "" + +#: models.py:754 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "" + +#: models.py:760 +msgid "HTML" +msgstr "HTML" + +#: models.py:761 +msgid "The same context is available here as in plain_text, above." +msgstr "" + +#: models.py:770 +msgid "Locale of this template." +msgstr "" + +#: models.py:817 templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Category" +msgstr "Kategori" + +#: models.py:826 +msgid "Question" +msgstr "Fråga" + +#: models.py:830 +msgid "Answer" +msgstr "Svar" + +#: models.py:834 +msgid "Votes" +msgstr "Röster" + +#: models.py:835 +msgid "Total number of votes cast for this item" +msgstr "" + +#: models.py:840 +msgid "Positive Votes" +msgstr "" + +#: models.py:841 +msgid "Number of votes for this item which were POSITIVE." +msgstr "Email Port" + +#: models.py:846 +msgid "Last Updated" +msgstr "Senast uppdaterad" + +#: models.py:847 +msgid "The date on which this question was most recently changed." +msgstr "" + +#: models.py:861 +msgid "Unrated" +msgstr "" + +#: models.py:892 templates/helpdesk/ticket_list.html:158 +msgid "Query Name" +msgstr "" + +#: models.py:894 +msgid "User-provided name for this query" +msgstr "" + +#: models.py:898 +msgid "Shared With Other Users?" +msgstr "" + +#: models.py:901 +msgid "Should other users see this query?" +msgstr "" + +#: models.py:905 +msgid "Search Query" +msgstr "Sökfråga" + +#: models.py:906 +msgid "Pickled query object. Be wary changing this." +msgstr "" + +#: models.py:927 +msgid "Settings Dictionary" +msgstr "" + +#: models.py:928 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "" + +#: models.py:997 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "" + +#: models.py:1009 +msgid "Date on which this e-mail address was added" +msgstr "" + +#: models.py:1017 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "" + +#: models.py:1022 +msgid "Save Emails in Mailbox?" +msgstr "Spara Emails i Mailboxen?" + +#: models.py:1025 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "" + +#: models.py:1080 +msgid "User who wishes to receive updates for this ticket." +msgstr "" + +#: models.py:1088 +msgid "For non-user followers, enter their e-mail address" +msgstr "" + +#: models.py:1092 +msgid "Can View Ticket?" +msgstr "" + +#: models.py:1094 +msgid "Can this CC login to view the ticket details?" +msgstr "" + +#: models.py:1098 +msgid "Can Update Ticket?" +msgstr "" + +#: models.py:1100 +msgid "Can this CC login and update the ticket?" +msgstr "" + +#: models.py:1131 +msgid "Field Name" +msgstr "" + +#: models.py:1132 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "" + +#: models.py:1137 +msgid "Label" +msgstr "Etikett" + +#: models.py:1139 +msgid "The display label for this field" +msgstr "" + +#: models.py:1143 +msgid "Help Text" +msgstr "" + +#: models.py:1144 +msgid "Shown to the user when editing the ticket" +msgstr "" + +#: models.py:1150 +msgid "Character (single line)" +msgstr "" + +#: models.py:1151 +msgid "Text (multi-line)" +msgstr "" + +#: models.py:1152 +msgid "Integer" +msgstr "Heltal" + +#: models.py:1153 +msgid "Decimal" +msgstr "Decimal" + +#: models.py:1154 +msgid "List" +msgstr "Lista" + +#: models.py:1155 +msgid "Boolean (checkbox yes/no)" +msgstr "Boolean (kryss-ruta ja/nej)" + +#: models.py:1157 +msgid "Time" +msgstr "Tid" + +#: models.py:1158 +msgid "Date & Time" +msgstr "Datum & Tid" + +#: models.py:1160 +msgid "URL" +msgstr "URL" + +#: models.py:1161 +msgid "IP Address" +msgstr "IP Adress" + +#: models.py:1166 +msgid "Data Type" +msgstr "" + +#: models.py:1168 +msgid "Allows you to restrict the data entered into this field" +msgstr "" + +#: models.py:1173 +msgid "Maximum Length (characters)" +msgstr "" + +#: models.py:1179 +msgid "Decimal Places" +msgstr "" + +#: models.py:1180 +msgid "Only used for decimal fields" +msgstr "" + +#: models.py:1186 +msgid "Add empty first choice to List?" +msgstr "" + +#: models.py:1187 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "" + +#: models.py:1191 +msgid "List Values" +msgstr "" + +#: models.py:1192 +msgid "For list fields only. Enter one option per line." +msgstr "Röster" + +#: models.py:1198 +msgid "Ordering" +msgstr "Sortering" + +#: models.py:1199 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "" + +#: models.py:1213 +msgid "Required?" +msgstr "Obligatorisk?" + +#: models.py:1214 +msgid "Does the user have to enter a value for this field?" +msgstr "" + +#: models.py:1218 +msgid "Staff Only?" +msgstr "" + +#: models.py:1219 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "" + +#: models.py:1262 +msgid "Depends On Ticket" +msgstr "" + +#: management/commands/create_usersettings.py:21 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "" + +#: management/commands/escalate_tickets.py:143 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "" + +#: management/commands/get_email.py:151 +msgid "Created from e-mail" +msgstr "Skapad från email" + +#: management/commands/get_email.py:155 +msgid "Unknown Sender" +msgstr "Okänd avsändare" + +#: management/commands/get_email.py:209 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "" + +#: management/commands/get_email.py:213 +msgid "email_html_body.html" +msgstr "email_html_body.html" + +#: management/commands/get_email.py:256 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:264 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:322 +msgid " (Reopened)" +msgstr "" + +#: management/commands/get_email.py:324 +msgid " (Updated)" +msgstr " (Uppdaterad)" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"Powered by django-" +"helpdesk." +msgstr "" + +#: templates/helpdesk/attribution.html:4 +msgid "For technical support please contact:" +msgstr "" + +#: templates/helpdesk/base.html:9 +msgid "Powered by django-helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:19 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:23 templates/helpdesk/rss_list.html:28 +msgid "My Open Tickets" +msgstr "Mina Öppna Ärenden" + +#: templates/helpdesk/base.html:20 +msgid "All Recent Activity" +msgstr "" + +#: templates/helpdesk/base.html:21 templates/helpdesk/dashboard.html:76 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "" + +#: templates/helpdesk/base.html:101 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:14 +msgid "Helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:111 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:27 templates/helpdesk/rss_list.html:28 +msgid "RSS Icon" +msgstr "RSS Ikon" + +#: templates/helpdesk/base.html:111 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "RSS Flöde" + +#: templates/helpdesk/base.html:112 +msgid "API" +msgstr "API" + +#: templates/helpdesk/base.html:113 +msgid "User Settings" +msgstr "" + +#: templates/helpdesk/base.html:115 +msgid "Change Language" +msgstr "Ändra Språk" + +#: templates/helpdesk/base.html:117 +msgid "System Settings" +msgstr "Systeminställningar" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:144 +msgid "Delete Saved Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:5 +#, python-format +msgid "" +"\n" +"

Delete Query

\n" +"\n" +"

Are you sure you want to delete this saved filter (%(query_title)s)? To re-create it, you will need to manually re-filter your ticket listing.

\n" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"\n" +"

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.

\n" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:15 +#: templates/helpdesk/delete_ticket.html:11 +msgid "No, Don't Delete It" +msgstr "Dublett" + +#: templates/helpdesk/confirm_delete_saved_query.html:17 +#: templates/helpdesk/delete_ticket.html:13 +msgid "Yes - Delete It" +msgstr "" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "Skapa Ärende" + +#: templates/helpdesk/create_ticket.html:6 +msgid "" +"

Submit a Ticket

\n" +"\n" +"

Unless otherwise stated, all fields are required. Please provide as descriptive a title and description as possible.

" +msgstr "" + +#: templates/helpdesk/create_ticket.html:17 +#: templates/helpdesk/edit_ticket.html:19 +#: templates/helpdesk/public_homepage.html:50 +msgid "(Optional)" +msgstr "" + +#: templates/helpdesk/create_ticket.html:26 +#: templates/helpdesk/public_homepage.html:59 +msgid "Submit Ticket" +msgstr "" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "" + +#: templates/helpdesk/dashboard.html:10 +msgid "Helpdesk Summary" +msgstr "" + +#: templates/helpdesk/dashboard.html:25 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "" + +#: templates/helpdesk/dashboard.html:27 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see your own " +"tickets, and those tickets that have no owner. Why not pick up an orphan " +"ticket and sort it out for a customer?" +msgstr "" + +#: templates/helpdesk/dashboard.html:36 +msgid "All Tickets submitted by you" +msgstr "" + +#: templates/helpdesk/dashboard.html:37 templates/helpdesk/dashboard.html:57 +#: templates/helpdesk/dashboard.html:77 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/ticket_list.html:199 +msgid "Pr" +msgstr "" + +#: templates/helpdesk/dashboard.html:37 templates/helpdesk/dashboard.html:57 +#: templates/helpdesk/dashboard.html:99 +msgid "Last Update" +msgstr "Senaste Uppdateringen" + +#: templates/helpdesk/dashboard.html:56 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "" + +#: templates/helpdesk/dashboard.html:69 +msgid "You have no tickets assigned to you." +msgstr "" + +#: templates/helpdesk/dashboard.html:76 +msgid "(pick up a ticket if you start to work on it)" +msgstr "" + +#: templates/helpdesk/dashboard.html:85 +#: templates/helpdesk/ticket_desc_table.html:22 +msgid "Take" +msgstr "" + +#: templates/helpdesk/dashboard.html:85 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:234 +msgid "Delete" +msgstr "" + +#: templates/helpdesk/dashboard.html:89 +msgid "There are no unassigned tickets." +msgstr "" + +#: templates/helpdesk/dashboard.html:98 +msgid "Closed & resolved Tickets you used to work on" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:3 +msgid "Delete Ticket" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket

\n" +"\n" +"

Are you sure you want to delete this ticket (%(ticket_title)s)? All traces of the ticket, including followups, attachments, and updates will be irreversably removed.

\n" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:6 +msgid "" +"

Edit a Ticket

\n" +"\n" +"

Unless otherwise stated, all fields are required. Please provide as descriptive a title and description as possible.

\n" +"\n" +"

Note: Editing a ticket does not send an e-mail to the ticket owner or submitter. No new details should be entered, this form should only be used to fix incorrect details or clean up the submission.

" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:28 +msgid "Save Changes" +msgstr "Spara Ändringar" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:5 +msgid "" +"\n" +"

Ignore E-Mail Address

\n" +"\n" +"

To ignore an e-mail address and prevent any emails from that address creating tickets automatically, enter the e-mail address below.

\n" +"\n" +"

You can either enter a whole e-mail address such as email@domain.com or a portion of an e-mail address with a wildcard, such as *@domain.com or user@*.

" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:5 +#, python-format +msgid "" +"\n" +"

Un-Ignore E-Mail Address

\n" +"\n" +"

Are you sure you wish to stop removing this email address (%(email_address)s) and allow their e-mails to automatically create tickets in your system? You can re-add this e-mail address at any time.

\n" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:11 +msgid "Keep Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:13 +msgid "Stop Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:232 +msgid "All" +msgstr "Alla" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "Behåll" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "" + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "Titel:" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "Kommentar:" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:11 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "" + +#: templates/helpdesk/kb_category.html:12 +msgid "Article" +msgstr "Artikel" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:11 +#: templates/helpdesk/navigation.html:33 +msgid "Knowledgebase" +msgstr "Kunskapsbas" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "" + +#: templates/helpdesk/kb_index.html:9 +#: templates/helpdesk/public_homepage.html:9 +msgid "Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:13 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "" + +#: templates/helpdesk/kb_item.html:15 +msgid "Feedback" +msgstr "Feedback" + +#: templates/helpdesk/kb_item.html:17 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "" + +#: templates/helpdesk/kb_item.html:20 +msgid "This article was useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:21 +msgid "This article was not useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:24 +msgid "The results of voting by other readers of this article are below:" +msgstr "" + +#: templates/helpdesk/kb_item.html:27 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:28 +#, python-format +msgid "Votes: %(votes)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:29 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "" + +#: templates/helpdesk/navigation.html:4 +msgid "Dashboard" +msgstr "Instrumentbräda" + +#: templates/helpdesk/navigation.html:5 +#: templates/helpdesk/ticket_list.html:198 +msgid "Tickets" +msgstr "" + +#: templates/helpdesk/navigation.html:6 +msgid "New Ticket" +msgstr "" + +#: templates/helpdesk/navigation.html:8 +msgid "Stats" +msgstr "" + +#: templates/helpdesk/navigation.html:14 +#: templates/helpdesk/ticket_list.html:46 +msgid "Load Saved Query" +msgstr "" + +#: templates/helpdesk/navigation.html:25 templates/helpdesk/navigation.html:35 +msgid "Logout" +msgstr "Logga ut" + +#: templates/helpdesk/navigation.html:26 +msgid "Search..." +msgstr "Sök..." + +#: templates/helpdesk/navigation.html:26 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "" + +#: templates/helpdesk/navigation.html:31 +msgid "Submit A Ticket" +msgstr "" + +#: templates/helpdesk/navigation.html:35 +msgid "Log In" +msgstr "Logga in" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:21 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "" + +#: templates/helpdesk/public_homepage.html:29 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "" + +#: templates/helpdesk/public_homepage.html:33 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "Visa Ärende" + +#: templates/helpdesk/public_homepage.html:39 +msgid "Submit a Ticket" +msgstr "" + +#: templates/helpdesk/public_homepage.html:41 +msgid "" +"All fields are required. Please provide as descriptive a title and " +"description as possible." +msgstr "" + +#: templates/helpdesk/public_homepage.html:67 +msgid "Please use button at upper right to login first." +msgstr "" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"

Sorry, but there has been an error trying to submit your ticket.

\n" +"\n" +"

Our system has marked your submission as spam, so we are unable to save it. If this is not spam, please press back and re-type your message. Be careful to avoid sounding 'spammy', and if you have heaps of links please try removing them if possible.

\n" +"\n" +"

We are sorry for any inconvenience, however this check is required to avoid our helpdesk resources being overloaded by spammers.

\n" +msgstr "" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "Fel:" + +#: templates/helpdesk/public_view_ticket.html:8 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:11 +#: templates/helpdesk/ticket_desc_table.html:16 +msgid "Submitted On" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:46 +#: templates/helpdesk/ticket_desc_table.html:74 +msgid "Accept" +msgstr "Acceptera" + +#: templates/helpdesk/public_view_ticket.html:46 +#: templates/helpdesk/ticket_desc_table.html:74 +msgid "Accept and Close" +msgstr "Acceptera och Stäng" + +#: templates/helpdesk/public_view_ticket.html:55 +#: templates/helpdesk/ticket.html:64 +msgid "Follow-Ups" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:63 +#: templates/helpdesk/ticket.html:92 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "" + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "" + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "" + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "" + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "" + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "Kommentar:" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "" + +#: templates/helpdesk/rss_list.html:22 +msgid "Per-Queue Feeds" +msgstr "" + +#: templates/helpdesk/rss_list.html:23 +msgid "All Open Tickets" +msgstr "Alla Öppna Ärenden" + +#: templates/helpdesk/rss_list.html:27 +msgid "Open Tickets" +msgstr "Öppna Ärenden" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "" + +#: templates/helpdesk/system_settings.html:5 +msgid "" +"\n" +"

System Settings

\n" +"\n" +"

The following items can be maintained by you or other superusers:

" +msgstr "" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:197 +msgid "Add Another File" +msgstr "" + +#: templates/helpdesk/ticket.html:71 templates/helpdesk/ticket.html.py:81 +msgid "Private" +msgstr "Privat" + +#: templates/helpdesk/ticket.html:111 +msgid "Respond to this ticket" +msgstr "Svara på detta ärende" + +#: templates/helpdesk/ticket.html:118 +msgid "Use a Pre-set Reply" +msgstr "" + +#: templates/helpdesk/ticket.html:120 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "" + +#: templates/helpdesk/ticket.html:123 +msgid "Comment / Resolution" +msgstr "Kommentar / Lösning" + +#: templates/helpdesk/ticket.html:125 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "" + +#: templates/helpdesk/ticket.html:158 +msgid "Is this update public?" +msgstr "Är denna uppdatering publik?" + +#: templates/helpdesk/ticket.html:160 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "" + +#: templates/helpdesk/ticket.html:164 +msgid "Change Further Details »" +msgstr "" + +#: templates/helpdesk/ticket.html:173 templates/helpdesk/ticket_list.html:55 +#: templates/helpdesk/ticket_list.html:87 +#: templates/helpdesk/ticket_list.html:199 +msgid "Owner" +msgstr "Ägare" + +#: templates/helpdesk/ticket.html:174 +msgid "Unassign" +msgstr "" + +#: templates/helpdesk/ticket.html:190 +msgid "Attach File(s) »" +msgstr "" + +#: templates/helpdesk/ticket.html:196 +msgid "Attach a File" +msgstr "" + +#: templates/helpdesk/ticket.html:204 +msgid "Update This Ticket" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "Acceptera och Stäng" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "Visa?" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "Uppdatera?" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:11 +msgid "Unhold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:11 +msgid "Hold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:13 +#, python-format +msgid "Queue: %(queue)s" +msgstr "Kö: %(queue)s" + +#: templates/helpdesk/ticket_desc_table.html:21 +msgid "Assigned To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:27 +msgid "Ignore" +msgstr "Ignorera" + +#: templates/helpdesk/ticket_desc_table.html:36 +msgid "Copies To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Manage" +msgstr "Hantera" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:48 +msgid "Dependencies" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:50 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:51 +msgid "Remove Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:54 +msgid "This ticket has no dependencies." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:56 +msgid "Add Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:56 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "" + +#: templates/helpdesk/ticket_list.html:2 +msgid "Ticket Listing" +msgstr "" + +#: templates/helpdesk/ticket_list.html:41 +msgid "Query Options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:43 +msgid "Save This Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:51 +msgid "Change Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:54 +#: templates/helpdesk/ticket_list.html:69 +msgid "Sorting" +msgstr "" + +#: templates/helpdesk/ticket_list.html:58 +#: templates/helpdesk/ticket_list.html:137 +msgid "Keywords" +msgstr "Nyckelord" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Date Range" +msgstr "" + +#: templates/helpdesk/ticket_list.html:90 +msgid "Reverse" +msgstr "Baklänges" + +#: templates/helpdesk/ticket_list.html:92 +msgid "Ordering applied to tickets" +msgstr "" + +#: templates/helpdesk/ticket_list.html:97 +msgid "Owner(s)" +msgstr "Ägare" + +#: templates/helpdesk/ticket_list.html:101 +msgid "(ME)" +msgstr "(MIG)" + +#: templates/helpdesk/ticket_list.html:105 +msgid "Ctrl-Click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:110 +msgid "Queue(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:111 +#: templates/helpdesk/ticket_list.html:117 +#: templates/helpdesk/ticket_list.html:131 +msgid "Ctrl-click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:116 +msgid "Status(es)" +msgstr "Status" + +#: templates/helpdesk/ticket_list.html:122 +msgid "Date (From)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:123 +msgid "Date (To)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:124 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "" + +#: templates/helpdesk/ticket_list.html:130 +msgid "Tag(s)" +msgstr "Taggar" + +#: templates/helpdesk/ticket_list.html:138 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "" + +#: templates/helpdesk/ticket_list.html:142 +msgid "Apply Filter" +msgstr "" + +#: templates/helpdesk/ticket_list.html:144 +#, python-format +msgid "You are currently viewing saved query %(query_name)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:147 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "" + +#: templates/helpdesk/ticket_list.html:154 +#: templates/helpdesk/ticket_list.html:169 +msgid "Save Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:160 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "" + +#: templates/helpdesk/ticket_list.html:162 +msgid "Shared?" +msgstr "" + +#: templates/helpdesk/ticket_list.html:163 +msgid "Yes, share this query with other users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:164 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:176 +msgid "Use Saved Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:178 +msgid "Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:183 +msgid "Run Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:213 +msgid "No Tickets Match Your Selection" +msgstr "" + +#: templates/helpdesk/ticket_list.html:219 +msgid "Previous" +msgstr "Föregående" + +#: templates/helpdesk/ticket_list.html:223 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:227 +msgid "Next" +msgstr "Nästa" + +#: templates/helpdesk/ticket_list.html:232 +msgid "Select:" +msgstr "Välj:" + +#: templates/helpdesk/ticket_list.html:232 +msgid "None" +msgstr "Ingen" + +#: templates/helpdesk/ticket_list.html:232 +msgid "Inverse" +msgstr "Inverterad" + +#: templates/helpdesk/ticket_list.html:234 +msgid "With Selected Tickets:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Take (Assign to me)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Close" +msgstr "Stäng" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Close (Don't Send E-Mail)" +msgstr "Stäng (utan email)" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Close (Send E-Mail)" +msgstr "Stäng (med email)" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Assign To" +msgstr "" + +#: templates/helpdesk/ticket_list.html:234 +msgid "Nobody (Unassign)" +msgstr "" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "" + +#: templates/helpdesk/user_settings.html:14 +msgid "" +"\n" +"

User Settings

\n" +"\n" +"

Use the following options to change the way your helpdesk system works for you. These settings do not impact any other user.

\n" +msgstr "" + +#: templates/helpdesk/user_settings.html:29 +msgid "Save Options" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "" + +#: templates/helpdesk/registration/login.html:9 +#: templates/helpdesk/registration/login.html:21 +msgid "Login" +msgstr "Logga in" + +#: templates/helpdesk/registration/login.html:11 +msgid "" +"To log in and begin responding to cases, simply enter your username and " +"password below." +msgstr "" + +#: templates/helpdesk/registration/login.html:14 +msgid "Your username and password didn't match. Please try again." +msgstr "" + +#: templates/helpdesk/registration/login.html:16 +msgid "Username" +msgstr "Användarnamn" + +#: templates/helpdesk/registration/login.html:18 +msgid "Password" +msgstr "Lösenord" + +#: views/feeds.py:35 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:40 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:46 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:51 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:98 +msgid "Helpdesk: Unassigned Tickets" +msgstr "" + +#: views/feeds.py:99 +msgid "Unassigned Open and Reopened tickets" +msgstr "" + +#: views/feeds.py:124 +msgid "Helpdesk: Recent Followups" +msgstr "" + +#: views/feeds.py:125 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "" + +#: views/feeds.py:140 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "" + +#: views/feeds.py:145 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "" + +#: views/public.py:91 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "" + +#: views/public.py:109 +msgid "Submitter accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:218 +msgid "Accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:246 +msgid "Sorry, you need to login to do that." +msgstr "" + +#: views/staff.py:295 +#, python-format +msgid "Assigned to %(username)s" +msgstr "" + +#: views/staff.py:318 +msgid "Updated" +msgstr "Uppdaterad" + +#: views/staff.py:496 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "" + +#: views/staff.py:501 +msgid "Unassigned in bulk update" +msgstr "" + +#: views/staff.py:506 views/staff.py:511 +msgid "Closed in bulk update" +msgstr "" + +#: views/staff.py:732 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "" + +#: views/staff.py:843 +msgid "Ticket taken off hold" +msgstr "" + +#: views/staff.py:846 +msgid "Ticket placed on hold" +msgstr "" + +#: views/staff.py:914 +msgid "Jan" +msgstr "Jan" + +#: views/staff.py:915 +msgid "Feb" +msgstr "Feb" + +#: views/staff.py:916 +msgid "Mar" +msgstr "Mar" + +#: views/staff.py:917 +msgid "Apr" +msgstr "Apr" + +#: views/staff.py:918 +msgid "May" +msgstr "Maj" + +#: views/staff.py:919 +msgid "Jun" +msgstr "Jun" + +#: views/staff.py:920 +msgid "Jul" +msgstr "Jul" + +#: views/staff.py:921 +msgid "Aug" +msgstr "Aug" + +#: views/staff.py:922 +msgid "Sep" +msgstr "Sep" + +#: views/staff.py:923 +msgid "Oct" +msgstr "Okt" + +#: views/staff.py:924 +msgid "Nov" +msgstr "Nov" + +#: views/staff.py:925 +msgid "Dec" +msgstr "Dec" + +#: views/staff.py:951 +msgid "User by Priority" +msgstr "" + +#: views/staff.py:957 +msgid "User by Queue" +msgstr "" + +#: views/staff.py:963 +msgid "User by Status" +msgstr "" + +#: views/staff.py:969 +msgid "User by Month" +msgstr "" + +#: views/staff.py:975 +msgid "Queue by Priority" +msgstr "" + +#: views/staff.py:981 +msgid "Queue by Status" +msgstr "" + +#: views/staff.py:987 +msgid "Queue by Month" +msgstr "" diff --git a/build/lib/helpdesk/locale/th/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/th/LC_MESSAGES/django.mo new file mode 100644 index 00000000..2462aefc Binary files /dev/null and b/build/lib/helpdesk/locale/th/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/th/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/th/LC_MESSAGES/django.po new file mode 100644 index 00000000..bd98fda9 --- /dev/null +++ b/build/lib/helpdesk/locale/th/LC_MESSAGES/django.po @@ -0,0 +1,2394 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Translators: +# Jonathan Barratt , 2015 +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2014-07-26 14:14+0200\n" +"PO-Revision-Date: 2015-06-13 06:45+0000\n" +"Last-Translator: Jonathan Barratt \n" +"Language-Team: Thai (http://www.transifex.com/rossp/django-helpdesk/language/th/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: th\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: forms.py:128 forms.py:328 models.py:190 models.py:267 +#: templates/helpdesk/dashboard.html:15 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/dashboard.html:124 templates/helpdesk/rss_list.html:24 +#: templates/helpdesk/ticket_list.html:69 +#: templates/helpdesk/ticket_list.html:88 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:1032 +#: views/staff.py:1038 views/staff.py:1044 views/staff.py:1050 +msgid "Queue" +msgstr "คิว" + +#: forms.py:137 +msgid "Summary of the problem" +msgstr "บทสรุปของปัญหาที่เกิดขึ้น" + +#: forms.py:142 +msgid "Submitter E-Mail Address" +msgstr "อีเมล์ของผู้ยื่นเรื่อง" + +#: forms.py:144 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "" + +#: forms.py:150 +msgid "Description of Issue" +msgstr "คำอธิบายของปัญหา" + +#: forms.py:157 +msgid "Case owner" +msgstr "เจ้าของเรื่อง" + +#: forms.py:158 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "" + +#: forms.py:166 models.py:327 management/commands/escalate_tickets.py:154 +#: templates/helpdesk/public_view_ticket.html:23 +#: templates/helpdesk/ticket.html:184 +#: templates/helpdesk/ticket_desc_table.html:47 +#: templates/helpdesk/ticket_list.html:94 views/staff.py:429 +msgid "Priority" +msgstr "ลำดับความสำคัญ" + +#: forms.py:167 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "" + +#: forms.py:174 forms.py:365 models.py:335 templates/helpdesk/ticket.html:186 +#: views/staff.py:439 +msgid "Due on" +msgstr "" + +#: forms.py:186 forms.py:370 +msgid "Attach File" +msgstr "แนบไฟล์" + +#: forms.py:187 forms.py:371 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "" + +#: forms.py:240 +msgid "Ticket Opened" +msgstr "" + +#: forms.py:247 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "" + +#: forms.py:337 +msgid "Summary of your query" +msgstr "" + +#: forms.py:342 +msgid "Your E-Mail Address" +msgstr "อีเมล์ของคุณ" + +#: forms.py:343 +msgid "We will e-mail you when your ticket is updated." +msgstr "" + +#: forms.py:348 +msgid "Description of your issue" +msgstr "" + +#: forms.py:350 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "" + +#: forms.py:358 +msgid "Urgency" +msgstr "" + +#: forms.py:359 +msgid "Please select a priority carefully." +msgstr "" + +#: forms.py:419 +msgid "Ticket Opened Via Web" +msgstr "" + +#: forms.py:486 +msgid "Show Ticket List on Login?" +msgstr "" + +#: forms.py:487 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "" + +#: forms.py:492 +msgid "E-mail me on ticket change?" +msgstr "" + +#: forms.py:493 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:498 +msgid "E-mail me when assigned a ticket?" +msgstr "" + +#: forms.py:499 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:504 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "" + +#: forms.py:505 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:510 +msgid "Number of tickets to show per page" +msgstr "" + +#: forms.py:511 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "" + +#: forms.py:518 +msgid "Use my e-mail address when submitting tickets?" +msgstr "" + +#: forms.py:519 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "" + +#: models.py:35 models.py:261 models.py:503 models.py:817 models.py:853 +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket.html:178 templates/helpdesk/ticket_list.html:85 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:419 +msgid "Title" +msgstr "" + +#: models.py:40 models.py:822 models.py:1206 +msgid "Slug" +msgstr "" + +#: models.py:41 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "" + +#: models.py:46 models.py:1054 models.py:1129 models.py:1203 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "" + +#: models.py:49 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "" + +#: models.py:55 models.py:794 +msgid "Locale" +msgstr "" + +#: models.py:59 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "" + +#: models.py:63 +msgid "Allow Public Submission?" +msgstr "" + +#: models.py:66 +msgid "Should this queue be listed on the public submission form?" +msgstr "" + +#: models.py:71 +msgid "Allow E-Mail Submission?" +msgstr "" + +#: models.py:74 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "" + +#: models.py:79 +msgid "Escalation Days" +msgstr "" + +#: models.py:82 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "" + +#: models.py:87 +msgid "New Ticket CC Address" +msgstr "" + +#: models.py:91 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "" + +#: models.py:97 +msgid "Updated Ticket CC Address" +msgstr "" + +#: models.py:101 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "" + +#: models.py:108 +msgid "E-Mail Box Type" +msgstr "" + +#: models.py:110 +msgid "POP 3" +msgstr "" + +#: models.py:110 +msgid "IMAP" +msgstr "" + +#: models.py:113 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "" + +#: models.py:118 +msgid "E-Mail Hostname" +msgstr "" + +#: models.py:122 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "" + +#: models.py:127 +msgid "E-Mail Port" +msgstr "" + +#: models.py:130 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "" + +#: models.py:136 +msgid "Use SSL for E-Mail?" +msgstr "" + +#: models.py:139 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "" + +#: models.py:144 +msgid "E-Mail Username" +msgstr "ชื่อผู้ใช้อีเมล์" + +#: models.py:148 +msgid "Username for accessing this mailbox." +msgstr "" + +#: models.py:152 +msgid "E-Mail Password" +msgstr "รหัสผ่านอีเมล์" + +#: models.py:156 +msgid "Password for the above username" +msgstr "" + +#: models.py:160 +msgid "IMAP Folder" +msgstr "" + +#: models.py:164 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "" + +#: models.py:171 +msgid "E-Mail Check Interval" +msgstr "" + +#: models.py:172 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "" + +#: models.py:191 templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "ลำดับ" + +#: models.py:245 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:138 +msgid "Open" +msgstr "เปิด" + +#: models.py:246 templates/helpdesk/ticket.html:144 +#: templates/helpdesk/ticket.html.py:150 templates/helpdesk/ticket.html:155 +#: templates/helpdesk/ticket.html.py:159 +msgid "Reopened" +msgstr "เปิดใหม่" + +#: models.py:247 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:139 templates/helpdesk/ticket.html.py:145 +#: templates/helpdesk/ticket.html:151 +msgid "Resolved" +msgstr "" + +#: models.py:248 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:140 templates/helpdesk/ticket.html.py:146 +#: templates/helpdesk/ticket.html:152 templates/helpdesk/ticket.html.py:156 +msgid "Closed" +msgstr "ปิด" + +#: models.py:249 templates/helpdesk/ticket.html:141 +#: templates/helpdesk/ticket.html.py:147 templates/helpdesk/ticket.html:160 +msgid "Duplicate" +msgstr "" + +#: models.py:253 +msgid "1. Critical" +msgstr "" + +#: models.py:254 +msgid "2. High" +msgstr "" + +#: models.py:255 +msgid "3. Normal" +msgstr "" + +#: models.py:256 +msgid "4. Low" +msgstr "" + +#: models.py:257 +msgid "5. Very Low" +msgstr "" + +#: models.py:271 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/ticket_list.html:82 +#: templates/helpdesk/ticket_list.html:225 +msgid "Created" +msgstr "" + +#: models.py:273 +msgid "Date this ticket was first created" +msgstr "" + +#: models.py:277 +msgid "Modified" +msgstr "" + +#: models.py:279 +msgid "Date this ticket was most recently changed." +msgstr "" + +#: models.py:283 templates/helpdesk/public_view_ticket.html:18 +#: templates/helpdesk/ticket_desc_table.html:42 +msgid "Submitter E-Mail" +msgstr "" + +#: models.py:286 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "" + +#: models.py:295 +msgid "Assigned to" +msgstr "" + +#: models.py:299 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:70 +#: templates/helpdesk/ticket_list.html:91 +#: templates/helpdesk/ticket_list.html:225 +msgid "Status" +msgstr "" + +#: models.py:305 +msgid "On Hold" +msgstr "" + +#: models.py:308 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "" + +#: models.py:313 models.py:826 templates/helpdesk/public_view_ticket.html:41 +#: templates/helpdesk/ticket_desc_table.html:19 +msgid "Description" +msgstr "" + +#: models.py:316 +msgid "The content of the customers query." +msgstr "" + +#: models.py:320 templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Resolution" +msgstr "" + +#: models.py:323 +msgid "The resolution provided to the customer by our staff." +msgstr "" + +#: models.py:331 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "" + +#: models.py:344 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "" + +#: models.py:353 templates/helpdesk/ticket_desc_table.html:38 +#: views/feeds.py:95 views/feeds.py:121 views/feeds.py:173 views/staff.py:376 +msgid "Unassigned" +msgstr "" + +#: models.py:392 +msgid " - On Hold" +msgstr "" + +#: models.py:394 +msgid " - Open dependencies" +msgstr "" + +#: models.py:448 models.py:494 models.py:1117 models.py:1280 models.py:1309 +#: templates/helpdesk/public_homepage.html:78 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "ตั๋ว" + +#: models.py:449 templates/helpdesk/navigation.html:17 +#: templates/helpdesk/ticket_list.html:2 +#: templates/helpdesk/ticket_list.html:224 +msgid "Tickets" +msgstr "" + +#: models.py:498 models.py:738 models.py:1047 models.py:1200 +msgid "Date" +msgstr "วันที่" + +#: models.py:510 views/staff.py:390 +msgid "Comment" +msgstr "ความเห็น" + +#: models.py:516 +msgid "Public" +msgstr "สาธารณะ" + +#: models.py:519 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "" + +#: models.py:527 models.py:922 models.py:1125 views/staff.py:1008 +#: views/staff.py:1014 views/staff.py:1020 views/staff.py:1026 +msgid "User" +msgstr "ผู้ใช้งาน" + +#: models.py:531 templates/helpdesk/ticket.html:135 +msgid "New Status" +msgstr "สถานะใหม่" + +#: models.py:535 +msgid "If the status was changed, what was it changed to?" +msgstr "" + +#: models.py:542 models.py:566 models.py:628 +msgid "Follow-up" +msgstr "" + +#: models.py:543 +msgid "Follow-ups" +msgstr "" + +#: models.py:570 models.py:1285 +msgid "Field" +msgstr "" + +#: models.py:575 +msgid "Old Value" +msgstr "ค่าเดิม" + +#: models.py:581 +msgid "New Value" +msgstr "ค่าใหม่" + +#: models.py:589 +msgid "removed" +msgstr "เอาออก" + +#: models.py:591 +#, python-format +msgid "set to %s" +msgstr "" + +#: models.py:593 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "" + +#: models.py:600 +msgid "Ticket change" +msgstr "" + +#: models.py:601 +msgid "Ticket changes" +msgstr "" + +#: models.py:632 +msgid "File" +msgstr "ไฟล์" + +#: models.py:637 +msgid "Filename" +msgstr "ชื่อไฟล์" + +#: models.py:642 +msgid "MIME Type" +msgstr "" + +#: models.py:647 +msgid "Size" +msgstr "ขนาด" + +#: models.py:648 +msgid "Size of this file in bytes" +msgstr "" + +#: models.py:665 +msgid "Attachment" +msgstr "" + +#: models.py:666 +msgid "Attachments" +msgstr "" + +#: models.py:685 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "" + +#: models.py:690 models.py:733 models.py:1042 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "ชื่อ" + +#: models.py:692 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "" + +#: models.py:697 +msgid "Body" +msgstr "" + +#: models.py:698 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "" + +#: models.py:705 +msgid "Pre-set reply" +msgstr "" + +#: models.py:706 +msgid "Pre-set replies" +msgstr "" + +#: models.py:727 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "" + +#: models.py:739 +msgid "Date on which escalation should not happen" +msgstr "" + +#: models.py:746 +msgid "Escalation exclusion" +msgstr "" + +#: models.py:747 +msgid "Escalation exclusions" +msgstr "" + +#: models.py:760 +msgid "Template Name" +msgstr "" + +#: models.py:765 +msgid "Subject" +msgstr "เรื่อง" + +#: models.py:767 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "" + +#: models.py:773 +msgid "Heading" +msgstr "หัวข้อ" + +#: models.py:775 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "" + +#: models.py:781 +msgid "Plain Text" +msgstr "" + +#: models.py:782 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "" + +#: models.py:788 +msgid "HTML" +msgstr "" + +#: models.py:789 +msgid "The same context is available here as in plain_text, above." +msgstr "" + +#: models.py:798 +msgid "Locale of this template." +msgstr "" + +#: models.py:806 +msgid "e-mail template" +msgstr "" + +#: models.py:807 +msgid "e-mail templates" +msgstr "" + +#: models.py:834 +msgid "Knowledge base category" +msgstr "" + +#: models.py:835 +msgid "Knowledge base categories" +msgstr "" + +#: models.py:849 templates/helpdesk/kb_index.html:11 +#: templates/helpdesk/public_homepage.html:11 +msgid "Category" +msgstr "หมวดหมู่" + +#: models.py:858 +msgid "Question" +msgstr "คำถาม" + +#: models.py:862 +msgid "Answer" +msgstr "คำตอบ" + +#: models.py:866 +msgid "Votes" +msgstr "คะแนนโหวต" + +#: models.py:867 +msgid "Total number of votes cast for this item" +msgstr "" + +#: models.py:872 +msgid "Positive Votes" +msgstr "" + +#: models.py:873 +msgid "Number of votes for this item which were POSITIVE." +msgstr "" + +#: models.py:878 +msgid "Last Updated" +msgstr "อัปเดตล่าสุด" + +#: models.py:879 +msgid "The date on which this question was most recently changed." +msgstr "" + +#: models.py:893 +msgid "Unrated" +msgstr "" + +#: models.py:901 +msgid "Knowledge base item" +msgstr "" + +#: models.py:902 +msgid "Knowledge base items" +msgstr "" + +#: models.py:926 templates/helpdesk/ticket_list.html:170 +msgid "Query Name" +msgstr "" + +#: models.py:928 +msgid "User-provided name for this query" +msgstr "" + +#: models.py:932 +msgid "Shared With Other Users?" +msgstr "" + +#: models.py:935 +msgid "Should other users see this query?" +msgstr "" + +#: models.py:939 +msgid "Search Query" +msgstr "" + +#: models.py:940 +msgid "Pickled query object. Be wary changing this." +msgstr "" + +#: models.py:950 +msgid "Saved search" +msgstr "" + +#: models.py:951 +msgid "Saved searches" +msgstr "" + +#: models.py:966 +msgid "Settings Dictionary" +msgstr "" + +#: models.py:967 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "" + +#: models.py:993 +msgid "User Setting" +msgstr "" + +#: models.py:994 templates/helpdesk/navigation.html:37 +#: templates/helpdesk/user_settings.html:6 +msgid "User Settings" +msgstr "" + +#: models.py:1036 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "" + +#: models.py:1048 +msgid "Date on which this e-mail address was added" +msgstr "" + +#: models.py:1056 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "" + +#: models.py:1061 +msgid "Save Emails in Mailbox?" +msgstr "" + +#: models.py:1064 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "" + +#: models.py:1101 +msgid "Ignored e-mail address" +msgstr "" + +#: models.py:1102 +msgid "Ignored e-mail addresses" +msgstr "" + +#: models.py:1124 +msgid "User who wishes to receive updates for this ticket." +msgstr "" + +#: models.py:1132 +msgid "For non-user followers, enter their e-mail address" +msgstr "" + +#: models.py:1136 +msgid "Can View Ticket?" +msgstr "" + +#: models.py:1138 +msgid "Can this CC login to view the ticket details?" +msgstr "" + +#: models.py:1142 +msgid "Can Update Ticket?" +msgstr "" + +#: models.py:1144 +msgid "Can this CC login and update the ticket?" +msgstr "" + +#: models.py:1175 +msgid "Field Name" +msgstr "" + +#: models.py:1176 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "" + +#: models.py:1181 +msgid "Label" +msgstr "" + +#: models.py:1183 +msgid "The display label for this field" +msgstr "" + +#: models.py:1187 +msgid "Help Text" +msgstr "" + +#: models.py:1188 +msgid "Shown to the user when editing the ticket" +msgstr "" + +#: models.py:1194 +msgid "Character (single line)" +msgstr "" + +#: models.py:1195 +msgid "Text (multi-line)" +msgstr "" + +#: models.py:1196 +msgid "Integer" +msgstr "จำนวนเต็ม" + +#: models.py:1197 +msgid "Decimal" +msgstr "" + +#: models.py:1198 +msgid "List" +msgstr "รายการ" + +#: models.py:1199 +msgid "Boolean (checkbox yes/no)" +msgstr "" + +#: models.py:1201 +msgid "Time" +msgstr "เวลา" + +#: models.py:1202 +msgid "Date & Time" +msgstr "วันที่ และ เวลา" + +#: models.py:1204 +msgid "URL" +msgstr "" + +#: models.py:1205 +msgid "IP Address" +msgstr "" + +#: models.py:1210 +msgid "Data Type" +msgstr "" + +#: models.py:1212 +msgid "Allows you to restrict the data entered into this field" +msgstr "" + +#: models.py:1217 +msgid "Maximum Length (characters)" +msgstr "" + +#: models.py:1223 +msgid "Decimal Places" +msgstr "" + +#: models.py:1224 +msgid "Only used for decimal fields" +msgstr "" + +#: models.py:1230 +msgid "Add empty first choice to List?" +msgstr "" + +#: models.py:1232 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "" + +#: models.py:1236 +msgid "List Values" +msgstr "" + +#: models.py:1237 +msgid "For list fields only. Enter one option per line." +msgstr "" + +#: models.py:1243 +msgid "Ordering" +msgstr "" + +#: models.py:1244 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "" + +#: models.py:1258 +msgid "Required?" +msgstr "" + +#: models.py:1259 +msgid "Does the user have to enter a value for this field?" +msgstr "" + +#: models.py:1263 +msgid "Staff Only?" +msgstr "" + +#: models.py:1264 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "" + +#: models.py:1273 +msgid "Custom field" +msgstr "" + +#: models.py:1274 +msgid "Custom fields" +msgstr "" + +#: models.py:1297 +msgid "Ticket custom field value" +msgstr "" + +#: models.py:1298 +msgid "Ticket custom field values" +msgstr "" + +#: models.py:1315 +msgid "Depends On Ticket" +msgstr "" + +#: models.py:1324 +msgid "Ticket dependency" +msgstr "" + +#: models.py:1325 +msgid "Ticket dependencies" +msgstr "" + +#: management/commands/create_usersettings.py:25 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "" + +#: management/commands/escalate_tickets.py:148 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "" + +#: management/commands/get_email.py:158 +msgid "Created from e-mail" +msgstr "" + +#: management/commands/get_email.py:162 +msgid "Unknown Sender" +msgstr "" + +#: management/commands/get_email.py:216 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "" + +#: management/commands/get_email.py:220 +msgid "email_html_body.html" +msgstr "" + +#: management/commands/get_email.py:263 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:271 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:329 +msgid " (Reopened)" +msgstr "" + +#: management/commands/get_email.py:331 +msgid " (Updated)" +msgstr "อัปเดต/ปรับปรุง" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"django-helpdesk." +msgstr "" + +#: templates/helpdesk/base.html:10 +msgid "Powered by django-helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:20 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:24 templates/helpdesk/rss_list.html:31 +msgid "My Open Tickets" +msgstr "" + +#: templates/helpdesk/base.html:21 +msgid "All Recent Activity" +msgstr "" + +#: templates/helpdesk/base.html:22 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "" + +#: templates/helpdesk/base.html:52 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:18 +msgid "Helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:30 templates/helpdesk/rss_list.html:31 +msgid "RSS Icon" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "" + +#: templates/helpdesk/base.html:63 +msgid "API" +msgstr "" + +#: templates/helpdesk/base.html:64 templates/helpdesk/system_settings.html:6 +msgid "System Settings" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:146 +msgid "Delete Saved Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:6 +msgid "Delete Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this saved filter " +"(%(query_title)s)? To re-create it, you will need to manually re-" +"filter your ticket listing." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"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." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:14 +#: templates/helpdesk/delete_ticket.html:10 +msgid "No, Don't Delete It" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:16 +#: templates/helpdesk/delete_ticket.html:12 +msgid "Yes - Delete It" +msgstr "" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/navigation.html:65 templates/helpdesk/navigation.html:68 +#: templates/helpdesk/public_homepage.html:27 +msgid "Submit a Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +#: templates/helpdesk/public_homepage.html:28 +msgid "Please provide as descriptive a title and description as possible." +msgstr "" + +#: templates/helpdesk/create_ticket.html:30 +#: templates/helpdesk/public_homepage.html:55 +msgid "Submit Ticket" +msgstr "" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "" + +#: templates/helpdesk/dashboard.html:9 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "" + +#: templates/helpdesk/dashboard.html:14 +msgid "Helpdesk Summary" +msgstr "" + +#: templates/helpdesk/dashboard.html:36 +msgid "Current Ticket Stats" +msgstr "" + +#: templates/helpdesk/dashboard.html:37 +msgid "Average number of days until ticket is closed (all tickets): " +msgstr "" + +#: templates/helpdesk/dashboard.html:38 +msgid "" +"Average number of days until ticket is closed (tickets opened in last 60 " +"days): " +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "Click" +msgstr "คลิก" + +#: templates/helpdesk/dashboard.html:39 +msgid "for detailed average by month." +msgstr "" + +#: templates/helpdesk/dashboard.html:40 +msgid "Distribution of open tickets, grouped by time period:" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Days since opened" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Number of open tickets" +msgstr "" + +#: templates/helpdesk/dashboard.html:57 +msgid "All Tickets submitted by you" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:225 +msgid "Pr" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:124 +msgid "Last Update" +msgstr "ปรับปรุงครั้งล่าสุด" + +#: templates/helpdesk/dashboard.html:77 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "" + +#: templates/helpdesk/dashboard.html:92 +msgid "You have no tickets assigned to you." +msgstr "" + +#: templates/helpdesk/dashboard.html:99 +msgid "(pick up a ticket if you start to work on it)" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/ticket_desc_table.html:38 +msgid "Take" +msgstr "เอา" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:262 +msgid "Delete" +msgstr "ลบ" + +#: templates/helpdesk/dashboard.html:114 +msgid "There are no unassigned tickets." +msgstr "" + +#: templates/helpdesk/dashboard.html:123 +msgid "Closed & resolved Tickets you used to work on" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:3 +#: templates/helpdesk/delete_ticket.html:6 +msgid "Delete Ticket" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this ticket (%(ticket_title)s)? All" +" traces of the ticket, including followups, attachments, and updates will be" +" irreversibly removed." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:9 +msgid "Edit a Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "Note" +msgstr "บันทึก" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "" +"Editing a ticket does not send an e-mail to the ticket owner or " +"submitter. No new details should be entered, this form should only be used " +"to fix incorrect details or clean up the submission." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:33 +msgid "Save Changes" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:6 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:8 +msgid "" +"To ignore an e-mail address and prevent any emails from that address " +"creating tickets automatically, enter the e-mail address below." +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:10 +msgid "" +"You can either enter a whole e-mail address such as " +"email@domain.com or a portion of an e-mail address with a wildcard," +" such as *@domain.com or user@*." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:6 +msgid "Un-Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:8 +#, python-format +msgid "" +"Are you sure you wish to stop removing this email address " +"(%(email_address)s) and allow their e-mails to automatically create" +" tickets in your system? You can re-add this e-mail address at any time." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:10 +msgid "Keep Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:12 +msgid "Stop Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:260 +msgid "All" +msgstr "ทั้งหมด" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "เก็บ/ควบคุม" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "" + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "ชื่อเรื่อง" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "ความเห็น" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:12 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "" + +#: templates/helpdesk/kb_category.html:13 +msgid "Article" +msgstr "" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:21 +#: templates/helpdesk/navigation.html:71 +msgid "Knowledgebase" +msgstr "" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "" + +#: templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:16 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "" + +#: templates/helpdesk/kb_item.html:18 +msgid "Feedback" +msgstr "ข้อเสนอแนะ" + +#: templates/helpdesk/kb_item.html:20 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "" + +#: templates/helpdesk/kb_item.html:23 +msgid "This article was useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:24 +msgid "This article was not useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:27 +msgid "The results of voting by other readers of this article are below:" +msgstr "" + +#: templates/helpdesk/kb_item.html:30 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:31 +#, python-format +msgid "Votes: %(votes)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:32 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "" + +#: templates/helpdesk/navigation.html:16 templates/helpdesk/navigation.html:64 +msgid "Dashboard" +msgstr "" + +#: templates/helpdesk/navigation.html:18 +msgid "New Ticket" +msgstr "" + +#: templates/helpdesk/navigation.html:19 +msgid "Stats" +msgstr "" + +#: templates/helpdesk/navigation.html:24 +msgid "Saved Query" +msgstr "" + +#: templates/helpdesk/navigation.html:39 +msgid "Change password" +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Search..." +msgstr "ค้นหา" + +#: templates/helpdesk/navigation.html:50 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Logout" +msgstr "ออกจากระบบ" + +#: templates/helpdesk/navigation.html:73 +msgid "Log In" +msgstr "เข้าสู่ระบบ" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:73 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "" + +#: templates/helpdesk/public_homepage.html:28 +msgid "All fields are required." +msgstr "" + +#: templates/helpdesk/public_homepage.html:66 +msgid "Please use button at upper right to login first." +msgstr "" + +#: templates/helpdesk/public_homepage.html:82 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "" + +#: templates/helpdesk/public_homepage.html:86 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:5 +msgid "Sorry, but there has been an error trying to submit your ticket." +msgstr "" + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"Our system has marked your submission as spam, so we are " +"unable to save it. If this is not spam, please press back and re-type your " +"message. Be careful to avoid sounding 'spammy', and if you have heaps of " +"links please try removing them if possible." +msgstr "" + +#: templates/helpdesk/public_spam.html:7 +msgid "" +"We are sorry for any inconvenience, however this check is required to avoid " +"our helpdesk resources being overloaded by spammers." +msgstr "" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "ผิดพลาด" + +#: templates/helpdesk/public_view_ticket.html:9 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:13 +#: templates/helpdesk/ticket_desc_table.html:32 +msgid "Submitted On" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:35 +msgid "Tags" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept" +msgstr "ยอมรับ" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept and Close" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:57 +#: templates/helpdesk/ticket.html:66 +msgid "Follow-Ups" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:65 +#: templates/helpdesk/ticket.html:100 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "" + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "" + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:27 views/staff.py:1049 +msgid "Days until ticket closed by Month" +msgstr "" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "" + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "" + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "" + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "" + +#: templates/helpdesk/rss_list.html:23 +msgid "Per-Queue Feeds" +msgstr "" + +#: templates/helpdesk/rss_list.html:24 +msgid "All Open Tickets" +msgstr "" + +#: templates/helpdesk/rss_list.html:30 +msgid "Open Tickets" +msgstr "" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "" + +#: templates/helpdesk/system_settings.html:8 +msgid "The following items can be maintained by you or other superusers:" +msgstr "" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:200 +msgid "Add Another File" +msgstr "" + +#: templates/helpdesk/ticket.html:73 templates/helpdesk/ticket.html.py:86 +msgid "Private" +msgstr "ส่วนตัว" + +#: templates/helpdesk/ticket.html:119 +msgid "Respond to this ticket" +msgstr "" + +#: templates/helpdesk/ticket.html:126 +msgid "Use a Pre-set Reply" +msgstr "" + +#: templates/helpdesk/ticket.html:126 templates/helpdesk/ticket.html.py:166 +msgid "(Optional)" +msgstr "" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "" + +#: templates/helpdesk/ticket.html:131 +msgid "Comment / Resolution" +msgstr "ความเห็น / อย่างละเอียด" + +#: templates/helpdesk/ticket.html:133 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "" + +#: templates/helpdesk/ticket.html:136 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "" + +#: templates/helpdesk/ticket.html:166 +msgid "Is this update public?" +msgstr "" + +#: templates/helpdesk/ticket.html:168 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "" + +#: templates/helpdesk/ticket.html:172 +msgid "Change Further Details »" +msgstr "" + +#: templates/helpdesk/ticket.html:181 templates/helpdesk/ticket_list.html:68 +#: templates/helpdesk/ticket_list.html:97 +#: templates/helpdesk/ticket_list.html:225 +msgid "Owner" +msgstr "เจ้าของ" + +#: templates/helpdesk/ticket.html:182 +msgid "Unassign" +msgstr "" + +#: templates/helpdesk/ticket.html:193 +msgid "Attach File(s) »" +msgstr "" + +#: templates/helpdesk/ticket.html:199 +msgid "Attach a File" +msgstr "" + +#: templates/helpdesk/ticket.html:207 +msgid "Update This Ticket" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "อัปเดต?" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Unhold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Hold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:9 +#, python-format +msgid "Queue: %(queue)s" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Assigned To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:43 +msgid "Ignore" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:52 +msgid "Copies To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Manage" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Subscribe" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to subscribe yourself to this ticket, if you want to receive an " +"e-mail whenever this ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:57 +msgid "Dependencies" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:59 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:60 +msgid "Remove Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "This ticket has no dependencies." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "Add Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Change Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:67 +#: templates/helpdesk/ticket_list.html:79 +msgid "Sorting" +msgstr "" + +#: templates/helpdesk/ticket_list.html:71 +#: templates/helpdesk/ticket_list.html:139 +msgid "Keywords" +msgstr "" + +#: templates/helpdesk/ticket_list.html:72 +msgid "Date Range" +msgstr "" + +#: templates/helpdesk/ticket_list.html:100 +msgid "Reverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:102 +msgid "Ordering applied to tickets" +msgstr "" + +#: templates/helpdesk/ticket_list.html:107 +msgid "Owner(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:111 +msgid "(ME)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:115 +msgid "Ctrl-Click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:120 +msgid "Queue(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:121 +#: templates/helpdesk/ticket_list.html:127 +msgid "Ctrl-click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:126 +msgid "Status(es)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:132 +msgid "Date (From)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:133 +msgid "Date (To)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:134 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "" + +#: templates/helpdesk/ticket_list.html:140 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "" + +#: templates/helpdesk/ticket_list.html:144 +msgid "Apply Filter" +msgstr "" + +#: templates/helpdesk/ticket_list.html:146 +#, python-format +msgid "You are currently viewing saved query \"%(query_name)s\"." +msgstr "" + +#: templates/helpdesk/ticket_list.html:149 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "" + +#: templates/helpdesk/ticket_list.html:162 +#: templates/helpdesk/ticket_list.html:181 +msgid "Save Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:172 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "" + +#: templates/helpdesk/ticket_list.html:174 +msgid "Shared?" +msgstr "" + +#: templates/helpdesk/ticket_list.html:175 +msgid "Yes, share this query with other users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:176 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:195 +msgid "Use Saved Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:202 +msgid "Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:207 +msgid "Run Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:240 +msgid "No Tickets Match Your Selection" +msgstr "" + +#: templates/helpdesk/ticket_list.html:247 +msgid "Previous" +msgstr "" + +#: templates/helpdesk/ticket_list.html:251 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:255 +msgid "Next" +msgstr "ต่อไป" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Select:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "None" +msgstr "ไม่เลือก" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Inverse" +msgstr "ตรงกันข้าม" + +#: templates/helpdesk/ticket_list.html:262 +msgid "With Selected Tickets:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Take (Assign to me)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close" +msgstr "ปิด" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Don't Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Assign To" +msgstr "กำหนดให้" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Nobody (Unassign)" +msgstr "" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "เปลี่ยนการตั้งค่าของผู้ใช้" + +#: templates/helpdesk/user_settings.html:8 +msgid "" +"Use the following options to change the way your helpdesk system works for " +"you. These settings do not impact any other user." +msgstr "" + +#: templates/helpdesk/user_settings.html:14 +msgid "Save Options" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "ออกจากระบบ" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "" + +#: templates/helpdesk/registration/login.html:14 +msgid "To log in simply enter your username and password below." +msgstr "" + +#: templates/helpdesk/registration/login.html:17 +msgid "Your username and password didn't match. Please try again." +msgstr "" + +#: templates/helpdesk/registration/login.html:20 +msgid "Login" +msgstr "" + +#: views/feeds.py:39 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:44 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:50 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:55 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:102 +msgid "Helpdesk: Unassigned Tickets" +msgstr "" + +#: views/feeds.py:103 +msgid "Unassigned Open and Reopened tickets" +msgstr "" + +#: views/feeds.py:128 +msgid "Helpdesk: Recent Followups" +msgstr "" + +#: views/feeds.py:129 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "" + +#: views/feeds.py:144 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "" + +#: views/feeds.py:149 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "" + +#: views/public.py:89 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "" + +#: views/public.py:107 +msgid "Submitter accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:235 +msgid "Accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:369 +#, python-format +msgid "Assigned to %(username)s" +msgstr "" + +#: views/staff.py:392 +msgid "Updated" +msgstr "อัปเดต/ปรับปรุง" + +#: views/staff.py:577 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "" + +#: views/staff.py:582 +msgid "Unassigned in bulk update" +msgstr "" + +#: views/staff.py:587 views/staff.py:592 +msgid "Closed in bulk update" +msgstr "" + +#: views/staff.py:806 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "" + +#: views/staff.py:910 +msgid "Ticket taken off hold" +msgstr "" + +#: views/staff.py:913 +msgid "Ticket placed on hold" +msgstr "" + +#: views/staff.py:1007 +msgid "User by Priority" +msgstr "" + +#: views/staff.py:1013 +msgid "User by Queue" +msgstr "" + +#: views/staff.py:1019 +msgid "User by Status" +msgstr "" + +#: views/staff.py:1025 +msgid "User by Month" +msgstr "" + +#: views/staff.py:1031 +msgid "Queue by Priority" +msgstr "" + +#: views/staff.py:1037 +msgid "Queue by Status" +msgstr "" + +#: views/staff.py:1043 +msgid "Queue by Month" +msgstr "" diff --git a/build/lib/helpdesk/locale/tr_TR/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/tr_TR/LC_MESSAGES/django.mo new file mode 100644 index 00000000..8ffa45a6 Binary files /dev/null and b/build/lib/helpdesk/locale/tr_TR/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/tr_TR/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/tr_TR/LC_MESSAGES/django.po new file mode 100644 index 00000000..cfb6dd2e --- /dev/null +++ b/build/lib/helpdesk/locale/tr_TR/LC_MESSAGES/django.po @@ -0,0 +1,2393 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Translators: +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2014-07-26 14:14+0200\n" +"PO-Revision-Date: 2011-02-06 23:10+0000\n" +"Last-Translator: Ross Poulton \n" +"Language-Team: Turkish (Turkey) (http://www.transifex.com/rossp/django-helpdesk/language/tr_TR/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: tr_TR\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: forms.py:128 forms.py:328 models.py:190 models.py:267 +#: templates/helpdesk/dashboard.html:15 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/dashboard.html:124 templates/helpdesk/rss_list.html:24 +#: templates/helpdesk/ticket_list.html:69 +#: templates/helpdesk/ticket_list.html:88 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:1032 +#: views/staff.py:1038 views/staff.py:1044 views/staff.py:1050 +msgid "Queue" +msgstr "" + +#: forms.py:137 +msgid "Summary of the problem" +msgstr "" + +#: forms.py:142 +msgid "Submitter E-Mail Address" +msgstr "" + +#: forms.py:144 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "" + +#: forms.py:150 +msgid "Description of Issue" +msgstr "" + +#: forms.py:157 +msgid "Case owner" +msgstr "" + +#: forms.py:158 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "" + +#: forms.py:166 models.py:327 management/commands/escalate_tickets.py:154 +#: templates/helpdesk/public_view_ticket.html:23 +#: templates/helpdesk/ticket.html:184 +#: templates/helpdesk/ticket_desc_table.html:47 +#: templates/helpdesk/ticket_list.html:94 views/staff.py:429 +msgid "Priority" +msgstr "" + +#: forms.py:167 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "" + +#: forms.py:174 forms.py:365 models.py:335 templates/helpdesk/ticket.html:186 +#: views/staff.py:439 +msgid "Due on" +msgstr "" + +#: forms.py:186 forms.py:370 +msgid "Attach File" +msgstr "" + +#: forms.py:187 forms.py:371 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "" + +#: forms.py:240 +msgid "Ticket Opened" +msgstr "" + +#: forms.py:247 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "" + +#: forms.py:337 +msgid "Summary of your query" +msgstr "" + +#: forms.py:342 +msgid "Your E-Mail Address" +msgstr "" + +#: forms.py:343 +msgid "We will e-mail you when your ticket is updated." +msgstr "" + +#: forms.py:348 +msgid "Description of your issue" +msgstr "" + +#: forms.py:350 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "" + +#: forms.py:358 +msgid "Urgency" +msgstr "" + +#: forms.py:359 +msgid "Please select a priority carefully." +msgstr "" + +#: forms.py:419 +msgid "Ticket Opened Via Web" +msgstr "" + +#: forms.py:486 +msgid "Show Ticket List on Login?" +msgstr "" + +#: forms.py:487 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "" + +#: forms.py:492 +msgid "E-mail me on ticket change?" +msgstr "" + +#: forms.py:493 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:498 +msgid "E-mail me when assigned a ticket?" +msgstr "" + +#: forms.py:499 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:504 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "" + +#: forms.py:505 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "" + +#: forms.py:510 +msgid "Number of tickets to show per page" +msgstr "" + +#: forms.py:511 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "" + +#: forms.py:518 +msgid "Use my e-mail address when submitting tickets?" +msgstr "" + +#: forms.py:519 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "" + +#: models.py:35 models.py:261 models.py:503 models.py:817 models.py:853 +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket.html:178 templates/helpdesk/ticket_list.html:85 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:419 +msgid "Title" +msgstr "" + +#: models.py:40 models.py:822 models.py:1206 +msgid "Slug" +msgstr "" + +#: models.py:41 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "" + +#: models.py:46 models.py:1054 models.py:1129 models.py:1203 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "" + +#: models.py:49 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "" + +#: models.py:55 models.py:794 +msgid "Locale" +msgstr "" + +#: models.py:59 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "" + +#: models.py:63 +msgid "Allow Public Submission?" +msgstr "" + +#: models.py:66 +msgid "Should this queue be listed on the public submission form?" +msgstr "" + +#: models.py:71 +msgid "Allow E-Mail Submission?" +msgstr "" + +#: models.py:74 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "" + +#: models.py:79 +msgid "Escalation Days" +msgstr "" + +#: models.py:82 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "" + +#: models.py:87 +msgid "New Ticket CC Address" +msgstr "" + +#: models.py:91 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "" + +#: models.py:97 +msgid "Updated Ticket CC Address" +msgstr "" + +#: models.py:101 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "" + +#: models.py:108 +msgid "E-Mail Box Type" +msgstr "" + +#: models.py:110 +msgid "POP 3" +msgstr "" + +#: models.py:110 +msgid "IMAP" +msgstr "" + +#: models.py:113 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "" + +#: models.py:118 +msgid "E-Mail Hostname" +msgstr "" + +#: models.py:122 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "" + +#: models.py:127 +msgid "E-Mail Port" +msgstr "" + +#: models.py:130 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "" + +#: models.py:136 +msgid "Use SSL for E-Mail?" +msgstr "" + +#: models.py:139 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "" + +#: models.py:144 +msgid "E-Mail Username" +msgstr "" + +#: models.py:148 +msgid "Username for accessing this mailbox." +msgstr "" + +#: models.py:152 +msgid "E-Mail Password" +msgstr "" + +#: models.py:156 +msgid "Password for the above username" +msgstr "" + +#: models.py:160 +msgid "IMAP Folder" +msgstr "" + +#: models.py:164 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "" + +#: models.py:171 +msgid "E-Mail Check Interval" +msgstr "" + +#: models.py:172 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "" + +#: models.py:191 templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "" + +#: models.py:245 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:138 +msgid "Open" +msgstr "" + +#: models.py:246 templates/helpdesk/ticket.html:144 +#: templates/helpdesk/ticket.html.py:150 templates/helpdesk/ticket.html:155 +#: templates/helpdesk/ticket.html.py:159 +msgid "Reopened" +msgstr "" + +#: models.py:247 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:139 templates/helpdesk/ticket.html.py:145 +#: templates/helpdesk/ticket.html:151 +msgid "Resolved" +msgstr "" + +#: models.py:248 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:140 templates/helpdesk/ticket.html.py:146 +#: templates/helpdesk/ticket.html:152 templates/helpdesk/ticket.html.py:156 +msgid "Closed" +msgstr "" + +#: models.py:249 templates/helpdesk/ticket.html:141 +#: templates/helpdesk/ticket.html.py:147 templates/helpdesk/ticket.html:160 +msgid "Duplicate" +msgstr "" + +#: models.py:253 +msgid "1. Critical" +msgstr "" + +#: models.py:254 +msgid "2. High" +msgstr "" + +#: models.py:255 +msgid "3. Normal" +msgstr "" + +#: models.py:256 +msgid "4. Low" +msgstr "" + +#: models.py:257 +msgid "5. Very Low" +msgstr "" + +#: models.py:271 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/ticket_list.html:82 +#: templates/helpdesk/ticket_list.html:225 +msgid "Created" +msgstr "" + +#: models.py:273 +msgid "Date this ticket was first created" +msgstr "" + +#: models.py:277 +msgid "Modified" +msgstr "" + +#: models.py:279 +msgid "Date this ticket was most recently changed." +msgstr "" + +#: models.py:283 templates/helpdesk/public_view_ticket.html:18 +#: templates/helpdesk/ticket_desc_table.html:42 +msgid "Submitter E-Mail" +msgstr "" + +#: models.py:286 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "" + +#: models.py:295 +msgid "Assigned to" +msgstr "" + +#: models.py:299 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:70 +#: templates/helpdesk/ticket_list.html:91 +#: templates/helpdesk/ticket_list.html:225 +msgid "Status" +msgstr "" + +#: models.py:305 +msgid "On Hold" +msgstr "" + +#: models.py:308 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "" + +#: models.py:313 models.py:826 templates/helpdesk/public_view_ticket.html:41 +#: templates/helpdesk/ticket_desc_table.html:19 +msgid "Description" +msgstr "" + +#: models.py:316 +msgid "The content of the customers query." +msgstr "" + +#: models.py:320 templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Resolution" +msgstr "" + +#: models.py:323 +msgid "The resolution provided to the customer by our staff." +msgstr "" + +#: models.py:331 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "" + +#: models.py:344 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "" + +#: models.py:353 templates/helpdesk/ticket_desc_table.html:38 +#: views/feeds.py:95 views/feeds.py:121 views/feeds.py:173 views/staff.py:376 +msgid "Unassigned" +msgstr "" + +#: models.py:392 +msgid " - On Hold" +msgstr "" + +#: models.py:394 +msgid " - Open dependencies" +msgstr "" + +#: models.py:448 models.py:494 models.py:1117 models.py:1280 models.py:1309 +#: templates/helpdesk/public_homepage.html:78 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "" + +#: models.py:449 templates/helpdesk/navigation.html:17 +#: templates/helpdesk/ticket_list.html:2 +#: templates/helpdesk/ticket_list.html:224 +msgid "Tickets" +msgstr "" + +#: models.py:498 models.py:738 models.py:1047 models.py:1200 +msgid "Date" +msgstr "" + +#: models.py:510 views/staff.py:390 +msgid "Comment" +msgstr "" + +#: models.py:516 +msgid "Public" +msgstr "" + +#: models.py:519 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "" + +#: models.py:527 models.py:922 models.py:1125 views/staff.py:1008 +#: views/staff.py:1014 views/staff.py:1020 views/staff.py:1026 +msgid "User" +msgstr "" + +#: models.py:531 templates/helpdesk/ticket.html:135 +msgid "New Status" +msgstr "" + +#: models.py:535 +msgid "If the status was changed, what was it changed to?" +msgstr "" + +#: models.py:542 models.py:566 models.py:628 +msgid "Follow-up" +msgstr "" + +#: models.py:543 +msgid "Follow-ups" +msgstr "" + +#: models.py:570 models.py:1285 +msgid "Field" +msgstr "" + +#: models.py:575 +msgid "Old Value" +msgstr "" + +#: models.py:581 +msgid "New Value" +msgstr "" + +#: models.py:589 +msgid "removed" +msgstr "" + +#: models.py:591 +#, python-format +msgid "set to %s" +msgstr "" + +#: models.py:593 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr "" + +#: models.py:600 +msgid "Ticket change" +msgstr "" + +#: models.py:601 +msgid "Ticket changes" +msgstr "" + +#: models.py:632 +msgid "File" +msgstr "" + +#: models.py:637 +msgid "Filename" +msgstr "" + +#: models.py:642 +msgid "MIME Type" +msgstr "" + +#: models.py:647 +msgid "Size" +msgstr "" + +#: models.py:648 +msgid "Size of this file in bytes" +msgstr "" + +#: models.py:665 +msgid "Attachment" +msgstr "" + +#: models.py:666 +msgid "Attachments" +msgstr "" + +#: models.py:685 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "" + +#: models.py:690 models.py:733 models.py:1042 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "" + +#: models.py:692 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "" + +#: models.py:697 +msgid "Body" +msgstr "" + +#: models.py:698 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "" + +#: models.py:705 +msgid "Pre-set reply" +msgstr "" + +#: models.py:706 +msgid "Pre-set replies" +msgstr "" + +#: models.py:727 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "" + +#: models.py:739 +msgid "Date on which escalation should not happen" +msgstr "" + +#: models.py:746 +msgid "Escalation exclusion" +msgstr "" + +#: models.py:747 +msgid "Escalation exclusions" +msgstr "" + +#: models.py:760 +msgid "Template Name" +msgstr "" + +#: models.py:765 +msgid "Subject" +msgstr "" + +#: models.py:767 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "" + +#: models.py:773 +msgid "Heading" +msgstr "" + +#: models.py:775 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "" + +#: models.py:781 +msgid "Plain Text" +msgstr "" + +#: models.py:782 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "" + +#: models.py:788 +msgid "HTML" +msgstr "" + +#: models.py:789 +msgid "The same context is available here as in plain_text, above." +msgstr "" + +#: models.py:798 +msgid "Locale of this template." +msgstr "" + +#: models.py:806 +msgid "e-mail template" +msgstr "" + +#: models.py:807 +msgid "e-mail templates" +msgstr "" + +#: models.py:834 +msgid "Knowledge base category" +msgstr "" + +#: models.py:835 +msgid "Knowledge base categories" +msgstr "" + +#: models.py:849 templates/helpdesk/kb_index.html:11 +#: templates/helpdesk/public_homepage.html:11 +msgid "Category" +msgstr "" + +#: models.py:858 +msgid "Question" +msgstr "" + +#: models.py:862 +msgid "Answer" +msgstr "" + +#: models.py:866 +msgid "Votes" +msgstr "" + +#: models.py:867 +msgid "Total number of votes cast for this item" +msgstr "" + +#: models.py:872 +msgid "Positive Votes" +msgstr "" + +#: models.py:873 +msgid "Number of votes for this item which were POSITIVE." +msgstr "" + +#: models.py:878 +msgid "Last Updated" +msgstr "" + +#: models.py:879 +msgid "The date on which this question was most recently changed." +msgstr "" + +#: models.py:893 +msgid "Unrated" +msgstr "" + +#: models.py:901 +msgid "Knowledge base item" +msgstr "" + +#: models.py:902 +msgid "Knowledge base items" +msgstr "" + +#: models.py:926 templates/helpdesk/ticket_list.html:170 +msgid "Query Name" +msgstr "" + +#: models.py:928 +msgid "User-provided name for this query" +msgstr "" + +#: models.py:932 +msgid "Shared With Other Users?" +msgstr "" + +#: models.py:935 +msgid "Should other users see this query?" +msgstr "" + +#: models.py:939 +msgid "Search Query" +msgstr "" + +#: models.py:940 +msgid "Pickled query object. Be wary changing this." +msgstr "" + +#: models.py:950 +msgid "Saved search" +msgstr "" + +#: models.py:951 +msgid "Saved searches" +msgstr "" + +#: models.py:966 +msgid "Settings Dictionary" +msgstr "" + +#: models.py:967 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "" + +#: models.py:993 +msgid "User Setting" +msgstr "" + +#: models.py:994 templates/helpdesk/navigation.html:37 +#: templates/helpdesk/user_settings.html:6 +msgid "User Settings" +msgstr "" + +#: models.py:1036 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "" + +#: models.py:1048 +msgid "Date on which this e-mail address was added" +msgstr "" + +#: models.py:1056 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "" + +#: models.py:1061 +msgid "Save Emails in Mailbox?" +msgstr "" + +#: models.py:1064 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "" + +#: models.py:1101 +msgid "Ignored e-mail address" +msgstr "" + +#: models.py:1102 +msgid "Ignored e-mail addresses" +msgstr "" + +#: models.py:1124 +msgid "User who wishes to receive updates for this ticket." +msgstr "" + +#: models.py:1132 +msgid "For non-user followers, enter their e-mail address" +msgstr "" + +#: models.py:1136 +msgid "Can View Ticket?" +msgstr "" + +#: models.py:1138 +msgid "Can this CC login to view the ticket details?" +msgstr "" + +#: models.py:1142 +msgid "Can Update Ticket?" +msgstr "" + +#: models.py:1144 +msgid "Can this CC login and update the ticket?" +msgstr "" + +#: models.py:1175 +msgid "Field Name" +msgstr "" + +#: models.py:1176 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "" + +#: models.py:1181 +msgid "Label" +msgstr "" + +#: models.py:1183 +msgid "The display label for this field" +msgstr "" + +#: models.py:1187 +msgid "Help Text" +msgstr "" + +#: models.py:1188 +msgid "Shown to the user when editing the ticket" +msgstr "" + +#: models.py:1194 +msgid "Character (single line)" +msgstr "" + +#: models.py:1195 +msgid "Text (multi-line)" +msgstr "" + +#: models.py:1196 +msgid "Integer" +msgstr "" + +#: models.py:1197 +msgid "Decimal" +msgstr "" + +#: models.py:1198 +msgid "List" +msgstr "" + +#: models.py:1199 +msgid "Boolean (checkbox yes/no)" +msgstr "" + +#: models.py:1201 +msgid "Time" +msgstr "" + +#: models.py:1202 +msgid "Date & Time" +msgstr "" + +#: models.py:1204 +msgid "URL" +msgstr "" + +#: models.py:1205 +msgid "IP Address" +msgstr "" + +#: models.py:1210 +msgid "Data Type" +msgstr "" + +#: models.py:1212 +msgid "Allows you to restrict the data entered into this field" +msgstr "" + +#: models.py:1217 +msgid "Maximum Length (characters)" +msgstr "" + +#: models.py:1223 +msgid "Decimal Places" +msgstr "" + +#: models.py:1224 +msgid "Only used for decimal fields" +msgstr "" + +#: models.py:1230 +msgid "Add empty first choice to List?" +msgstr "" + +#: models.py:1232 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "" + +#: models.py:1236 +msgid "List Values" +msgstr "" + +#: models.py:1237 +msgid "For list fields only. Enter one option per line." +msgstr "" + +#: models.py:1243 +msgid "Ordering" +msgstr "" + +#: models.py:1244 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "" + +#: models.py:1258 +msgid "Required?" +msgstr "" + +#: models.py:1259 +msgid "Does the user have to enter a value for this field?" +msgstr "" + +#: models.py:1263 +msgid "Staff Only?" +msgstr "" + +#: models.py:1264 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "" + +#: models.py:1273 +msgid "Custom field" +msgstr "" + +#: models.py:1274 +msgid "Custom fields" +msgstr "" + +#: models.py:1297 +msgid "Ticket custom field value" +msgstr "" + +#: models.py:1298 +msgid "Ticket custom field values" +msgstr "" + +#: models.py:1315 +msgid "Depends On Ticket" +msgstr "" + +#: models.py:1324 +msgid "Ticket dependency" +msgstr "" + +#: models.py:1325 +msgid "Ticket dependencies" +msgstr "" + +#: management/commands/create_usersettings.py:25 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "" + +#: management/commands/escalate_tickets.py:148 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "" + +#: management/commands/get_email.py:158 +msgid "Created from e-mail" +msgstr "" + +#: management/commands/get_email.py:162 +msgid "Unknown Sender" +msgstr "" + +#: management/commands/get_email.py:216 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "" + +#: management/commands/get_email.py:220 +msgid "email_html_body.html" +msgstr "" + +#: management/commands/get_email.py:263 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:271 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "" + +#: management/commands/get_email.py:329 +msgid " (Reopened)" +msgstr "" + +#: management/commands/get_email.py:331 +msgid " (Updated)" +msgstr "" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"django-helpdesk." +msgstr "" + +#: templates/helpdesk/base.html:10 +msgid "Powered by django-helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:20 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:24 templates/helpdesk/rss_list.html:31 +msgid "My Open Tickets" +msgstr "" + +#: templates/helpdesk/base.html:21 +msgid "All Recent Activity" +msgstr "" + +#: templates/helpdesk/base.html:22 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "" + +#: templates/helpdesk/base.html:52 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:18 +msgid "Helpdesk" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:30 templates/helpdesk/rss_list.html:31 +msgid "RSS Icon" +msgstr "" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "" + +#: templates/helpdesk/base.html:63 +msgid "API" +msgstr "" + +#: templates/helpdesk/base.html:64 templates/helpdesk/system_settings.html:6 +msgid "System Settings" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:146 +msgid "Delete Saved Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:6 +msgid "Delete Query" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this saved filter " +"(%(query_title)s)? To re-create it, you will need to manually re-" +"filter your ticket listing." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"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." +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:14 +#: templates/helpdesk/delete_ticket.html:10 +msgid "No, Don't Delete It" +msgstr "" + +#: templates/helpdesk/confirm_delete_saved_query.html:16 +#: templates/helpdesk/delete_ticket.html:12 +msgid "Yes - Delete It" +msgstr "" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/navigation.html:65 templates/helpdesk/navigation.html:68 +#: templates/helpdesk/public_homepage.html:27 +msgid "Submit a Ticket" +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +#: templates/helpdesk/public_homepage.html:28 +msgid "Please provide as descriptive a title and description as possible." +msgstr "" + +#: templates/helpdesk/create_ticket.html:30 +#: templates/helpdesk/public_homepage.html:55 +msgid "Submit Ticket" +msgstr "" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "" + +#: templates/helpdesk/dashboard.html:9 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "" + +#: templates/helpdesk/dashboard.html:14 +msgid "Helpdesk Summary" +msgstr "" + +#: templates/helpdesk/dashboard.html:36 +msgid "Current Ticket Stats" +msgstr "" + +#: templates/helpdesk/dashboard.html:37 +msgid "Average number of days until ticket is closed (all tickets): " +msgstr "" + +#: templates/helpdesk/dashboard.html:38 +msgid "" +"Average number of days until ticket is closed (tickets opened in last 60 " +"days): " +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "Click" +msgstr "" + +#: templates/helpdesk/dashboard.html:39 +msgid "for detailed average by month." +msgstr "" + +#: templates/helpdesk/dashboard.html:40 +msgid "Distribution of open tickets, grouped by time period:" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Days since opened" +msgstr "" + +#: templates/helpdesk/dashboard.html:41 +msgid "Number of open tickets" +msgstr "" + +#: templates/helpdesk/dashboard.html:57 +msgid "All Tickets submitted by you" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:225 +msgid "Pr" +msgstr "" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:124 +msgid "Last Update" +msgstr "" + +#: templates/helpdesk/dashboard.html:77 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "" + +#: templates/helpdesk/dashboard.html:92 +msgid "You have no tickets assigned to you." +msgstr "" + +#: templates/helpdesk/dashboard.html:99 +msgid "(pick up a ticket if you start to work on it)" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/ticket_desc_table.html:38 +msgid "Take" +msgstr "" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:262 +msgid "Delete" +msgstr "" + +#: templates/helpdesk/dashboard.html:114 +msgid "There are no unassigned tickets." +msgstr "" + +#: templates/helpdesk/dashboard.html:123 +msgid "Closed & resolved Tickets you used to work on" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:3 +#: templates/helpdesk/delete_ticket.html:6 +msgid "Delete Ticket" +msgstr "" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this ticket (%(ticket_title)s)? All" +" traces of the ticket, including followups, attachments, and updates will be" +" irreversibly removed." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:9 +msgid "Edit a Ticket" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "Note" +msgstr "" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "" +"Editing a ticket does not send an e-mail to the ticket owner or " +"submitter. No new details should be entered, this form should only be used " +"to fix incorrect details or clean up the submission." +msgstr "" + +#: templates/helpdesk/edit_ticket.html:33 +msgid "Save Changes" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:6 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:8 +msgid "" +"To ignore an e-mail address and prevent any emails from that address " +"creating tickets automatically, enter the e-mail address below." +msgstr "" + +#: templates/helpdesk/email_ignore_add.html:10 +msgid "" +"You can either enter a whole e-mail address such as " +"email@domain.com or a portion of an e-mail address with a wildcard," +" such as *@domain.com or user@*." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:6 +msgid "Un-Ignore E-Mail Address" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:8 +#, python-format +msgid "" +"Are you sure you wish to stop removing this email address " +"(%(email_address)s) and allow their e-mails to automatically create" +" tickets in your system? You can re-add this e-mail address at any time." +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:10 +msgid "Keep Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_del.html:12 +msgid "Stop Ignoring It" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:260 +msgid "All" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "" + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:12 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "" + +#: templates/helpdesk/kb_category.html:13 +msgid "Article" +msgstr "" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:21 +#: templates/helpdesk/navigation.html:71 +msgid "Knowledgebase" +msgstr "" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "" + +#: templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:16 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "" + +#: templates/helpdesk/kb_item.html:18 +msgid "Feedback" +msgstr "" + +#: templates/helpdesk/kb_item.html:20 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "" + +#: templates/helpdesk/kb_item.html:23 +msgid "This article was useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:24 +msgid "This article was not useful to me" +msgstr "" + +#: templates/helpdesk/kb_item.html:27 +msgid "The results of voting by other readers of this article are below:" +msgstr "" + +#: templates/helpdesk/kb_item.html:30 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:31 +#, python-format +msgid "Votes: %(votes)s" +msgstr "" + +#: templates/helpdesk/kb_item.html:32 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "" + +#: templates/helpdesk/navigation.html:16 templates/helpdesk/navigation.html:64 +msgid "Dashboard" +msgstr "" + +#: templates/helpdesk/navigation.html:18 +msgid "New Ticket" +msgstr "" + +#: templates/helpdesk/navigation.html:19 +msgid "Stats" +msgstr "" + +#: templates/helpdesk/navigation.html:24 +msgid "Saved Query" +msgstr "" + +#: templates/helpdesk/navigation.html:39 +msgid "Change password" +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Search..." +msgstr "" + +#: templates/helpdesk/navigation.html:50 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Logout" +msgstr "" + +#: templates/helpdesk/navigation.html:73 +msgid "Log In" +msgstr "" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:73 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "" + +#: templates/helpdesk/public_homepage.html:28 +msgid "All fields are required." +msgstr "" + +#: templates/helpdesk/public_homepage.html:66 +msgid "Please use button at upper right to login first." +msgstr "" + +#: templates/helpdesk/public_homepage.html:82 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "" + +#: templates/helpdesk/public_homepage.html:86 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "" + +#: templates/helpdesk/public_spam.html:5 +msgid "Sorry, but there has been an error trying to submit your ticket." +msgstr "" + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"Our system has marked your submission as spam, so we are " +"unable to save it. If this is not spam, please press back and re-type your " +"message. Be careful to avoid sounding 'spammy', and if you have heaps of " +"links please try removing them if possible." +msgstr "" + +#: templates/helpdesk/public_spam.html:7 +msgid "" +"We are sorry for any inconvenience, however this check is required to avoid " +"our helpdesk resources being overloaded by spammers." +msgstr "" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:9 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:13 +#: templates/helpdesk/ticket_desc_table.html:32 +msgid "Submitted On" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:35 +msgid "Tags" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept and Close" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:57 +#: templates/helpdesk/ticket.html:66 +msgid "Follow-Ups" +msgstr "" + +#: templates/helpdesk/public_view_ticket.html:65 +#: templates/helpdesk/ticket.html:100 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "" + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "" + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "" + +#: templates/helpdesk/report_index.html:27 views/staff.py:1049 +msgid "Days until ticket closed by Month" +msgstr "" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "" + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "" + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "" + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "" + +#: templates/helpdesk/rss_list.html:23 +msgid "Per-Queue Feeds" +msgstr "" + +#: templates/helpdesk/rss_list.html:24 +msgid "All Open Tickets" +msgstr "" + +#: templates/helpdesk/rss_list.html:30 +msgid "Open Tickets" +msgstr "" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "" + +#: templates/helpdesk/system_settings.html:8 +msgid "The following items can be maintained by you or other superusers:" +msgstr "" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:200 +msgid "Add Another File" +msgstr "" + +#: templates/helpdesk/ticket.html:73 templates/helpdesk/ticket.html.py:86 +msgid "Private" +msgstr "" + +#: templates/helpdesk/ticket.html:119 +msgid "Respond to this ticket" +msgstr "" + +#: templates/helpdesk/ticket.html:126 +msgid "Use a Pre-set Reply" +msgstr "" + +#: templates/helpdesk/ticket.html:126 templates/helpdesk/ticket.html.py:166 +msgid "(Optional)" +msgstr "" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "" + +#: templates/helpdesk/ticket.html:131 +msgid "Comment / Resolution" +msgstr "" + +#: templates/helpdesk/ticket.html:133 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "" + +#: templates/helpdesk/ticket.html:136 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "" + +#: templates/helpdesk/ticket.html:166 +msgid "Is this update public?" +msgstr "" + +#: templates/helpdesk/ticket.html:168 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "" + +#: templates/helpdesk/ticket.html:172 +msgid "Change Further Details »" +msgstr "" + +#: templates/helpdesk/ticket.html:181 templates/helpdesk/ticket_list.html:68 +#: templates/helpdesk/ticket_list.html:97 +#: templates/helpdesk/ticket_list.html:225 +msgid "Owner" +msgstr "" + +#: templates/helpdesk/ticket.html:182 +msgid "Unassign" +msgstr "" + +#: templates/helpdesk/ticket.html:193 +msgid "Attach File(s) »" +msgstr "" + +#: templates/helpdesk/ticket.html:199 +msgid "Attach a File" +msgstr "" + +#: templates/helpdesk/ticket.html:207 +msgid "Update This Ticket" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Unhold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Hold" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:9 +#, python-format +msgid "Queue: %(queue)s" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Assigned To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:43 +msgid "Ignore" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:52 +msgid "Copies To" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Manage" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Subscribe" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to subscribe yourself to this ticket, if you want to receive an " +"e-mail whenever this ticket is updated." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:57 +msgid "Dependencies" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:59 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:60 +msgid "Remove Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "This ticket has no dependencies." +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "Add Dependency" +msgstr "" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Change Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:67 +#: templates/helpdesk/ticket_list.html:79 +msgid "Sorting" +msgstr "" + +#: templates/helpdesk/ticket_list.html:71 +#: templates/helpdesk/ticket_list.html:139 +msgid "Keywords" +msgstr "" + +#: templates/helpdesk/ticket_list.html:72 +msgid "Date Range" +msgstr "" + +#: templates/helpdesk/ticket_list.html:100 +msgid "Reverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:102 +msgid "Ordering applied to tickets" +msgstr "" + +#: templates/helpdesk/ticket_list.html:107 +msgid "Owner(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:111 +msgid "(ME)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:115 +msgid "Ctrl-Click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:120 +msgid "Queue(s)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:121 +#: templates/helpdesk/ticket_list.html:127 +msgid "Ctrl-click to select multiple options" +msgstr "" + +#: templates/helpdesk/ticket_list.html:126 +msgid "Status(es)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:132 +msgid "Date (From)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:133 +msgid "Date (To)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:134 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "" + +#: templates/helpdesk/ticket_list.html:140 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "" + +#: templates/helpdesk/ticket_list.html:144 +msgid "Apply Filter" +msgstr "" + +#: templates/helpdesk/ticket_list.html:146 +#, python-format +msgid "You are currently viewing saved query \"%(query_name)s\"." +msgstr "" + +#: templates/helpdesk/ticket_list.html:149 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr "" + +#: templates/helpdesk/ticket_list.html:162 +#: templates/helpdesk/ticket_list.html:181 +msgid "Save Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:172 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "" + +#: templates/helpdesk/ticket_list.html:174 +msgid "Shared?" +msgstr "" + +#: templates/helpdesk/ticket_list.html:175 +msgid "Yes, share this query with other users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:176 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "" + +#: templates/helpdesk/ticket_list.html:195 +msgid "Use Saved Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:202 +msgid "Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:207 +msgid "Run Query" +msgstr "" + +#: templates/helpdesk/ticket_list.html:240 +msgid "No Tickets Match Your Selection" +msgstr "" + +#: templates/helpdesk/ticket_list.html:247 +msgid "Previous" +msgstr "" + +#: templates/helpdesk/ticket_list.html:251 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "" + +#: templates/helpdesk/ticket_list.html:255 +msgid "Next" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Select:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "None" +msgstr "" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Inverse" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "With Selected Tickets:" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Take (Assign to me)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Don't Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Send E-Mail)" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Assign To" +msgstr "" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Nobody (Unassign)" +msgstr "" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "" + +#: templates/helpdesk/user_settings.html:8 +msgid "" +"Use the following options to change the way your helpdesk system works for " +"you. These settings do not impact any other user." +msgstr "" + +#: templates/helpdesk/user_settings.html:14 +msgid "Save Options" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "" + +#: templates/helpdesk/registration/login.html:14 +msgid "To log in simply enter your username and password below." +msgstr "" + +#: templates/helpdesk/registration/login.html:17 +msgid "Your username and password didn't match. Please try again." +msgstr "" + +#: templates/helpdesk/registration/login.html:20 +msgid "Login" +msgstr "" + +#: views/feeds.py:39 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:44 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:50 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "" + +#: views/feeds.py:55 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "" + +#: views/feeds.py:102 +msgid "Helpdesk: Unassigned Tickets" +msgstr "" + +#: views/feeds.py:103 +msgid "Unassigned Open and Reopened tickets" +msgstr "" + +#: views/feeds.py:128 +msgid "Helpdesk: Recent Followups" +msgstr "" + +#: views/feeds.py:129 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "" + +#: views/feeds.py:144 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "" + +#: views/feeds.py:149 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "" + +#: views/public.py:89 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "" + +#: views/public.py:107 +msgid "Submitter accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:235 +msgid "Accepted resolution and closed ticket" +msgstr "" + +#: views/staff.py:369 +#, python-format +msgid "Assigned to %(username)s" +msgstr "" + +#: views/staff.py:392 +msgid "Updated" +msgstr "" + +#: views/staff.py:577 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "" + +#: views/staff.py:582 +msgid "Unassigned in bulk update" +msgstr "" + +#: views/staff.py:587 views/staff.py:592 +msgid "Closed in bulk update" +msgstr "" + +#: views/staff.py:806 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "" + +#: views/staff.py:910 +msgid "Ticket taken off hold" +msgstr "" + +#: views/staff.py:913 +msgid "Ticket placed on hold" +msgstr "" + +#: views/staff.py:1007 +msgid "User by Priority" +msgstr "" + +#: views/staff.py:1013 +msgid "User by Queue" +msgstr "" + +#: views/staff.py:1019 +msgid "User by Status" +msgstr "" + +#: views/staff.py:1025 +msgid "User by Month" +msgstr "" + +#: views/staff.py:1031 +msgid "Queue by Priority" +msgstr "" + +#: views/staff.py:1037 +msgid "Queue by Status" +msgstr "" + +#: views/staff.py:1043 +msgid "Queue by Month" +msgstr "" diff --git a/build/lib/helpdesk/locale/zh_CN/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/zh_CN/LC_MESSAGES/django.mo new file mode 100644 index 00000000..765be4ab Binary files /dev/null and b/build/lib/helpdesk/locale/zh_CN/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/zh_CN/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/zh_CN/LC_MESSAGES/django.po new file mode 100644 index 00000000..d8374d72 --- /dev/null +++ b/build/lib/helpdesk/locale/zh_CN/LC_MESSAGES/django.po @@ -0,0 +1,2394 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Translators: +# pjsong , 2017 +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2014-07-26 14:14+0200\n" +"PO-Revision-Date: 2017-12-06 08:13+0000\n" +"Last-Translator: pjsong \n" +"Language-Team: Chinese (China) (http://www.transifex.com/django-helpdesk/django-helpdesk/language/zh_CN/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: zh_CN\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: forms.py:128 forms.py:328 models.py:190 models.py:267 +#: templates/helpdesk/dashboard.html:15 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/dashboard.html:124 templates/helpdesk/rss_list.html:24 +#: templates/helpdesk/ticket_list.html:69 +#: templates/helpdesk/ticket_list.html:88 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:1032 +#: views/staff.py:1038 views/staff.py:1044 views/staff.py:1050 +msgid "Queue" +msgstr "所有待办" + +#: forms.py:137 +msgid "Summary of the problem" +msgstr "问题描述" + +#: forms.py:142 +msgid "Submitter E-Mail Address" +msgstr "提交者邮件" + +#: forms.py:144 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "此邮箱将收到此工单的所有公开更新" + +#: forms.py:150 +msgid "Description of Issue" +msgstr "问题描述" + +#: forms.py:157 +msgid "Case owner" +msgstr "案子所有者" + +#: forms.py:158 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "如果选择自己之外的所有者, 他们将马上收到此工单的邮件" + +#: forms.py:166 models.py:327 management/commands/escalate_tickets.py:154 +#: templates/helpdesk/public_view_ticket.html:23 +#: templates/helpdesk/ticket.html:184 +#: templates/helpdesk/ticket_desc_table.html:47 +#: templates/helpdesk/ticket_list.html:94 views/staff.py:429 +msgid "Priority" +msgstr "优先级" + +#: forms.py:167 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "请认真选择优先级,如果不确定, 选择默认3" + +#: forms.py:174 forms.py:365 models.py:335 templates/helpdesk/ticket.html:186 +#: views/staff.py:439 +msgid "Due on" +msgstr "截止至" + +#: forms.py:186 forms.py:370 +msgid "Attach File" +msgstr "附件" + +#: forms.py:187 forms.py:371 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "你可以附加文档或者截屏到这个工单" + +#: forms.py:240 +msgid "Ticket Opened" +msgstr "开工单" + +#: forms.py:247 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "已开 & 已分配给 %(name)s" + +#: forms.py:337 +msgid "Summary of your query" +msgstr "查询摘要" + +#: forms.py:342 +msgid "Your E-Mail Address" +msgstr "邮箱地址" + +#: forms.py:343 +msgid "We will e-mail you when your ticket is updated." +msgstr "当您的ticket有更新,我们将给您发邮件" + +#: forms.py:348 +msgid "Description of your issue" +msgstr "问题描述" + +#: forms.py:350 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "请保持描述性, 包括为了表示您的查询,我们所需要的任何细节" + +#: forms.py:358 +msgid "Urgency" +msgstr "紧急程度" + +#: forms.py:359 +msgid "Please select a priority carefully." +msgstr "请认真选择优先级" + +#: forms.py:419 +msgid "Ticket Opened Via Web" +msgstr "工单已通过web打开" + +#: forms.py:486 +msgid "Show Ticket List on Login?" +msgstr "登录之后是否显示工单列表?" + +#: forms.py:487 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "登录之后显示工单吗? 如果否, 则显示仪表盘" + +#: forms.py:492 +msgid "E-mail me on ticket change?" +msgstr "工单更改要通知您吗?" + +#: forms.py:493 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "如果您是工单所有者, 且工单被其他人通过web改变了, 您希望收到邮件吗?" + +#: forms.py:498 +msgid "E-mail me when assigned a ticket?" +msgstr "当工单分配给您,要给您发邮件吗?" + +#: forms.py:499 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "如果有工单分配到了您,您是否愿意收到邮件?" + +#: forms.py:504 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "当工单通过api改变时, 要通知您吗?" + +#: forms.py:505 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "如果工单被api改变, 您愿意收到邮件吗?" + +#: forms.py:510 +msgid "Number of tickets to show per page" +msgstr "每个页面显示的工单数量" + +#: forms.py:511 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "工单列表页面显示的工单数量" + +#: forms.py:518 +msgid "Use my e-mail address when submitting tickets?" +msgstr "当提交工单时使用我的邮箱地址吗?" + +#: forms.py:519 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "当提交工单, 您愿意自动使用您的邮箱地址作为提交者地址吗? 提交表单时如果需要, 您可以改变缺省的选项,输入一个不同的邮箱地址。" + +#: models.py:35 models.py:261 models.py:503 models.py:817 models.py:853 +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket.html:178 templates/helpdesk/ticket_list.html:85 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:419 +msgid "Title" +msgstr "标题" + +#: models.py:40 models.py:822 models.py:1206 +msgid "Slug" +msgstr "地址栏表示" + +#: models.py:41 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "本地址栏表示在构建工单ID时使用。 一旦设置不要更改, 否则可能导致邮件功能混乱" + +#: models.py:46 models.py:1054 models.py:1129 models.py:1203 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "邮件地址" + +#: models.py:49 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "本待办主题下,所有出去的邮件将使用本地址。 如果您使用IMAP或者POP3,这里应该是那个邮箱的地址" + +#: models.py:55 models.py:794 +msgid "Locale" +msgstr "地区" + +#: models.py:59 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "待办所属的地区。 这个代办下对应的任务使用该语言" + +#: models.py:63 +msgid "Allow Public Submission?" +msgstr "允许公共提交?" + +#: models.py:66 +msgid "Should this queue be listed on the public submission form?" +msgstr "是否该待办显示在公共提交表单?" + +#: models.py:71 +msgid "Allow E-Mail Submission?" +msgstr "允许邮件提交?" + +#: models.py:74 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "您是否愿意通过以下的邮件查询得到新的工单?" + +#: models.py:79 +msgid "Escalation Days" +msgstr "提升天数" + +#: models.py:82 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "对于不固定的工单, 多久您希望提升其优先级? 设置0表示不提升" + +#: models.py:87 +msgid "New Ticket CC Address" +msgstr "新工单CC的地址" + +#: models.py:91 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "如果此处输入邮件地址,该地址将收到本待办下所有新创建的工单。多个邮件地址用逗号分隔" + +#: models.py:97 +msgid "Updated Ticket CC Address" +msgstr "更新工单CC的地址" + +#: models.py:101 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "此处输入的邮件地址, 将收到本代办下所有的活动(新工单,关闭工单,更新,重分配等)。多个邮件地址用逗号分隔。" + +#: models.py:108 +msgid "E-Mail Box Type" +msgstr "邮箱类型" + +#: models.py:110 +msgid "POP 3" +msgstr "POP3" + +#: models.py:110 +msgid "IMAP" +msgstr "IMAP" + +#: models.py:113 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "通过邮箱自动创建工单的邮件服务器类型。 同时支持POP3和IMAP" + +#: models.py:118 +msgid "E-Mail Hostname" +msgstr "邮箱主机名" + +#: models.py:122 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "您邮箱服务器地址-域名或者ip. 可能是localhost" + +#: models.py:127 +msgid "E-Mail Port" +msgstr "邮件端口" + +#: models.py:130 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "访问邮件使用的端口。 缺省下POP3用110, IMAP用143. 不同服务器可能有差别。如果使用缺省,保持空白。" + +#: models.py:136 +msgid "Use SSL for E-Mail?" +msgstr "邮箱使用SSL?" + +#: models.py:139 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "IMAP或POP3是否使用SSL-当使用SSL, IMAP是993, POP3是995" + +#: models.py:144 +msgid "E-Mail Username" +msgstr "邮箱用户名" + +#: models.py:148 +msgid "Username for accessing this mailbox." +msgstr "访问本邮箱使用的用户名" + +#: models.py:152 +msgid "E-Mail Password" +msgstr "邮箱密码" + +#: models.py:156 +msgid "Password for the above username" +msgstr "以上用户名的密码" + +#: models.py:160 +msgid "IMAP Folder" +msgstr "IMAP文件夹" + +#: models.py:164 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "如果使用IMAP,您希望获取哪个文件夹的消息? 本功能允许您使用一个IMAP帐号访问多个待办。把您IMAP服务器上的消息分开到不同的文件夹即可。缺省:收件箱" + +#: models.py:171 +msgid "E-Mail Check Interval" +msgstr "邮箱检查间隔" + +#: models.py:172 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "隔多久您希望检查此邮箱?(分钟单位)" + +#: models.py:191 templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "代办" + +#: models.py:245 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:138 +msgid "Open" +msgstr "打开" + +#: models.py:246 templates/helpdesk/ticket.html:144 +#: templates/helpdesk/ticket.html.py:150 templates/helpdesk/ticket.html:155 +#: templates/helpdesk/ticket.html.py:159 +msgid "Reopened" +msgstr "重新打开" + +#: models.py:247 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:139 templates/helpdesk/ticket.html.py:145 +#: templates/helpdesk/ticket.html:151 +msgid "Resolved" +msgstr "已解决" + +#: models.py:248 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:140 templates/helpdesk/ticket.html.py:146 +#: templates/helpdesk/ticket.html:152 templates/helpdesk/ticket.html.py:156 +msgid "Closed" +msgstr "已关闭" + +#: models.py:249 templates/helpdesk/ticket.html:141 +#: templates/helpdesk/ticket.html.py:147 templates/helpdesk/ticket.html:160 +msgid "Duplicate" +msgstr "重复" + +#: models.py:253 +msgid "1. Critical" +msgstr "1. 严重" + +#: models.py:254 +msgid "2. High" +msgstr "2. 高" + +#: models.py:255 +msgid "3. Normal" +msgstr "3. 一般" + +#: models.py:256 +msgid "4. Low" +msgstr "4. 低" + +#: models.py:257 +msgid "5. Very Low" +msgstr "5. 很低" + +#: models.py:271 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/ticket_list.html:82 +#: templates/helpdesk/ticket_list.html:225 +msgid "Created" +msgstr "已创建" + +#: models.py:273 +msgid "Date this ticket was first created" +msgstr "工单创建日期" + +#: models.py:277 +msgid "Modified" +msgstr "已修改" + +#: models.py:279 +msgid "Date this ticket was most recently changed." +msgstr "工单最近修改日期" + +#: models.py:283 templates/helpdesk/public_view_ticket.html:18 +#: templates/helpdesk/ticket_desc_table.html:42 +msgid "Submitter E-Mail" +msgstr "提交者邮箱" + +#: models.py:286 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "提交者将收到本任务的所有跟进" + +#: models.py:295 +msgid "Assigned to" +msgstr "分配给" + +#: models.py:299 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:70 +#: templates/helpdesk/ticket_list.html:91 +#: templates/helpdesk/ticket_list.html:225 +msgid "Status" +msgstr "状态" + +#: models.py:305 +msgid "On Hold" +msgstr "待定" + +#: models.py:308 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "如果工单待定,将自动提升级别" + +#: models.py:313 models.py:826 templates/helpdesk/public_view_ticket.html:41 +#: templates/helpdesk/ticket_desc_table.html:19 +msgid "Description" +msgstr "描述" + +#: models.py:316 +msgid "The content of the customers query." +msgstr "定制查询的内容" + +#: models.py:320 templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Resolution" +msgstr "解决方案" + +#: models.py:323 +msgid "The resolution provided to the customer by our staff." +msgstr "员工提供给客户的解决方案" + +#: models.py:331 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "1=最高优先级, 5=低优先级" + +#: models.py:344 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "最近优先级提升日期,通过management/commands/escalate_tickets.py自动升级" + +#: models.py:353 templates/helpdesk/ticket_desc_table.html:38 +#: views/feeds.py:95 views/feeds.py:121 views/feeds.py:173 views/staff.py:376 +msgid "Unassigned" +msgstr "未分配" + +#: models.py:392 +msgid " - On Hold" +msgstr "待定" + +#: models.py:394 +msgid " - Open dependencies" +msgstr "打开依赖" + +#: models.py:448 models.py:494 models.py:1117 models.py:1280 models.py:1309 +#: templates/helpdesk/public_homepage.html:78 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "工单" + +#: models.py:449 templates/helpdesk/navigation.html:17 +#: templates/helpdesk/ticket_list.html:2 +#: templates/helpdesk/ticket_list.html:224 +msgid "Tickets" +msgstr "工单" + +#: models.py:498 models.py:738 models.py:1047 models.py:1200 +msgid "Date" +msgstr "日期" + +#: models.py:510 views/staff.py:390 +msgid "Comment" +msgstr "评论" + +#: models.py:516 +msgid "Public" +msgstr "公开" + +#: models.py:519 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "公开工单对提交者和所有员工可见,非公开工单只对员工可见。" + +#: models.py:527 models.py:922 models.py:1125 views/staff.py:1008 +#: views/staff.py:1014 views/staff.py:1020 views/staff.py:1026 +msgid "User" +msgstr "用户" + +#: models.py:531 templates/helpdesk/ticket.html:135 +msgid "New Status" +msgstr "新状态" + +#: models.py:535 +msgid "If the status was changed, what was it changed to?" +msgstr "如果状态发生变更,变更到哪个状态?" + +#: models.py:542 models.py:566 models.py:628 +msgid "Follow-up" +msgstr "跟进" + +#: models.py:543 +msgid "Follow-ups" +msgstr "跟进" + +#: models.py:570 models.py:1285 +msgid "Field" +msgstr "字段" + +#: models.py:575 +msgid "Old Value" +msgstr "旧值" + +#: models.py:581 +msgid "New Value" +msgstr "新值" + +#: models.py:589 +msgid "removed" +msgstr "移除" + +#: models.py:591 +#, python-format +msgid "set to %s" +msgstr "设置为 %s" + +#: models.py:593 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr " 从\"%(old_value)s\" 更改为 \"%(new_value)s\"" + +#: models.py:600 +msgid "Ticket change" +msgstr "工单变更" + +#: models.py:601 +msgid "Ticket changes" +msgstr "工单变更" + +#: models.py:632 +msgid "File" +msgstr "文件" + +#: models.py:637 +msgid "Filename" +msgstr "文件名" + +#: models.py:642 +msgid "MIME Type" +msgstr "MIME 类型" + +#: models.py:647 +msgid "Size" +msgstr "大小" + +#: models.py:648 +msgid "Size of this file in bytes" +msgstr "文件字节大小" + +#: models.py:665 +msgid "Attachment" +msgstr "附件" + +#: models.py:666 +msgid "Attachments" +msgstr "附件" + +#: models.py:685 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "留空表示允许回复给所有待办,或者选择你要的待办。" + +#: models.py:690 models.py:733 models.py:1042 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "名字" + +#: models.py:692 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "仅用于帮助用户选择回复,不显示给用户。" + +#: models.py:697 +msgid "Body" +msgstr "内容" + +#: models.py:698 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "可用的上下文: {{ ticket }} - 目标工单 (比如 {{ ticket.title }}); {{ queue }} - 待办; 和{{ user }} - 当前用户。" + +#: models.py:705 +msgid "Pre-set reply" +msgstr "预设置回复" + +#: models.py:706 +msgid "Pre-set replies" +msgstr "预设置回复" + +#: models.py:727 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "留空表示此排除应用到所有待办,或者选择你想应用的待办。" + +#: models.py:739 +msgid "Date on which escalation should not happen" +msgstr "不发生提升的日期" + +#: models.py:746 +msgid "Escalation exclusion" +msgstr "提升排除项" + +#: models.py:747 +msgid "Escalation exclusions" +msgstr "提升排除项" + +#: models.py:760 +msgid "Template Name" +msgstr "模板名" + +#: models.py:765 +msgid "Subject" +msgstr "主题" + +#: models.py:767 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "此处添加 \"[ticket.ticket] ticket.title\"前缀. 我们推荐类似于 \"(已更新\") 或者 \"(已关闭)\"的简单形式 - 在下面的纯文本,上下文依然有效。" + +#: models.py:773 +msgid "Heading" +msgstr "标题" + +#: models.py:775 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "在HTML格式电邮中,这是邮件顶部的标题-下面的文本中上下文依然有效" + +#: models.py:781 +msgid "Plain Text" +msgstr "纯文本" + +#: models.py:782 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "可用的上下文包括 {{ ticket }}, {{ queue }}, 依赖调用时间: {{ resolution }} 或者 {{ comment }}." + +#: models.py:788 +msgid "HTML" +msgstr "HTML" + +#: models.py:789 +msgid "The same context is available here as in plain_text, above." +msgstr "与纯文本一样,可用同样的上下文" + +#: models.py:798 +msgid "Locale of this template." +msgstr "模板的地区" + +#: models.py:806 +msgid "e-mail template" +msgstr "邮件模板" + +#: models.py:807 +msgid "e-mail templates" +msgstr "邮件模板" + +#: models.py:834 +msgid "Knowledge base category" +msgstr "知识库分类" + +#: models.py:835 +msgid "Knowledge base categories" +msgstr "知识库分类" + +#: models.py:849 templates/helpdesk/kb_index.html:11 +#: templates/helpdesk/public_homepage.html:11 +msgid "Category" +msgstr "分类" + +#: models.py:858 +msgid "Question" +msgstr "提问" + +#: models.py:862 +msgid "Answer" +msgstr "回答" + +#: models.py:866 +msgid "Votes" +msgstr "投票" + +#: models.py:867 +msgid "Total number of votes cast for this item" +msgstr "此项的投票数量" + +#: models.py:872 +msgid "Positive Votes" +msgstr "赞票" + +#: models.py:873 +msgid "Number of votes for this item which were POSITIVE." +msgstr "踩票数" + +#: models.py:878 +msgid "Last Updated" +msgstr "最近更新" + +#: models.py:879 +msgid "The date on which this question was most recently changed." +msgstr "此提问最近更新时间" + +#: models.py:893 +msgid "Unrated" +msgstr "未评级" + +#: models.py:901 +msgid "Knowledge base item" +msgstr "知识库项" + +#: models.py:902 +msgid "Knowledge base items" +msgstr "知识库项" + +#: models.py:926 templates/helpdesk/ticket_list.html:170 +msgid "Query Name" +msgstr "查询名" + +#: models.py:928 +msgid "User-provided name for this query" +msgstr "用户定义的查询名字" + +#: models.py:932 +msgid "Shared With Other Users?" +msgstr "与其他用户共享?" + +#: models.py:935 +msgid "Should other users see this query?" +msgstr "查询对其他用户可见?" + +#: models.py:939 +msgid "Search Query" +msgstr "查询搜索" + +#: models.py:940 +msgid "Pickled query object. Be wary changing this." +msgstr "酸查询对象, 改变要小心" + +#: models.py:950 +msgid "Saved search" +msgstr "已保存搜索" + +#: models.py:951 +msgid "Saved searches" +msgstr "已保存搜索" + +#: models.py:966 +msgid "Settings Dictionary" +msgstr "设置字典" + +#: models.py:967 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "酸python字典的base64编码表示。不要通过管理员改变此字段" + +#: models.py:993 +msgid "User Setting" +msgstr "用户设置" + +#: models.py:994 templates/helpdesk/navigation.html:37 +#: templates/helpdesk/user_settings.html:6 +msgid "User Settings" +msgstr "用户设置" + +#: models.py:1036 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "留空表示次邮件被所有待办忽略。或者选择你需要忽略的待办." + +#: models.py:1048 +msgid "Date on which this e-mail address was added" +msgstr "此邮箱地址添加日期" + +#: models.py:1056 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "输入全邮件地址,或者包含通配符比如*@domain.com或者postmaster@*" + +#: models.py:1061 +msgid "Save Emails in Mailbox?" +msgstr "在邮箱保存邮件吗?" + +#: models.py:1064 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "邮箱中保存此地址的邮件吗?如果没有勾上,此地址的邮件将被删除" + +#: models.py:1101 +msgid "Ignored e-mail address" +msgstr "忽略邮件地址" + +#: models.py:1102 +msgid "Ignored e-mail addresses" +msgstr "忽略邮件地址" + +#: models.py:1124 +msgid "User who wishes to receive updates for this ticket." +msgstr "希望收到此工单更新的用户" + +#: models.py:1132 +msgid "For non-user followers, enter their e-mail address" +msgstr "输入非用户跟进者的邮箱地址" + +#: models.py:1136 +msgid "Can View Ticket?" +msgstr "可以看工单?" + +#: models.py:1138 +msgid "Can this CC login to view the ticket details?" +msgstr "此CC能登录查看工单详情?" + +#: models.py:1142 +msgid "Can Update Ticket?" +msgstr "能更新工单?" + +#: models.py:1144 +msgid "Can this CC login and update the ticket?" +msgstr "此CC能登录并更新工单?" + +#: models.py:1175 +msgid "Field Name" +msgstr "字段名" + +#: models.py:1176 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "与数据库中用法一样, 必须唯一,且只有小写字母,无标点" + +#: models.py:1181 +msgid "Label" +msgstr "标签" + +#: models.py:1183 +msgid "The display label for this field" +msgstr "此字段的标签" + +#: models.py:1187 +msgid "Help Text" +msgstr "帮助文本" + +#: models.py:1188 +msgid "Shown to the user when editing the ticket" +msgstr "编辑工单时显示给用户" + +#: models.py:1194 +msgid "Character (single line)" +msgstr "字符(单行)" + +#: models.py:1195 +msgid "Text (multi-line)" +msgstr "文本(多行)" + +#: models.py:1196 +msgid "Integer" +msgstr "整型" + +#: models.py:1197 +msgid "Decimal" +msgstr "数字型" + +#: models.py:1198 +msgid "List" +msgstr "列表" + +#: models.py:1199 +msgid "Boolean (checkbox yes/no)" +msgstr "布尔型(单选yes/no)" + +#: models.py:1201 +msgid "Time" +msgstr "时间" + +#: models.py:1202 +msgid "Date & Time" +msgstr "时间&日期" + +#: models.py:1204 +msgid "URL" +msgstr "网址" + +#: models.py:1205 +msgid "IP Address" +msgstr "IP 地址" + +#: models.py:1210 +msgid "Data Type" +msgstr "日期类型" + +#: models.py:1212 +msgid "Allows you to restrict the data entered into this field" +msgstr "可以限制输入到此字段的数据" + +#: models.py:1217 +msgid "Maximum Length (characters)" +msgstr "最大长度(字符)" + +#: models.py:1223 +msgid "Decimal Places" +msgstr "小数位" + +#: models.py:1224 +msgid "Only used for decimal fields" +msgstr "仅用于数字型字段" + +#: models.py:1230 +msgid "Add empty first choice to List?" +msgstr "添加第一个空选项到列表吗?" + +#: models.py:1232 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "仅用于列表:添加一个空项到列表,强制用户作出一个活跃选择" + +#: models.py:1236 +msgid "List Values" +msgstr "列表值" + +#: models.py:1237 +msgid "For list fields only. Enter one option per line." +msgstr "仅针对列表字段,每行添加一个选项" + +#: models.py:1243 +msgid "Ordering" +msgstr "排序" + +#: models.py:1244 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "显示数字由低到高" + +#: models.py:1258 +msgid "Required?" +msgstr "必填?" + +#: models.py:1259 +msgid "Does the user have to enter a value for this field?" +msgstr "用户在此字段必须填入值?" + +#: models.py:1263 +msgid "Staff Only?" +msgstr "仅员工?" + +#: models.py:1264 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "如果勾上,公共提交的表单不会显示该字段" + +#: models.py:1273 +msgid "Custom field" +msgstr "定制字段" + +#: models.py:1274 +msgid "Custom fields" +msgstr "定制字段" + +#: models.py:1297 +msgid "Ticket custom field value" +msgstr "工单定制字段值" + +#: models.py:1298 +msgid "Ticket custom field values" +msgstr "工单定制字段值" + +#: models.py:1315 +msgid "Depends On Ticket" +msgstr "依赖于工单" + +#: models.py:1324 +msgid "Ticket dependency" +msgstr "工单依赖" + +#: models.py:1325 +msgid "Ticket dependencies" +msgstr "工单依赖" + +#: management/commands/create_usersettings.py:25 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "检查没有django-helpdesk UserSettings的用户,如果需要创建settings. 用settings.DEFAULT_USER_SETTINGS, 可以被重写来满足个人情况。" + +#: management/commands/escalate_tickets.py:148 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "%s 天之后工单升级" + +#: management/commands/get_email.py:158 +msgid "Created from e-mail" +msgstr "从邮件创建" + +#: management/commands/get_email.py:162 +msgid "Unknown Sender" +msgstr "未知发送者" + +#: management/commands/get_email.py:216 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "没有可用的纯文本邮件体。请参考附件 email_html_body.html" + +#: management/commands/get_email.py:220 +msgid "email_html_body.html" +msgstr "email_html_body.html" + +#: management/commands/get_email.py:263 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "从 1%(sender_email)s处收到的邮件" + +#: management/commands/get_email.py:271 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "从 1%(sender_email)s 处收到的邮件重开的公开" + +#: management/commands/get_email.py:329 +msgid " (Reopened)" +msgstr "(重新打开)" + +#: management/commands/get_email.py:331 +msgid " (Updated)" +msgstr "(已更新)" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"django-helpdesk." +msgstr "django-helpdesk." + +#: templates/helpdesk/base.html:10 +msgid "Powered by django-helpdesk" +msgstr "由 django-helpdesk 主导" + +#: templates/helpdesk/base.html:20 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:24 templates/helpdesk/rss_list.html:31 +msgid "My Open Tickets" +msgstr "我打开的工单" + +#: templates/helpdesk/base.html:21 +msgid "All Recent Activity" +msgstr "所有最近的活动" + +#: templates/helpdesk/base.html:22 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "未分配工单" + +#: templates/helpdesk/base.html:52 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:18 +msgid "Helpdesk" +msgstr "Helpdesk" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:30 templates/helpdesk/rss_list.html:31 +msgid "RSS Icon" +msgstr "RSS图标" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "RSS 种子" + +#: templates/helpdesk/base.html:63 +msgid "API" +msgstr "API" + +#: templates/helpdesk/base.html:64 templates/helpdesk/system_settings.html:6 +msgid "System Settings" +msgstr "系统设置" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:146 +msgid "Delete Saved Query" +msgstr "删除保存的查询" + +#: templates/helpdesk/confirm_delete_saved_query.html:6 +msgid "Delete Query" +msgstr "删除查询" + +#: templates/helpdesk/confirm_delete_saved_query.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this saved filter " +"(%(query_title)s)? To re-create it, you will need to manually re-" +"filter your ticket listing." +msgstr "确认删除保存的过滤器 (1%(query_title)s1)? 要重新创建, 你将需要手动重新过滤工单列表." + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"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." +msgstr "您已共享此查询,其他用户可以使用它。如果你删除,他们将必须手动创建自己的查询。" + +#: templates/helpdesk/confirm_delete_saved_query.html:14 +#: templates/helpdesk/delete_ticket.html:10 +msgid "No, Don't Delete It" +msgstr "否,不要删除" + +#: templates/helpdesk/confirm_delete_saved_query.html:16 +#: templates/helpdesk/delete_ticket.html:12 +msgid "Yes - Delete It" +msgstr "是, 删除" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "创建工单" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/navigation.html:65 templates/helpdesk/navigation.html:68 +#: templates/helpdesk/public_homepage.html:27 +msgid "Submit a Ticket" +msgstr "提交工单" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "除非其他说明, 所有字段都必须" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +#: templates/helpdesk/public_homepage.html:28 +msgid "Please provide as descriptive a title and description as possible." +msgstr "请提供描述性的标题和描述" + +#: templates/helpdesk/create_ticket.html:30 +#: templates/helpdesk/public_homepage.html:55 +msgid "Submit Ticket" +msgstr "提交工单" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "helpdesk 仪表盘" + +#: templates/helpdesk/dashboard.html:9 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "欢迎来到helpdesk仪表盘。这里可以看到您提交的工单, 你正在工作的工单, 以及没有所有者的工单" + +#: templates/helpdesk/dashboard.html:14 +msgid "Helpdesk Summary" +msgstr "helpdesk 摘要" + +#: templates/helpdesk/dashboard.html:36 +msgid "Current Ticket Stats" +msgstr "当前工单状态" + +#: templates/helpdesk/dashboard.html:37 +msgid "Average number of days until ticket is closed (all tickets): " +msgstr "工单关闭平均天数(所有工单)" + +#: templates/helpdesk/dashboard.html:38 +msgid "" +"Average number of days until ticket is closed (tickets opened in last 60 " +"days): " +msgstr "工单关闭平均天数(最近60天打开的工单)" + +#: templates/helpdesk/dashboard.html:39 +msgid "Click" +msgstr "点击" + +#: templates/helpdesk/dashboard.html:39 +msgid "for detailed average by month." +msgstr "按月平均详细" + +#: templates/helpdesk/dashboard.html:40 +msgid "Distribution of open tickets, grouped by time period:" +msgstr "根据时间范围分组,开工单的分布" + +#: templates/helpdesk/dashboard.html:41 +msgid "Days since opened" +msgstr "打开天数" + +#: templates/helpdesk/dashboard.html:41 +msgid "Number of open tickets" +msgstr "开放工单的数量" + +#: templates/helpdesk/dashboard.html:57 +msgid "All Tickets submitted by you" +msgstr "您提交的所有工单" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:225 +msgid "Pr" +msgstr "Pr" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:124 +msgid "Last Update" +msgstr "最近更新" + +#: templates/helpdesk/dashboard.html:77 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "分配给您的开放工单(您正在工作的工单)" + +#: templates/helpdesk/dashboard.html:92 +msgid "You have no tickets assigned to you." +msgstr "您没有被分配的工单" + +#: templates/helpdesk/dashboard.html:99 +msgid "(pick up a ticket if you start to work on it)" +msgstr "(如果开始工作某个工单, 选择该工单)" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/ticket_desc_table.html:38 +msgid "Take" +msgstr "拿走" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:262 +msgid "Delete" +msgstr "删除" + +#: templates/helpdesk/dashboard.html:114 +msgid "There are no unassigned tickets." +msgstr "没有未分配的工单" + +#: templates/helpdesk/dashboard.html:123 +msgid "Closed & resolved Tickets you used to work on" +msgstr "您过去关闭 & 已解决的工单" + +#: templates/helpdesk/delete_ticket.html:3 +#: templates/helpdesk/delete_ticket.html:6 +msgid "Delete Ticket" +msgstr "删除工单" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this ticket (%(ticket_title)s)? All" +" traces of the ticket, including followups, attachments, and updates will be" +" irreversibly removed." +msgstr "您确认删除此工单 (%(ticket_title)s)? 此工单的所有痕迹包括跟进,附件,更新都将不可逆的删除." + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "编辑工单" + +#: templates/helpdesk/edit_ticket.html:9 +msgid "Edit a Ticket" +msgstr "编辑工单" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "Note" +msgstr "备注" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "" +"Editing a ticket does not send an e-mail to the ticket owner or " +"submitter. No new details should be entered, this form should only be used " +"to fix incorrect details or clean up the submission." +msgstr "编辑工单 并不 发送邮件给工单所有者或者提交者。不要输入新的详情, 这个表单仅在修正错误的详情或者清理提交时使用. " + +#: templates/helpdesk/edit_ticket.html:33 +msgid "Save Changes" +msgstr "保存变更" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:6 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "忽略邮件地址" + +#: templates/helpdesk/email_ignore_add.html:8 +msgid "" +"To ignore an e-mail address and prevent any emails from that address " +"creating tickets automatically, enter the e-mail address below." +msgstr "要忽略某个邮件地址,自动阻止该地址创建工单,输入邮件地址" + +#: templates/helpdesk/email_ignore_add.html:10 +msgid "" +"You can either enter a whole e-mail address such as " +"email@domain.com or a portion of an e-mail address with a wildcard," +" such as *@domain.com or user@*." +msgstr "您可以输入像 email@domain.com 的整个邮件地址, 或者含通配符地址如 *@domain.com 或者 user@*." + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "删除已忽略邮件地址" + +#: templates/helpdesk/email_ignore_del.html:6 +msgid "Un-Ignore E-Mail Address" +msgstr "取消忽略邮件地址" + +#: templates/helpdesk/email_ignore_del.html:8 +#, python-format +msgid "" +"Are you sure you wish to stop removing this email address " +"(%(email_address)s) and allow their e-mails to automatically create" +" tickets in your system? You can re-add this e-mail address at any time." +msgstr "确认停止删除该邮件地址 (%(email_address)s) 且允许邮件在系统自动创建工单?您可以以后重新添加这个邮件地址。" + +#: templates/helpdesk/email_ignore_del.html:10 +msgid "Keep Ignoring It" +msgstr "保持忽略" + +#: templates/helpdesk/email_ignore_del.html:12 +msgid "Stop Ignoring It" +msgstr "停止忽略" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "忽略邮件地址" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "\n

忽略邮件地址

\n\n

一下邮件地址当前已被忽略。您可以 添加新的邮件地址到列表 或者根据需要删除下面的项

" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "已添加日期" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "保留在邮箱" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:260 +msgid "All" +msgstr "所有" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "保留" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "注意 如果'保留'选项没有选中, 那个邮箱发送的邮件将被永久删除." + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "编辑跟进" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "编辑跟进" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "重新分配工单" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "标题" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "评论" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:12 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "知识库分类: %(kbcat)s" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "您正在查看 %(kbcat)s 分类的所有项." + +#: templates/helpdesk/kb_category.html:13 +msgid "Article" +msgstr "文章" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:21 +#: templates/helpdesk/navigation.html:71 +msgid "Knowledgebase" +msgstr "知识库" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "我们列出了以下类别的知识库文章供您查阅。在开支持工单的时候,请检查是否有文章解决了该文题" + +#: templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Knowledgebase Categories" +msgstr "知识库分类" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "知识库: %(item)s" + +#: templates/helpdesk/kb_item.html:16 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "查看 其他 %(category_title)s 文章, 或继续 查看其他知识库文章." + +#: templates/helpdesk/kb_item.html:18 +msgid "Feedback" +msgstr "反馈" + +#: templates/helpdesk/kb_item.html:20 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "我们让用户可以为他们感觉有帮助的项投票, 这样我们更好服务未来的客户。我们感谢您对该文的反馈, 您觉得该文有帮助吗?" + +#: templates/helpdesk/kb_item.html:23 +msgid "This article was useful to me" +msgstr "该文有帮助" + +#: templates/helpdesk/kb_item.html:24 +msgid "This article was not useful to me" +msgstr "该文对我 没有 帮助" + +#: templates/helpdesk/kb_item.html:27 +msgid "The results of voting by other readers of this article are below:" +msgstr "其他读者对该文的投票结果如下" + +#: templates/helpdesk/kb_item.html:30 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "推荐: %(recommendations)s" + +#: templates/helpdesk/kb_item.html:31 +#, python-format +msgid "Votes: %(votes)s" +msgstr "投票: %(votes)s" + +#: templates/helpdesk/kb_item.html:32 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "总体评价: %(score)s" + +#: templates/helpdesk/navigation.html:16 templates/helpdesk/navigation.html:64 +msgid "Dashboard" +msgstr "仪表盘" + +#: templates/helpdesk/navigation.html:18 +msgid "New Ticket" +msgstr "新工单" + +#: templates/helpdesk/navigation.html:19 +msgid "Stats" +msgstr "统计" + +#: templates/helpdesk/navigation.html:24 +msgid "Saved Query" +msgstr "已保存查询" + +#: templates/helpdesk/navigation.html:39 +msgid "Change password" +msgstr "修改密码" + +#: templates/helpdesk/navigation.html:50 +msgid "Search..." +msgstr "搜索..." + +#: templates/helpdesk/navigation.html:50 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "输入关键字,或者工单号直接进入工单" + +#: templates/helpdesk/navigation.html:73 +msgid "Logout" +msgstr "登出" + +#: templates/helpdesk/navigation.html:73 +msgid "Log In" +msgstr "登入" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:73 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "查看工单" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "修改显示语言" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "知识库文章" + +#: templates/helpdesk/public_homepage.html:28 +msgid "All fields are required." +msgstr "所有字段必须" + +#: templates/helpdesk/public_homepage.html:66 +msgid "Please use button at upper right to login first." +msgstr "请用右上角按钮先登录" + +#: templates/helpdesk/public_homepage.html:82 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "您的邮箱地址" + +#: templates/helpdesk/public_homepage.html:86 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "查看工单" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "无法打开工单" + +#: templates/helpdesk/public_spam.html:5 +msgid "Sorry, but there has been an error trying to submit your ticket." +msgstr "对不起,提交工单出错" + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"Our system has marked your submission as spam, so we are " +"unable to save it. If this is not spam, please press back and re-type your " +"message. Be careful to avoid sounding 'spammy', and if you have heaps of " +"links please try removing them if possible." +msgstr "系统已将您的提交标注为 垃圾广告, 因此不被保存。如果不是垃圾广告, 请按回退且重新输入消息。 注意避免带垃圾广告的嫌疑, 如果有太多链接请先移除." + +#: templates/helpdesk/public_spam.html:7 +msgid "" +"We are sorry for any inconvenience, however this check is required to avoid " +"our helpdesk resources being overloaded by spammers." +msgstr "为您带来不便我们表示道歉。 不过为了避免系统被广告垃圾过载,此检查是必须的。" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "错误:" + +#: templates/helpdesk/public_view_ticket.html:9 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "待办:%(queue_name)s" + +#: templates/helpdesk/public_view_ticket.html:13 +#: templates/helpdesk/ticket_desc_table.html:32 +msgid "Submitted On" +msgstr "提交于" + +#: templates/helpdesk/public_view_ticket.html:35 +msgid "Tags" +msgstr "标注" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept" +msgstr "接受" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept and Close" +msgstr "接受并关闭" + +#: templates/helpdesk/public_view_ticket.html:57 +#: templates/helpdesk/ticket.html:66 +msgid "Follow-Ups" +msgstr "跟进" + +#: templates/helpdesk/public_view_ticket.html:65 +#: templates/helpdesk/ticket.html:100 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "更改 %(field)s 自 %(old_value)s 到 %(new_value)s." + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "报告 & 统计" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "您还没有创建任何工单,因此您不能运行任何报表" + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "按用户报表" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "按优先级" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "按待办" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "按状态" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "按月" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "按待办报表" + +#: templates/helpdesk/report_index.html:27 views/staff.py:1049 +msgid "Days until ticket closed by Month" +msgstr "按月,工单关闭的天数" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "您可以用您保存的查询来查询数据" + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "选择查询:" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "过滤报表" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "想要过滤次报表仅显示子集吗?到工单列表,过滤您的查询,并保存" + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "以下RSS种子您可以用您喜欢的软件来监控。除了‘最近活动’种子,所有的种子仅提供打开和重新打开的信息,确保您的RSS阅读器不会满是已经关闭的或者历史的任务。" + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "您开放工单的摘要 - 当新工单开放给你时您能获得提示" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "最近活动" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "所有helpdesk活动的摘要 - 包括评论, 邮件, 附件等" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "所有未分配的工单 - 当公众通过web或者email打开新工单时获得提示" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "这些RSS种子让你能看到您自己工单的摘要, 或者所有待办的工单摘要。比如, 如果您管理的员工用了一个特定的待办, 这可以用来查看该待办下的新工单。" + +#: templates/helpdesk/rss_list.html:23 +msgid "Per-Queue Feeds" +msgstr "根据待办的种子" + +#: templates/helpdesk/rss_list.html:24 +msgid "All Open Tickets" +msgstr "所有开放的工单" + +#: templates/helpdesk/rss_list.html:30 +msgid "Open Tickets" +msgstr "开放工单" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "更改系统设置" + +#: templates/helpdesk/system_settings.html:8 +msgid "The following items can be maintained by you or other superusers:" +msgstr "以下项可以由您或者其他超级用户来维护" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "邮件忽略列表" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "维护待办" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "维护预设回复" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "维护知识库分类" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "维护知识库项" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "维护邮件模板" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "维护用户" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "查看工单详情" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "附加另一个文件" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:200 +msgid "Add Another File" +msgstr "添加另一个文件" + +#: templates/helpdesk/ticket.html:73 templates/helpdesk/ticket.html.py:86 +msgid "Private" +msgstr "私有" + +#: templates/helpdesk/ticket.html:119 +msgid "Respond to this ticket" +msgstr "响应工单" + +#: templates/helpdesk/ticket.html:126 +msgid "Use a Pre-set Reply" +msgstr "使用预设回复" + +#: templates/helpdesk/ticket.html:126 templates/helpdesk/ticket.html.py:166 +msgid "(Optional)" +msgstr "(可选)" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "选择预设回复将覆盖您下面的评论. 您可以保存本更新之后,修改预设回复。" + +#: templates/helpdesk/ticket.html:131 +msgid "Comment / Resolution" +msgstr "评论/方案" + +#: templates/helpdesk/ticket.html:133 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "您可以插入工单到您的消息. 更多信息,查看上下文帮助页." + +#: templates/helpdesk/ticket.html:136 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "此工单不能解决或者关闭, 除非其依赖的工单被解决" + +#: templates/helpdesk/ticket.html:166 +msgid "Is this update public?" +msgstr "是否为公开更新?" + +#: templates/helpdesk/ticket.html:168 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "如果公开, 提交者将收到您评论或者方案的邮件" + +#: templates/helpdesk/ticket.html:172 +msgid "Change Further Details »" +msgstr "变更更多详情" + +#: templates/helpdesk/ticket.html:181 templates/helpdesk/ticket_list.html:68 +#: templates/helpdesk/ticket_list.html:97 +#: templates/helpdesk/ticket_list.html:225 +msgid "Owner" +msgstr "所有者" + +#: templates/helpdesk/ticket.html:182 +msgid "Unassign" +msgstr "未分配" + +#: templates/helpdesk/ticket.html:193 +msgid "Attach File(s) »" +msgstr " 附加文件(s) »" + +#: templates/helpdesk/ticket.html:199 +msgid "Attach a File" +msgstr "附加一个文件" + +#: templates/helpdesk/ticket.html:207 +msgid "Update This Ticket" +msgstr "更新此工单" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "添加工单CC" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "\n

添加工单CC

\n\n

当工单更新时要自动发送邮件给用户或者某个地址, 选择用户或者输入邮件地址

" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "保存工单CC" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "删除工单CC" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "\n

删除工单CC

\n\n

确认从CC列表删除此邮件地址 (%(email_address)s) ? 他们将不会再收到更新.

\n" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "不要删除" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "是,删除" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "工单CC设置" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "\n

工单CC设置

\n\n

每当%(ticket_title)s更新时,以下人将收到邮件. 有些人也能通过公开工单视图查看或者编辑工单.

\n\n

你可以 添加新邮件地址到列表 或者根据需要删除以下\n项.

" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "工单CC列表" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "查看?" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "更新?" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "返回到 %(ticket_title)s" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "添加工单依赖" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "\n

添加工单依赖

\n\n

添加以来将停止您解决这个工单, 直到依赖的工单被解决或者关闭.

" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "保存工单依赖" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "删除工单依赖" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "\n

删除工单依赖

\n\n

您确认删除此工单的依赖?

\n" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Unhold" +msgstr "解除暂停" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Hold" +msgstr "暂停" + +#: templates/helpdesk/ticket_desc_table.html:9 +#, python-format +msgid "Queue: %(queue)s" +msgstr "待办: %(queue)s" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Assigned To" +msgstr "分配给" + +#: templates/helpdesk/ticket_desc_table.html:43 +msgid "Ignore" +msgstr "忽略" + +#: templates/helpdesk/ticket_desc_table.html:52 +msgid "Copies To" +msgstr "拷贝至" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Manage" +msgstr "管理" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "点这里添加/移除此工单更新时收到邮件的人" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Subscribe" +msgstr "订阅" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to subscribe yourself to this ticket, if you want to receive an " +"e-mail whenever this ticket is updated." +msgstr "点这里订阅此工单,当工单更新您将收到邮件" + +#: templates/helpdesk/ticket_desc_table.html:57 +msgid "Dependencies" +msgstr "依赖" + +#: templates/helpdesk/ticket_desc_table.html:59 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "除非以下工单(s)被解决,此工单不能解决" + +#: templates/helpdesk/ticket_desc_table.html:60 +msgid "Remove Dependency" +msgstr "移除依赖" + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "This ticket has no dependencies." +msgstr "此工单无依赖" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "Add Dependency" +msgstr "添加依赖" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "如果要让工单依赖其他工单,点击'添加依赖'。除非依赖的工单关闭,原工单不能关闭。" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Change Query" +msgstr "更改查询" + +#: templates/helpdesk/ticket_list.html:67 +#: templates/helpdesk/ticket_list.html:79 +msgid "Sorting" +msgstr "排序" + +#: templates/helpdesk/ticket_list.html:71 +#: templates/helpdesk/ticket_list.html:139 +msgid "Keywords" +msgstr "关键字" + +#: templates/helpdesk/ticket_list.html:72 +msgid "Date Range" +msgstr "日期范围" + +#: templates/helpdesk/ticket_list.html:100 +msgid "Reverse" +msgstr "逆序" + +#: templates/helpdesk/ticket_list.html:102 +msgid "Ordering applied to tickets" +msgstr "排序应用到工单" + +#: templates/helpdesk/ticket_list.html:107 +msgid "Owner(s)" +msgstr "所有者" + +#: templates/helpdesk/ticket_list.html:111 +msgid "(ME)" +msgstr "(我)" + +#: templates/helpdesk/ticket_list.html:115 +msgid "Ctrl-Click to select multiple options" +msgstr "Ctrol-Click选择多项" + +#: templates/helpdesk/ticket_list.html:120 +msgid "Queue(s)" +msgstr "待办(s)" + +#: templates/helpdesk/ticket_list.html:121 +#: templates/helpdesk/ticket_list.html:127 +msgid "Ctrl-click to select multiple options" +msgstr "Ctrol-click选择多项" + +#: templates/helpdesk/ticket_list.html:126 +msgid "Status(es)" +msgstr "状态(es)" + +#: templates/helpdesk/ticket_list.html:132 +msgid "Date (From)" +msgstr "日期(从)" + +#: templates/helpdesk/ticket_list.html:133 +msgid "Date (To)" +msgstr "日期(至)" + +#: templates/helpdesk/ticket_list.html:134 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "用 YYYY-MM-DD 日期格式, 如 2011-05-29" + +#: templates/helpdesk/ticket_list.html:140 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "关键字大小写敏感, 将在标题,内容和提交者中被查找" + +#: templates/helpdesk/ticket_list.html:144 +msgid "Apply Filter" +msgstr "应用过滤" + +#: templates/helpdesk/ticket_list.html:146 +#, python-format +msgid "You are currently viewing saved query \"%(query_name)s\"." +msgstr "您正在查看保存的查询 \"%(query_name)s\"." + +#: templates/helpdesk/ticket_list.html:149 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr " 在本查询 运行报表 查看下面的数据统计和图表." + +#: templates/helpdesk/ticket_list.html:162 +#: templates/helpdesk/ticket_list.html:181 +msgid "Save Query" +msgstr "保存查询" + +#: templates/helpdesk/ticket_list.html:172 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "此名称出现在已保存查询的下拉列表, 如果您要共享查询,其他用户可以看到这个名字, 因此请选择清晰和描述性的名字" + +#: templates/helpdesk/ticket_list.html:174 +msgid "Shared?" +msgstr "共享?" + +#: templates/helpdesk/ticket_list.html:175 +msgid "Yes, share this query with other users." +msgstr "是,共享查询给其他用户" + +#: templates/helpdesk/ticket_list.html:176 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "如果您共享此查询,它将被 所有 其他登录的用户所见." + +#: templates/helpdesk/ticket_list.html:195 +msgid "Use Saved Query" +msgstr "使用保存的查询" + +#: templates/helpdesk/ticket_list.html:202 +msgid "Query" +msgstr "查询" + +#: templates/helpdesk/ticket_list.html:207 +msgid "Run Query" +msgstr "运行查询" + +#: templates/helpdesk/ticket_list.html:240 +msgid "No Tickets Match Your Selection" +msgstr "没有匹配到您选择的工单" + +#: templates/helpdesk/ticket_list.html:247 +msgid "Previous" +msgstr "向前" + +#: templates/helpdesk/ticket_list.html:251 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "页 %(ticket_num)s of %(num_pages)s." + +#: templates/helpdesk/ticket_list.html:255 +msgid "Next" +msgstr "下一个" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Select:" +msgstr "选择" + +#: templates/helpdesk/ticket_list.html:260 +msgid "None" +msgstr "空" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Inverse" +msgstr "倒序" + +#: templates/helpdesk/ticket_list.html:262 +msgid "With Selected Tickets:" +msgstr "对选中的工单" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Take (Assign to me)" +msgstr "拿走(分配给我)" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close" +msgstr "关闭" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Don't Send E-Mail)" +msgstr "关闭(不要发送邮件)" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Send E-Mail)" +msgstr "关闭(发送邮件)" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Assign To" +msgstr "分配给" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Nobody (Unassign)" +msgstr "没有人(未分配)" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "改变用户设置" + +#: templates/helpdesk/user_settings.html:8 +msgid "" +"Use the following options to change the way your helpdesk system works for " +"you. These settings do not impact any other user." +msgstr "使用以下选项更改您系统的工作方式.这些设置不影响其他用户" + +#: templates/helpdesk/user_settings.html:14 +msgid "Save Options" +msgstr "保存选项" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "等出" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "\n

登出

\n\n

谢谢光顾,希望您帮助解决了一些工单,让世界更美好.

\n\n" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "Helpdesk 登录" + +#: templates/helpdesk/registration/login.html:14 +msgid "To log in simply enter your username and password below." +msgstr "输入您的用户名密码登录" + +#: templates/helpdesk/registration/login.html:17 +msgid "Your username and password didn't match. Please try again." +msgstr "您的用户名/密码不匹配,再试一次" + +#: templates/helpdesk/registration/login.html:20 +msgid "Login" +msgstr "登录" + +#: views/feeds.py:39 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "Helpdesk: 为用户 %(username)s在待办 %(queue)s 打开工单" + +#: views/feeds.py:44 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "Helpdesk: 为用户 %(username)s 打开工单" + +#: views/feeds.py:50 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "在待办 %(queue)s 为用户 %(username)s 打开或者重开工单" + +#: views/feeds.py:55 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "为用户 %(username)s 打开或者重开工单" + +#: views/feeds.py:102 +msgid "Helpdesk: Unassigned Tickets" +msgstr "Helpdesk: 未分配工单" + +#: views/feeds.py:103 +msgid "Unassigned Open and Reopened tickets" +msgstr "未分配的开放或者重新打开的工单" + +#: views/feeds.py:128 +msgid "Helpdesk: Recent Followups" +msgstr "Helpdesk: 最近跟进人" + +#: views/feeds.py:129 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "最近更近,比如email回复,评论,附件和方案" + +#: views/feeds.py:144 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "Helpdesk: 代办 %(queue)s 中的开放工单 " + +#: views/feeds.py:149 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "在 %(queue)s 中打开和重新打开的工单" + +#: views/public.py:89 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "无效工单ID或者邮件地址, 请重试" + +#: views/public.py:107 +msgid "Submitter accepted resolution and closed ticket" +msgstr "提交者接受方案并关闭了工单" + +#: views/staff.py:235 +msgid "Accepted resolution and closed ticket" +msgstr "已接受方案并关闭的工单" + +#: views/staff.py:369 +#, python-format +msgid "Assigned to %(username)s" +msgstr "分配给 %(username)s" + +#: views/staff.py:392 +msgid "Updated" +msgstr "已更新" + +#: views/staff.py:577 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "在集体更新中分配给 %(username)s in bulk update" + +#: views/staff.py:582 +msgid "Unassigned in bulk update" +msgstr "在集体更新中未分配" + +#: views/staff.py:587 views/staff.py:592 +msgid "Closed in bulk update" +msgstr "在集体更新中已关闭" + +#: views/staff.py:806 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "

注意: 因为数据库,您的关键字查找大小写敏感,意味着搜索 精确. 切换到不同的数据库系统, 你可以获得更好的搜索, 更多信息,参考 Django Documentation on string matching in SQLite." + +#: views/staff.py:910 +msgid "Ticket taken off hold" +msgstr "从暂停区拿走的工单" + +#: views/staff.py:913 +msgid "Ticket placed on hold" +msgstr "待定工单" + +#: views/staff.py:1007 +msgid "User by Priority" +msgstr "用户按照优先级" + +#: views/staff.py:1013 +msgid "User by Queue" +msgstr "用户按照待办" + +#: views/staff.py:1019 +msgid "User by Status" +msgstr "用户按照状态" + +#: views/staff.py:1025 +msgid "User by Month" +msgstr "用户按月" + +#: views/staff.py:1031 +msgid "Queue by Priority" +msgstr "待办按照优先级" + +#: views/staff.py:1037 +msgid "Queue by Status" +msgstr "待办按照状态" + +#: views/staff.py:1043 +msgid "Queue by Month" +msgstr "待办按月" diff --git a/build/lib/helpdesk/locale/zh_Hans/LC_MESSAGES/django.mo b/build/lib/helpdesk/locale/zh_Hans/LC_MESSAGES/django.mo new file mode 100644 index 00000000..765be4ab Binary files /dev/null and b/build/lib/helpdesk/locale/zh_Hans/LC_MESSAGES/django.mo differ diff --git a/build/lib/helpdesk/locale/zh_Hans/LC_MESSAGES/django.po b/build/lib/helpdesk/locale/zh_Hans/LC_MESSAGES/django.po new file mode 100644 index 00000000..d8374d72 --- /dev/null +++ b/build/lib/helpdesk/locale/zh_Hans/LC_MESSAGES/django.po @@ -0,0 +1,2394 @@ +# django-helpdesk English language translation +# Copyright (C) 2011 Ross Poulton +# This file is distributed under the same license as the django-helpdesk package. +# +# Translators: +# Translators: +# pjsong , 2017 +msgid "" +msgstr "" +"Project-Id-Version: django-helpdesk\n" +"Report-Msgid-Bugs-To: http://github.com/RossP/django-helpdesk/issues\n" +"POT-Creation-Date: 2014-07-26 14:14+0200\n" +"PO-Revision-Date: 2017-12-06 08:13+0000\n" +"Last-Translator: pjsong \n" +"Language-Team: Chinese (China) (http://www.transifex.com/django-helpdesk/django-helpdesk/language/zh_CN/)\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"Language: zh_CN\n" +"Plural-Forms: nplurals=1; plural=0;\n" + +#: forms.py:128 forms.py:328 models.py:190 models.py:267 +#: templates/helpdesk/dashboard.html:15 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/dashboard.html:124 templates/helpdesk/rss_list.html:24 +#: templates/helpdesk/ticket_list.html:69 +#: templates/helpdesk/ticket_list.html:88 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:1032 +#: views/staff.py:1038 views/staff.py:1044 views/staff.py:1050 +msgid "Queue" +msgstr "所有待办" + +#: forms.py:137 +msgid "Summary of the problem" +msgstr "问题描述" + +#: forms.py:142 +msgid "Submitter E-Mail Address" +msgstr "提交者邮件" + +#: forms.py:144 +msgid "" +"This e-mail address will receive copies of all public updates to this " +"ticket." +msgstr "此邮箱将收到此工单的所有公开更新" + +#: forms.py:150 +msgid "Description of Issue" +msgstr "问题描述" + +#: forms.py:157 +msgid "Case owner" +msgstr "案子所有者" + +#: forms.py:158 +msgid "" +"If you select an owner other than yourself, they'll be e-mailed details of " +"this ticket immediately." +msgstr "如果选择自己之外的所有者, 他们将马上收到此工单的邮件" + +#: forms.py:166 models.py:327 management/commands/escalate_tickets.py:154 +#: templates/helpdesk/public_view_ticket.html:23 +#: templates/helpdesk/ticket.html:184 +#: templates/helpdesk/ticket_desc_table.html:47 +#: templates/helpdesk/ticket_list.html:94 views/staff.py:429 +msgid "Priority" +msgstr "优先级" + +#: forms.py:167 +msgid "Please select a priority carefully. If unsure, leave it as '3'." +msgstr "请认真选择优先级,如果不确定, 选择默认3" + +#: forms.py:174 forms.py:365 models.py:335 templates/helpdesk/ticket.html:186 +#: views/staff.py:439 +msgid "Due on" +msgstr "截止至" + +#: forms.py:186 forms.py:370 +msgid "Attach File" +msgstr "附件" + +#: forms.py:187 forms.py:371 +msgid "You can attach a file such as a document or screenshot to this ticket." +msgstr "你可以附加文档或者截屏到这个工单" + +#: forms.py:240 +msgid "Ticket Opened" +msgstr "开工单" + +#: forms.py:247 +#, python-format +msgid "Ticket Opened & Assigned to %(name)s" +msgstr "已开 & 已分配给 %(name)s" + +#: forms.py:337 +msgid "Summary of your query" +msgstr "查询摘要" + +#: forms.py:342 +msgid "Your E-Mail Address" +msgstr "邮箱地址" + +#: forms.py:343 +msgid "We will e-mail you when your ticket is updated." +msgstr "当您的ticket有更新,我们将给您发邮件" + +#: forms.py:348 +msgid "Description of your issue" +msgstr "问题描述" + +#: forms.py:350 +msgid "" +"Please be as descriptive as possible, including any details we may need to " +"address your query." +msgstr "请保持描述性, 包括为了表示您的查询,我们所需要的任何细节" + +#: forms.py:358 +msgid "Urgency" +msgstr "紧急程度" + +#: forms.py:359 +msgid "Please select a priority carefully." +msgstr "请认真选择优先级" + +#: forms.py:419 +msgid "Ticket Opened Via Web" +msgstr "工单已通过web打开" + +#: forms.py:486 +msgid "Show Ticket List on Login?" +msgstr "登录之后是否显示工单列表?" + +#: forms.py:487 +msgid "Display the ticket list upon login? Otherwise, the dashboard is shown." +msgstr "登录之后显示工单吗? 如果否, 则显示仪表盘" + +#: forms.py:492 +msgid "E-mail me on ticket change?" +msgstr "工单更改要通知您吗?" + +#: forms.py:493 +msgid "" +"If you're the ticket owner and the ticket is changed via the web by somebody" +" else, do you want to receive an e-mail?" +msgstr "如果您是工单所有者, 且工单被其他人通过web改变了, 您希望收到邮件吗?" + +#: forms.py:498 +msgid "E-mail me when assigned a ticket?" +msgstr "当工单分配给您,要给您发邮件吗?" + +#: forms.py:499 +msgid "" +"If you are assigned a ticket via the web, do you want to receive an e-mail?" +msgstr "如果有工单分配到了您,您是否愿意收到邮件?" + +#: forms.py:504 +msgid "E-mail me when a ticket is changed via the API?" +msgstr "当工单通过api改变时, 要通知您吗?" + +#: forms.py:505 +msgid "If a ticket is altered by the API, do you want to receive an e-mail?" +msgstr "如果工单被api改变, 您愿意收到邮件吗?" + +#: forms.py:510 +msgid "Number of tickets to show per page" +msgstr "每个页面显示的工单数量" + +#: forms.py:511 +msgid "How many tickets do you want to see on the Ticket List page?" +msgstr "工单列表页面显示的工单数量" + +#: forms.py:518 +msgid "Use my e-mail address when submitting tickets?" +msgstr "当提交工单时使用我的邮箱地址吗?" + +#: forms.py:519 +msgid "" +"When you submit a ticket, do you want to automatically use your e-mail " +"address as the submitter address? You can type a different e-mail address " +"when entering the ticket if needed, this option only changes the default." +msgstr "当提交工单, 您愿意自动使用您的邮箱地址作为提交者地址吗? 提交表单时如果需要, 您可以改变缺省的选项,输入一个不同的邮箱地址。" + +#: models.py:35 models.py:261 models.py:503 models.py:817 models.py:853 +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket.html:178 templates/helpdesk/ticket_list.html:85 +#: templates/helpdesk/ticket_list.html:225 views/staff.py:419 +msgid "Title" +msgstr "标题" + +#: models.py:40 models.py:822 models.py:1206 +msgid "Slug" +msgstr "地址栏表示" + +#: models.py:41 +msgid "" +"This slug is used when building ticket ID's. Once set, try not to change it " +"or e-mailing may get messy." +msgstr "本地址栏表示在构建工单ID时使用。 一旦设置不要更改, 否则可能导致邮件功能混乱" + +#: models.py:46 models.py:1054 models.py:1129 models.py:1203 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "E-Mail Address" +msgstr "邮件地址" + +#: models.py:49 +msgid "" +"All outgoing e-mails for this queue will use this e-mail address. If you use" +" IMAP or POP3, this should be the e-mail address for that mailbox." +msgstr "本待办主题下,所有出去的邮件将使用本地址。 如果您使用IMAP或者POP3,这里应该是那个邮箱的地址" + +#: models.py:55 models.py:794 +msgid "Locale" +msgstr "地区" + +#: models.py:59 +msgid "" +"Locale of this queue. All correspondence in this queue will be in this " +"language." +msgstr "待办所属的地区。 这个代办下对应的任务使用该语言" + +#: models.py:63 +msgid "Allow Public Submission?" +msgstr "允许公共提交?" + +#: models.py:66 +msgid "Should this queue be listed on the public submission form?" +msgstr "是否该待办显示在公共提交表单?" + +#: models.py:71 +msgid "Allow E-Mail Submission?" +msgstr "允许邮件提交?" + +#: models.py:74 +msgid "Do you want to poll the e-mail box below for new tickets?" +msgstr "您是否愿意通过以下的邮件查询得到新的工单?" + +#: models.py:79 +msgid "Escalation Days" +msgstr "提升天数" + +#: models.py:82 +msgid "" +"For tickets which are not held, how often do you wish to increase their " +"priority? Set to 0 for no escalation." +msgstr "对于不固定的工单, 多久您希望提升其优先级? 设置0表示不提升" + +#: models.py:87 +msgid "New Ticket CC Address" +msgstr "新工单CC的地址" + +#: models.py:91 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all new tickets created for this queue. Enter a comma between multiple " +"e-mail addresses." +msgstr "如果此处输入邮件地址,该地址将收到本待办下所有新创建的工单。多个邮件地址用逗号分隔" + +#: models.py:97 +msgid "Updated Ticket CC Address" +msgstr "更新工单CC的地址" + +#: models.py:101 +msgid "" +"If an e-mail address is entered here, then it will receive notification of " +"all activity (new tickets, closed tickets, updates, reassignments, etc) for " +"this queue. Separate multiple addresses with a comma." +msgstr "此处输入的邮件地址, 将收到本代办下所有的活动(新工单,关闭工单,更新,重分配等)。多个邮件地址用逗号分隔。" + +#: models.py:108 +msgid "E-Mail Box Type" +msgstr "邮箱类型" + +#: models.py:110 +msgid "POP 3" +msgstr "POP3" + +#: models.py:110 +msgid "IMAP" +msgstr "IMAP" + +#: models.py:113 +msgid "" +"E-Mail server type for creating tickets automatically from a mailbox - both " +"POP3 and IMAP are supported." +msgstr "通过邮箱自动创建工单的邮件服务器类型。 同时支持POP3和IMAP" + +#: models.py:118 +msgid "E-Mail Hostname" +msgstr "邮箱主机名" + +#: models.py:122 +msgid "" +"Your e-mail server address - either the domain name or IP address. May be " +"\"localhost\"." +msgstr "您邮箱服务器地址-域名或者ip. 可能是localhost" + +#: models.py:127 +msgid "E-Mail Port" +msgstr "邮件端口" + +#: models.py:130 +msgid "" +"Port number to use for accessing e-mail. Default for POP3 is \"110\", and " +"for IMAP is \"143\". This may differ on some servers. Leave it blank to use " +"the defaults." +msgstr "访问邮件使用的端口。 缺省下POP3用110, IMAP用143. 不同服务器可能有差别。如果使用缺省,保持空白。" + +#: models.py:136 +msgid "Use SSL for E-Mail?" +msgstr "邮箱使用SSL?" + +#: models.py:139 +msgid "" +"Whether to use SSL for IMAP or POP3 - the default ports when using SSL are " +"993 for IMAP and 995 for POP3." +msgstr "IMAP或POP3是否使用SSL-当使用SSL, IMAP是993, POP3是995" + +#: models.py:144 +msgid "E-Mail Username" +msgstr "邮箱用户名" + +#: models.py:148 +msgid "Username for accessing this mailbox." +msgstr "访问本邮箱使用的用户名" + +#: models.py:152 +msgid "E-Mail Password" +msgstr "邮箱密码" + +#: models.py:156 +msgid "Password for the above username" +msgstr "以上用户名的密码" + +#: models.py:160 +msgid "IMAP Folder" +msgstr "IMAP文件夹" + +#: models.py:164 +msgid "" +"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 " +"your IMAP server into separate folders. Default: INBOX." +msgstr "如果使用IMAP,您希望获取哪个文件夹的消息? 本功能允许您使用一个IMAP帐号访问多个待办。把您IMAP服务器上的消息分开到不同的文件夹即可。缺省:收件箱" + +#: models.py:171 +msgid "E-Mail Check Interval" +msgstr "邮箱检查间隔" + +#: models.py:172 +msgid "How often do you wish to check this mailbox? (in Minutes)" +msgstr "隔多久您希望检查此邮箱?(分钟单位)" + +#: models.py:191 templates/helpdesk/email_ignore_list.html:13 +msgid "Queues" +msgstr "代办" + +#: models.py:245 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:138 +msgid "Open" +msgstr "打开" + +#: models.py:246 templates/helpdesk/ticket.html:144 +#: templates/helpdesk/ticket.html.py:150 templates/helpdesk/ticket.html:155 +#: templates/helpdesk/ticket.html.py:159 +msgid "Reopened" +msgstr "重新打开" + +#: models.py:247 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:139 templates/helpdesk/ticket.html.py:145 +#: templates/helpdesk/ticket.html:151 +msgid "Resolved" +msgstr "已解决" + +#: models.py:248 templates/helpdesk/dashboard.html:15 +#: templates/helpdesk/ticket.html:140 templates/helpdesk/ticket.html.py:146 +#: templates/helpdesk/ticket.html:152 templates/helpdesk/ticket.html.py:156 +msgid "Closed" +msgstr "已关闭" + +#: models.py:249 templates/helpdesk/ticket.html:141 +#: templates/helpdesk/ticket.html.py:147 templates/helpdesk/ticket.html:160 +msgid "Duplicate" +msgstr "重复" + +#: models.py:253 +msgid "1. Critical" +msgstr "1. 严重" + +#: models.py:254 +msgid "2. High" +msgstr "2. 高" + +#: models.py:255 +msgid "3. Normal" +msgstr "3. 一般" + +#: models.py:256 +msgid "4. Low" +msgstr "4. 低" + +#: models.py:257 +msgid "5. Very Low" +msgstr "5. 很低" + +#: models.py:271 templates/helpdesk/dashboard.html:100 +#: templates/helpdesk/ticket_list.html:82 +#: templates/helpdesk/ticket_list.html:225 +msgid "Created" +msgstr "已创建" + +#: models.py:273 +msgid "Date this ticket was first created" +msgstr "工单创建日期" + +#: models.py:277 +msgid "Modified" +msgstr "已修改" + +#: models.py:279 +msgid "Date this ticket was most recently changed." +msgstr "工单最近修改日期" + +#: models.py:283 templates/helpdesk/public_view_ticket.html:18 +#: templates/helpdesk/ticket_desc_table.html:42 +msgid "Submitter E-Mail" +msgstr "提交者邮箱" + +#: models.py:286 +msgid "" +"The submitter will receive an email for all public follow-ups left for this " +"task." +msgstr "提交者将收到本任务的所有跟进" + +#: models.py:295 +msgid "Assigned to" +msgstr "分配给" + +#: models.py:299 templates/helpdesk/dashboard.html:58 +#: templates/helpdesk/dashboard.html:78 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:70 +#: templates/helpdesk/ticket_list.html:91 +#: templates/helpdesk/ticket_list.html:225 +msgid "Status" +msgstr "状态" + +#: models.py:305 +msgid "On Hold" +msgstr "待定" + +#: models.py:308 +msgid "If a ticket is on hold, it will not automatically be escalated." +msgstr "如果工单待定,将自动提升级别" + +#: models.py:313 models.py:826 templates/helpdesk/public_view_ticket.html:41 +#: templates/helpdesk/ticket_desc_table.html:19 +msgid "Description" +msgstr "描述" + +#: models.py:316 +msgid "The content of the customers query." +msgstr "定制查询的内容" + +#: models.py:320 templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Resolution" +msgstr "解决方案" + +#: models.py:323 +msgid "The resolution provided to the customer by our staff." +msgstr "员工提供给客户的解决方案" + +#: models.py:331 +msgid "1 = Highest Priority, 5 = Low Priority" +msgstr "1=最高优先级, 5=低优先级" + +#: models.py:344 +msgid "" +"The date this ticket was last escalated - updated automatically by " +"management/commands/escalate_tickets.py." +msgstr "最近优先级提升日期,通过management/commands/escalate_tickets.py自动升级" + +#: models.py:353 templates/helpdesk/ticket_desc_table.html:38 +#: views/feeds.py:95 views/feeds.py:121 views/feeds.py:173 views/staff.py:376 +msgid "Unassigned" +msgstr "未分配" + +#: models.py:392 +msgid " - On Hold" +msgstr "待定" + +#: models.py:394 +msgid " - Open dependencies" +msgstr "打开依赖" + +#: models.py:448 models.py:494 models.py:1117 models.py:1280 models.py:1309 +#: templates/helpdesk/public_homepage.html:78 +#: templates/helpdesk/public_view_form.html:12 +msgid "Ticket" +msgstr "工单" + +#: models.py:449 templates/helpdesk/navigation.html:17 +#: templates/helpdesk/ticket_list.html:2 +#: templates/helpdesk/ticket_list.html:224 +msgid "Tickets" +msgstr "工单" + +#: models.py:498 models.py:738 models.py:1047 models.py:1200 +msgid "Date" +msgstr "日期" + +#: models.py:510 views/staff.py:390 +msgid "Comment" +msgstr "评论" + +#: models.py:516 +msgid "Public" +msgstr "公开" + +#: models.py:519 +msgid "" +"Public tickets are viewable by the submitter and all staff, but non-public " +"tickets can only be seen by staff." +msgstr "公开工单对提交者和所有员工可见,非公开工单只对员工可见。" + +#: models.py:527 models.py:922 models.py:1125 views/staff.py:1008 +#: views/staff.py:1014 views/staff.py:1020 views/staff.py:1026 +msgid "User" +msgstr "用户" + +#: models.py:531 templates/helpdesk/ticket.html:135 +msgid "New Status" +msgstr "新状态" + +#: models.py:535 +msgid "If the status was changed, what was it changed to?" +msgstr "如果状态发生变更,变更到哪个状态?" + +#: models.py:542 models.py:566 models.py:628 +msgid "Follow-up" +msgstr "跟进" + +#: models.py:543 +msgid "Follow-ups" +msgstr "跟进" + +#: models.py:570 models.py:1285 +msgid "Field" +msgstr "字段" + +#: models.py:575 +msgid "Old Value" +msgstr "旧值" + +#: models.py:581 +msgid "New Value" +msgstr "新值" + +#: models.py:589 +msgid "removed" +msgstr "移除" + +#: models.py:591 +#, python-format +msgid "set to %s" +msgstr "设置为 %s" + +#: models.py:593 +#, python-format +msgid "changed from \"%(old_value)s\" to \"%(new_value)s\"" +msgstr " 从\"%(old_value)s\" 更改为 \"%(new_value)s\"" + +#: models.py:600 +msgid "Ticket change" +msgstr "工单变更" + +#: models.py:601 +msgid "Ticket changes" +msgstr "工单变更" + +#: models.py:632 +msgid "File" +msgstr "文件" + +#: models.py:637 +msgid "Filename" +msgstr "文件名" + +#: models.py:642 +msgid "MIME Type" +msgstr "MIME 类型" + +#: models.py:647 +msgid "Size" +msgstr "大小" + +#: models.py:648 +msgid "Size of this file in bytes" +msgstr "文件字节大小" + +#: models.py:665 +msgid "Attachment" +msgstr "附件" + +#: models.py:666 +msgid "Attachments" +msgstr "附件" + +#: models.py:685 +msgid "" +"Leave blank to allow this reply to be used for all queues, or select those " +"queues you wish to limit this reply to." +msgstr "留空表示允许回复给所有待办,或者选择你要的待办。" + +#: models.py:690 models.py:733 models.py:1042 +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Name" +msgstr "名字" + +#: models.py:692 +msgid "" +"Only used to assist users with selecting a reply - not shown to the user." +msgstr "仅用于帮助用户选择回复,不显示给用户。" + +#: models.py:697 +msgid "Body" +msgstr "内容" + +#: models.py:698 +msgid "" +"Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ " +"queue }} - The queue; and {{ user }} - the current user." +msgstr "可用的上下文: {{ ticket }} - 目标工单 (比如 {{ ticket.title }}); {{ queue }} - 待办; 和{{ user }} - 当前用户。" + +#: models.py:705 +msgid "Pre-set reply" +msgstr "预设置回复" + +#: models.py:706 +msgid "Pre-set replies" +msgstr "预设置回复" + +#: models.py:727 +msgid "" +"Leave blank for this exclusion to be applied to all queues, or select those " +"queues you wish to exclude with this entry." +msgstr "留空表示此排除应用到所有待办,或者选择你想应用的待办。" + +#: models.py:739 +msgid "Date on which escalation should not happen" +msgstr "不发生提升的日期" + +#: models.py:746 +msgid "Escalation exclusion" +msgstr "提升排除项" + +#: models.py:747 +msgid "Escalation exclusions" +msgstr "提升排除项" + +#: models.py:760 +msgid "Template Name" +msgstr "模板名" + +#: models.py:765 +msgid "Subject" +msgstr "主题" + +#: models.py:767 +msgid "" +"This will be prefixed with \"[ticket.ticket] ticket.title\". We recommend " +"something simple such as \"(Updated\") or \"(Closed)\" - the same context is" +" available as in plain_text, below." +msgstr "此处添加 \"[ticket.ticket] ticket.title\"前缀. 我们推荐类似于 \"(已更新\") 或者 \"(已关闭)\"的简单形式 - 在下面的纯文本,上下文依然有效。" + +#: models.py:773 +msgid "Heading" +msgstr "标题" + +#: models.py:775 +msgid "" +"In HTML e-mails, this will be the heading at the top of the email - the same" +" context is available as in plain_text, below." +msgstr "在HTML格式电邮中,这是邮件顶部的标题-下面的文本中上下文依然有效" + +#: models.py:781 +msgid "Plain Text" +msgstr "纯文本" + +#: models.py:782 +msgid "" +"The context available to you includes {{ ticket }}, {{ queue }}, and " +"depending on the time of the call: {{ resolution }} or {{ comment }}." +msgstr "可用的上下文包括 {{ ticket }}, {{ queue }}, 依赖调用时间: {{ resolution }} 或者 {{ comment }}." + +#: models.py:788 +msgid "HTML" +msgstr "HTML" + +#: models.py:789 +msgid "The same context is available here as in plain_text, above." +msgstr "与纯文本一样,可用同样的上下文" + +#: models.py:798 +msgid "Locale of this template." +msgstr "模板的地区" + +#: models.py:806 +msgid "e-mail template" +msgstr "邮件模板" + +#: models.py:807 +msgid "e-mail templates" +msgstr "邮件模板" + +#: models.py:834 +msgid "Knowledge base category" +msgstr "知识库分类" + +#: models.py:835 +msgid "Knowledge base categories" +msgstr "知识库分类" + +#: models.py:849 templates/helpdesk/kb_index.html:11 +#: templates/helpdesk/public_homepage.html:11 +msgid "Category" +msgstr "分类" + +#: models.py:858 +msgid "Question" +msgstr "提问" + +#: models.py:862 +msgid "Answer" +msgstr "回答" + +#: models.py:866 +msgid "Votes" +msgstr "投票" + +#: models.py:867 +msgid "Total number of votes cast for this item" +msgstr "此项的投票数量" + +#: models.py:872 +msgid "Positive Votes" +msgstr "赞票" + +#: models.py:873 +msgid "Number of votes for this item which were POSITIVE." +msgstr "踩票数" + +#: models.py:878 +msgid "Last Updated" +msgstr "最近更新" + +#: models.py:879 +msgid "The date on which this question was most recently changed." +msgstr "此提问最近更新时间" + +#: models.py:893 +msgid "Unrated" +msgstr "未评级" + +#: models.py:901 +msgid "Knowledge base item" +msgstr "知识库项" + +#: models.py:902 +msgid "Knowledge base items" +msgstr "知识库项" + +#: models.py:926 templates/helpdesk/ticket_list.html:170 +msgid "Query Name" +msgstr "查询名" + +#: models.py:928 +msgid "User-provided name for this query" +msgstr "用户定义的查询名字" + +#: models.py:932 +msgid "Shared With Other Users?" +msgstr "与其他用户共享?" + +#: models.py:935 +msgid "Should other users see this query?" +msgstr "查询对其他用户可见?" + +#: models.py:939 +msgid "Search Query" +msgstr "查询搜索" + +#: models.py:940 +msgid "Pickled query object. Be wary changing this." +msgstr "酸查询对象, 改变要小心" + +#: models.py:950 +msgid "Saved search" +msgstr "已保存搜索" + +#: models.py:951 +msgid "Saved searches" +msgstr "已保存搜索" + +#: models.py:966 +msgid "Settings Dictionary" +msgstr "设置字典" + +#: models.py:967 +msgid "" +"This is a base64-encoded representation of a pickled Python dictionary. Do " +"not change this field via the admin." +msgstr "酸python字典的base64编码表示。不要通过管理员改变此字段" + +#: models.py:993 +msgid "User Setting" +msgstr "用户设置" + +#: models.py:994 templates/helpdesk/navigation.html:37 +#: templates/helpdesk/user_settings.html:6 +msgid "User Settings" +msgstr "用户设置" + +#: models.py:1036 +msgid "" +"Leave blank for this e-mail to be ignored on all queues, or select those " +"queues you wish to ignore this e-mail for." +msgstr "留空表示次邮件被所有待办忽略。或者选择你需要忽略的待办." + +#: models.py:1048 +msgid "Date on which this e-mail address was added" +msgstr "此邮箱地址添加日期" + +#: models.py:1056 +msgid "" +"Enter a full e-mail address, or portions with wildcards, eg *@domain.com or " +"postmaster@*." +msgstr "输入全邮件地址,或者包含通配符比如*@domain.com或者postmaster@*" + +#: models.py:1061 +msgid "Save Emails in Mailbox?" +msgstr "在邮箱保存邮件吗?" + +#: models.py:1064 +msgid "" +"Do you want to save emails from this address in the mailbox? If this is " +"unticked, emails from this address will be deleted." +msgstr "邮箱中保存此地址的邮件吗?如果没有勾上,此地址的邮件将被删除" + +#: models.py:1101 +msgid "Ignored e-mail address" +msgstr "忽略邮件地址" + +#: models.py:1102 +msgid "Ignored e-mail addresses" +msgstr "忽略邮件地址" + +#: models.py:1124 +msgid "User who wishes to receive updates for this ticket." +msgstr "希望收到此工单更新的用户" + +#: models.py:1132 +msgid "For non-user followers, enter their e-mail address" +msgstr "输入非用户跟进者的邮箱地址" + +#: models.py:1136 +msgid "Can View Ticket?" +msgstr "可以看工单?" + +#: models.py:1138 +msgid "Can this CC login to view the ticket details?" +msgstr "此CC能登录查看工单详情?" + +#: models.py:1142 +msgid "Can Update Ticket?" +msgstr "能更新工单?" + +#: models.py:1144 +msgid "Can this CC login and update the ticket?" +msgstr "此CC能登录并更新工单?" + +#: models.py:1175 +msgid "Field Name" +msgstr "字段名" + +#: models.py:1176 +msgid "" +"As used in the database and behind the scenes. Must be unique and consist of" +" only lowercase letters with no punctuation." +msgstr "与数据库中用法一样, 必须唯一,且只有小写字母,无标点" + +#: models.py:1181 +msgid "Label" +msgstr "标签" + +#: models.py:1183 +msgid "The display label for this field" +msgstr "此字段的标签" + +#: models.py:1187 +msgid "Help Text" +msgstr "帮助文本" + +#: models.py:1188 +msgid "Shown to the user when editing the ticket" +msgstr "编辑工单时显示给用户" + +#: models.py:1194 +msgid "Character (single line)" +msgstr "字符(单行)" + +#: models.py:1195 +msgid "Text (multi-line)" +msgstr "文本(多行)" + +#: models.py:1196 +msgid "Integer" +msgstr "整型" + +#: models.py:1197 +msgid "Decimal" +msgstr "数字型" + +#: models.py:1198 +msgid "List" +msgstr "列表" + +#: models.py:1199 +msgid "Boolean (checkbox yes/no)" +msgstr "布尔型(单选yes/no)" + +#: models.py:1201 +msgid "Time" +msgstr "时间" + +#: models.py:1202 +msgid "Date & Time" +msgstr "时间&日期" + +#: models.py:1204 +msgid "URL" +msgstr "网址" + +#: models.py:1205 +msgid "IP Address" +msgstr "IP 地址" + +#: models.py:1210 +msgid "Data Type" +msgstr "日期类型" + +#: models.py:1212 +msgid "Allows you to restrict the data entered into this field" +msgstr "可以限制输入到此字段的数据" + +#: models.py:1217 +msgid "Maximum Length (characters)" +msgstr "最大长度(字符)" + +#: models.py:1223 +msgid "Decimal Places" +msgstr "小数位" + +#: models.py:1224 +msgid "Only used for decimal fields" +msgstr "仅用于数字型字段" + +#: models.py:1230 +msgid "Add empty first choice to List?" +msgstr "添加第一个空选项到列表吗?" + +#: models.py:1232 +msgid "" +"Only for List: adds an empty first entry to the choices list, which enforces" +" that the user makes an active choice." +msgstr "仅用于列表:添加一个空项到列表,强制用户作出一个活跃选择" + +#: models.py:1236 +msgid "List Values" +msgstr "列表值" + +#: models.py:1237 +msgid "For list fields only. Enter one option per line." +msgstr "仅针对列表字段,每行添加一个选项" + +#: models.py:1243 +msgid "Ordering" +msgstr "排序" + +#: models.py:1244 +msgid "Lower numbers are displayed first; higher numbers are listed later" +msgstr "显示数字由低到高" + +#: models.py:1258 +msgid "Required?" +msgstr "必填?" + +#: models.py:1259 +msgid "Does the user have to enter a value for this field?" +msgstr "用户在此字段必须填入值?" + +#: models.py:1263 +msgid "Staff Only?" +msgstr "仅员工?" + +#: models.py:1264 +msgid "" +"If this is ticked, then the public submission form will NOT show this field" +msgstr "如果勾上,公共提交的表单不会显示该字段" + +#: models.py:1273 +msgid "Custom field" +msgstr "定制字段" + +#: models.py:1274 +msgid "Custom fields" +msgstr "定制字段" + +#: models.py:1297 +msgid "Ticket custom field value" +msgstr "工单定制字段值" + +#: models.py:1298 +msgid "Ticket custom field values" +msgstr "工单定制字段值" + +#: models.py:1315 +msgid "Depends On Ticket" +msgstr "依赖于工单" + +#: models.py:1324 +msgid "Ticket dependency" +msgstr "工单依赖" + +#: models.py:1325 +msgid "Ticket dependencies" +msgstr "工单依赖" + +#: management/commands/create_usersettings.py:25 +msgid "" +"Check for user without django-helpdesk UserSettings and create settings if " +"required. Uses settings.DEFAULT_USER_SETTINGS which can be overridden to " +"suit your situation." +msgstr "检查没有django-helpdesk UserSettings的用户,如果需要创建settings. 用settings.DEFAULT_USER_SETTINGS, 可以被重写来满足个人情况。" + +#: management/commands/escalate_tickets.py:148 +#, python-format +msgid "Ticket escalated after %s days" +msgstr "%s 天之后工单升级" + +#: management/commands/get_email.py:158 +msgid "Created from e-mail" +msgstr "从邮件创建" + +#: management/commands/get_email.py:162 +msgid "Unknown Sender" +msgstr "未知发送者" + +#: management/commands/get_email.py:216 +msgid "" +"No plain-text email body available. Please see attachment " +"email_html_body.html." +msgstr "没有可用的纯文本邮件体。请参考附件 email_html_body.html" + +#: management/commands/get_email.py:220 +msgid "email_html_body.html" +msgstr "email_html_body.html" + +#: management/commands/get_email.py:263 +#, python-format +msgid "E-Mail Received from %(sender_email)s" +msgstr "从 1%(sender_email)s处收到的邮件" + +#: management/commands/get_email.py:271 +#, python-format +msgid "Ticket Re-Opened by E-Mail Received from %(sender_email)s" +msgstr "从 1%(sender_email)s 处收到的邮件重开的公开" + +#: management/commands/get_email.py:329 +msgid " (Reopened)" +msgstr "(重新打开)" + +#: management/commands/get_email.py:331 +msgid " (Updated)" +msgstr "(已更新)" + +#: templates/helpdesk/attribution.html:2 +msgid "" +"django-helpdesk." +msgstr "django-helpdesk." + +#: templates/helpdesk/base.html:10 +msgid "Powered by django-helpdesk" +msgstr "由 django-helpdesk 主导" + +#: templates/helpdesk/base.html:20 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:24 templates/helpdesk/rss_list.html:31 +msgid "My Open Tickets" +msgstr "我打开的工单" + +#: templates/helpdesk/base.html:21 +msgid "All Recent Activity" +msgstr "所有最近的活动" + +#: templates/helpdesk/base.html:22 templates/helpdesk/dashboard.html:99 +#: templates/helpdesk/rss_list.html:15 +msgid "Unassigned Tickets" +msgstr "未分配工单" + +#: templates/helpdesk/base.html:52 templates/helpdesk/public_base.html:6 +#: templates/helpdesk/public_base.html:18 +msgid "Helpdesk" +msgstr "Helpdesk" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:9 +#: templates/helpdesk/rss_list.html:12 templates/helpdesk/rss_list.html:15 +#: templates/helpdesk/rss_list.html:30 templates/helpdesk/rss_list.html:31 +msgid "RSS Icon" +msgstr "RSS图标" + +#: templates/helpdesk/base.html:62 templates/helpdesk/rss_list.html:2 +#: templates/helpdesk/rss_list.html.py:4 +msgid "RSS Feeds" +msgstr "RSS 种子" + +#: templates/helpdesk/base.html:63 +msgid "API" +msgstr "API" + +#: templates/helpdesk/base.html:64 templates/helpdesk/system_settings.html:6 +msgid "System Settings" +msgstr "系统设置" + +#: templates/helpdesk/confirm_delete_saved_query.html:3 +#: templates/helpdesk/ticket_list.html:146 +msgid "Delete Saved Query" +msgstr "删除保存的查询" + +#: templates/helpdesk/confirm_delete_saved_query.html:6 +msgid "Delete Query" +msgstr "删除查询" + +#: templates/helpdesk/confirm_delete_saved_query.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this saved filter " +"(%(query_title)s)? To re-create it, you will need to manually re-" +"filter your ticket listing." +msgstr "确认删除保存的过滤器 (1%(query_title)s1)? 要重新创建, 你将需要手动重新过滤工单列表." + +#: templates/helpdesk/confirm_delete_saved_query.html:11 +msgid "" +"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." +msgstr "您已共享此查询,其他用户可以使用它。如果你删除,他们将必须手动创建自己的查询。" + +#: templates/helpdesk/confirm_delete_saved_query.html:14 +#: templates/helpdesk/delete_ticket.html:10 +msgid "No, Don't Delete It" +msgstr "否,不要删除" + +#: templates/helpdesk/confirm_delete_saved_query.html:16 +#: templates/helpdesk/delete_ticket.html:12 +msgid "Yes - Delete It" +msgstr "是, 删除" + +#: templates/helpdesk/create_ticket.html:3 +msgid "Create Ticket" +msgstr "创建工单" + +#: templates/helpdesk/create_ticket.html:10 +#: templates/helpdesk/navigation.html:65 templates/helpdesk/navigation.html:68 +#: templates/helpdesk/public_homepage.html:27 +msgid "Submit a Ticket" +msgstr "提交工单" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +msgid "Unless otherwise stated, all fields are required." +msgstr "除非其他说明, 所有字段都必须" + +#: templates/helpdesk/create_ticket.html:11 +#: templates/helpdesk/edit_ticket.html:11 +#: templates/helpdesk/public_homepage.html:28 +msgid "Please provide as descriptive a title and description as possible." +msgstr "请提供描述性的标题和描述" + +#: templates/helpdesk/create_ticket.html:30 +#: templates/helpdesk/public_homepage.html:55 +msgid "Submit Ticket" +msgstr "提交工单" + +#: templates/helpdesk/dashboard.html:2 +msgid "Helpdesk Dashboard" +msgstr "helpdesk 仪表盘" + +#: templates/helpdesk/dashboard.html:9 +msgid "" +"Welcome to your Helpdesk Dashboard! From here you can quickly see tickets " +"submitted by you, tickets you are working on, and those tickets that have no" +" owner." +msgstr "欢迎来到helpdesk仪表盘。这里可以看到您提交的工单, 你正在工作的工单, 以及没有所有者的工单" + +#: templates/helpdesk/dashboard.html:14 +msgid "Helpdesk Summary" +msgstr "helpdesk 摘要" + +#: templates/helpdesk/dashboard.html:36 +msgid "Current Ticket Stats" +msgstr "当前工单状态" + +#: templates/helpdesk/dashboard.html:37 +msgid "Average number of days until ticket is closed (all tickets): " +msgstr "工单关闭平均天数(所有工单)" + +#: templates/helpdesk/dashboard.html:38 +msgid "" +"Average number of days until ticket is closed (tickets opened in last 60 " +"days): " +msgstr "工单关闭平均天数(最近60天打开的工单)" + +#: templates/helpdesk/dashboard.html:39 +msgid "Click" +msgstr "点击" + +#: templates/helpdesk/dashboard.html:39 +msgid "for detailed average by month." +msgstr "按月平均详细" + +#: templates/helpdesk/dashboard.html:40 +msgid "Distribution of open tickets, grouped by time period:" +msgstr "根据时间范围分组,开工单的分布" + +#: templates/helpdesk/dashboard.html:41 +msgid "Days since opened" +msgstr "打开天数" + +#: templates/helpdesk/dashboard.html:41 +msgid "Number of open tickets" +msgstr "开放工单的数量" + +#: templates/helpdesk/dashboard.html:57 +msgid "All Tickets submitted by you" +msgstr "您提交的所有工单" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:100 templates/helpdesk/dashboard.html:124 +#: templates/helpdesk/ticket_list.html:225 +msgid "Pr" +msgstr "Pr" + +#: templates/helpdesk/dashboard.html:58 templates/helpdesk/dashboard.html:78 +#: templates/helpdesk/dashboard.html:124 +msgid "Last Update" +msgstr "最近更新" + +#: templates/helpdesk/dashboard.html:77 +msgid "Open Tickets assigned to you (you are working on this ticket)" +msgstr "分配给您的开放工单(您正在工作的工单)" + +#: templates/helpdesk/dashboard.html:92 +msgid "You have no tickets assigned to you." +msgstr "您没有被分配的工单" + +#: templates/helpdesk/dashboard.html:99 +msgid "(pick up a ticket if you start to work on it)" +msgstr "(如果开始工作某个工单, 选择该工单)" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/ticket_desc_table.html:38 +msgid "Take" +msgstr "拿走" + +#: templates/helpdesk/dashboard.html:110 +#: templates/helpdesk/email_ignore_list.html:13 +#: templates/helpdesk/email_ignore_list.html:23 +#: templates/helpdesk/ticket_cc_list.html:15 +#: templates/helpdesk/ticket_cc_list.html:23 +#: templates/helpdesk/ticket_list.html:262 +msgid "Delete" +msgstr "删除" + +#: templates/helpdesk/dashboard.html:114 +msgid "There are no unassigned tickets." +msgstr "没有未分配的工单" + +#: templates/helpdesk/dashboard.html:123 +msgid "Closed & resolved Tickets you used to work on" +msgstr "您过去关闭 & 已解决的工单" + +#: templates/helpdesk/delete_ticket.html:3 +#: templates/helpdesk/delete_ticket.html:6 +msgid "Delete Ticket" +msgstr "删除工单" + +#: templates/helpdesk/delete_ticket.html:8 +#, python-format +msgid "" +"Are you sure you want to delete this ticket (%(ticket_title)s)? All" +" traces of the ticket, including followups, attachments, and updates will be" +" irreversibly removed." +msgstr "您确认删除此工单 (%(ticket_title)s)? 此工单的所有痕迹包括跟进,附件,更新都将不可逆的删除." + +#: templates/helpdesk/edit_ticket.html:3 +msgid "Edit Ticket" +msgstr "编辑工单" + +#: templates/helpdesk/edit_ticket.html:9 +msgid "Edit a Ticket" +msgstr "编辑工单" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "Note" +msgstr "备注" + +#: templates/helpdesk/edit_ticket.html:13 +msgid "" +"Editing a ticket does not send an e-mail to the ticket owner or " +"submitter. No new details should be entered, this form should only be used " +"to fix incorrect details or clean up the submission." +msgstr "编辑工单 并不 发送邮件给工单所有者或者提交者。不要输入新的详情, 这个表单仅在修正错误的详情或者清理提交时使用. " + +#: templates/helpdesk/edit_ticket.html:33 +msgid "Save Changes" +msgstr "保存变更" + +#: templates/helpdesk/email_ignore_add.html:3 +#: templates/helpdesk/email_ignore_add.html:6 +#: templates/helpdesk/email_ignore_add.html:23 +msgid "Ignore E-Mail Address" +msgstr "忽略邮件地址" + +#: templates/helpdesk/email_ignore_add.html:8 +msgid "" +"To ignore an e-mail address and prevent any emails from that address " +"creating tickets automatically, enter the e-mail address below." +msgstr "要忽略某个邮件地址,自动阻止该地址创建工单,输入邮件地址" + +#: templates/helpdesk/email_ignore_add.html:10 +msgid "" +"You can either enter a whole e-mail address such as " +"email@domain.com or a portion of an e-mail address with a wildcard," +" such as *@domain.com or user@*." +msgstr "您可以输入像 email@domain.com 的整个邮件地址, 或者含通配符地址如 *@domain.com 或者 user@*." + +#: templates/helpdesk/email_ignore_del.html:3 +msgid "Delete Ignored E-Mail Address" +msgstr "删除已忽略邮件地址" + +#: templates/helpdesk/email_ignore_del.html:6 +msgid "Un-Ignore E-Mail Address" +msgstr "取消忽略邮件地址" + +#: templates/helpdesk/email_ignore_del.html:8 +#, python-format +msgid "" +"Are you sure you wish to stop removing this email address " +"(%(email_address)s) and allow their e-mails to automatically create" +" tickets in your system? You can re-add this e-mail address at any time." +msgstr "确认停止删除该邮件地址 (%(email_address)s) 且允许邮件在系统自动创建工单?您可以以后重新添加这个邮件地址。" + +#: templates/helpdesk/email_ignore_del.html:10 +msgid "Keep Ignoring It" +msgstr "保持忽略" + +#: templates/helpdesk/email_ignore_del.html:12 +msgid "Stop Ignoring It" +msgstr "停止忽略" + +#: templates/helpdesk/email_ignore_list.html:3 +#: templates/helpdesk/email_ignore_list.html:12 +msgid "Ignored E-Mail Addresses" +msgstr "忽略邮件地址" + +#: templates/helpdesk/email_ignore_list.html:5 +msgid "" +"\n" +"

Ignored E-Mail Addresses

\n" +"\n" +"

The following e-mail addresses are currently being ignored by the incoming e-mail processor. You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "\n

忽略邮件地址

\n\n

一下邮件地址当前已被忽略。您可以 添加新的邮件地址到列表 或者根据需要删除下面的项

" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Date Added" +msgstr "已添加日期" + +#: templates/helpdesk/email_ignore_list.html:13 +msgid "Keep in mailbox?" +msgstr "保留在邮箱" + +#: templates/helpdesk/email_ignore_list.html:21 +#: templates/helpdesk/ticket_list.html:260 +msgid "All" +msgstr "所有" + +#: templates/helpdesk/email_ignore_list.html:22 +msgid "Keep" +msgstr "保留" + +#: templates/helpdesk/email_ignore_list.html:29 +msgid "" +"Note: If the 'Keep' option is not selected, emails sent " +"from that address will be deleted permanently." +msgstr "注意 如果'保留'选项没有选中, 那个邮箱发送的邮件将被永久删除." + +#: templates/helpdesk/followup_edit.html:2 +msgid "Edit followup" +msgstr "编辑跟进" + +#: templates/helpdesk/followup_edit.html:9 +msgid "Edit FollowUp" +msgstr "编辑跟进" + +#: templates/helpdesk/followup_edit.html:14 +msgid "Reassign ticket:" +msgstr "重新分配工单" + +#: templates/helpdesk/followup_edit.html:16 +msgid "Title:" +msgstr "标题" + +#: templates/helpdesk/followup_edit.html:18 +msgid "Comment:" +msgstr "评论" + +#: templates/helpdesk/kb_category.html:4 +#: templates/helpdesk/kb_category.html:12 +#, python-format +msgid "Knowledgebase Category: %(kbcat)s" +msgstr "知识库分类: %(kbcat)s" + +#: templates/helpdesk/kb_category.html:6 +#, python-format +msgid "You are viewing all items in the %(kbcat)s category." +msgstr "您正在查看 %(kbcat)s 分类的所有项." + +#: templates/helpdesk/kb_category.html:13 +msgid "Article" +msgstr "文章" + +#: templates/helpdesk/kb_index.html:4 templates/helpdesk/navigation.html:21 +#: templates/helpdesk/navigation.html:71 +msgid "Knowledgebase" +msgstr "知识库" + +#: templates/helpdesk/kb_index.html:6 +msgid "" +"We have listed a number of knowledgebase articles for your perusal in the " +"following categories. Please check to see if any of these articles address " +"your problem prior to opening a support ticket." +msgstr "我们列出了以下类别的知识库文章供您查阅。在开支持工单的时候,请检查是否有文章解决了该文题" + +#: templates/helpdesk/kb_index.html:10 +#: templates/helpdesk/public_homepage.html:10 +msgid "Knowledgebase Categories" +msgstr "知识库分类" + +#: templates/helpdesk/kb_item.html:4 +#, python-format +msgid "Knowledgebase: %(item)s" +msgstr "知识库: %(item)s" + +#: templates/helpdesk/kb_item.html:16 +#, python-format +msgid "" +"View other %(category_title)s " +"articles, or continue viewing other knowledgebase " +"articles." +msgstr "查看 其他 %(category_title)s 文章, 或继续 查看其他知识库文章." + +#: templates/helpdesk/kb_item.html:18 +msgid "Feedback" +msgstr "反馈" + +#: templates/helpdesk/kb_item.html:20 +msgid "" +"We give our users an opportunity to vote for items that they believe have " +"helped them out, in order for us to better serve future customers. We would " +"appreciate your feedback on this article. Did you find it useful?" +msgstr "我们让用户可以为他们感觉有帮助的项投票, 这样我们更好服务未来的客户。我们感谢您对该文的反馈, 您觉得该文有帮助吗?" + +#: templates/helpdesk/kb_item.html:23 +msgid "This article was useful to me" +msgstr "该文有帮助" + +#: templates/helpdesk/kb_item.html:24 +msgid "This article was not useful to me" +msgstr "该文对我 没有 帮助" + +#: templates/helpdesk/kb_item.html:27 +msgid "The results of voting by other readers of this article are below:" +msgstr "其他读者对该文的投票结果如下" + +#: templates/helpdesk/kb_item.html:30 +#, python-format +msgid "Recommendations: %(recommendations)s" +msgstr "推荐: %(recommendations)s" + +#: templates/helpdesk/kb_item.html:31 +#, python-format +msgid "Votes: %(votes)s" +msgstr "投票: %(votes)s" + +#: templates/helpdesk/kb_item.html:32 +#, python-format +msgid "Overall Rating: %(score)s" +msgstr "总体评价: %(score)s" + +#: templates/helpdesk/navigation.html:16 templates/helpdesk/navigation.html:64 +msgid "Dashboard" +msgstr "仪表盘" + +#: templates/helpdesk/navigation.html:18 +msgid "New Ticket" +msgstr "新工单" + +#: templates/helpdesk/navigation.html:19 +msgid "Stats" +msgstr "统计" + +#: templates/helpdesk/navigation.html:24 +msgid "Saved Query" +msgstr "已保存查询" + +#: templates/helpdesk/navigation.html:39 +msgid "Change password" +msgstr "修改密码" + +#: templates/helpdesk/navigation.html:50 +msgid "Search..." +msgstr "搜索..." + +#: templates/helpdesk/navigation.html:50 +msgid "Enter a keyword, or a ticket number to jump straight to that ticket." +msgstr "输入关键字,或者工单号直接进入工单" + +#: templates/helpdesk/navigation.html:73 +msgid "Logout" +msgstr "登出" + +#: templates/helpdesk/navigation.html:73 +msgid "Log In" +msgstr "登入" + +#: templates/helpdesk/public_change_language.html:2 +#: templates/helpdesk/public_homepage.html:73 +#: templates/helpdesk/public_view_form.html:4 +#: templates/helpdesk/public_view_ticket.html:2 +msgid "View a Ticket" +msgstr "查看工单" + +#: templates/helpdesk/public_change_language.html:5 +msgid "Change the display language" +msgstr "修改显示语言" + +#: templates/helpdesk/public_homepage.html:6 +msgid "Knowledgebase Articles" +msgstr "知识库文章" + +#: templates/helpdesk/public_homepage.html:28 +msgid "All fields are required." +msgstr "所有字段必须" + +#: templates/helpdesk/public_homepage.html:66 +msgid "Please use button at upper right to login first." +msgstr "请用右上角按钮先登录" + +#: templates/helpdesk/public_homepage.html:82 +#: templates/helpdesk/public_view_form.html:15 +msgid "Your E-mail Address" +msgstr "您的邮箱地址" + +#: templates/helpdesk/public_homepage.html:86 +#: templates/helpdesk/public_view_form.html:19 +msgid "View Ticket" +msgstr "查看工单" + +#: templates/helpdesk/public_spam.html:4 +msgid "Unable To Open Ticket" +msgstr "无法打开工单" + +#: templates/helpdesk/public_spam.html:5 +msgid "Sorry, but there has been an error trying to submit your ticket." +msgstr "对不起,提交工单出错" + +#: templates/helpdesk/public_spam.html:6 +msgid "" +"Our system has marked your submission as spam, so we are " +"unable to save it. If this is not spam, please press back and re-type your " +"message. Be careful to avoid sounding 'spammy', and if you have heaps of " +"links please try removing them if possible." +msgstr "系统已将您的提交标注为 垃圾广告, 因此不被保存。如果不是垃圾广告, 请按回退且重新输入消息。 注意避免带垃圾广告的嫌疑, 如果有太多链接请先移除." + +#: templates/helpdesk/public_spam.html:7 +msgid "" +"We are sorry for any inconvenience, however this check is required to avoid " +"our helpdesk resources being overloaded by spammers." +msgstr "为您带来不便我们表示道歉。 不过为了避免系统被广告垃圾过载,此检查是必须的。" + +#: templates/helpdesk/public_view_form.html:8 +msgid "Error:" +msgstr "错误:" + +#: templates/helpdesk/public_view_ticket.html:9 +#, python-format +msgid "Queue: %(queue_name)s" +msgstr "待办:%(queue_name)s" + +#: templates/helpdesk/public_view_ticket.html:13 +#: templates/helpdesk/ticket_desc_table.html:32 +msgid "Submitted On" +msgstr "提交于" + +#: templates/helpdesk/public_view_ticket.html:35 +msgid "Tags" +msgstr "标注" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept" +msgstr "接受" + +#: templates/helpdesk/public_view_ticket.html:48 +#: templates/helpdesk/ticket_desc_table.html:26 +msgid "Accept and Close" +msgstr "接受并关闭" + +#: templates/helpdesk/public_view_ticket.html:57 +#: templates/helpdesk/ticket.html:66 +msgid "Follow-Ups" +msgstr "跟进" + +#: templates/helpdesk/public_view_ticket.html:65 +#: templates/helpdesk/ticket.html:100 +#, python-format +msgid "Changed %(field)s from %(old_value)s to %(new_value)s." +msgstr "更改 %(field)s 自 %(old_value)s 到 %(new_value)s." + +#: templates/helpdesk/report_index.html:3 +#: templates/helpdesk/report_index.html:6 +#: templates/helpdesk/report_output.html:3 +#: templates/helpdesk/report_output.html:16 +msgid "Reports & Statistics" +msgstr "报告 & 统计" + +#: templates/helpdesk/report_index.html:9 +msgid "You haven't created any tickets yet, so you cannot run any reports." +msgstr "您还没有创建任何工单,因此您不能运行任何报表" + +#: templates/helpdesk/report_index.html:13 +msgid "Reports By User" +msgstr "按用户报表" + +#: templates/helpdesk/report_index.html:15 +#: templates/helpdesk/report_index.html:24 +msgid "by Priority" +msgstr "按优先级" + +#: templates/helpdesk/report_index.html:16 +msgid "by Queue" +msgstr "按待办" + +#: templates/helpdesk/report_index.html:17 +#: templates/helpdesk/report_index.html:25 +msgid "by Status" +msgstr "按状态" + +#: templates/helpdesk/report_index.html:18 +#: templates/helpdesk/report_index.html:26 +msgid "by Month" +msgstr "按月" + +#: templates/helpdesk/report_index.html:22 +msgid "Reports By Queue" +msgstr "按待办报表" + +#: templates/helpdesk/report_index.html:27 views/staff.py:1049 +msgid "Days until ticket closed by Month" +msgstr "按月,工单关闭的天数" + +#: templates/helpdesk/report_output.html:19 +msgid "" +"You can run this query on filtered data by using one of your saved queries." +msgstr "您可以用您保存的查询来查询数据" + +#: templates/helpdesk/report_output.html:21 +msgid "Select Query:" +msgstr "选择查询:" + +#: templates/helpdesk/report_output.html:26 +msgid "Filter Report" +msgstr "过滤报表" + +#: templates/helpdesk/report_output.html:29 +msgid "" +"Want to filter this report to just show a subset of data? Go to the Ticket " +"List, filter your query, and save your query." +msgstr "想要过滤次报表仅显示子集吗?到工单列表,过滤您的查询,并保存" + +#: templates/helpdesk/rss_list.html:6 +msgid "" +"The following RSS feeds are available for you to monitor using your " +"preferred RSS software. With the exception of the 'Latest Activity' feed, " +"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." +msgstr "以下RSS种子您可以用您喜欢的软件来监控。除了‘最近活动’种子,所有的种子仅提供打开和重新打开的信息,确保您的RSS阅读器不会满是已经关闭的或者历史的任务。" + +#: templates/helpdesk/rss_list.html:10 +msgid "" +"A summary of your open tickets - useful for getting alerted to new tickets " +"opened for you" +msgstr "您开放工单的摘要 - 当新工单开放给你时您能获得提示" + +#: templates/helpdesk/rss_list.html:12 +msgid "Latest Activity" +msgstr "最近活动" + +#: templates/helpdesk/rss_list.html:13 +msgid "" +"A summary of all helpdesk activity - including comments, emails, " +"attachments, and more" +msgstr "所有helpdesk活动的摘要 - 包括评论, 邮件, 附件等" + +#: templates/helpdesk/rss_list.html:16 +msgid "" +"All unassigned tickets - useful for being alerted to new tickets opened by " +"the public via the web or via e-mail" +msgstr "所有未分配的工单 - 当公众通过web或者email打开新工单时获得提示" + +#: templates/helpdesk/rss_list.html:19 +msgid "" +"These RSS feeds allow you to view a summary of either your own tickets, or " +"all tickets, for each of the queues in your helpdesk. For example, if you " +"manage the staff who utilise a particular queue, this may be used to view " +"new tickets coming into that queue." +msgstr "这些RSS种子让你能看到您自己工单的摘要, 或者所有待办的工单摘要。比如, 如果您管理的员工用了一个特定的待办, 这可以用来查看该待办下的新工单。" + +#: templates/helpdesk/rss_list.html:23 +msgid "Per-Queue Feeds" +msgstr "根据待办的种子" + +#: templates/helpdesk/rss_list.html:24 +msgid "All Open Tickets" +msgstr "所有开放的工单" + +#: templates/helpdesk/rss_list.html:30 +msgid "Open Tickets" +msgstr "开放工单" + +#: templates/helpdesk/system_settings.html:3 +msgid "Change System Settings" +msgstr "更改系统设置" + +#: templates/helpdesk/system_settings.html:8 +msgid "The following items can be maintained by you or other superusers:" +msgstr "以下项可以由您或者其他超级用户来维护" + +#: templates/helpdesk/system_settings.html:11 +msgid "E-Mail Ignore list" +msgstr "邮件忽略列表" + +#: templates/helpdesk/system_settings.html:12 +msgid "Maintain Queues" +msgstr "维护待办" + +#: templates/helpdesk/system_settings.html:13 +msgid "Maintain Pre-Set Replies" +msgstr "维护预设回复" + +#: templates/helpdesk/system_settings.html:14 +msgid "Maintain Knowledgebase Categories" +msgstr "维护知识库分类" + +#: templates/helpdesk/system_settings.html:15 +msgid "Maintain Knowledgebase Items" +msgstr "维护知识库项" + +#: templates/helpdesk/system_settings.html:16 +msgid "Maintain E-Mail Templates" +msgstr "维护邮件模板" + +#: templates/helpdesk/system_settings.html:17 +msgid "Maintain Users" +msgstr "维护用户" + +#: templates/helpdesk/ticket.html:2 +msgid "View Ticket Details" +msgstr "查看工单详情" + +#: templates/helpdesk/ticket.html:34 +msgid "Attach another File" +msgstr "附加另一个文件" + +#: templates/helpdesk/ticket.html:34 templates/helpdesk/ticket.html.py:200 +msgid "Add Another File" +msgstr "添加另一个文件" + +#: templates/helpdesk/ticket.html:73 templates/helpdesk/ticket.html.py:86 +msgid "Private" +msgstr "私有" + +#: templates/helpdesk/ticket.html:119 +msgid "Respond to this ticket" +msgstr "响应工单" + +#: templates/helpdesk/ticket.html:126 +msgid "Use a Pre-set Reply" +msgstr "使用预设回复" + +#: templates/helpdesk/ticket.html:126 templates/helpdesk/ticket.html.py:166 +msgid "(Optional)" +msgstr "(可选)" + +#: templates/helpdesk/ticket.html:128 +msgid "" +"Selecting a pre-set reply will over-write your comment below. You can then " +"modify the pre-set reply to your liking before saving this update." +msgstr "选择预设回复将覆盖您下面的评论. 您可以保存本更新之后,修改预设回复。" + +#: templates/helpdesk/ticket.html:131 +msgid "Comment / Resolution" +msgstr "评论/方案" + +#: templates/helpdesk/ticket.html:133 +msgid "" +"You can insert ticket and queue details in your message. For more " +"information, see the context help page." +msgstr "您可以插入工单到您的消息. 更多信息,查看上下文帮助页." + +#: templates/helpdesk/ticket.html:136 +msgid "" +"This ticket cannot be resolved or closed until the tickets it depends on are" +" resolved." +msgstr "此工单不能解决或者关闭, 除非其依赖的工单被解决" + +#: templates/helpdesk/ticket.html:166 +msgid "Is this update public?" +msgstr "是否为公开更新?" + +#: templates/helpdesk/ticket.html:168 +msgid "" +"If this is public, the submitter will be e-mailed your comment or " +"resolution." +msgstr "如果公开, 提交者将收到您评论或者方案的邮件" + +#: templates/helpdesk/ticket.html:172 +msgid "Change Further Details »" +msgstr "变更更多详情" + +#: templates/helpdesk/ticket.html:181 templates/helpdesk/ticket_list.html:68 +#: templates/helpdesk/ticket_list.html:97 +#: templates/helpdesk/ticket_list.html:225 +msgid "Owner" +msgstr "所有者" + +#: templates/helpdesk/ticket.html:182 +msgid "Unassign" +msgstr "未分配" + +#: templates/helpdesk/ticket.html:193 +msgid "Attach File(s) »" +msgstr " 附加文件(s) »" + +#: templates/helpdesk/ticket.html:199 +msgid "Attach a File" +msgstr "附加一个文件" + +#: templates/helpdesk/ticket.html:207 +msgid "Update This Ticket" +msgstr "更新此工单" + +#: templates/helpdesk/ticket_cc_add.html:3 +msgid "Add Ticket CC" +msgstr "添加工单CC" + +#: templates/helpdesk/ticket_cc_add.html:5 +msgid "" +"\n" +"

Add Ticket CC

\n" +"\n" +"

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.

" +msgstr "\n

添加工单CC

\n\n

当工单更新时要自动发送邮件给用户或者某个地址, 选择用户或者输入邮件地址

" + +#: templates/helpdesk/ticket_cc_add.html:21 +msgid "Save Ticket CC" +msgstr "保存工单CC" + +#: templates/helpdesk/ticket_cc_del.html:3 +msgid "Delete Ticket CC" +msgstr "删除工单CC" + +#: templates/helpdesk/ticket_cc_del.html:5 +#, python-format +msgid "" +"\n" +"

Delete Ticket CC

\n" +"\n" +"

Are you sure you wish to delete this email address (%(email_address)s) from the CC list for this ticket? They will stop receiving updates.

\n" +msgstr "\n

删除工单CC

\n\n

确认从CC列表删除此邮件地址 (%(email_address)s) ? 他们将不会再收到更新.

\n" + +#: templates/helpdesk/ticket_cc_del.html:11 +#: templates/helpdesk/ticket_dependency_del.html:11 +msgid "Don't Delete" +msgstr "不要删除" + +#: templates/helpdesk/ticket_cc_del.html:13 +#: templates/helpdesk/ticket_dependency_del.html:13 +msgid "Yes, Delete" +msgstr "是,删除" + +#: templates/helpdesk/ticket_cc_list.html:3 +msgid "Ticket CC Settings" +msgstr "工单CC设置" + +#: templates/helpdesk/ticket_cc_list.html:5 +#, python-format +msgid "" +"\n" +"

Ticket CC Settings

\n" +"\n" +"

The following people will receive an e-mail whenever %(ticket_title)s is updated. Some people can also view or edit the ticket via the public ticket views.

\n" +"\n" +"

You can add a new e-mail address to the list or delete any of the items below as required.

" +msgstr "\n

工单CC设置

\n\n

每当%(ticket_title)s更新时,以下人将收到邮件. 有些人也能通过公开工单视图查看或者编辑工单.

\n\n

你可以 添加新邮件地址到列表 或者根据需要删除以下\n项.

" + +#: templates/helpdesk/ticket_cc_list.html:14 +msgid "Ticket CC List" +msgstr "工单CC列表" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "View?" +msgstr "查看?" + +#: templates/helpdesk/ticket_cc_list.html:15 +msgid "Update?" +msgstr "更新?" + +#: templates/helpdesk/ticket_cc_list.html:29 +#, python-format +msgid "Return to %(ticket_title)s" +msgstr "返回到 %(ticket_title)s" + +#: templates/helpdesk/ticket_dependency_add.html:3 +msgid "Add Ticket Dependency" +msgstr "添加工单依赖" + +#: templates/helpdesk/ticket_dependency_add.html:5 +msgid "" +"\n" +"

Add Ticket Dependency

\n" +"\n" +"

Adding a dependency will stop you resolving this ticket until the dependent ticket has been resolved or closed.

" +msgstr "\n

添加工单依赖

\n\n

添加以来将停止您解决这个工单, 直到依赖的工单被解决或者关闭.

" + +#: templates/helpdesk/ticket_dependency_add.html:21 +msgid "Save Ticket Dependency" +msgstr "保存工单依赖" + +#: templates/helpdesk/ticket_dependency_del.html:3 +msgid "Delete Ticket Dependency" +msgstr "删除工单依赖" + +#: templates/helpdesk/ticket_dependency_del.html:5 +msgid "" +"\n" +"

Delete Ticket Dependency

\n" +"\n" +"

Are you sure you wish to remove the dependency on this ticket?

\n" +msgstr "\n

删除工单依赖

\n\n

您确认删除此工单的依赖?

\n" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Unhold" +msgstr "解除暂停" + +#: templates/helpdesk/ticket_desc_table.html:7 +msgid "Hold" +msgstr "暂停" + +#: templates/helpdesk/ticket_desc_table.html:9 +#, python-format +msgid "Queue: %(queue)s" +msgstr "待办: %(queue)s" + +#: templates/helpdesk/ticket_desc_table.html:37 +msgid "Assigned To" +msgstr "分配给" + +#: templates/helpdesk/ticket_desc_table.html:43 +msgid "Ignore" +msgstr "忽略" + +#: templates/helpdesk/ticket_desc_table.html:52 +msgid "Copies To" +msgstr "拷贝至" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Manage" +msgstr "管理" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to add / remove people who should receive an e-mail whenever this" +" ticket is updated." +msgstr "点这里添加/移除此工单更新时收到邮件的人" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "Subscribe" +msgstr "订阅" + +#: templates/helpdesk/ticket_desc_table.html:53 +msgid "" +"Click here to subscribe yourself to this ticket, if you want to receive an " +"e-mail whenever this ticket is updated." +msgstr "点这里订阅此工单,当工单更新您将收到邮件" + +#: templates/helpdesk/ticket_desc_table.html:57 +msgid "Dependencies" +msgstr "依赖" + +#: templates/helpdesk/ticket_desc_table.html:59 +msgid "" +"This ticket cannot be resolved until the following ticket(s) are resolved" +msgstr "除非以下工单(s)被解决,此工单不能解决" + +#: templates/helpdesk/ticket_desc_table.html:60 +msgid "Remove Dependency" +msgstr "移除依赖" + +#: templates/helpdesk/ticket_desc_table.html:63 +msgid "This ticket has no dependencies." +msgstr "此工单无依赖" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "Add Dependency" +msgstr "添加依赖" + +#: templates/helpdesk/ticket_desc_table.html:65 +msgid "" +"Click on 'Add Dependency', if you want to make this ticket dependent on " +"another ticket. A ticket may not be closed until all tickets it depends on " +"are closed." +msgstr "如果要让工单依赖其他工单,点击'添加依赖'。除非依赖的工单关闭,原工单不能关闭。" + +#: templates/helpdesk/ticket_list.html:59 +msgid "Change Query" +msgstr "更改查询" + +#: templates/helpdesk/ticket_list.html:67 +#: templates/helpdesk/ticket_list.html:79 +msgid "Sorting" +msgstr "排序" + +#: templates/helpdesk/ticket_list.html:71 +#: templates/helpdesk/ticket_list.html:139 +msgid "Keywords" +msgstr "关键字" + +#: templates/helpdesk/ticket_list.html:72 +msgid "Date Range" +msgstr "日期范围" + +#: templates/helpdesk/ticket_list.html:100 +msgid "Reverse" +msgstr "逆序" + +#: templates/helpdesk/ticket_list.html:102 +msgid "Ordering applied to tickets" +msgstr "排序应用到工单" + +#: templates/helpdesk/ticket_list.html:107 +msgid "Owner(s)" +msgstr "所有者" + +#: templates/helpdesk/ticket_list.html:111 +msgid "(ME)" +msgstr "(我)" + +#: templates/helpdesk/ticket_list.html:115 +msgid "Ctrl-Click to select multiple options" +msgstr "Ctrol-Click选择多项" + +#: templates/helpdesk/ticket_list.html:120 +msgid "Queue(s)" +msgstr "待办(s)" + +#: templates/helpdesk/ticket_list.html:121 +#: templates/helpdesk/ticket_list.html:127 +msgid "Ctrl-click to select multiple options" +msgstr "Ctrol-click选择多项" + +#: templates/helpdesk/ticket_list.html:126 +msgid "Status(es)" +msgstr "状态(es)" + +#: templates/helpdesk/ticket_list.html:132 +msgid "Date (From)" +msgstr "日期(从)" + +#: templates/helpdesk/ticket_list.html:133 +msgid "Date (To)" +msgstr "日期(至)" + +#: templates/helpdesk/ticket_list.html:134 +msgid "Use YYYY-MM-DD date format, eg 2011-05-29" +msgstr "用 YYYY-MM-DD 日期格式, 如 2011-05-29" + +#: templates/helpdesk/ticket_list.html:140 +msgid "" +"Keywords are case-insensitive, and will be looked for in the title, body and" +" submitter fields." +msgstr "关键字大小写敏感, 将在标题,内容和提交者中被查找" + +#: templates/helpdesk/ticket_list.html:144 +msgid "Apply Filter" +msgstr "应用过滤" + +#: templates/helpdesk/ticket_list.html:146 +#, python-format +msgid "You are currently viewing saved query \"%(query_name)s\"." +msgstr "您正在查看保存的查询 \"%(query_name)s\"." + +#: templates/helpdesk/ticket_list.html:149 +#, python-format +msgid "" +"Run a report on this " +"query to see stats and charts for the data listed below." +msgstr " 在本查询 运行报表 查看下面的数据统计和图表." + +#: templates/helpdesk/ticket_list.html:162 +#: templates/helpdesk/ticket_list.html:181 +msgid "Save Query" +msgstr "保存查询" + +#: templates/helpdesk/ticket_list.html:172 +msgid "" +"This name appears in the drop-down list of saved queries. If you share your " +"query, other users will see this name, so choose something clear and " +"descriptive!" +msgstr "此名称出现在已保存查询的下拉列表, 如果您要共享查询,其他用户可以看到这个名字, 因此请选择清晰和描述性的名字" + +#: templates/helpdesk/ticket_list.html:174 +msgid "Shared?" +msgstr "共享?" + +#: templates/helpdesk/ticket_list.html:175 +msgid "Yes, share this query with other users." +msgstr "是,共享查询给其他用户" + +#: templates/helpdesk/ticket_list.html:176 +msgid "" +"If you share this query, it will be visible by all other logged-in " +"users." +msgstr "如果您共享此查询,它将被 所有 其他登录的用户所见." + +#: templates/helpdesk/ticket_list.html:195 +msgid "Use Saved Query" +msgstr "使用保存的查询" + +#: templates/helpdesk/ticket_list.html:202 +msgid "Query" +msgstr "查询" + +#: templates/helpdesk/ticket_list.html:207 +msgid "Run Query" +msgstr "运行查询" + +#: templates/helpdesk/ticket_list.html:240 +msgid "No Tickets Match Your Selection" +msgstr "没有匹配到您选择的工单" + +#: templates/helpdesk/ticket_list.html:247 +msgid "Previous" +msgstr "向前" + +#: templates/helpdesk/ticket_list.html:251 +#, python-format +msgid "Page %(ticket_num)s of %(num_pages)s." +msgstr "页 %(ticket_num)s of %(num_pages)s." + +#: templates/helpdesk/ticket_list.html:255 +msgid "Next" +msgstr "下一个" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Select:" +msgstr "选择" + +#: templates/helpdesk/ticket_list.html:260 +msgid "None" +msgstr "空" + +#: templates/helpdesk/ticket_list.html:260 +msgid "Inverse" +msgstr "倒序" + +#: templates/helpdesk/ticket_list.html:262 +msgid "With Selected Tickets:" +msgstr "对选中的工单" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Take (Assign to me)" +msgstr "拿走(分配给我)" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close" +msgstr "关闭" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Don't Send E-Mail)" +msgstr "关闭(不要发送邮件)" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Close (Send E-Mail)" +msgstr "关闭(发送邮件)" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Assign To" +msgstr "分配给" + +#: templates/helpdesk/ticket_list.html:262 +msgid "Nobody (Unassign)" +msgstr "没有人(未分配)" + +#: templates/helpdesk/user_settings.html:3 +msgid "Change User Settings" +msgstr "改变用户设置" + +#: templates/helpdesk/user_settings.html:8 +msgid "" +"Use the following options to change the way your helpdesk system works for " +"you. These settings do not impact any other user." +msgstr "使用以下选项更改您系统的工作方式.这些设置不影响其他用户" + +#: templates/helpdesk/user_settings.html:14 +msgid "Save Options" +msgstr "保存选项" + +#: templates/helpdesk/registration/logged_out.html:2 +msgid "Logged Out" +msgstr "等出" + +#: templates/helpdesk/registration/logged_out.html:4 +msgid "" +"\n" +"

Logged Out

\n" +"\n" +"

Thanks for being here. Hopefully you've helped resolve a few tickets and make the world a better place.

\n" +"\n" +msgstr "\n

登出

\n\n

谢谢光顾,希望您帮助解决了一些工单,让世界更美好.

\n\n" + +#: templates/helpdesk/registration/login.html:2 +msgid "Helpdesk Login" +msgstr "Helpdesk 登录" + +#: templates/helpdesk/registration/login.html:14 +msgid "To log in simply enter your username and password below." +msgstr "输入您的用户名密码登录" + +#: templates/helpdesk/registration/login.html:17 +msgid "Your username and password didn't match. Please try again." +msgstr "您的用户名/密码不匹配,再试一次" + +#: templates/helpdesk/registration/login.html:20 +msgid "Login" +msgstr "登录" + +#: views/feeds.py:39 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s for %(username)s" +msgstr "Helpdesk: 为用户 %(username)s在待办 %(queue)s 打开工单" + +#: views/feeds.py:44 +#, python-format +msgid "Helpdesk: Open Tickets for %(username)s" +msgstr "Helpdesk: 为用户 %(username)s 打开工单" + +#: views/feeds.py:50 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s for %(username)s" +msgstr "在待办 %(queue)s 为用户 %(username)s 打开或者重开工单" + +#: views/feeds.py:55 +#, python-format +msgid "Open and Reopened Tickets for %(username)s" +msgstr "为用户 %(username)s 打开或者重开工单" + +#: views/feeds.py:102 +msgid "Helpdesk: Unassigned Tickets" +msgstr "Helpdesk: 未分配工单" + +#: views/feeds.py:103 +msgid "Unassigned Open and Reopened tickets" +msgstr "未分配的开放或者重新打开的工单" + +#: views/feeds.py:128 +msgid "Helpdesk: Recent Followups" +msgstr "Helpdesk: 最近跟进人" + +#: views/feeds.py:129 +msgid "" +"Recent FollowUps, such as e-mail replies, comments, attachments and " +"resolutions" +msgstr "最近更近,比如email回复,评论,附件和方案" + +#: views/feeds.py:144 +#, python-format +msgid "Helpdesk: Open Tickets in queue %(queue)s" +msgstr "Helpdesk: 代办 %(queue)s 中的开放工单 " + +#: views/feeds.py:149 +#, python-format +msgid "Open and Reopened Tickets in queue %(queue)s" +msgstr "在 %(queue)s 中打开和重新打开的工单" + +#: views/public.py:89 +msgid "Invalid ticket ID or e-mail address. Please try again." +msgstr "无效工单ID或者邮件地址, 请重试" + +#: views/public.py:107 +msgid "Submitter accepted resolution and closed ticket" +msgstr "提交者接受方案并关闭了工单" + +#: views/staff.py:235 +msgid "Accepted resolution and closed ticket" +msgstr "已接受方案并关闭的工单" + +#: views/staff.py:369 +#, python-format +msgid "Assigned to %(username)s" +msgstr "分配给 %(username)s" + +#: views/staff.py:392 +msgid "Updated" +msgstr "已更新" + +#: views/staff.py:577 +#, python-format +msgid "Assigned to %(username)s in bulk update" +msgstr "在集体更新中分配给 %(username)s in bulk update" + +#: views/staff.py:582 +msgid "Unassigned in bulk update" +msgstr "在集体更新中未分配" + +#: views/staff.py:587 views/staff.py:592 +msgid "Closed in bulk update" +msgstr "在集体更新中已关闭" + +#: views/staff.py:806 +msgid "" +"

Note: Your keyword search is case sensitive because of " +"your database. This means the search will not be accurate. " +"By switching to a different database system you will gain better searching! " +"For more information, read the Django Documentation on string matching in SQLite." +msgstr "

注意: 因为数据库,您的关键字查找大小写敏感,意味着搜索 精确. 切换到不同的数据库系统, 你可以获得更好的搜索, 更多信息,参考 Django Documentation on string matching in SQLite." + +#: views/staff.py:910 +msgid "Ticket taken off hold" +msgstr "从暂停区拿走的工单" + +#: views/staff.py:913 +msgid "Ticket placed on hold" +msgstr "待定工单" + +#: views/staff.py:1007 +msgid "User by Priority" +msgstr "用户按照优先级" + +#: views/staff.py:1013 +msgid "User by Queue" +msgstr "用户按照待办" + +#: views/staff.py:1019 +msgid "User by Status" +msgstr "用户按照状态" + +#: views/staff.py:1025 +msgid "User by Month" +msgstr "用户按月" + +#: views/staff.py:1031 +msgid "Queue by Priority" +msgstr "待办按照优先级" + +#: views/staff.py:1037 +msgid "Queue by Status" +msgstr "待办按照状态" + +#: views/staff.py:1043 +msgid "Queue by Month" +msgstr "待办按月" diff --git a/build/lib/helpdesk/management/__init__.py b/build/lib/helpdesk/management/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/build/lib/helpdesk/management/commands/__init__.py b/build/lib/helpdesk/management/commands/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/build/lib/helpdesk/management/commands/create_escalation_exclusions.py b/build/lib/helpdesk/management/commands/create_escalation_exclusions.py new file mode 100644 index 00000000..fcda257d --- /dev/null +++ b/build/lib/helpdesk/management/commands/create_escalation_exclusions.py @@ -0,0 +1,156 @@ +#!/usr/bin/python +""" +Jutda Helpdesk - A Django powered ticket tracker for small enterprise. + +(c) Copyright 2008 Jutda. All Rights Reserved. See LICENSE for details. + +scripts/create_escalation_exclusion.py - Easy way to routinely add particular + days to the list of days on which no + escalation should take place. +""" +from __future__ import print_function + +from datetime import timedelta, date +import getopt +from optparse import make_option +import sys + +from django.core.management.base import BaseCommand, CommandError + +from helpdesk.models import EscalationExclusion, Queue + + +class Command(BaseCommand): + + def __init__(self): + BaseCommand.__init__(self) + + self.option_list += ( + make_option( + '--days', '-d', + help='Days of week (monday, tuesday, etc)'), + make_option( + '--occurrences', '-o', + type='int', + default=1, + help='Occurrences: How many weeks ahead to exclude this day'), + make_option( + '--queues', '-q', + help='Queues to include (default: all). Use queue slugs'), + make_option( + '--escalate-verbosely', '-x', + action='store_true', + default=False, + dest='escalate-verbosely', + help='Display a list of dates excluded'), + ) + + def handle(self, *args, **options): + days = options['days'] + # optparse should already handle the `or 1` + occurrences = options['occurrences'] or 1 + verbose = False + queue_slugs = options['queues'] + queues = [] + + if options['escalate-verbosely']: + verbose = True + + if not (days and occurrences): + raise CommandError('One or more occurrences must be specified.') + + if queue_slugs is not None: + queue_set = queue_slugs.split(',') + for queue in queue_set: + try: + q = Queue.objects.get(slug__exact=queue) + except Queue.DoesNotExist: + raise CommandError("Queue %s does not exist." % queue) + queues.append(q) + + create_exclusions(days=days, occurrences=occurrences, verbose=verbose, queues=queues) + + +day_names = { + 'monday': 0, + 'tuesday': 1, + 'wednesday': 2, + 'thursday': 3, + 'friday': 4, + 'saturday': 5, + 'sunday': 6, +} + + +def create_exclusions(days, occurrences, verbose, queues): + days = days.split(',') + for day in days: + day_name = day + day = day_names[day] + workdate = date.today() + i = 0 + while i < occurrences: + if day == workdate.weekday(): + if EscalationExclusion.objects.filter(date=workdate).count() == 0: + esc = EscalationExclusion(name='Auto Exclusion for %s' % day_name, date=workdate) + esc.save() + + if verbose: + print("Created exclusion for %s %s" % (day_name, workdate)) + + for q in queues: + esc.queues.add(q) + if verbose: + print(" - for queue %s" % q) + + i += 1 + workdate += timedelta(days=1) + + +def usage(): + print("Options:") + print(" --days, -d: Days of week (monday, tuesday, etc)") + print(" --occurrences, -o: Occurrences: How many weeks ahead to exclude this day") + print(" --queues, -q: Queues to include (default: all). Use queue slugs") + print(" --verbose, -v: Display a list of dates excluded") + + +if __name__ == '__main__': + # This script can be run from the command-line or via Django's manage.py. + try: + opts, args = getopt.getopt(sys.argv[1:], 'd:o:q:v', ['days=', 'occurrences=', 'verbose', 'queues=']) + except getopt.GetoptError: + usage() + sys.exit(2) + + days = None + occurrences = 1 + verbose = False + queue_slugs = None + queues = [] + + for o, a in opts: + if o in ('-x', '--escalate-verbosely'): + verbose = True + if o in ('-d', '--days'): + days = a + if o in ('-q', '--queues'): + queue_slugs = a + if o in ('-o', '--occurrences'): + occurrences = int(a) or 1 + + if not (days and occurrences): + usage() + sys.exit(2) + + if queue_slugs is not None: + queue_set = queue_slugs.split(',') + for queue in queue_set: + try: + q = Queue.objects.get(slug__exact=queue) + except Queue.DoesNotExist: + print("Queue %s does not exist." % queue) + sys.exit(2) + queues.append(q) + + create_exclusions(days=days, occurrences=occurrences, verbose=verbose, queues=queues) diff --git a/build/lib/helpdesk/management/commands/create_queue_permissions.py b/build/lib/helpdesk/management/commands/create_queue_permissions.py new file mode 100644 index 00000000..50e980c3 --- /dev/null +++ b/build/lib/helpdesk/management/commands/create_queue_permissions.py @@ -0,0 +1,74 @@ +#!/usr/bin/python +""" +scripts/create_queue_permissions.py - + Create automatically permissions for all Queues. + + This is rarely needed. However, one use case is the scenario where the + slugs of the Queues have been changed, and thus the Permission should be + recreated according to the new slugs. + + No cleanup of permissions is performed. + + It should be safe to call this script multiple times or with partial + existing permissions. +""" + +from optparse import make_option + +from django.contrib.auth.models import Permission +from django.contrib.contenttypes.models import ContentType +from django.core.management.base import BaseCommand, CommandError +from django.db.utils import IntegrityError +from django.utils.translation import ugettext_lazy as _ + +from helpdesk.models import Queue + + +class Command(BaseCommand): + + def __init__(self): + BaseCommand.__init__(self) + + self.option_list += ( + make_option( + '--queues', '-q', + help='Queues to include (default: all). Use queue slugs'), + ) + + def handle(self, *args, **options): + queue_slugs = options['queues'] + queues = [] + + if queue_slugs is not None: + queue_set = queue_slugs.split(',') + for queue in queue_set: + try: + q = Queue.objects.get(slug__exact=queue) + except Queue.DoesNotExist: + raise CommandError("Queue %s does not exist." % queue) + queues.append(q) + else: + queues = list(Queue.objects.all()) + + # Create permissions for the queues, which may be all or not + for q in queues: + self.stdout.write("Preparing Queue %s [%s]" % (q.title, q.slug)) + + if q.permission_name: + self.stdout.write(" .. already has `permission_name=%s`" % q.permission_name) + basename = q.permission_name[9:] + else: + basename = q.generate_permission_name() + self.stdout.write(" .. generated `permission_name=%s`" % q.permission_name) + q.save() + + self.stdout.write(" .. checking permission codename `%s`" % basename) + + try: + Permission.objects.create( + name=_("Permission for queue: ") + q.title, + content_type=ContentType.objects.get(model="queue"), + codename=basename, + ) + except IntegrityError: + self.stdout.write(" .. permission already existed, skipping") diff --git a/build/lib/helpdesk/management/commands/create_usersettings.py b/build/lib/helpdesk/management/commands/create_usersettings.py new file mode 100644 index 00000000..46280159 --- /dev/null +++ b/build/lib/helpdesk/management/commands/create_usersettings.py @@ -0,0 +1,33 @@ +#!/usr/bin/python +""" +django-helpdesk - A Django powered ticket tracker for small enterprise. + +See LICENSE for details. + +create_usersettings.py - Easy way to create helpdesk-specific settings for +users who don't yet have them. +""" + +from django.utils.translation import ugettext as _ +from django.core.management.base import BaseCommand +from django.contrib.auth import get_user_model + +from helpdesk.models import UserSettings +from helpdesk.settings import DEFAULT_USER_SETTINGS + +User = get_user_model() + + +class Command(BaseCommand): + """create_usersettings command""" + + help = _('Check for user without django-helpdesk UserSettings ' + 'and create settings if required. Uses ' + 'settings.DEFAULT_USER_SETTINGS which can be overridden to ' + 'suit your situation.') + + def handle(self, *args, **options): + """handle command line""" + for u in User.objects.all(): + UserSettings.objects.get_or_create(user=u, + defaults={'settings': DEFAULT_USER_SETTINGS}) diff --git a/build/lib/helpdesk/management/commands/escalate_tickets.py b/build/lib/helpdesk/management/commands/escalate_tickets.py new file mode 100644 index 00000000..b2788762 --- /dev/null +++ b/build/lib/helpdesk/management/commands/escalate_tickets.py @@ -0,0 +1,196 @@ +#!/usr/bin/python +""" +django-helpdesk - A Django powered ticket tracker for small enterprise. + +(c) Copyright 2008 Jutda. All Rights Reserved. See LICENSE for details. + +scripts/escalate_tickets.py - Easy way to escalate tickets based on their age, + designed to be run from Cron or similar. +""" +from __future__ import print_function + +from datetime import timedelta, date +import getopt +from optparse import make_option +import sys + +from django.core.management.base import BaseCommand, CommandError +from django.db.models import Q +from django.utils.translation import ugettext as _ + +try: + from django.utils import timezone +except ImportError: + from datetime import datetime as timezone + +from helpdesk.models import Queue, Ticket, FollowUp, EscalationExclusion, TicketChange +from helpdesk.lib import send_templated_mail, safe_template_context + + +class Command(BaseCommand): + + def __init__(self): + BaseCommand.__init__(self) + + self.option_list += ( + make_option( + '--queues', + help='Queues to include (default: all). Use queue slugs'), + make_option( + '--verboseescalation', + action='store_true', + default=False, + help='Display a list of dates excluded'), + ) + + def handle(self, *args, **options): + verbose = False + queue_slugs = None + queues = [] + + if options['verboseescalation']: + verbose = True + if options['queues']: + queue_slugs = options['queues'] + + if queue_slugs is not None: + queue_set = queue_slugs.split(',') + for queue in queue_set: + try: + Queue.objects.get(slug__exact=queue) + except Queue.DoesNotExist: + raise CommandError("Queue %s does not exist." % queue) + queues.append(queue) + + escalate_tickets(queues=queues, verbose=verbose) + + +def escalate_tickets(queues, verbose): + """ Only include queues with escalation configured """ + queryset = Queue.objects.filter(escalate_days__isnull=False).exclude(escalate_days=0) + if queues: + queryset = queryset.filter(slug__in=queues) + + for q in queryset: + last = date.today() - timedelta(days=q.escalate_days) + today = date.today() + workdate = last + + days = 0 + + while workdate < today: + if EscalationExclusion.objects.filter(date=workdate).count() == 0: + days += 1 + workdate = workdate + timedelta(days=1) + + req_last_escl_date = date.today() - timedelta(days=days) + + if verbose: + print("Processing: %s" % q) + + for t in q.ticket_set.filter( + Q(status=Ticket.OPEN_STATUS) | + Q(status=Ticket.REOPENED_STATUS) + ).exclude( + priority=1 + ).filter( + Q(on_hold__isnull=True) | + Q(on_hold=False) + ).filter( + Q(last_escalation__lte=req_last_escl_date) | + Q(last_escalation__isnull=True, created__lte=req_last_escl_date) + ): + + t.last_escalation = timezone.now() + t.priority -= 1 + t.save() + + context = safe_template_context(t) + + if t.submitter_email: + send_templated_mail( + 'escalated_submitter', + context, + recipients=t.submitter_email, + sender=t.queue.from_address, + fail_silently=True, + ) + + if t.queue.updated_ticket_cc: + send_templated_mail( + 'escalated_cc', + context, + recipients=t.queue.updated_ticket_cc, + sender=t.queue.from_address, + fail_silently=True, + ) + + if t.assigned_to: + send_templated_mail( + 'escalated_owner', + context, + recipients=t.assigned_to.email, + sender=t.queue.from_address, + fail_silently=True, + ) + + if verbose: + print(" - Esclating %s from %s>%s" % ( + t.ticket, + t.priority + 1, + t.priority + ) + ) + + f = FollowUp( + ticket=t, + title='Ticket Escalated', + date=timezone.now(), + public=True, + comment=_('Ticket escalated after %s days' % q.escalate_days), + ) + f.save() + + tc = TicketChange( + followup=f, + field=_('Priority'), + old_value=t.priority + 1, + new_value=t.priority, + ) + tc.save() + + +def usage(): + print("Options:") + print(" --queues: Queues to include (default: all). Use queue slugs") + print(" --verboseescalation: Display a list of dates excluded") + + +if __name__ == '__main__': + try: + opts, args = getopt.getopt(sys.argv[1:], ['queues=', 'verboseescalation']) + except getopt.GetoptError: + usage() + sys.exit(2) + + verbose = False + queue_slugs = None + queues = [] + + for o, a in opts: + if o == '--verboseescalation': + verbose = True + if o == '--queues': + queue_slugs = a + + if queue_slugs is not None: + queue_set = queue_slugs.split(',') + for queue in queue_set: + try: + q = Queue.objects.get(slug__exact=queue) + except Queue.DoesNotExist: + print("Queue %s does not exist." % queue) + sys.exit(2) + queues.append(queue) + + escalate_tickets(queues=queues, verbose=verbose) diff --git a/build/lib/helpdesk/management/commands/get_email.py b/build/lib/helpdesk/management/commands/get_email.py new file mode 100644 index 00000000..5ae13079 --- /dev/null +++ b/build/lib/helpdesk/management/commands/get_email.py @@ -0,0 +1,553 @@ +#!/usr/bin/python +""" +Jutda Helpdesk - A Django powered ticket tracker for small enterprise. + +(c) Copyright 2008 Jutda. All Rights Reserved. See LICENSE for details. + +scripts/get_email.py - Designed to be run from cron, this script checks the + POP and IMAP boxes, or a local mailbox directory, + defined for the queues within a + helpdesk, creating tickets from the new messages (or + adding to existing tickets if needed) +""" +from __future__ import unicode_literals + +from datetime import timedelta +import base64 +import binascii +import email +import imaplib +import mimetypes +from os import listdir, unlink +from os.path import isfile, join +import poplib +import re +import socket +import ssl +import sys +from time import ctime + +from bs4 import BeautifulSoup + +from email_reply_parser import EmailReplyParser + +from django.core.files.base import ContentFile +from django.core.files.uploadedfile import SimpleUploadedFile +from django.core.management.base import BaseCommand +from django.db.models import Q +from django.utils.translation import ugettext as _ +from django.utils import encoding, six, timezone + +from helpdesk import settings +from helpdesk.lib import send_templated_mail, safe_template_context, process_attachments +from helpdesk.models import Queue, Ticket, TicketCC, FollowUp, IgnoreEmail +from django.contrib.auth.models import User + +import logging + + +STRIPPED_SUBJECT_STRINGS = [ + "Re: ", + "Fw: ", + "RE: ", + "FW: ", + "Automatic reply: ", +] + + +class Command(BaseCommand): + + def __init__(self): + BaseCommand.__init__(self) + + help = 'Process django-helpdesk queues and process e-mails via POP3/IMAP or ' \ + 'from a local mailbox directory as required, feeding them into the helpdesk.' + + def add_arguments(self, parser): + parser.add_argument( + '--quiet', + action='store_true', + dest='quiet', + default=False, + help='Hide details about each queue/message as they are processed', + ) + + def handle(self, *args, **options): + quiet = options.get('quiet', False) + process_email(quiet=quiet) + + +def process_email(quiet=False): + for q in Queue.objects.filter( + email_box_type__isnull=False, + allow_email_submission=True): + + logger = logging.getLogger('django.helpdesk.queue.' + q.slug) + if not q.logging_type or q.logging_type == 'none': + logging.disable(logging.CRITICAL) # disable all messages + elif q.logging_type == 'info': + logger.setLevel(logging.INFO) + elif q.logging_type == 'warn': + logger.setLevel(logging.WARN) + elif q.logging_type == 'error': + logger.setLevel(logging.ERROR) + elif q.logging_type == 'crit': + logger.setLevel(logging.CRITICAL) + elif q.logging_type == 'debug': + logger.setLevel(logging.DEBUG) + if quiet: + logger.propagate = False # do not propagate to root logger that would log to console + logdir = q.logging_dir or '/var/log/helpdesk/' + handler = logging.FileHandler(join(logdir, q.slug + '_get_email.log')) + logger.addHandler(handler) + + if not q.email_box_last_check: + q.email_box_last_check = timezone.now() - timedelta(minutes=30) + + queue_time_delta = timedelta(minutes=q.email_box_interval or 0) + + if (q.email_box_last_check + queue_time_delta) < timezone.now(): + process_queue(q, logger=logger) + q.email_box_last_check = timezone.now() + q.save() + + +def process_queue(q, logger): + logger.info("***** %s: Begin processing mail for django-helpdesk" % ctime()) + + if q.socks_proxy_type and q.socks_proxy_host and q.socks_proxy_port: + try: + import socks + except ImportError: + no_socks_msg = "Queue has been configured with proxy settings, " \ + "but no socks library was installed. Try to " \ + "install PySocks via PyPI." + logger.error(no_socks_msg) + raise ImportError(no_socks_msg) + + proxy_type = { + 'socks4': socks.SOCKS4, + 'socks5': socks.SOCKS5, + }.get(q.socks_proxy_type) + + socks.set_default_proxy(proxy_type=proxy_type, + addr=q.socks_proxy_host, + port=q.socks_proxy_port) + socket.socket = socks.socksocket + elif six.PY2: + socket.socket = socket._socketobject + + email_box_type = settings.QUEUE_EMAIL_BOX_TYPE or q.email_box_type + + if email_box_type == 'pop3': + if q.email_box_ssl or settings.QUEUE_EMAIL_BOX_SSL: + if not q.email_box_port: + q.email_box_port = 995 + server = poplib.POP3_SSL(q.email_box_host or + settings.QUEUE_EMAIL_BOX_HOST, + int(q.email_box_port)) + else: + if not q.email_box_port: + q.email_box_port = 110 + server = poplib.POP3(q.email_box_host or + settings.QUEUE_EMAIL_BOX_HOST, + int(q.email_box_port)) + + logger.info("Attempting POP3 server login") + + server.getwelcome() + server.user(q.email_box_user or settings.QUEUE_EMAIL_BOX_USER) + server.pass_(q.email_box_pass or settings.QUEUE_EMAIL_BOX_PASSWORD) + + messagesInfo = server.list()[1] + logger.info("Received %d messages from POP3 server" % len(messagesInfo)) + + for msgRaw in messagesInfo: + if six.PY3 and type(msgRaw) is bytes: + # in py3, msgRaw may be a bytes object, decode to str + try: + msg = msgRaw.decode("utf-8") + except UnicodeError: + # if couldn't decode easily, just leave it raw + msg = msgRaw + else: + # already a str + msg = msgRaw + msgNum = msg.split(" ")[0] + logger.info("Processing message %s" % msgNum) + + if six.PY2: + full_message = encoding.force_text("\n".join(server.retr(msgNum)[1]), errors='replace') + else: + raw_content = server.retr(msgNum)[1] + if type(raw_content[0]) is bytes: + full_message = "\n".join([elm.decode('utf-8') for elm in raw_content]) + else: + full_message = encoding.force_text("\n".join(raw_content), errors='replace') + ticket = ticket_from_message(message=full_message, queue=q, logger=logger) + + if ticket: + server.dele(msgNum) + logger.info("Successfully processed message %s, deleted from POP3 server" % msgNum) + else: + logger.warn("Message %s was not successfully processed, and will be left on POP3 server" % msgNum) + + server.quit() + + elif email_box_type == 'imap': + if q.email_box_ssl or settings.QUEUE_EMAIL_BOX_SSL: + if not q.email_box_port: + q.email_box_port = 993 + server = imaplib.IMAP4_SSL(q.email_box_host or + settings.QUEUE_EMAIL_BOX_HOST, + int(q.email_box_port)) + else: + if not q.email_box_port: + q.email_box_port = 143 + server = imaplib.IMAP4(q.email_box_host or + settings.QUEUE_EMAIL_BOX_HOST, + int(q.email_box_port)) + + logger.info("Attempting IMAP server login") + + try: + server.login(q.email_box_user or + settings.QUEUE_EMAIL_BOX_USER, + q.email_box_pass or + settings.QUEUE_EMAIL_BOX_PASSWORD) + server.select(q.email_box_imap_folder) + except imaplib.IMAP4.abort: + logger.error("IMAP login failed. Check that the server is accessible and that the username and password are correct.") + server.logout() + sys.exit() + except ssl.SSLError: + logger.error("IMAP login failed due to SSL error. This is often due to a timeout. Please check your connection and try again.") + server.logout() + sys.exit() + + try: + status, data = server.search(None, 'NOT', 'DELETED') + except imaplib.IMAP4.error: + logger.error("IMAP retrieve failed. Is the folder '%s' spelled correctly, and does it exist on the server?" % q.email_box_imap_folder) + if data: + msgnums = data[0].split() + logger.info("Received %d messages from IMAP server" % len(msgnums)) + for num in msgnums: + logger.info("Processing message %s" % num) + status, data = server.fetch(num, '(RFC822)') + full_message = encoding.force_text(data[0][1], errors='replace') + try: + ticket = ticket_from_message(message=full_message, queue=q, logger=logger) + except TypeError: + ticket = None # hotfix. Need to work out WHY. + if ticket: + server.store(num, '+FLAGS', '\\Deleted') + logger.info("Successfully processed message %s, deleted from IMAP server" % num) + else: + logger.warn("Message %s was not successfully processed, and will be left on IMAP server" % num) + + server.expunge() + server.close() + server.logout() + + elif email_box_type == 'local': + mail_dir = q.email_box_local_dir or '/var/lib/mail/helpdesk/' + mail = [join(mail_dir, f) for f in listdir(mail_dir) if isfile(join(mail_dir, f))] + logger.info("Found %d messages in local mailbox directory" % len(mail)) + + logger.info("Found %d messages in local mailbox directory" % len(mail)) + for i, m in enumerate(mail, 1): + logger.info("Processing message %d" % i) + with open(m, 'r') as f: + full_message = encoding.force_text(f.read(), errors='replace') + ticket = ticket_from_message(message=full_message, queue=q, logger=logger) + if ticket: + logger.info("Successfully processed message %d, ticket/comment created." % i) + try: + unlink(m) # delete message file if ticket was successful + except OSError: + logger.error("Unable to delete message %d." % i) + else: + logger.info("Successfully deleted message %d." % i) + else: + logger.warn("Message %d was not successfully processed, and will be left in local directory" % i) + + +def decodeUnknown(charset, string): + if six.PY2: + if not charset: + try: + return string.decode('utf-8', 'replace') + except UnicodeError: + return string.decode('iso8859-1', 'replace') + return unicode(string, charset) + elif six.PY3: + if type(string) is not str: + if not charset: + try: + return str(string, encoding='utf-8', errors='replace') + except UnicodeError: + return str(string, encoding='iso8859-1', errors='replace') + return str(string, encoding=charset, errors='replace') + return string + + +def decode_mail_headers(string): + decoded = email.header.decode_header(string) if six.PY3 else email.header.decode_header(string.encode('utf-8')) + if six.PY2: + return u' '.join([unicode(msg, charset or 'utf-8') for msg, charset in decoded]) + elif six.PY3: + return u' '.join([str(msg, encoding=charset, errors='replace') if charset else str(msg) for msg, charset in decoded]) + + +def ticket_from_message(message, queue, logger): + # 'message' must be an RFC822 formatted message. + message = email.message_from_string(message) if six.PY3 else email.message_from_string(message.encode('utf-8')) + subject = message.get('subject', _('Comment from e-mail')) + subject = decode_mail_headers(decodeUnknown(message.get_charset(), subject)) + for affix in STRIPPED_SUBJECT_STRINGS: + subject = subject.replace(affix, "") + subject = subject.strip() + + sender = message.get('from', _('Unknown Sender')) + sender = decode_mail_headers(decodeUnknown(message.get_charset(), sender)) + sender_email = email.utils.parseaddr(sender)[1] + + cc = message.get_all('cc', None) + if cc: + # first, fixup the encoding if necessary + cc = [decode_mail_headers(decodeUnknown(message.get_charset(), x)) for x in cc] + # get_all checks if multiple CC headers, but individual emails may be comma separated too + tempcc = [] + for hdr in cc: + tempcc.extend(hdr.split(',')) + # use a set to ensure no duplicates + cc = set([x.strip() for x in tempcc]) + + for ignore in IgnoreEmail.objects.filter(Q(queues=queue) | Q(queues__isnull=True)): + if ignore.test(sender_email): + if ignore.keep_in_mailbox: + # By returning 'False' the message will be kept in the mailbox, + # and the 'True' will cause the message to be deleted. + return False + return True + + matchobj = re.match(r".*\[" + queue.slug + r"-(?P\d+)\]", subject) + if matchobj: + # This is a reply or forward. + ticket = matchobj.group('id') + logger.info("Matched tracking ID %s-%s" % (queue.slug, ticket)) + else: + logger.info("No tracking ID matched.") + ticket = None + + body = None + counter = 0 + files = [] + + for part in message.walk(): + if part.get_content_maintype() == 'multipart': + continue + + name = part.get_param("name") + if name: + name = email.utils.collapse_rfc2231_value(name) + + if part.get_content_maintype() == 'text' and name is None: + if part.get_content_subtype() == 'plain': + body = EmailReplyParser.parse_reply( + decodeUnknown(part.get_content_charset(), part.get_payload(decode=True)) + ) + # workaround to get unicode text out rather than escaped text + try: + body = body.encode('ascii').decode('unicode_escape') + except UnicodeEncodeError: + body.encode('utf-8') + logger.debug("Discovered plain text MIME part") + else: + files.append( + SimpleUploadedFile(_("email_html_body.html"), encoding.smart_bytes(part.get_payload()), 'text/html') + ) + logger.debug("Discovered HTML MIME part") + else: + if not name: + ext = mimetypes.guess_extension(part.get_content_type()) + name = "part-%i%s" % (counter, ext) + payload = part.get_payload() + if isinstance(payload, list): + payload = payload.pop().as_string() + payloadToWrite = payload + # check version of python to ensure use of only the correct error type + if six.PY2: + non_b64_err = binascii.Error + else: + non_b64_err = TypeError + try: + logger.debug("Try to base64 decode the attachment payload") + if six.PY2: + payloadToWrite = base64.decodestring(payload) + else: + payloadToWrite = base64.decodebytes(payload) + except non_b64_err: + logger.debug("Payload was not base64 encoded, using raw bytes") + payloadToWrite = payload + files.append(SimpleUploadedFile(name, part.get_payload(decode=True), mimetypes.guess_type(name)[0])) + logger.debug("Found MIME attachment %s" % name) + + counter += 1 + + if not body: + mail = BeautifulSoup(part.get_payload(), "lxml") + if ">" in mail.text: + body = mail.find('body') + body = body.text + body = body.encode('ascii', errors='ignore') + else: + body = mail.text + + if ticket: + try: + t = Ticket.objects.get(id=ticket) + except Ticket.DoesNotExist: + logger.info("Tracking ID %s-%s not associated with existing ticket. Creating new ticket." % (queue.slug, ticket)) + ticket = None + else: + logger.info("Found existing ticket with Tracking ID %s-%s" % (t.queue.slug, t.id)) + if t.status == Ticket.CLOSED_STATUS: + t.status = Ticket.REOPENED_STATUS + t.save() + new = False + + smtp_priority = message.get('priority', '') + smtp_importance = message.get('importance', '') + high_priority_types = {'high', 'important', '1', 'urgent'} + priority = 2 if high_priority_types & {smtp_priority, smtp_importance} else 3 + + if ticket is None: + if settings.QUEUE_EMAIL_BOX_UPDATE_ONLY: + return None + new = True + t = Ticket.objects.create( + title=subject, + queue=queue, + submitter_email=sender_email, + created=timezone.now(), + description=body, + priority=priority, + ) + logger.debug("Created new ticket %s-%s" % (t.queue.slug, t.id)) + + if cc: + # get list of currently CC'd emails + current_cc = TicketCC.objects.filter(ticket=ticket) + current_cc_emails = [x.email for x in current_cc if x.email] + # get emails of any Users CC'd to email, if defined + # (some Users may not have an associated email, e.g, when using LDAP) + current_cc_users = [x.user.email for x in current_cc if x.user and x.user.email] + # ensure submitter, assigned user, queue email not added + other_emails = [queue.email_address] + if t.submitter_email: + other_emails.append(t.submitter_email) + if t.assigned_to: + other_emails.append(t.assigned_to.email) + current_cc = set(current_cc_emails + current_cc_users + other_emails) + # first, add any User not previously CC'd (as identified by User's email) + all_users = User.objects.all() + all_user_emails = set([x.email for x in all_users]) + users_not_currently_ccd = all_user_emails.difference(set(current_cc)) + users_to_cc = cc.intersection(users_not_currently_ccd) + for user in users_to_cc: + tcc = TicketCC.objects.create( + ticket=t, + user=User.objects.get(email=user), + can_view=True, + can_update=False + ) + tcc.save() + # then add remaining emails alphabetically, makes testing easy + new_cc = cc.difference(current_cc).difference(all_user_emails) + new_cc = sorted(list(new_cc)) + for ccemail in new_cc: + tcc = TicketCC.objects.create( + ticket=t, + email=ccemail.replace('\n', ' ').replace('\r', ' '), + can_view=True, + can_update=False + ) + tcc.save() + + f = FollowUp( + ticket=t, + title=_('E-Mail Received from %(sender_email)s' % {'sender_email': sender_email}), + date=timezone.now(), + public=True, + comment=body, + ) + + if t.status == Ticket.REOPENED_STATUS: + f.new_status = Ticket.REOPENED_STATUS + f.title = _('Ticket Re-Opened by E-Mail Received from %(sender_email)s' % {'sender_email': sender_email}) + + f.save() + logger.debug("Created new FollowUp for Ticket") + + if six.PY2: + logger.info(("[%s-%s] %s" % (t.queue.slug, t.id, t.title,)).encode('ascii', 'replace')) + elif six.PY3: + logger.info("[%s-%s] %s" % (t.queue.slug, t.id, t.title,)) + + attached = process_attachments(f, files) + for att_file in attached: + logger.info("Attachment '%s' (with size %s) successfully added to ticket from email." % (att_file[0], att_file[1].size)) + + context = safe_template_context(t) + + if new: + if sender_email: + send_templated_mail( + 'newticket_submitter', + context, + recipients=sender_email, + sender=queue.from_address, + fail_silently=True, + ) + if queue.new_ticket_cc: + send_templated_mail( + 'newticket_cc', + context, + recipients=queue.new_ticket_cc, + sender=queue.from_address, + fail_silently=True, + ) + if queue.updated_ticket_cc and queue.updated_ticket_cc != queue.new_ticket_cc: + send_templated_mail( + 'newticket_cc', + context, + recipients=queue.updated_ticket_cc, + sender=queue.from_address, + fail_silently=True, + ) + else: + context.update(comment=f.comment) + if t.assigned_to: + send_templated_mail( + 'updated_owner', + context, + recipients=t.assigned_to.email, + sender=queue.from_address, + fail_silently=True, + ) + if queue.updated_ticket_cc: + send_templated_mail( + 'updated_cc', + context, + recipients=queue.updated_ticket_cc, + sender=queue.from_address, + fail_silently=True, + ) + + return t + + +if __name__ == '__main__': + process_email() diff --git a/build/lib/helpdesk/migrations/0001_initial.py b/build/lib/helpdesk/migrations/0001_initial.py new file mode 100644 index 00000000..3bd49746 --- /dev/null +++ b/build/lib/helpdesk/migrations/0001_initial.py @@ -0,0 +1,349 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import models, migrations +import django.utils.timezone +from django.conf import settings +import helpdesk.models + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ] + + operations = [ + migrations.CreateModel( + name='Attachment', + fields=[ + ('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)), + ('file', models.FileField(upload_to=helpdesk.models.attachment_path, verbose_name='File', max_length=1000)), + ('filename', models.CharField(verbose_name='Filename', max_length=1000)), + ('mime_type', models.CharField(verbose_name='MIME Type', max_length=255)), + ('size', models.IntegerField(verbose_name='Size', help_text='Size of this file in bytes')), + ], + options={ + 'verbose_name_plural': 'Attachments', + 'verbose_name': 'Attachment', + 'ordering': ['filename'], + }, + bases=(models.Model,), + ), + migrations.CreateModel( + name='CustomField', + fields=[ + ('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)), + ('name', models.SlugField(help_text='As used in the database and behind the scenes. Must be unique and consist of only lowercase letters with no punctuation.', verbose_name='Field Name', unique=True)), + ('label', models.CharField(verbose_name='Label', help_text='The display label for this field', max_length='30')), + ('help_text', models.TextField(null=True, verbose_name='Help Text', blank=True, help_text='Shown to the user when editing the ticket')), + ('data_type', models.CharField(choices=[('varchar', 'Character (single line)'), ('text', 'Text (multi-line)'), ('integer', 'Integer'), ('decimal', 'Decimal'), ('list', 'List'), ('boolean', 'Boolean (checkbox yes/no)'), ('date', 'Date'), ('time', 'Time'), ('datetime', 'Date & Time'), ('email', 'E-Mail Address'), ('url', 'URL'), ('ipaddress', 'IP Address'), ('slug', 'Slug')], verbose_name='Data Type', help_text='Allows you to restrict the data entered into this field', max_length=100)), + ('max_length', models.IntegerField(null=True, verbose_name='Maximum Length (characters)', blank=True)), + ('decimal_places', models.IntegerField(null=True, verbose_name='Decimal Places', blank=True, help_text='Only used for decimal fields')), + ('empty_selection_list', models.BooleanField(verbose_name='Add empty first choice to List?', default=False, help_text='Only for List: adds an empty first entry to the choices list, which enforces that the user makes an active choice.')), + ('list_values', models.TextField(null=True, verbose_name='List Values', blank=True, help_text='For list fields only. Enter one option per line.')), + ('ordering', models.IntegerField(null=True, verbose_name='Ordering', blank=True, help_text='Lower numbers are displayed first; higher numbers are listed later')), + ('required', models.BooleanField(verbose_name='Required?', default=False, help_text='Does the user have to enter a value for this field?')), + ('staff_only', models.BooleanField(verbose_name='Staff Only?', default=False, help_text='If this is ticked, then the public submission form will NOT show this field')), + ], + options={ + 'verbose_name_plural': 'Custom fields', + 'verbose_name': 'Custom field', + }, + bases=(models.Model,), + ), + migrations.CreateModel( + name='EmailTemplate', + fields=[ + ('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)), + ('template_name', models.CharField(verbose_name='Template Name', max_length=100)), + ('subject', models.CharField(verbose_name='Subject', help_text='This will be prefixed with "[ticket.ticket] ticket.title". We recommend something simple such as "(Updated") or "(Closed)" - the same context is available as in plain_text, below.', max_length=100)), + ('heading', models.CharField(verbose_name='Heading', help_text='In HTML e-mails, this will be the heading at the top of the email - the same context is available as in plain_text, below.', max_length=100)), + ('plain_text', models.TextField(verbose_name='Plain Text', help_text='The context available to you includes {{ ticket }}, {{ queue }}, and depending on the time of the call: {{ resolution }} or {{ comment }}.')), + ('html', models.TextField(verbose_name='HTML', help_text='The same context is available here as in plain_text, above.')), + ('locale', models.CharField(null=True, verbose_name='Locale', help_text='Locale of this template.', blank=True, max_length=10)), + ], + options={ + 'verbose_name_plural': 'e-mail templates', + 'verbose_name': 'e-mail template', + 'ordering': ['template_name', 'locale'], + }, + bases=(models.Model,), + ), + migrations.CreateModel( + name='EscalationExclusion', + fields=[ + ('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)), + ('name', models.CharField(verbose_name='Name', max_length=100)), + ('date', models.DateField(verbose_name='Date', help_text='Date on which escalation should not happen')), + ], + options={ + 'verbose_name_plural': 'Escalation exclusions', + 'verbose_name': 'Escalation exclusion', + }, + bases=(models.Model,), + ), + migrations.CreateModel( + name='FollowUp', + fields=[ + ('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)), + ('date', models.DateTimeField(verbose_name='Date', default=django.utils.timezone.now)), + ('title', models.CharField(null=True, verbose_name='Title', blank=True, max_length=200)), + ('comment', models.TextField(null=True, verbose_name='Comment', blank=True)), + ('public', models.BooleanField(verbose_name='Public', default=False, help_text='Public tickets are viewable by the submitter and all staff, but non-public tickets can only be seen by staff.')), + ('new_status', models.IntegerField(null=True, verbose_name='New Status', help_text='If the status was changed, what was it changed to?', blank=True, choices=[(1, 'Open'), (2, 'Reopened'), (3, 'Resolved'), (4, 'Closed'), (5, 'Duplicate')])), + ], + options={ + 'verbose_name_plural': 'Follow-ups', + 'verbose_name': 'Follow-up', + 'ordering': ['date'], + }, + bases=(models.Model,), + ), + migrations.CreateModel( + name='IgnoreEmail', + fields=[ + ('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)), + ('name', models.CharField(verbose_name='Name', max_length=100)), + ('date', models.DateField(editable=False, verbose_name='Date', blank=True, help_text='Date on which this e-mail address was added')), + ('email_address', models.CharField(verbose_name='E-Mail Address', help_text='Enter a full e-mail address, or portions with wildcards, eg *@domain.com or postmaster@*.', max_length=150)), + ('keep_in_mailbox', models.BooleanField(verbose_name='Save Emails in Mailbox?', default=False, help_text='Do you want to save emails from this address in the mailbox? If this is unticked, emails from this address will be deleted.')), + ], + options={ + 'verbose_name_plural': 'Ignored e-mail addresses', + 'verbose_name': 'Ignored e-mail address', + }, + bases=(models.Model,), + ), + migrations.CreateModel( + name='KBCategory', + fields=[ + ('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)), + ('title', models.CharField(verbose_name='Title', max_length=100)), + ('slug', models.SlugField(verbose_name='Slug')), + ('description', models.TextField(verbose_name='Description')), + ], + options={ + 'verbose_name_plural': 'Knowledge base categories', + 'verbose_name': 'Knowledge base category', + 'ordering': ['title'], + }, + bases=(models.Model,), + ), + migrations.CreateModel( + name='KBItem', + fields=[ + ('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)), + ('title', models.CharField(verbose_name='Title', max_length=100)), + ('question', models.TextField(verbose_name='Question')), + ('answer', models.TextField(verbose_name='Answer')), + ('votes', models.IntegerField(verbose_name='Votes', default=0, help_text='Total number of votes cast for this item')), + ('recommendations', models.IntegerField(verbose_name='Positive Votes', default=0, help_text='Number of votes for this item which were POSITIVE.')), + ('last_updated', models.DateTimeField(verbose_name='Last Updated', blank=True, help_text='The date on which this question was most recently changed.')), + ('category', models.ForeignKey(verbose_name='Category', to='helpdesk.KBCategory', on_delete=models.CASCADE)), + ], + options={ + 'verbose_name_plural': 'Knowledge base items', + 'verbose_name': 'Knowledge base item', + 'ordering': ['title'], + }, + bases=(models.Model,), + ), + migrations.CreateModel( + name='PreSetReply', + fields=[ + ('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)), + ('name', models.CharField(verbose_name='Name', help_text='Only used to assist users with selecting a reply - not shown to the user.', max_length=100)), + ('body', models.TextField(verbose_name='Body', help_text='Context available: {{ ticket }} - ticket object (eg {{ ticket.title }}); {{ queue }} - The queue; and {{ user }} - the current user.')), + ], + options={ + 'verbose_name_plural': 'Pre-set replies', + 'verbose_name': 'Pre-set reply', + 'ordering': ['name'], + }, + bases=(models.Model,), + ), + migrations.CreateModel( + name='Queue', + fields=[ + ('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)), + ('title', models.CharField(verbose_name='Title', max_length=100)), + ('slug', models.SlugField(verbose_name='Slug', help_text="This slug is used when building ticket ID's. Once set, try not to change it or e-mailing may get messy.")), + ('email_address', models.EmailField(null=True, verbose_name='E-Mail Address', help_text='All outgoing e-mails for this queue will use this e-mail address. If you use IMAP or POP3, this should be the e-mail address for that mailbox.', blank=True, max_length=75)), + ('locale', models.CharField(null=True, verbose_name='Locale', help_text='Locale of this queue. All correspondence in this queue will be in this language.', blank=True, max_length=10)), + ('allow_public_submission', models.BooleanField(verbose_name='Allow Public Submission?', default=False, help_text='Should this queue be listed on the public submission form?')), + ('allow_email_submission', models.BooleanField(verbose_name='Allow E-Mail Submission?', default=False, help_text='Do you want to poll the e-mail box below for new tickets?')), + ('escalate_days', models.IntegerField(null=True, verbose_name='Escalation Days', blank=True, help_text='For tickets which are not held, how often do you wish to increase their priority? Set to 0 for no escalation.')), + ('new_ticket_cc', models.CharField(null=True, verbose_name='New Ticket CC Address', help_text='If an e-mail address is entered here, then it will receive notification of all new tickets created for this queue. Enter a comma between multiple e-mail addresses.', blank=True, max_length=200)), + ('updated_ticket_cc', models.CharField(null=True, verbose_name='Updated Ticket CC Address', help_text='If an e-mail address is entered here, then it will receive notification of all activity (new tickets, closed tickets, updates, reassignments, etc) for this queue. Separate multiple addresses with a comma.', blank=True, max_length=200)), + ('email_box_type', models.CharField(null=True, verbose_name='E-Mail Box Type', help_text='E-Mail server type for creating tickets automatically from a mailbox - both POP3 and IMAP are supported.', blank=True, max_length=5, choices=[('pop3', 'POP 3'), ('imap', 'IMAP')])), + ('email_box_host', models.CharField(null=True, verbose_name='E-Mail Hostname', help_text='Your e-mail server address - either the domain name or IP address. May be "localhost".', blank=True, max_length=200)), + ('email_box_port', models.IntegerField(null=True, verbose_name='E-Mail Port', blank=True, help_text='Port number to use for accessing e-mail. Default for POP3 is "110", and for IMAP is "143". This may differ on some servers. Leave it blank to use the defaults.')), + ('email_box_ssl', models.BooleanField(verbose_name='Use SSL for E-Mail?', default=False, help_text='Whether to use SSL for IMAP or POP3 - the default ports when using SSL are 993 for IMAP and 995 for POP3.')), + ('email_box_user', models.CharField(null=True, verbose_name='E-Mail Username', help_text='Username for accessing this mailbox.', blank=True, max_length=200)), + ('email_box_pass', models.CharField(null=True, verbose_name='E-Mail Password', help_text='Password for the above username', blank=True, max_length=200)), + ('email_box_imap_folder', models.CharField(null=True, verbose_name='IMAP Folder', help_text='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 your IMAP server into separate folders. Default: INBOX.', blank=True, max_length=100)), + ('email_box_interval', models.IntegerField(null=True, verbose_name='E-Mail Check Interval', blank=True, default='5', help_text='How often do you wish to check this mailbox? (in Minutes)')), + ('email_box_last_check', models.DateTimeField(editable=False, null=True, blank=True)), + ('socks_proxy_type', models.CharField(null=True, verbose_name='Socks Proxy Type', help_text='SOCKS4 or SOCKS5 allows you to proxy your connections through a SOCKS server.', blank=True, max_length=8, choices=[('socks4', 'SOCKS4'), ('socks5', 'SOCKS5')])), + ('socks_proxy_host', models.GenericIPAddressField(null=True, verbose_name='Socks Proxy Host', help_text='Socks proxy IP address. Default: 127.0.0.1', blank=True)), + ('socks_proxy_port', models.IntegerField(null=True, verbose_name='Socks Proxy Port', blank=True, help_text='Socks proxy port number. Default: 9150 (default TOR port)')), + ], + options={ + 'verbose_name_plural': 'Queues', + 'verbose_name': 'Queue', + 'ordering': ('title',), + }, + bases=(models.Model,), + ), + migrations.CreateModel( + name='SavedSearch', + fields=[ + ('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)), + ('title', models.CharField(verbose_name='Query Name', help_text='User-provided name for this query', max_length=100)), + ('shared', models.BooleanField(verbose_name='Shared With Other Users?', default=False, help_text='Should other users see this query?')), + ('query', models.TextField(verbose_name='Search Query', help_text='Pickled query object. Be wary changing this.')), + ('user', models.ForeignKey(verbose_name='User', to=settings.AUTH_USER_MODEL, on_delete=models.CASCADE)), + ], + options={ + 'verbose_name_plural': 'Saved searches', + 'verbose_name': 'Saved search', + }, + bases=(models.Model,), + ), + migrations.CreateModel( + name='Ticket', + fields=[ + ('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)), + ('title', models.CharField(verbose_name='Title', max_length=200)), + ('created', models.DateTimeField(verbose_name='Created', blank=True, help_text='Date this ticket was first created')), + ('modified', models.DateTimeField(verbose_name='Modified', blank=True, help_text='Date this ticket was most recently changed.')), + ('submitter_email', models.EmailField(null=True, verbose_name='Submitter E-Mail', help_text='The submitter will receive an email for all public follow-ups left for this task.', blank=True, max_length=75)), + ('status', models.IntegerField(verbose_name='Status', default=1, choices=[(1, 'Open'), (2, 'Reopened'), (3, 'Resolved'), (4, 'Closed'), (5, 'Duplicate')])), + ('on_hold', models.BooleanField(verbose_name='On Hold', default=False, help_text='If a ticket is on hold, it will not automatically be escalated.')), + ('description', models.TextField(null=True, verbose_name='Description', blank=True, help_text='The content of the customers query.')), + ('resolution', models.TextField(null=True, verbose_name='Resolution', blank=True, help_text='The resolution provided to the customer by our staff.')), + ('priority', models.IntegerField(verbose_name='Priority', help_text='1 = Highest Priority, 5 = Low Priority', blank=3, default=3, choices=[(1, '1. Critical'), (2, '2. High'), (3, '3. Normal'), (4, '4. Low'), (5, '5. Very Low')])), + ('due_date', models.DateTimeField(null=True, verbose_name='Due on', blank=True)), + ('last_escalation', models.DateTimeField(editable=False, null=True, blank=True, help_text='The date this ticket was last escalated - updated automatically by management/commands/escalate_tickets.py.')), + ('assigned_to', models.ForeignKey(null=True, verbose_name='Assigned to', blank=True, related_name='assigned_to', to=settings.AUTH_USER_MODEL, on_delete=models.CASCADE)), + ('queue', models.ForeignKey(verbose_name='Queue', to='helpdesk.Queue', on_delete=models.CASCADE)), + ], + options={ + 'verbose_name_plural': 'Tickets', + 'verbose_name': 'Ticket', + 'ordering': ('id',), + 'get_latest_by': 'created', + }, + bases=(models.Model,), + ), + migrations.CreateModel( + name='TicketCC', + fields=[ + ('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)), + ('email', models.EmailField(null=True, verbose_name='E-Mail Address', help_text='For non-user followers, enter their e-mail address', blank=True, max_length=75)), + ('can_view', models.BooleanField(verbose_name='Can View Ticket?', default=False, help_text='Can this CC login to view the ticket details?')), + ('can_update', models.BooleanField(verbose_name='Can Update Ticket?', default=False, help_text='Can this CC login and update the ticket?')), + ('ticket', models.ForeignKey(verbose_name='Ticket', to='helpdesk.Ticket', on_delete=models.CASCADE)), + ('user', models.ForeignKey(null=True, verbose_name='User', blank=True, to=settings.AUTH_USER_MODEL, help_text='User who wishes to receive updates for this ticket.', on_delete=models.CASCADE)), + ], + options={ + }, + bases=(models.Model,), + ), + migrations.CreateModel( + name='TicketChange', + fields=[ + ('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)), + ('field', models.CharField(verbose_name='Field', max_length=100)), + ('old_value', models.TextField(null=True, verbose_name='Old Value', blank=True)), + ('new_value', models.TextField(null=True, verbose_name='New Value', blank=True)), + ('followup', models.ForeignKey(verbose_name='Follow-up', to='helpdesk.FollowUp', on_delete=models.CASCADE)), + ], + options={ + 'verbose_name_plural': 'Ticket changes', + 'verbose_name': 'Ticket change', + }, + bases=(models.Model,), + ), + migrations.CreateModel( + name='TicketCustomFieldValue', + fields=[ + ('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)), + ('value', models.TextField(null=True, blank=True)), + ('field', models.ForeignKey(verbose_name='Field', to='helpdesk.CustomField', on_delete=models.CASCADE)), + ('ticket', models.ForeignKey(verbose_name='Ticket', to='helpdesk.Ticket', on_delete=models.CASCADE)), + ], + options={ + 'verbose_name_plural': 'Ticket custom field values', + 'verbose_name': 'Ticket custom field value', + }, + bases=(models.Model,), + ), + migrations.CreateModel( + name='TicketDependency', + fields=[ + ('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)), + ('depends_on', models.ForeignKey(related_name='depends_on', verbose_name='Depends On Ticket', to='helpdesk.Ticket', on_delete=models.CASCADE)), + ('ticket', models.ForeignKey(related_name='ticketdependency', verbose_name='Ticket', to='helpdesk.Ticket', on_delete=models.CASCADE)), + ], + options={ + 'verbose_name_plural': 'Ticket dependencies', + 'verbose_name': 'Ticket dependency', + }, + bases=(models.Model,), + ), + migrations.CreateModel( + name='UserSettings', + fields=[ + ('id', models.AutoField(auto_created=True, verbose_name='ID', primary_key=True, serialize=False)), + ('settings_pickled', models.TextField(null=True, verbose_name='Settings Dictionary', blank=True, help_text='This is a base64-encoded representation of a pickled Python dictionary. Do not change this field via the admin.')), + ('user', models.OneToOneField(to=settings.AUTH_USER_MODEL, on_delete=models.CASCADE)), + ], + options={ + 'verbose_name_plural': 'User Settings', + 'verbose_name': 'User Setting', + }, + bases=(models.Model,), + ), + migrations.AlterUniqueTogether( + name='ticketdependency', + unique_together=set([('ticket', 'depends_on')]), + ), + migrations.AddField( + model_name='presetreply', + name='queues', + field=models.ManyToManyField(null=True, to='helpdesk.Queue', blank=True, help_text='Leave blank to allow this reply to be used for all queues, or select those queues you wish to limit this reply to.'), + preserve_default=True, + ), + migrations.AddField( + model_name='ignoreemail', + name='queues', + field=models.ManyToManyField(null=True, to='helpdesk.Queue', blank=True, help_text='Leave blank for this e-mail to be ignored on all queues, or select those queues you wish to ignore this e-mail for.'), + preserve_default=True, + ), + migrations.AddField( + model_name='followup', + name='ticket', + field=models.ForeignKey(verbose_name='Ticket', to='helpdesk.Ticket', on_delete=models.CASCADE), + preserve_default=True, + ), + migrations.AddField( + model_name='followup', + name='user', + field=models.ForeignKey(null=True, verbose_name='User', blank=True, to=settings.AUTH_USER_MODEL, on_delete=models.CASCADE), + preserve_default=True, + ), + migrations.AddField( + model_name='escalationexclusion', + name='queues', + field=models.ManyToManyField(null=True, to='helpdesk.Queue', blank=True, help_text='Leave blank for this exclusion to be applied to all queues, or select those queues you wish to exclude with this entry.'), + preserve_default=True, + ), + migrations.AddField( + model_name='attachment', + name='followup', + field=models.ForeignKey(verbose_name='Follow-up', to='helpdesk.FollowUp', on_delete=models.CASCADE), + preserve_default=True, + ), + ] diff --git a/build/lib/helpdesk/migrations/0002_populate_usersettings.py b/build/lib/helpdesk/migrations/0002_populate_usersettings.py new file mode 100644 index 00000000..ba2979be --- /dev/null +++ b/build/lib/helpdesk/migrations/0002_populate_usersettings.py @@ -0,0 +1,53 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.contrib.auth import get_user_model +from django.db import models, migrations + +from helpdesk.settings import DEFAULT_USER_SETTINGS + + +def picke_settings(data): + """Pickling as defined at migration's creation time""" + try: + import pickle + except ImportError: + import cPickle as pickle + from helpdesk.lib import b64encode + return b64encode(pickle.dumps(data)) + + +# https://docs.djangoproject.com/en/1.7/topics/migrations/#data-migrations +def populate_usersettings(apps, schema_editor): + """Create a UserSettings entry for each existing user. + This will only happen once (at install time, or at upgrade) + when the UserSettings model doesn't already exist.""" + + _User = get_user_model() + User = apps.get_model(_User._meta.app_label, _User._meta.model_name) + + # Import historical version of models + UserSettings = apps.get_model("helpdesk", "UserSettings") + + settings_pickled = picke_settings(DEFAULT_USER_SETTINGS) + + for u in User.objects.all(): + try: + UserSettings.objects.get(user=u) + except UserSettings.DoesNotExist: + UserSettings.objects.create(user=u, settings_pickled=settings_pickled) + + +noop = lambda *args, **kwargs: None + +class Migration(migrations.Migration): + + dependencies = [ + ('helpdesk', '0001_initial'), + ] + + operations = [ + migrations.RunPython(populate_usersettings, reverse_code=noop), + ] + + diff --git a/build/lib/helpdesk/migrations/0003_initial_data_import.py b/build/lib/helpdesk/migrations/0003_initial_data_import.py new file mode 100644 index 00000000..cc478377 --- /dev/null +++ b/build/lib/helpdesk/migrations/0003_initial_data_import.py @@ -0,0 +1,44 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +import os +from sys import path + +from django.db import models, migrations +from django.core import serializers + +fixture_dir = os.path.abspath(os.path.join(os.path.dirname(__file__), '../fixtures')) +fixture_filename = 'emailtemplate.json' + +def deserialize_fixture(): + fixture_file = os.path.join(fixture_dir, fixture_filename) + + with open(fixture_file, 'rb') as fixture: + return list(serializers.deserialize('json', fixture, ignorenonexistent=True)) + + +def load_fixture(apps, schema_editor): + objects = deserialize_fixture() + + for obj in objects: + obj.save() + + +def unload_fixture(apps, schema_editor): + """Delete all EmailTemplate objects""" + + objects = deserialize_fixture() + + EmailTemplate = apps.get_model("helpdesk", "emailtemplate") + EmailTemplate.objects.filter(pk__in=[ obj.object.pk for obj in objects ]).delete() + + +class Migration(migrations.Migration): + + dependencies = [ + ('helpdesk', '0002_populate_usersettings'), + ] + + operations = [ + migrations.RunPython(load_fixture, reverse_code=unload_fixture), + ] diff --git a/build/lib/helpdesk/migrations/0004_add_per_queue_staff_membership.py b/build/lib/helpdesk/migrations/0004_add_per_queue_staff_membership.py new file mode 100644 index 00000000..1b96b3bc --- /dev/null +++ b/build/lib/helpdesk/migrations/0004_add_per_queue_staff_membership.py @@ -0,0 +1,29 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import models, migrations +from django.conf import settings + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('helpdesk', '0003_initial_data_import'), + ] + + operations = [ + migrations.CreateModel( + name='QueueMembership', + fields=[ + ('id', models.AutoField(verbose_name='ID', serialize=False, auto_created=True, primary_key=True)), + ('queues', models.ManyToManyField(to='helpdesk.Queue', verbose_name='Authorized Queues')), + ('user', models.OneToOneField(verbose_name='User', to=settings.AUTH_USER_MODEL, on_delete=models.CASCADE)), + ], + options={ + 'verbose_name': 'Queue Membership', + 'verbose_name_plural': 'Queue Memberships', + }, + bases=(models.Model,), + ), + ] diff --git a/build/lib/helpdesk/migrations/0005_queues_no_null.py b/build/lib/helpdesk/migrations/0005_queues_no_null.py new file mode 100644 index 00000000..8a678635 --- /dev/null +++ b/build/lib/helpdesk/migrations/0005_queues_no_null.py @@ -0,0 +1,29 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import models, migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('helpdesk', '0004_add_per_queue_staff_membership'), + ] + + operations = [ + migrations.AlterField( + model_name='escalationexclusion', + name='queues', + field=models.ManyToManyField(help_text='Leave blank for this exclusion to be applied to all queues, or select those queues you wish to exclude with this entry.', to='helpdesk.Queue', blank=True), + ), + migrations.AlterField( + model_name='ignoreemail', + name='queues', + field=models.ManyToManyField(help_text='Leave blank for this e-mail to be ignored on all queues, or select those queues you wish to ignore this e-mail for.', to='helpdesk.Queue', blank=True), + ), + migrations.AlterField( + model_name='presetreply', + name='queues', + field=models.ManyToManyField(help_text='Leave blank to allow this reply to be used for all queues, or select those queues you wish to limit this reply to.', to='helpdesk.Queue', blank=True), + ), + ] diff --git a/build/lib/helpdesk/migrations/0006_email_maxlength.py b/build/lib/helpdesk/migrations/0006_email_maxlength.py new file mode 100644 index 00000000..7c50b32a --- /dev/null +++ b/build/lib/helpdesk/migrations/0006_email_maxlength.py @@ -0,0 +1,29 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import models, migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('helpdesk', '0005_queues_no_null'), + ] + + operations = [ + migrations.AlterField( + model_name='queue', + name='email_address', + field=models.EmailField(help_text='All outgoing e-mails for this queue will use this e-mail address. If you use IMAP or POP3, this should be the e-mail address for that mailbox.', max_length=254, null=True, verbose_name='E-Mail Address', blank=True), + ), + migrations.AlterField( + model_name='ticket', + name='submitter_email', + field=models.EmailField(help_text='The submitter will receive an email for all public follow-ups left for this task.', max_length=254, null=True, verbose_name='Submitter E-Mail', blank=True), + ), + migrations.AlterField( + model_name='ticketcc', + name='email', + field=models.EmailField(help_text='For non-user followers, enter their e-mail address', max_length=254, null=True, verbose_name='E-Mail Address', blank=True), + ), + ] diff --git a/build/lib/helpdesk/migrations/0007_max_length_by_integer.py b/build/lib/helpdesk/migrations/0007_max_length_by_integer.py new file mode 100644 index 00000000..98b404a8 --- /dev/null +++ b/build/lib/helpdesk/migrations/0007_max_length_by_integer.py @@ -0,0 +1,19 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import models, migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('helpdesk', '0006_email_maxlength'), + ] + + operations = [ + migrations.AlterField( + model_name='customfield', + name='label', + field=models.CharField(help_text='The display label for this field', max_length=30, verbose_name='Label'), + ), + ] diff --git a/build/lib/helpdesk/migrations/0008_extra_for_permissions.py b/build/lib/helpdesk/migrations/0008_extra_for_permissions.py new file mode 100644 index 00000000..ac6d1433 --- /dev/null +++ b/build/lib/helpdesk/migrations/0008_extra_for_permissions.py @@ -0,0 +1,19 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import models, migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('helpdesk', '0007_max_length_by_integer'), + ] + + operations = [ + migrations.AddField( + model_name='queue', + name='permission_name', + field=models.CharField(help_text='Name used in the django.contrib.auth permission system', max_length=50, null=True, verbose_name='Django auth permission name', blank=True), + ), + ] diff --git a/build/lib/helpdesk/migrations/0009_migrate_queuemembership.py b/build/lib/helpdesk/migrations/0009_migrate_queuemembership.py new file mode 100644 index 00000000..10d27cd0 --- /dev/null +++ b/build/lib/helpdesk/migrations/0009_migrate_queuemembership.py @@ -0,0 +1,78 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.core.exceptions import ObjectDoesNotExist +from django.db import migrations +from django.db.utils import IntegrityError +from django.utils.translation import ugettext_lazy as _ + + +def create_and_assign_permissions(apps, schema_editor): + Permission = apps.get_model('auth', 'Permission') + ContentType = apps.get_model('contenttypes', 'ContentType') + # Two steps: + # 1. Create the permission for existing Queues + # 2. Assign the permission to user according to QueueMembership objects + + # First step: prepare the permission for each queue + Queue = apps.get_model('helpdesk', 'Queue') + + for q in Queue.objects.all(): + if not q.permission_name: + basename = "queue_access_%s" % q.slug + q.permission_name = "helpdesk.%s" % basename + else: + # Strip the `helpdesk.` prefix + basename = q.permission_name[9:] + + try: + Permission.objects.create( + name=_("Permission for queue: ") + q.title, + content_type=ContentType.objects.get(model="queue"), + codename=basename, + ) + except IntegrityError: + # Seems that it already existed, safely ignore it + pass + q.save() + + # Second step: map the permissions according to QueueMembership + QueueMembership = apps.get_model('helpdesk', 'QueueMembership') + for qm in QueueMembership.objects.all(): + user = qm.user + for q in qm.queues.all(): + # Strip the `helpdesk.` prefix + p = Permission.objects.get(codename=q.permission_name[9:]) + user.user_permissions.add(p) + qm.delete() + + +def revert_queue_membership(apps, schema_editor): + Permission = apps.get_model('auth', 'Permission') + Queue = apps.get_model('helpdesk', 'Queue') + QueueMembership = apps.get_model('helpdesk', 'QueueMembership') + for p in Permission.objects.all(): + if p.codename.startswith("queue_access_"): + slug = p.codename[13:] + try: + q = Queue.objects.get(slug=slug) + except ObjectDoesNotExist: + continue + + for user in p.user_set.all(): + qm, _ = QueueMembership.objects.get_or_create(user=user) + qm.queues.add(q) + + p.delete() + + +class Migration(migrations.Migration): + + dependencies = [ + ('helpdesk', '0008_extra_for_permissions'), + ] + + operations = [ + migrations.RunPython(create_and_assign_permissions, + revert_queue_membership) + ] diff --git a/build/lib/helpdesk/migrations/0010_remove_queuemembership.py b/build/lib/helpdesk/migrations/0010_remove_queuemembership.py new file mode 100644 index 00000000..3b097365 --- /dev/null +++ b/build/lib/helpdesk/migrations/0010_remove_queuemembership.py @@ -0,0 +1,25 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import models, migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('helpdesk', '0009_migrate_queuemembership'), + ] + + operations = [ + migrations.RemoveField( + model_name='queuemembership', + name='queues', + ), + migrations.RemoveField( + model_name='queuemembership', + name='user', + ), + migrations.DeleteModel( + name='QueueMembership', + ), + ] diff --git a/build/lib/helpdesk/migrations/0011_admin_related_improvements.py b/build/lib/helpdesk/migrations/0011_admin_related_improvements.py new file mode 100644 index 00000000..a36ff1fb --- /dev/null +++ b/build/lib/helpdesk/migrations/0011_admin_related_improvements.py @@ -0,0 +1,24 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import models, migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('helpdesk', '0010_remove_queuemembership'), + ] + + operations = [ + migrations.AlterField( + model_name='queue', + name='permission_name', + field=models.CharField(editable=False, max_length=50, blank=True, help_text='Name used in the django.contrib.auth permission system', null=True, verbose_name='Django auth permission name'), + ), + migrations.AlterField( + model_name='queue', + name='slug', + field=models.SlugField(help_text="This slug is used when building ticket ID's. Once set, try not to change it or e-mailing may get messy.", unique=True, verbose_name='Slug'), + ), + ] diff --git a/build/lib/helpdesk/migrations/0012_queue_default_owner.py b/build/lib/helpdesk/migrations/0012_queue_default_owner.py new file mode 100644 index 00000000..7a731e00 --- /dev/null +++ b/build/lib/helpdesk/migrations/0012_queue_default_owner.py @@ -0,0 +1,23 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.9.2 on 2016-02-15 21:37 +from __future__ import unicode_literals + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ('helpdesk', '0011_admin_related_improvements'), + ] + + operations = [ + migrations.AddField( + model_name='queue', + name='default_owner', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.CASCADE, related_name='default_owner', to=settings.AUTH_USER_MODEL, verbose_name='Default owner'), + ), + ] diff --git a/build/lib/helpdesk/migrations/0013_email_box_local_dir_and_logging.py b/build/lib/helpdesk/migrations/0013_email_box_local_dir_and_logging.py new file mode 100644 index 00000000..71ba784e --- /dev/null +++ b/build/lib/helpdesk/migrations/0013_email_box_local_dir_and_logging.py @@ -0,0 +1,35 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.10.1 on 2016-09-14 23:47 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('helpdesk', '0012_queue_default_owner'), + ] + + operations = [ + migrations.AddField( + model_name='queue', + name='email_box_local_dir', + field=models.CharField(blank=True, help_text='If using a local directory, what directory path do you wish to poll for new email? Example: /var/lib/mail/helpdesk/', max_length=200, null=True, verbose_name='E-Mail Local Directory'), + ), + migrations.AddField( + model_name='queue', + name='logging_dir', + field=models.CharField(blank=True, help_text='If logging is enabled, what directory should we use to store log files for this queue? If no directory is set, default to /var/log/helpdesk/', max_length=200, null=True, verbose_name='Logging Directory'), + ), + migrations.AddField( + model_name='queue', + name='logging_type', + field=models.CharField(blank=True, choices=[('none', 'None'), ('debug', 'Debug'), ('info', 'Information'), ('warn', 'Warning'), ('error', 'Error'), ('crit', 'Critical')], help_text='Set the default logging level. All messages at that level or above will be logged to the directory set below. If no level is set, logging will be disabled.', max_length=5, null=True, verbose_name='Logging Type'), + ), + migrations.AlterField( + model_name='queue', + name='email_box_type', + field=models.CharField(blank=True, choices=[('pop3', 'POP 3'), ('imap', 'IMAP'), ('local', 'Local Directory')], help_text='E-Mail server type for creating tickets automatically from a mailbox - both POP3 and IMAP are supported, as well as reading from a local directory.', max_length=5, null=True, verbose_name='E-Mail Box Type'), + ), + ] diff --git a/build/lib/helpdesk/migrations/0014_usersettings_related_name.py b/build/lib/helpdesk/migrations/0014_usersettings_related_name.py new file mode 100644 index 00000000..ab58ee01 --- /dev/null +++ b/build/lib/helpdesk/migrations/0014_usersettings_related_name.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +from __future__ import unicode_literals + +from django.db import migrations, models +from django.conf import settings + + +class Migration(migrations.Migration): + + dependencies = [ + ('helpdesk', '0013_email_box_local_dir_and_logging'), + ] + + operations = [ + migrations.AlterField( + model_name='usersettings', + name='user', + field=models.OneToOneField(to=settings.AUTH_USER_MODEL, + related_name='usersettings_helpdesk', + on_delete=models.CASCADE), + ), + ] diff --git a/build/lib/helpdesk/migrations/0015_expand_permission_name_size.py b/build/lib/helpdesk/migrations/0015_expand_permission_name_size.py new file mode 100644 index 00000000..5feecb38 --- /dev/null +++ b/build/lib/helpdesk/migrations/0015_expand_permission_name_size.py @@ -0,0 +1,20 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.10.5 on 2017-02-10 19:27 +from __future__ import unicode_literals + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('helpdesk', '0014_usersettings_related_name'), + ] + + operations = [ + migrations.AlterField( + model_name='queue', + name='permission_name', + field=models.CharField(blank=True, editable=False, help_text='Name used in the django.contrib.auth permission system', max_length=72, null=True, verbose_name='Django auth permission name'), + ), + ] diff --git a/build/lib/helpdesk/migrations/0016_alter_model_options.py b/build/lib/helpdesk/migrations/0016_alter_model_options.py new file mode 100644 index 00000000..a265317a --- /dev/null +++ b/build/lib/helpdesk/migrations/0016_alter_model_options.py @@ -0,0 +1,43 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.10.2 on 2017-03-08 17:51 +from __future__ import unicode_literals + +from django.db import migrations + + +class Migration(migrations.Migration): + + dependencies = [ + ('helpdesk', '0015_expand_permission_name_size'), + ] + + operations = [ + migrations.AlterModelOptions( + name='attachment', + options={'ordering': ('filename',), 'verbose_name': 'Attachment', 'verbose_name_plural': 'Attachments'}, + ), + migrations.AlterModelOptions( + name='emailtemplate', + options={'ordering': ('template_name', 'locale'), 'verbose_name': 'e-mail template', 'verbose_name_plural': 'e-mail templates'}, + ), + migrations.AlterModelOptions( + name='followup', + options={'ordering': ('date',), 'verbose_name': 'Follow-up', 'verbose_name_plural': 'Follow-ups'}, + ), + migrations.AlterModelOptions( + name='kbcategory', + options={'ordering': ('title',), 'verbose_name': 'Knowledge base category', 'verbose_name_plural': 'Knowledge base categories'}, + ), + migrations.AlterModelOptions( + name='kbitem', + options={'ordering': ('title',), 'verbose_name': 'Knowledge base item', 'verbose_name_plural': 'Knowledge base items'}, + ), + migrations.AlterModelOptions( + name='presetreply', + options={'ordering': ('name',), 'verbose_name': 'Pre-set reply', 'verbose_name_plural': 'Pre-set replies'}, + ), + migrations.AlterUniqueTogether( + name='ticketcustomfieldvalue', + unique_together=set([('ticket', 'field')]), + ), + ] diff --git a/build/lib/helpdesk/migrations/0017_default_owner_on_delete_null.py b/build/lib/helpdesk/migrations/0017_default_owner_on_delete_null.py new file mode 100644 index 00000000..54591f64 --- /dev/null +++ b/build/lib/helpdesk/migrations/0017_default_owner_on_delete_null.py @@ -0,0 +1,23 @@ +# -*- coding: utf-8 -*- +# Generated by Django 1.11.2 on 2018-01-19 09:48 + +from __future__ import unicode_literals + +from django.conf import settings +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + + dependencies = [ + ('helpdesk', '0016_alter_model_options'), + ] + + operations = [ + migrations.AlterField( + model_name='queue', + name='default_owner', + field=models.ForeignKey(blank=True, null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='default_owner', to=settings.AUTH_USER_MODEL, verbose_name='Default owner'), + ), + ] diff --git a/build/lib/helpdesk/migrations/__init__.py b/build/lib/helpdesk/migrations/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/build/lib/helpdesk/models.py b/build/lib/helpdesk/models.py new file mode 100644 index 00000000..33829d56 --- /dev/null +++ b/build/lib/helpdesk/models.py @@ -0,0 +1,1502 @@ +""" +django-helpdesk - A Django powered ticket tracker for small enterprise. + +(c) Copyright 2008 Jutda. All Rights Reserved. See LICENSE for details. + +models.py - Model (and hence database) definitions. This is the core of the + helpdesk structure. +""" + +from __future__ import unicode_literals +from django.contrib.auth.models import Permission +from django.contrib.contenttypes.models import ContentType +from django.core.exceptions import ObjectDoesNotExist +from django.db import models +from django.conf import settings +from django.utils import timezone +from django.utils import six +from django.utils.translation import ugettext_lazy as _, ugettext +from django.utils.encoding import python_2_unicode_compatible +import re + + +@python_2_unicode_compatible +class Queue(models.Model): + """ + A queue is a collection of tickets into what would generally be business + areas or departments. + + For example, a company may have a queue for each Product they provide, or + a queue for each of Accounts, Pre-Sales, and Support. + + """ + + title = models.CharField( + _('Title'), + max_length=100, + ) + + slug = models.SlugField( + _('Slug'), + max_length=50, + unique=True, + help_text=_('This slug is used when building ticket ID\'s. Once set, ' + 'try not to change it or e-mailing may get messy.'), + ) + + email_address = models.EmailField( + _('E-Mail Address'), + blank=True, + null=True, + help_text=_('All outgoing e-mails for this queue will use this e-mail ' + 'address. If you use IMAP or POP3, this should be the e-mail ' + 'address for that mailbox.'), + ) + + locale = models.CharField( + _('Locale'), + max_length=10, + blank=True, + null=True, + help_text=_('Locale of this queue. All correspondence in this ' + 'queue will be in this language.'), + ) + + allow_public_submission = models.BooleanField( + _('Allow Public Submission?'), + blank=True, + default=False, + help_text=_('Should this queue be listed on the public submission form?'), + ) + + allow_email_submission = models.BooleanField( + _('Allow E-Mail Submission?'), + blank=True, + default=False, + help_text=_('Do you want to poll the e-mail box below for new ' + 'tickets?'), + ) + + escalate_days = models.IntegerField( + _('Escalation Days'), + blank=True, + null=True, + help_text=_('For tickets which are not held, how often do you wish to ' + 'increase their priority? Set to 0 for no escalation.'), + ) + + new_ticket_cc = models.CharField( + _('New Ticket CC Address'), + blank=True, + null=True, + max_length=200, + help_text=_('If an e-mail address is entered here, then it will ' + 'receive notification of all new tickets created for this queue. ' + 'Enter a comma between multiple e-mail addresses.'), + ) + + updated_ticket_cc = models.CharField( + _('Updated Ticket CC Address'), + blank=True, + null=True, + max_length=200, + help_text=_('If an e-mail address is entered here, then it will ' + 'receive notification of all activity (new tickets, closed ' + 'tickets, updates, reassignments, etc) for this queue. Separate ' + 'multiple addresses with a comma.'), + ) + + email_box_type = models.CharField( + _('E-Mail Box Type'), + max_length=5, + choices=(('pop3', _('POP 3')), ('imap', _('IMAP')), ('local', _('Local Directory'))), + blank=True, + null=True, + help_text=_('E-Mail server type for creating tickets automatically ' + 'from a mailbox - both POP3 and IMAP are supported, as well as ' + 'reading from a local directory.'), + ) + + email_box_host = models.CharField( + _('E-Mail Hostname'), + max_length=200, + blank=True, + null=True, + help_text=_('Your e-mail server address - either the domain name or ' + 'IP address. May be "localhost".'), + ) + + email_box_port = models.IntegerField( + _('E-Mail Port'), + blank=True, + null=True, + help_text=_('Port number to use for accessing e-mail. Default for ' + 'POP3 is "110", and for IMAP is "143". This may differ on some ' + 'servers. Leave it blank to use the defaults.'), + ) + + email_box_ssl = models.BooleanField( + _('Use SSL for E-Mail?'), + blank=True, + default=False, + help_text=_('Whether to use SSL for IMAP or POP3 - the default ports ' + 'when using SSL are 993 for IMAP and 995 for POP3.'), + ) + + email_box_user = models.CharField( + _('E-Mail Username'), + max_length=200, + blank=True, + null=True, + help_text=_('Username for accessing this mailbox.'), + ) + + email_box_pass = models.CharField( + _('E-Mail Password'), + max_length=200, + blank=True, + null=True, + help_text=_('Password for the above username'), + ) + + email_box_imap_folder = models.CharField( + _('IMAP Folder'), + max_length=100, + blank=True, + null=True, + help_text=_('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 your IMAP server into separate ' + 'folders. Default: INBOX.'), + ) + + email_box_local_dir = models.CharField( + _('E-Mail Local Directory'), + max_length=200, + blank=True, + null=True, + help_text=_('If using a local directory, what directory path do you ' + 'wish to poll for new email? ' + 'Example: /var/lib/mail/helpdesk/'), + ) + + permission_name = models.CharField( + _('Django auth permission name'), + max_length=72, # based on prepare_permission_name() pre-pending chars to slug + blank=True, + null=True, + editable=False, + help_text=_('Name used in the django.contrib.auth permission system'), + ) + + email_box_interval = models.IntegerField( + _('E-Mail Check Interval'), + help_text=_('How often do you wish to check this mailbox? (in Minutes)'), + blank=True, + null=True, + default='5', + ) + + email_box_last_check = models.DateTimeField( + blank=True, + null=True, + editable=False, + # This is updated by management/commands/get_mail.py. + ) + + socks_proxy_type = models.CharField( + _('Socks Proxy Type'), + max_length=8, + choices=(('socks4', _('SOCKS4')), ('socks5', _('SOCKS5'))), + blank=True, + null=True, + help_text=_('SOCKS4 or SOCKS5 allows you to proxy your connections through a SOCKS server.'), + ) + + socks_proxy_host = models.GenericIPAddressField( + _('Socks Proxy Host'), + blank=True, + null=True, + help_text=_('Socks proxy IP address. Default: 127.0.0.1'), + ) + + socks_proxy_port = models.IntegerField( + _('Socks Proxy Port'), + blank=True, + null=True, + help_text=_('Socks proxy port number. Default: 9150 (default TOR port)'), + ) + + logging_type = models.CharField( + _('Logging Type'), + max_length=5, + choices=( + ('none', _('None')), + ('debug', _('Debug')), + ('info', _('Information')), + ('warn', _('Warning')), + ('error', _('Error')), + ('crit', _('Critical')) + ), + blank=True, + null=True, + help_text=_('Set the default logging level. All messages at that ' + 'level or above will be logged to the directory set ' + 'below. If no level is set, logging will be disabled.'), + ) + + logging_dir = models.CharField( + _('Logging Directory'), + max_length=200, + blank=True, + null=True, + help_text=_('If logging is enabled, what directory should we use to ' + 'store log files for this queue? ' + 'If no directory is set, default to /var/log/helpdesk/'), + ) + + default_owner = models.ForeignKey( + settings.AUTH_USER_MODEL, + on_delete=models.SET_NULL, + related_name='default_owner', + blank=True, + null=True, + verbose_name=_('Default owner'), + ) + + def __str__(self): + return "%s" % self.title + + class Meta: + ordering = ('title',) + verbose_name = _('Queue') + verbose_name_plural = _('Queues') + + def _from_address(self): + """ + Short property to provide a sender address in SMTP format, + eg 'Name '. We do this so we can put a simple error message + in the sender name field, so hopefully the admin can see and fix it. + """ + if not self.email_address: + # must check if given in format "Foo " + default_email = re.match(".*<(?P.*@*.)>", settings.DEFAULT_FROM_EMAIL) + if default_email is not None: + # already in the right format, so just include it here + return u'NO QUEUE EMAIL ADDRESS DEFINED %s' % settings.DEFAULT_FROM_EMAIL + else: + return u'NO QUEUE EMAIL ADDRESS DEFINED <%s>' % settings.DEFAULT_FROM_EMAIL + else: + return u'%s <%s>' % (self.title, self.email_address) + from_address = property(_from_address) + + def prepare_permission_name(self): + """Prepare internally the codename for the permission and store it in permission_name. + :return: The codename that can be used to create a new Permission object. + """ + # Prepare the permission associated to this Queue + basename = "queue_access_%s" % self.slug + self.permission_name = "helpdesk.%s" % basename + return basename + + def save(self, *args, **kwargs): + if self.email_box_type == 'imap' and not self.email_box_imap_folder: + self.email_box_imap_folder = 'INBOX' + + if self.socks_proxy_type: + if not self.socks_proxy_host: + self.socks_proxy_host = '127.0.0.1' + if not self.socks_proxy_port: + self.socks_proxy_port = 9150 + else: + self.socks_proxy_host = None + self.socks_proxy_port = None + + if not self.email_box_port: + if self.email_box_type == 'imap' and self.email_box_ssl: + self.email_box_port = 993 + elif self.email_box_type == 'imap' and not self.email_box_ssl: + self.email_box_port = 143 + elif self.email_box_type == 'pop3' and self.email_box_ssl: + self.email_box_port = 995 + elif self.email_box_type == 'pop3' and not self.email_box_ssl: + self.email_box_port = 110 + + if not self.id: + # Prepare the permission codename and the permission + # (even if they are not needed with the current configuration) + basename = self.prepare_permission_name() + + Permission.objects.create( + name=_("Permission for queue: ") + self.title, + content_type=ContentType.objects.get_for_model(self.__class__), + codename=basename, + ) + + super(Queue, self).save(*args, **kwargs) + + def delete(self, *args, **kwargs): + permission_name = self.permission_name + super(Queue, self).delete(*args, **kwargs) + + # once the Queue is safely deleted, remove the permission (if exists) + if permission_name: + try: + p = Permission.objects.get(codename=permission_name[9:]) + p.delete() + except ObjectDoesNotExist: + pass + + +@python_2_unicode_compatible +class Ticket(models.Model): + """ + To allow a ticket to be entered as quickly as possible, only the + bare minimum fields are required. These basically allow us to + sort and manage the ticket. The user can always go back and + enter more information later. + + A good example of this is when a customer is on the phone, and + you want to give them a ticket ID as quickly as possible. You can + enter some basic info, save the ticket, give the customer the ID + and get off the phone, then add in further detail at a later time + (once the customer is not on the line). + + Note that assigned_to is optional - unassigned tickets are displayed on + the dashboard to prompt users to take ownership of them. + """ + + OPEN_STATUS = 1 + REOPENED_STATUS = 2 + RESOLVED_STATUS = 3 + CLOSED_STATUS = 4 + DUPLICATE_STATUS = 5 + + STATUS_CHOICES = ( + (OPEN_STATUS, _('Open')), + (REOPENED_STATUS, _('Reopened')), + (RESOLVED_STATUS, _('Resolved')), + (CLOSED_STATUS, _('Closed')), + (DUPLICATE_STATUS, _('Duplicate')), + ) + + PRIORITY_CHOICES = ( + (1, _('1. Critical')), + (2, _('2. High')), + (3, _('3. Normal')), + (4, _('4. Low')), + (5, _('5. Very Low')), + ) + + title = models.CharField( + _('Title'), + max_length=200, + ) + + queue = models.ForeignKey( + Queue, + on_delete=models.CASCADE, + verbose_name=_('Queue'), + ) + + created = models.DateTimeField( + _('Created'), + blank=True, + help_text=_('Date this ticket was first created'), + ) + + modified = models.DateTimeField( + _('Modified'), + blank=True, + help_text=_('Date this ticket was most recently changed.'), + ) + + submitter_email = models.EmailField( + _('Submitter E-Mail'), + blank=True, + null=True, + help_text=_('The submitter will receive an email for all public ' + 'follow-ups left for this task.'), + ) + + assigned_to = models.ForeignKey( + settings.AUTH_USER_MODEL, + on_delete=models.CASCADE, + related_name='assigned_to', + blank=True, + null=True, + verbose_name=_('Assigned to'), + ) + + status = models.IntegerField( + _('Status'), + choices=STATUS_CHOICES, + default=OPEN_STATUS, + ) + + on_hold = models.BooleanField( + _('On Hold'), + blank=True, + default=False, + help_text=_('If a ticket is on hold, it will not automatically be escalated.'), + ) + + description = models.TextField( + _('Description'), + blank=True, + null=True, + help_text=_('The content of the customers query.'), + ) + + resolution = models.TextField( + _('Resolution'), + blank=True, + null=True, + help_text=_('The resolution provided to the customer by our staff.'), + ) + + priority = models.IntegerField( + _('Priority'), + choices=PRIORITY_CHOICES, + default=3, + blank=3, + help_text=_('1 = Highest Priority, 5 = Low Priority'), + ) + + due_date = models.DateTimeField( + _('Due on'), + blank=True, + null=True, + ) + + last_escalation = models.DateTimeField( + blank=True, + null=True, + editable=False, + help_text=_('The date this ticket was last escalated - updated ' + 'automatically by management/commands/escalate_tickets.py.'), + ) + + def _get_assigned_to(self): + """ Custom property to allow us to easily print 'Unassigned' if a + ticket has no owner, or the users name if it's assigned. If the user + has a full name configured, we use that, otherwise their username. """ + if not self.assigned_to: + return _('Unassigned') + else: + if self.assigned_to.get_full_name(): + return self.assigned_to.get_full_name() + else: + return self.assigned_to.get_username() + get_assigned_to = property(_get_assigned_to) + + def _get_ticket(self): + """ A user-friendly ticket ID, which is a combination of ticket ID + and queue slug. This is generally used in e-mail subjects. """ + + return u"[%s]" % self.ticket_for_url + ticket = property(_get_ticket) + + def _get_ticket_for_url(self): + """ A URL-friendly ticket ID, used in links. """ + return u"%s-%s" % (self.queue.slug, self.id) + ticket_for_url = property(_get_ticket_for_url) + + def _get_priority_css_class(self): + """ + Return the boostrap class corresponding to the priority. + """ + if self.priority == 2: + return "warning" + elif self.priority == 1: + return "danger" + elif self.priority == 5: + return "success" + else: + return "" + get_priority_css_class = property(_get_priority_css_class) + + def _get_status(self): + """ + Displays the ticket status, with an "On Hold" message if needed. + """ + held_msg = '' + if self.on_hold: + held_msg = _(' - On Hold') + dep_msg = '' + if not self.can_be_resolved: + dep_msg = _(' - Open dependencies') + return u'%s%s%s' % (self.get_status_display(), held_msg, dep_msg) + get_status = property(_get_status) + + def _get_ticket_url(self): + """ + Returns a publicly-viewable URL for this ticket, used when giving + a URL to the submitter of a ticket. + """ + from django.contrib.sites.models import Site + from django.core.exceptions import ImproperlyConfigured + from django.urls import reverse + try: + site = Site.objects.get_current() + except ImproperlyConfigured: + site = Site(domain='configure-django-sites.com') + return u"http://%s%s?ticket=%s&email=%s" % ( + site.domain, + reverse('helpdesk:public_view'), + self.ticket_for_url, + self.submitter_email + ) + ticket_url = property(_get_ticket_url) + + def _get_staff_url(self): + """ + Returns a staff-only URL for this ticket, used when giving a URL to + a staff member (in emails etc) + """ + from django.contrib.sites.models import Site + from django.core.exceptions import ImproperlyConfigured + from django.urls import reverse + try: + site = Site.objects.get_current() + except ImproperlyConfigured: + site = Site(domain='configure-django-sites.com') + return u"http://%s%s" % ( + site.domain, + reverse('helpdesk:view', + args=[self.id]) + ) + staff_url = property(_get_staff_url) + + def _can_be_resolved(self): + """ + Returns a boolean. + True = any dependencies are resolved + False = There are non-resolved dependencies + """ + OPEN_STATUSES = (Ticket.OPEN_STATUS, Ticket.REOPENED_STATUS) + return TicketDependency.objects.filter(ticket=self).filter( + depends_on__status__in=OPEN_STATUSES).count() == 0 + can_be_resolved = property(_can_be_resolved) + + class Meta: + get_latest_by = "created" + ordering = ('id',) + verbose_name = _('Ticket') + verbose_name_plural = _('Tickets') + + def __str__(self): + return '%s %s' % (self.id, self.title) + + def get_absolute_url(self): + from django.urls import reverse + return reverse('helpdesk:view', args=(self.id,)) + + def save(self, *args, **kwargs): + if not self.id: + # This is a new ticket as no ID yet exists. + self.created = timezone.now() + + if not self.priority: + self.priority = 3 + + self.modified = timezone.now() + + super(Ticket, self).save(*args, **kwargs) + + @staticmethod + def queue_and_id_from_query(query): + # Apply the opposite logic here compared to self._get_ticket_for_url + # Ensure that queues with '-' in them will work + parts = query.split('-') + queue = '-'.join(parts[0:-1]) + return queue, parts[-1] + + +class FollowUpManager(models.Manager): + + def private_followups(self): + return self.filter(public=False) + + def public_followups(self): + return self.filter(public=True) + + +@python_2_unicode_compatible +class FollowUp(models.Model): + """ + A FollowUp is a comment and/or change to a ticket. We keep a simple + title, the comment entered by the user, and the new status of a ticket + to enable easy flagging of details on the view-ticket page. + + The title is automatically generated at save-time, based on what action + the user took. + + Tickets that aren't public are never shown to or e-mailed to the submitter, + although all staff can see them. + """ + + ticket = models.ForeignKey( + Ticket, + on_delete=models.CASCADE, + verbose_name=_('Ticket'), + ) + + date = models.DateTimeField( + _('Date'), + default=timezone.now + ) + + title = models.CharField( + _('Title'), + max_length=200, + blank=True, + null=True, + ) + + comment = models.TextField( + _('Comment'), + blank=True, + null=True, + ) + + public = models.BooleanField( + _('Public'), + blank=True, + default=False, + help_text=_('Public tickets are viewable by the submitter and all ' + 'staff, but non-public tickets can only be seen by staff.'), + ) + + user = models.ForeignKey( + settings.AUTH_USER_MODEL, + on_delete=models.CASCADE, + blank=True, + null=True, + verbose_name=_('User'), + ) + + new_status = models.IntegerField( + _('New Status'), + choices=Ticket.STATUS_CHOICES, + blank=True, + null=True, + help_text=_('If the status was changed, what was it changed to?'), + ) + + objects = FollowUpManager() + + class Meta: + ordering = ('date',) + verbose_name = _('Follow-up') + verbose_name_plural = _('Follow-ups') + + def __str__(self): + return '%s' % self.title + + def get_absolute_url(self): + return u"%s#followup%s" % (self.ticket.get_absolute_url(), self.id) + + def save(self, *args, **kwargs): + t = self.ticket + t.modified = timezone.now() + t.save() + super(FollowUp, self).save(*args, **kwargs) + + +@python_2_unicode_compatible +class TicketChange(models.Model): + """ + For each FollowUp, any changes to the parent ticket (eg Title, Priority, + etc) are tracked here for display purposes. + """ + + followup = models.ForeignKey( + FollowUp, + on_delete=models.CASCADE, + verbose_name=_('Follow-up'), + ) + + field = models.CharField( + _('Field'), + max_length=100, + ) + + old_value = models.TextField( + _('Old Value'), + blank=True, + null=True, + ) + + new_value = models.TextField( + _('New Value'), + blank=True, + null=True, + ) + + def __str__(self): + out = '%s ' % self.field + if not self.new_value: + out += ugettext('removed') + elif not self.old_value: + out += ugettext('set to %s') % self.new_value + else: + out += ugettext('changed from "%(old_value)s" to "%(new_value)s"') % { + 'old_value': self.old_value, + 'new_value': self.new_value + } + return out + + class Meta: + verbose_name = _('Ticket change') + verbose_name_plural = _('Ticket changes') + + +def attachment_path(instance, filename): + """ + Provide a file path that will help prevent files being overwritten, by + putting attachments in a folder off attachments for ticket/followup_id/. + """ + import os + os.umask(0) + path = 'helpdesk/attachments/%s/%s' % (instance.followup.ticket.ticket_for_url, instance.followup.id) + att_path = os.path.join(settings.MEDIA_ROOT, path) + if settings.DEFAULT_FILE_STORAGE == "django.core.files.storage.FileSystemStorage": + if not os.path.exists(att_path): + os.makedirs(att_path, 0o777) + return os.path.join(path, filename) + + +@python_2_unicode_compatible +class Attachment(models.Model): + """ + Represents a file attached to a follow-up. This could come from an e-mail + attachment, or it could be uploaded via the web interface. + """ + + followup = models.ForeignKey( + FollowUp, + on_delete=models.CASCADE, + verbose_name=_('Follow-up'), + ) + + file = models.FileField( + _('File'), + upload_to=attachment_path, + max_length=1000, + ) + + filename = models.CharField( + _('Filename'), + max_length=1000, + ) + + mime_type = models.CharField( + _('MIME Type'), + max_length=255, + ) + + size = models.IntegerField( + _('Size'), + help_text=_('Size of this file in bytes'), + ) + + def __str__(self): + return '%s' % self.filename + + class Meta: + ordering = ('filename',) + verbose_name = _('Attachment') + verbose_name_plural = _('Attachments') + + +@python_2_unicode_compatible +class PreSetReply(models.Model): + """ + We can allow the admin to define a number of pre-set replies, used to + simplify the sending of updates and resolutions. These are basically Django + templates with a limited context - however if you wanted to get crafy it would + be easy to write a reply that displays ALL updates in hierarchical order etc + with use of for loops over {{ ticket.followup_set.all }} and friends. + + When replying to a ticket, the user can select any reply set for the current + queue, and the body text is fetched via AJAX. + """ + class Meta: + ordering = ('name',) + verbose_name = _('Pre-set reply') + verbose_name_plural = _('Pre-set replies') + + queues = models.ManyToManyField( + Queue, + blank=True, + help_text=_('Leave blank to allow this reply to be used for all ' + 'queues, or select those queues you wish to limit this reply to.'), + ) + + name = models.CharField( + _('Name'), + max_length=100, + help_text=_('Only used to assist users with selecting a reply - not ' + 'shown to the user.'), + ) + + body = models.TextField( + _('Body'), + help_text=_('Context available: {{ ticket }} - ticket object (eg ' + '{{ ticket.title }}); {{ queue }} - The queue; and {{ user }} ' + '- the current user.'), + ) + + def __str__(self): + return '%s' % self.name + + +@python_2_unicode_compatible +class EscalationExclusion(models.Model): + """ + An 'EscalationExclusion' lets us define a date on which escalation should + not happen, for example a weekend or public holiday. + + You may also have a queue that is only used on one day per week. + + To create these on a regular basis, check out the README file for an + example cronjob that runs 'create_escalation_exclusions.py'. + """ + + queues = models.ManyToManyField( + Queue, + blank=True, + help_text=_('Leave blank for this exclusion to be applied to all queues, ' + 'or select those queues you wish to exclude with this entry.'), + ) + + name = models.CharField( + _('Name'), + max_length=100, + ) + + date = models.DateField( + _('Date'), + help_text=_('Date on which escalation should not happen'), + ) + + def __str__(self): + return '%s' % self.name + + class Meta: + verbose_name = _('Escalation exclusion') + verbose_name_plural = _('Escalation exclusions') + + +@python_2_unicode_compatible +class EmailTemplate(models.Model): + """ + Since these are more likely to be changed than other templates, we store + them in the database. + + This means that an admin can change email templates without having to have + access to the filesystem. + """ + + template_name = models.CharField( + _('Template Name'), + max_length=100, + ) + + subject = models.CharField( + _('Subject'), + max_length=100, + help_text=_('This will be prefixed with "[ticket.ticket] ticket.title"' + '. We recommend something simple such as "(Updated") or "(Closed)"' + ' - the same context is available as in plain_text, below.'), + ) + + heading = models.CharField( + _('Heading'), + max_length=100, + help_text=_('In HTML e-mails, this will be the heading at the top of ' + 'the email - the same context is available as in plain_text, ' + 'below.'), + ) + + plain_text = models.TextField( + _('Plain Text'), + help_text=_('The context available to you includes {{ ticket }}, ' + '{{ queue }}, and depending on the time of the call: ' + '{{ resolution }} or {{ comment }}.'), + ) + + html = models.TextField( + _('HTML'), + help_text=_('The same context is available here as in plain_text, above.'), + ) + + locale = models.CharField( + _('Locale'), + max_length=10, + blank=True, + null=True, + help_text=_('Locale of this template.'), + ) + + def __str__(self): + return '%s' % self.template_name + + class Meta: + ordering = ('template_name', 'locale') + verbose_name = _('e-mail template') + verbose_name_plural = _('e-mail templates') + + +@python_2_unicode_compatible +class KBCategory(models.Model): + """ + Lets help users help themselves: the Knowledge Base is a categorised + listing of questions & answers. + """ + + title = models.CharField( + _('Title'), + max_length=100, + ) + + slug = models.SlugField( + _('Slug'), + ) + + description = models.TextField( + _('Description'), + ) + + def __str__(self): + return '%s' % self.title + + class Meta: + ordering = ('title',) + verbose_name = _('Knowledge base category') + verbose_name_plural = _('Knowledge base categories') + + def get_absolute_url(self): + from django.urls import reverse + return reverse('helpdesk:kb_category', kwargs={'slug': self.slug}) + + +@python_2_unicode_compatible +class KBItem(models.Model): + """ + An item within the knowledgebase. Very straightforward question/answer + style system. + """ + voted_by= models.ManyToManyField(settings.AUTH_USER_MODEL) + category = models.ForeignKey( + KBCategory, + on_delete=models.CASCADE, + verbose_name=_('Category'), + ) + + title = models.CharField( + _('Title'), + max_length=100, + ) + + question = models.TextField( + _('Question'), + ) + + answer = models.TextField( + _('Answer'), + ) + + votes = models.IntegerField( + _('Votes'), + help_text=_('Total number of votes cast for this item'), + default=0, + ) + + recommendations = models.IntegerField( + _('Positive Votes'), + help_text=_('Number of votes for this item which were POSITIVE.'), + default=0, + ) + + last_updated = models.DateTimeField( + _('Last Updated'), + help_text=_('The date on which this question was most recently changed.'), + blank=True, + ) + + def save(self, *args, **kwargs): + if not self.last_updated: + self.last_updated = timezone.now() + return super(KBItem, self).save(*args, **kwargs) + + def _score(self): + if self.votes > 0: + return int(self.recommendations / self.votes) + else: + return _('Unrated') + score = property(_score) + + def __str__(self): + return '%s' % self.title + + class Meta: + ordering = ('title',) + verbose_name = _('Knowledge base item') + verbose_name_plural = _('Knowledge base items') + + def get_absolute_url(self): + from django.urls import reverse + return reverse('helpdesk:kb_item', args=(self.id,)) + + +@python_2_unicode_compatible +class SavedSearch(models.Model): + """ + Allow a user to save a ticket search, eg their filtering and sorting + options, and optionally share it with other users. This lets people + easily create a set of commonly-used filters, such as: + * My tickets waiting on me + * My tickets waiting on submitter + * My tickets in 'Priority Support' queue with priority of 1 + * All tickets containing the word 'billing'. + etc... + """ + user = models.ForeignKey( + settings.AUTH_USER_MODEL, + on_delete=models.CASCADE, + verbose_name=_('User'), + ) + + title = models.CharField( + _('Query Name'), + max_length=100, + help_text=_('User-provided name for this query'), + ) + + shared = models.BooleanField( + _('Shared With Other Users?'), + blank=True, + default=False, + help_text=_('Should other users see this query?'), + ) + + query = models.TextField( + _('Search Query'), + help_text=_('Pickled query object. Be wary changing this.'), + ) + + def __str__(self): + if self.shared: + return '%s (*)' % self.title + else: + return '%s' % self.title + + class Meta: + verbose_name = _('Saved search') + verbose_name_plural = _('Saved searches') + + +@python_2_unicode_compatible +class UserSettings(models.Model): + """ + A bunch of user-specific settings that we want to be able to define, such + as notification preferences and other things that should probably be + configurable. + + We should always refer to user.usersettings_helpdesk.settings['setting_name']. + """ + + user = models.OneToOneField( + settings.AUTH_USER_MODEL, + on_delete=models.CASCADE, + related_name="usersettings_helpdesk") + + settings_pickled = models.TextField( + _('Settings Dictionary'), + help_text=_('This is a base64-encoded representation of a pickled Python dictionary. ' + 'Do not change this field via the admin.'), + blank=True, + null=True, + ) + + def _set_settings(self, data): + # data should always be a Python dictionary. + try: + import pickle + except ImportError: + import cPickle as pickle + from helpdesk.lib import b64encode + if six.PY2: + self.settings_pickled = b64encode(pickle.dumps(data)) + else: + self.settings_pickled = b64encode(pickle.dumps(data)).decode() + + def _get_settings(self): + # return a python dictionary representing the pickled data. + try: + import pickle + except ImportError: + import cPickle as pickle + from helpdesk.lib import b64decode + try: + if six.PY2: + return pickle.loads(b64decode(str(self.settings_pickled))) + else: + return pickle.loads(b64decode(self.settings_pickled.encode('utf-8'))) + except pickle.UnpicklingError: + return {} + + settings = property(_get_settings, _set_settings) + + def __str__(self): + return 'Preferences for %s' % self.user + + class Meta: + verbose_name = _('User Setting') + verbose_name_plural = _('User Settings') + + +def create_usersettings(sender, instance, created, **kwargs): + """ + Helper function to create UserSettings instances as + required, eg when we first create the UserSettings database + table via 'syncdb' or when we save a new user. + + If we end up with users with no UserSettings, then we get horrible + 'DoesNotExist: UserSettings matching query does not exist.' errors. + """ + from helpdesk.settings import DEFAULT_USER_SETTINGS + if created: + UserSettings.objects.create(user=instance, settings=DEFAULT_USER_SETTINGS) + + +models.signals.post_save.connect(create_usersettings, sender=settings.AUTH_USER_MODEL) + + +@python_2_unicode_compatible +class IgnoreEmail(models.Model): + """ + This model lets us easily ignore e-mails from certain senders when + processing IMAP and POP3 mailboxes, eg mails from postmaster or from + known trouble-makers. + """ + class Meta: + verbose_name = _('Ignored e-mail address') + verbose_name_plural = _('Ignored e-mail addresses') + + queues = models.ManyToManyField( + Queue, + blank=True, + help_text=_('Leave blank for this e-mail to be ignored on all queues, ' + 'or select those queues you wish to ignore this e-mail for.'), + ) + + name = models.CharField( + _('Name'), + max_length=100, + ) + + date = models.DateField( + _('Date'), + help_text=_('Date on which this e-mail address was added'), + blank=True, + editable=False + ) + + email_address = models.CharField( + _('E-Mail Address'), + max_length=150, + help_text=_('Enter a full e-mail address, or portions with ' + 'wildcards, eg *@domain.com or postmaster@*.'), + ) + + keep_in_mailbox = models.BooleanField( + _('Save Emails in Mailbox?'), + blank=True, + default=False, + help_text=_('Do you want to save emails from this address in the mailbox? ' + 'If this is unticked, emails from this address will be deleted.'), + ) + + def __str__(self): + return '%s' % self.name + + def save(self, *args, **kwargs): + if not self.date: + self.date = timezone.now() + return super(IgnoreEmail, self).save(*args, **kwargs) + + def queue_list(self): + """Return a list of the queues this IgnoreEmail applies to. + If this IgnoreEmail applies to ALL queues, return '*'. + """ + queues = self.queues.all().order_by('title') + if len(queues) == 0: + return '*' + else: + return ', '.join([str(q) for q in queues]) + + def test(self, email): + """ + Possible situations: + 1. Username & Domain both match + 2. Username is wildcard, domain matches + 3. Username matches, domain is wildcard + 4. username & domain are both wildcards + 5. Other (no match) + + 1-4 return True, 5 returns False. + """ + + own_parts = self.email_address.split("@") + email_parts = email.split("@") + + if self.email_address == email or \ + own_parts[0] == "*" and own_parts[1] == email_parts[1] or \ + own_parts[1] == "*" and own_parts[0] == email_parts[0] or \ + own_parts[0] == "*" and own_parts[1] == "*": + return True + else: + return False + + +@python_2_unicode_compatible +class TicketCC(models.Model): + """ + Often, there are people who wish to follow a ticket who aren't the + person who originally submitted it. This model provides a way for those + people to follow a ticket. + + In this circumstance, a 'person' could be either an e-mail address or + an existing system user. + """ + + ticket = models.ForeignKey( + Ticket, + on_delete=models.CASCADE, + verbose_name=_('Ticket'), + ) + + user = models.ForeignKey( + settings.AUTH_USER_MODEL, + on_delete=models.CASCADE, + blank=True, + null=True, + help_text=_('User who wishes to receive updates for this ticket.'), + verbose_name=_('User'), + ) + + email = models.EmailField( + _('E-Mail Address'), + blank=True, + null=True, + help_text=_('For non-user followers, enter their e-mail address'), + ) + + can_view = models.BooleanField( + _('Can View Ticket?'), + blank=True, + default=False, + help_text=_('Can this CC login to view the ticket details?'), + ) + + can_update = models.BooleanField( + _('Can Update Ticket?'), + blank=True, + default=False, + help_text=_('Can this CC login and update the ticket?'), + ) + + def _email_address(self): + if self.user and self.user.email is not None: + return self.user.email + else: + return self.email + email_address = property(_email_address) + + def _display(self): + if self.user: + return self.user + else: + return self.email + display = property(_display) + + def __str__(self): + return '%s for %s' % (self.display, self.ticket.title) + + +class CustomFieldManager(models.Manager): + + def get_queryset(self): + return super(CustomFieldManager, self).get_queryset().order_by('ordering') + + +@python_2_unicode_compatible +class CustomField(models.Model): + """ + Definitions for custom fields that are glued onto each ticket. + """ + + name = models.SlugField( + _('Field Name'), + help_text=_('As used in the database and behind the scenes. ' + 'Must be unique and consist of only lowercase letters with no punctuation.'), + unique=True, + ) + + label = models.CharField( + _('Label'), + max_length=30, + help_text=_('The display label for this field'), + ) + + help_text = models.TextField( + _('Help Text'), + help_text=_('Shown to the user when editing the ticket'), + blank=True, + null=True + ) + + DATA_TYPE_CHOICES = ( + ('varchar', _('Character (single line)')), + ('text', _('Text (multi-line)')), + ('integer', _('Integer')), + ('decimal', _('Decimal')), + ('list', _('List')), + ('boolean', _('Boolean (checkbox yes/no)')), + ('date', _('Date')), + ('time', _('Time')), + ('datetime', _('Date & Time')), + ('email', _('E-Mail Address')), + ('url', _('URL')), + ('ipaddress', _('IP Address')), + ('slug', _('Slug')), + ) + + data_type = models.CharField( + _('Data Type'), + max_length=100, + help_text=_('Allows you to restrict the data entered into this field'), + choices=DATA_TYPE_CHOICES, + ) + + max_length = models.IntegerField( + _('Maximum Length (characters)'), + blank=True, + null=True, + ) + + decimal_places = models.IntegerField( + _('Decimal Places'), + help_text=_('Only used for decimal fields'), + blank=True, + null=True, + ) + + empty_selection_list = models.BooleanField( + _('Add empty first choice to List?'), + default=False, + help_text=_('Only for List: adds an empty first entry to the choices list, ' + 'which enforces that the user makes an active choice.'), + ) + + list_values = models.TextField( + _('List Values'), + help_text=_('For list fields only. Enter one option per line.'), + blank=True, + null=True, + ) + + ordering = models.IntegerField( + _('Ordering'), + help_text=_('Lower numbers are displayed first; higher numbers are listed later'), + blank=True, + null=True, + ) + + def _choices_as_array(self): + from django.utils.six 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?'), + help_text=_('Does the user have to enter a value for this field?'), + default=False, + ) + + staff_only = models.BooleanField( + _('Staff Only?'), + help_text=_('If this is ticked, then the public submission form ' + 'will NOT show this field'), + default=False, + ) + + objects = CustomFieldManager() + + def __str__(self): + return '%s' % self.name + + class Meta: + verbose_name = _('Custom field') + verbose_name_plural = _('Custom fields') + + +@python_2_unicode_compatible +class TicketCustomFieldValue(models.Model): + ticket = models.ForeignKey( + Ticket, + on_delete=models.CASCADE, + verbose_name=_('Ticket'), + ) + + field = models.ForeignKey( + CustomField, + on_delete=models.CASCADE, + verbose_name=_('Field'), + ) + + value = models.TextField(blank=True, null=True) + + def __str__(self): + return '%s / %s' % (self.ticket, self.field) + + class Meta: + unique_together = (('ticket', 'field'),) + verbose_name = _('Ticket custom field value') + verbose_name_plural = _('Ticket custom field values') + + +@python_2_unicode_compatible +class TicketDependency(models.Model): + """ + The ticket identified by `ticket` cannot be resolved until the ticket in `depends_on` has been resolved. + To help enforce this, a helper function `can_be_resolved` on each Ticket instance checks that + these have all been resolved. + """ + class Meta: + unique_together = (('ticket', 'depends_on'),) + verbose_name = _('Ticket dependency') + verbose_name_plural = _('Ticket dependencies') + + ticket = models.ForeignKey( + Ticket, + on_delete=models.CASCADE, + verbose_name=_('Ticket'), + related_name='ticketdependency', + ) + + depends_on = models.ForeignKey( + Ticket, + on_delete=models.CASCADE, + verbose_name=_('Depends On Ticket'), + related_name='depends_on', + ) + + def __str__(self): + return '%s / %s' % (self.ticket, self.depends_on) diff --git a/build/lib/helpdesk/poll_helpdesk_email_queues.sh b/build/lib/helpdesk/poll_helpdesk_email_queues.sh new file mode 100644 index 00000000..65e7d1b8 --- /dev/null +++ b/build/lib/helpdesk/poll_helpdesk_email_queues.sh @@ -0,0 +1,18 @@ +#!/bin/bash + + +# don't forget to add this script to the /etc/crontab: +# +# */1 * * * * username /home/username/django/project/poll_helpdesk_email_queues.sh >> /tmp/foo.log 2>&1 + +# set your django and project paths here +PATHTODJANGO="/home/username/django/libraries/lib/python" +PATHTOPROJECT="/home/username/django/project/" + + +export PYTHONPATH=$PYTHONPATH:$PATHTODJANGO:$PATHTOPROJECT: + +cd $PATHTOPROJECT +/usr/bin/python manage.py get_email + + diff --git a/build/lib/helpdesk/settings.py b/build/lib/helpdesk/settings.py new file mode 100644 index 00000000..cc6e6349 --- /dev/null +++ b/build/lib/helpdesk/settings.py @@ -0,0 +1,151 @@ +""" +Default settings for django-helpdesk. + +""" + +from django.conf import settings +from django.core.exceptions import ImproperlyConfigured + +try: + DEFAULT_USER_SETTINGS = settings.HELPDESK_DEFAULT_SETTINGS +except AttributeError: + DEFAULT_USER_SETTINGS = None + +if not isinstance(DEFAULT_USER_SETTINGS, dict): + DEFAULT_USER_SETTINGS = { + 'use_email_as_submitter': True, + 'email_on_ticket_assign': True, + 'email_on_ticket_change': True, + 'login_view_ticketlist': True, + 'tickets_per_page': 25 + } + + +HAS_TAG_SUPPORT = False + +########################################## +# generic options - visible on all pages # +########################################## + +# redirect to login page instead of the default homepage when users visits "/"? +HELPDESK_REDIRECT_TO_LOGIN_BY_DEFAULT = getattr(settings, + 'HELPDESK_REDIRECT_TO_LOGIN_BY_DEFAULT', + False) + +# raises a 404 to anon users. It's like it was invisible +HELPDESK_ANON_ACCESS_RAISES_404 = getattr(settings, + 'HELPDESK_ANON_ACCESS_RAISES_404', + False) + +# show knowledgebase links? +HELPDESK_KB_ENABLED = getattr(settings, 'HELPDESK_KB_ENABLED', True) + +# show extended navigation by default, to all users, irrespective of staff status? +HELPDESK_NAVIGATION_ENABLED = getattr(settings, 'HELPDESK_NAVIGATION_ENABLED', False) + +# use public CDNs to serve jquery and other javascript by default? +# otherwise, use built-in static copy +HELPDESK_USE_CDN = getattr(settings, 'HELPDESK_USE_CDN', False) + +# show dropdown list of languages that ticket comments can be translated into? +HELPDESK_TRANSLATE_TICKET_COMMENTS = getattr(settings, + 'HELPDESK_TRANSLATE_TICKET_COMMENTS', + False) + +# list of languages to offer. if set to false, +# all default google translate languages will be shown. +HELPDESK_TRANSLATE_TICKET_COMMENTS_LANG = getattr(settings, + 'HELPDESK_TRANSLATE_TICKET_COMMENTS_LANG', + ["en", "de", "es", "fr", "it", "ru"]) + +# show link to 'change password' on 'User Settings' page? +HELPDESK_SHOW_CHANGE_PASSWORD = getattr(settings, 'HELPDESK_SHOW_CHANGE_PASSWORD', False) + +# allow user to override default layout for 'followups' - work in progress. +HELPDESK_FOLLOWUP_MOD = getattr(settings, 'HELPDESK_FOLLOWUP_MOD', False) + +# auto-subscribe user to ticket if (s)he responds to a ticket? +HELPDESK_AUTO_SUBSCRIBE_ON_TICKET_RESPONSE = getattr(settings, + 'HELPDESK_AUTO_SUBSCRIBE_ON_TICKET_RESPONSE', + False) + + +############################ +# options for public pages # +############################ + +# show 'view a ticket' section on public page? +HELPDESK_VIEW_A_TICKET_PUBLIC = getattr(settings, 'HELPDESK_VIEW_A_TICKET_PUBLIC', True) + +# show 'submit a ticket' section on public page? +HELPDESK_SUBMIT_A_TICKET_PUBLIC = getattr(settings, 'HELPDESK_SUBMIT_A_TICKET_PUBLIC', True) + + +################################### +# options for update_ticket views # +################################### + +# allow non-staff users to interact with tickets? +# this will also change how 'staff_member_required' +# in staff.py will be defined. +HELPDESK_ALLOW_NON_STAFF_TICKET_UPDATE = getattr(settings, + 'HELPDESK_ALLOW_NON_STAFF_TICKET_UPDATE', + False) + +# show edit buttons in ticket follow ups. +HELPDESK_SHOW_EDIT_BUTTON_FOLLOW_UP = getattr(settings, + 'HELPDESK_SHOW_EDIT_BUTTON_FOLLOW_UP', + True) + +# show delete buttons in ticket follow ups if user is 'superuser' +HELPDESK_SHOW_DELETE_BUTTON_SUPERUSER_FOLLOW_UP = getattr( + settings, 'HELPDESK_SHOW_DELETE_BUTTON_SUPERUSER_FOLLOW_UP', False) + +# make all updates public by default? this will hide the 'is this update public' checkbox +HELPDESK_UPDATE_PUBLIC_DEFAULT = getattr(settings, 'HELPDESK_UPDATE_PUBLIC_DEFAULT', False) + +# only show staff users in ticket owner drop-downs +HELPDESK_STAFF_ONLY_TICKET_OWNERS = getattr(settings, 'HELPDESK_STAFF_ONLY_TICKET_OWNERS', False) + +# only show staff users in ticket cc drop-down +HELPDESK_STAFF_ONLY_TICKET_CC = getattr(settings, 'HELPDESK_STAFF_ONLY_TICKET_CC', False) + +# allow the subject to have a configurable template. +HELPDESK_EMAIL_SUBJECT_TEMPLATE = getattr( + settings, 'HELPDESK_EMAIL_SUBJECT_TEMPLATE', + "{{ ticket.ticket }} {{ ticket.title|safe }} %(subject)s") +# since django-helpdesk may not work correctly without the ticket ID +# in the subject, let's do a check for it quick: +if HELPDESK_EMAIL_SUBJECT_TEMPLATE.find("ticket.ticket") < 0: + raise ImproperlyConfigured + +# default fallback locale when queue locale not found +HELPDESK_EMAIL_FALLBACK_LOCALE = getattr(settings, 'HELPDESK_EMAIL_FALLBACK_LOCALE', 'en') + + +######################################## +# options for staff.create_ticket view # +######################################## + +# hide the 'assigned to' / 'Case owner' field from the 'create_ticket' view? +HELPDESK_CREATE_TICKET_HIDE_ASSIGNED_TO = getattr( + settings, 'HELPDESK_CREATE_TICKET_HIDE_ASSIGNED_TO', False) + + +################# +# email options # +################# + +# default Queue email submission settings +QUEUE_EMAIL_BOX_TYPE = getattr(settings, 'QUEUE_EMAIL_BOX_TYPE', None) +QUEUE_EMAIL_BOX_SSL = getattr(settings, 'QUEUE_EMAIL_BOX_SSL', None) +QUEUE_EMAIL_BOX_HOST = getattr(settings, 'QUEUE_EMAIL_BOX_HOST', None) +QUEUE_EMAIL_BOX_USER = getattr(settings, 'QUEUE_EMAIL_BOX_USER', None) +QUEUE_EMAIL_BOX_PASSWORD = getattr(settings, 'QUEUE_EMAIL_BOX_PASSWORD', None) + +# only process emails with a valid tracking ID? (throws away all other mail) +QUEUE_EMAIL_BOX_UPDATE_ONLY = getattr(settings, 'QUEUE_EMAIL_BOX_UPDATE_ONLY', False) + +# only allow users to access queues that they are members of? +HELPDESK_ENABLE_PER_QUEUE_STAFF_PERMISSION = getattr( + settings, 'HELPDESK_ENABLE_PER_QUEUE_STAFF_PERMISSION', False) diff --git a/build/lib/helpdesk/static/helpdesk/dist/css/sb-admin-2.css b/build/lib/helpdesk/static/helpdesk/dist/css/sb-admin-2.css new file mode 100644 index 00000000..ef5e53b6 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/dist/css/sb-admin-2.css @@ -0,0 +1,434 @@ +/*! + * Start Bootstrap - SB Admin 2 v3.3.7+1 (http://startbootstrap.com/template-overviews/sb-admin-2) + * Copyright 2013-2016 Start Bootstrap + * Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap/blob/gh-pages/LICENSE) + */ +body { + background-color: #f8f8f8; +} +#wrapper { + width: 100%; +} +#page-wrapper { + padding: 0 15px; + min-height: 568px; + background-color: white; +} +@media (min-width: 768px) { + #page-wrapper { + position: inherit; + margin: 0 0 0 250px; + padding: 0 30px; + border-left: 1px solid #e7e7e7; + } +} +.navbar-top-links { + margin-right: 0; +} +.navbar-top-links li { + display: inline-block; +} +.navbar-top-links li:last-child { + margin-right: 15px; +} +.navbar-top-links li a { + padding: 15px; + min-height: 50px; +} +.navbar-top-links .dropdown-menu li { + display: block; +} +.navbar-top-links .dropdown-menu li:last-child { + margin-right: 0; +} +.navbar-top-links .dropdown-menu li a { + padding: 3px 20px; + min-height: 0; +} +.navbar-top-links .dropdown-menu li a div { + white-space: normal; +} +.navbar-top-links .dropdown-messages, +.navbar-top-links .dropdown-tasks, +.navbar-top-links .dropdown-alerts { + width: 310px; + min-width: 0; +} +.navbar-top-links .dropdown-messages { + margin-left: 5px; +} +.navbar-top-links .dropdown-tasks { + margin-left: -59px; +} +.navbar-top-links .dropdown-alerts { + margin-left: -123px; +} +.navbar-top-links .dropdown-user { + right: 0; + left: auto; +} +.sidebar .sidebar-nav.navbar-collapse { + padding-left: 0; + padding-right: 0; +} +.sidebar .sidebar-search { + padding: 15px; +} +.sidebar ul li { + border-bottom: 1px solid #e7e7e7; +} +.sidebar ul li a.active { + background-color: #eeeeee; +} +.sidebar .arrow { + float: right; +} +.sidebar .fa.arrow:before { + content: "\f104"; +} +.sidebar .active > a > .fa.arrow:before { + content: "\f107"; +} +.sidebar .nav-second-level li, +.sidebar .nav-third-level li { + border-bottom: none !important; +} +.sidebar .nav-second-level li a { + padding-left: 37px; +} +.sidebar .nav-third-level li a { + padding-left: 52px; +} +@media (min-width: 768px) { + .sidebar { + z-index: 1; + position: absolute; + width: 250px; + margin-top: 51px; + } + .navbar-top-links .dropdown-messages, + .navbar-top-links .dropdown-tasks, + .navbar-top-links .dropdown-alerts { + margin-left: auto; + } +} +.btn-outline { + color: inherit; + background-color: transparent; + transition: all .5s; +} +.btn-primary.btn-outline { + color: #428bca; +} +.btn-success.btn-outline { + color: #5cb85c; +} +.btn-info.btn-outline { + color: #5bc0de; +} +.btn-warning.btn-outline { + color: #f0ad4e; +} +.btn-danger.btn-outline { + color: #d9534f; +} +.btn-primary.btn-outline:hover, +.btn-success.btn-outline:hover, +.btn-info.btn-outline:hover, +.btn-warning.btn-outline:hover, +.btn-danger.btn-outline:hover { + color: white; +} +.chat { + margin: 0; + padding: 0; + list-style: none; +} +.chat li { + margin-bottom: 10px; + padding-bottom: 5px; + border-bottom: 1px dotted #999999; +} +.chat li.left .chat-body { + margin-left: 60px; +} +.chat li.right .chat-body { + margin-right: 60px; +} +.chat li .chat-body p { + margin: 0; +} +.panel .slidedown .glyphicon, +.chat .glyphicon { + margin-right: 5px; +} +.chat-panel .panel-body { + height: 350px; + overflow-y: scroll; +} +.login-panel { + margin-top: 25%; +} +.flot-chart { + display: block; + height: 400px; +} +.flot-chart-content { + width: 100%; + height: 100%; +} +table.dataTable thead .sorting, +table.dataTable thead .sorting_asc, +table.dataTable thead .sorting_desc, +table.dataTable thead .sorting_asc_disabled, +table.dataTable thead .sorting_desc_disabled { + background: transparent; +} +table.dataTable thead .sorting_asc:after { + content: "\f0de"; + float: right; + font-family: fontawesome; +} +table.dataTable thead .sorting_desc:after { + content: "\f0dd"; + float: right; + font-family: fontawesome; +} +table.dataTable thead .sorting:after { + content: "\f0dc"; + float: right; + font-family: fontawesome; + color: rgba(50, 50, 50, 0.5); +} +.btn-circle { + width: 30px; + height: 30px; + padding: 6px 0; + border-radius: 15px; + text-align: center; + font-size: 12px; + line-height: 1.428571429; +} +.btn-circle.btn-lg { + width: 50px; + height: 50px; + padding: 10px 16px; + border-radius: 25px; + font-size: 18px; + line-height: 1.33; +} +.btn-circle.btn-xl { + width: 70px; + height: 70px; + padding: 10px 16px; + border-radius: 35px; + font-size: 24px; + line-height: 1.33; +} +.show-grid [class^="col-"] { + padding-top: 10px; + padding-bottom: 10px; + border: 1px solid #ddd; + background-color: #eee !important; +} +.show-grid { + margin: 15px 0; +} +.huge { + font-size: 40px; +} +.panel-green { + border-color: #5cb85c; +} +.panel-green > .panel-heading { + border-color: #5cb85c; + color: white; + background-color: #5cb85c; +} +.panel-green > a { + color: #5cb85c; +} +.panel-green > a:hover { + color: #3d8b3d; +} +.panel-red { + border-color: #d9534f; +} +.panel-red > .panel-heading { + border-color: #d9534f; + color: white; + background-color: #d9534f; +} +.panel-red > a { + color: #d9534f; +} +.panel-red > a:hover { + color: #b52b27; +} +.panel-yellow { + border-color: #f0ad4e; +} +.panel-yellow > .panel-heading { + border-color: #f0ad4e; + color: white; + background-color: #f0ad4e; +} +.panel-yellow > a { + color: #f0ad4e; +} +.panel-yellow > a:hover { + color: #df8a13; +} +.timeline { + position: relative; + padding: 20px 0 20px; + list-style: none; +} +.timeline:before { + content: " "; + position: absolute; + top: 0; + bottom: 0; + left: 50%; + width: 3px; + margin-left: -1.5px; + background-color: #eeeeee; +} +.timeline > li { + position: relative; + margin-bottom: 20px; +} +.timeline > li:before, +.timeline > li:after { + content: " "; + display: table; +} +.timeline > li:after { + clear: both; +} +.timeline > li:before, +.timeline > li:after { + content: " "; + display: table; +} +.timeline > li:after { + clear: both; +} +.timeline > li > .timeline-panel { + float: left; + position: relative; + width: 46%; + padding: 20px; + border: 1px solid #d4d4d4; + border-radius: 2px; + -webkit-box-shadow: 0 1px 6px rgba(0, 0, 0, 0.175); + box-shadow: 0 1px 6px rgba(0, 0, 0, 0.175); +} +.timeline > li > .timeline-panel:before { + content: " "; + display: inline-block; + position: absolute; + top: 26px; + right: -15px; + border-top: 15px solid transparent; + border-right: 0 solid #ccc; + border-bottom: 15px solid transparent; + border-left: 15px solid #ccc; +} +.timeline > li > .timeline-panel:after { + content: " "; + display: inline-block; + position: absolute; + top: 27px; + right: -14px; + border-top: 14px solid transparent; + border-right: 0 solid #fff; + border-bottom: 14px solid transparent; + border-left: 14px solid #fff; +} +.timeline > li > .timeline-badge { + z-index: 100; + position: absolute; + top: 16px; + left: 50%; + width: 50px; + height: 50px; + margin-left: -25px; + border-radius: 50% 50% 50% 50%; + text-align: center; + font-size: 1.4em; + line-height: 50px; + color: #fff; + background-color: #999999; +} +.timeline > li.timeline-inverted > .timeline-panel { + float: right; +} +.timeline > li.timeline-inverted > .timeline-panel:before { + right: auto; + left: -15px; + border-right-width: 15px; + border-left-width: 0; +} +.timeline > li.timeline-inverted > .timeline-panel:after { + right: auto; + left: -14px; + border-right-width: 14px; + border-left-width: 0; +} +.timeline-badge.primary { + background-color: #2e6da4 !important; +} +.timeline-badge.success { + background-color: #3f903f !important; +} +.timeline-badge.warning { + background-color: #f0ad4e !important; +} +.timeline-badge.danger { + background-color: #d9534f !important; +} +.timeline-badge.info { + background-color: #5bc0de !important; +} +.timeline-title { + margin-top: 0; + color: inherit; +} +.timeline-body > p, +.timeline-body > ul { + margin-bottom: 0; +} +.timeline-body > p + p { + margin-top: 5px; +} +@media (max-width: 767px) { + ul.timeline:before { + left: 40px; + } + ul.timeline > li > .timeline-panel { + width: calc(10%); + width: -moz-calc(10%); + width: -webkit-calc(10%); + } + ul.timeline > li > .timeline-badge { + top: 16px; + left: 15px; + margin-left: 0; + } + ul.timeline > li > .timeline-panel { + float: right; + } + ul.timeline > li > .timeline-panel:before { + right: auto; + left: -15px; + border-right-width: 15px; + border-left-width: 0; + } + ul.timeline > li > .timeline-panel:after { + right: auto; + left: -14px; + border-right-width: 14px; + border-left-width: 0; + } +} diff --git a/build/lib/helpdesk/static/helpdesk/dist/css/sb-admin-2.min.css b/build/lib/helpdesk/static/helpdesk/dist/css/sb-admin-2.min.css new file mode 100644 index 00000000..a685970e --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/dist/css/sb-admin-2.min.css @@ -0,0 +1,5 @@ +/*! + * Start Bootstrap - SB Admin 2 v3.3.7+1 (http://startbootstrap.com/template-overviews/sb-admin-2) + * Copyright 2013-2016 Start Bootstrap + * Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap/blob/gh-pages/LICENSE) + */.chat,.timeline{list-style:none}body{background-color:#f8f8f8}#wrapper{width:100%}#page-wrapper{padding:0 15px;min-height:568px;background-color:#fff}@media (min-width:768px){#page-wrapper{position:inherit;margin:0 0 0 250px;padding:0 30px;border-left:1px solid #e7e7e7}}.navbar-top-links{margin-right:0}.navbar-top-links li{display:inline-block}.flot-chart,.navbar-top-links .dropdown-menu li{display:block}.navbar-top-links li:last-child{margin-right:15px}.navbar-top-links li a{padding:15px;min-height:50px}.navbar-top-links .dropdown-menu li:last-child{margin-right:0}.navbar-top-links .dropdown-menu li a{padding:3px 20px;min-height:0}.navbar-top-links .dropdown-menu li a div{white-space:normal}.navbar-top-links .dropdown-alerts,.navbar-top-links .dropdown-messages,.navbar-top-links .dropdown-tasks{width:310px;min-width:0}.navbar-top-links .dropdown-messages{margin-left:5px}.navbar-top-links .dropdown-tasks{margin-left:-59px}.navbar-top-links .dropdown-alerts{margin-left:-123px}.navbar-top-links .dropdown-user{right:0;left:auto}.sidebar .sidebar-nav.navbar-collapse{padding-left:0;padding-right:0}.sidebar .sidebar-search{padding:15px}.sidebar ul li{border-bottom:1px solid #e7e7e7}.sidebar ul li a.active{background-color:#eee}.sidebar .arrow{float:right}.sidebar .fa.arrow:before{content:"\f104"}.sidebar .active>a>.fa.arrow:before{content:"\f107"}.sidebar .nav-second-level li,.sidebar .nav-third-level li{border-bottom:none!important}.sidebar .nav-second-level li a{padding-left:37px}.sidebar .nav-third-level li a{padding-left:52px}@media (min-width:768px){.sidebar{z-index:1;position:absolute;width:250px;margin-top:51px}.navbar-top-links .dropdown-alerts,.navbar-top-links .dropdown-messages,.navbar-top-links .dropdown-tasks{margin-left:auto}}.btn-outline{color:inherit;background-color:transparent;transition:all .5s}.btn-primary.btn-outline{color:#428bca}.btn-success.btn-outline{color:#5cb85c}.btn-info.btn-outline{color:#5bc0de}.btn-warning.btn-outline{color:#f0ad4e}.btn-danger.btn-outline{color:#d9534f}.btn-danger.btn-outline:hover,.btn-info.btn-outline:hover,.btn-primary.btn-outline:hover,.btn-success.btn-outline:hover,.btn-warning.btn-outline:hover{color:#fff}.chat{margin:0;padding:0}.chat li{margin-bottom:10px;padding-bottom:5px;border-bottom:1px dotted #999}.chat li.left .chat-body{margin-left:60px}.chat li.right .chat-body{margin-right:60px}.chat li .chat-body p{margin:0}.chat .glyphicon,.panel .slidedown .glyphicon{margin-right:5px}.chat-panel .panel-body{height:350px;overflow-y:scroll}.login-panel{margin-top:25%}.flot-chart{height:400px}.flot-chart-content{width:100%;height:100%}table.dataTable thead .sorting,table.dataTable thead .sorting_asc,table.dataTable thead .sorting_asc_disabled,table.dataTable thead .sorting_desc,table.dataTable thead .sorting_desc_disabled{background:0 0}table.dataTable thead .sorting_asc:after{content:"\f0de";float:right;font-family:fontawesome}table.dataTable thead .sorting_desc:after{content:"\f0dd";float:right;font-family:fontawesome}table.dataTable thead .sorting:after{content:"\f0dc";float:right;font-family:fontawesome;color:rgba(50,50,50,.5)}.btn-circle{width:30px;height:30px;padding:6px 0;border-radius:15px;text-align:center;font-size:12px;line-height:1.428571429}.btn-circle.btn-lg{width:50px;height:50px;padding:10px 16px;border-radius:25px;font-size:18px;line-height:1.33}.btn-circle.btn-xl{width:70px;height:70px;padding:10px 16px;border-radius:35px;font-size:24px;line-height:1.33}.show-grid [class^=col-]{padding-top:10px;padding-bottom:10px;border:1px solid #ddd;background-color:#eee!important}.show-grid{margin:15px 0}.huge{font-size:40px}.panel-green{border-color:#5cb85c}.panel-green>.panel-heading{border-color:#5cb85c;color:#fff;background-color:#5cb85c}.panel-green>a{color:#5cb85c}.panel-green>a:hover{color:#3d8b3d}.panel-red{border-color:#d9534f}.panel-red>.panel-heading{border-color:#d9534f;color:#fff;background-color:#d9534f}.panel-red>a{color:#d9534f}.panel-red>a:hover{color:#b52b27}.panel-yellow{border-color:#f0ad4e}.panel-yellow>.panel-heading{border-color:#f0ad4e;color:#fff;background-color:#f0ad4e}.panel-yellow>a{color:#f0ad4e}.panel-yellow>a:hover{color:#df8a13}.timeline{position:relative;padding:20px 0}.timeline:before{content:" ";position:absolute;top:0;bottom:0;left:50%;width:3px;margin-left:-1.5px;background-color:#eee}.timeline>li{position:relative;margin-bottom:20px}.timeline>li:after,.timeline>li:before{content:" ";display:table}.timeline>li:after{clear:both}.timeline>li>.timeline-panel{float:left;position:relative;width:46%;padding:20px;border:1px solid #d4d4d4;border-radius:2px;-webkit-box-shadow:0 1px 6px rgba(0,0,0,.175);box-shadow:0 1px 6px rgba(0,0,0,.175)}.timeline>li>.timeline-panel:before{content:" ";display:inline-block;position:absolute;top:26px;right:-15px;border-top:15px solid transparent;border-right:0 solid #ccc;border-bottom:15px solid transparent;border-left:15px solid #ccc}.timeline>li>.timeline-panel:after{content:" ";display:inline-block;position:absolute;top:27px;right:-14px;border-top:14px solid transparent;border-right:0 solid #fff;border-bottom:14px solid transparent;border-left:14px solid #fff}.timeline>li>.timeline-badge{z-index:100;position:absolute;top:16px;left:50%;width:50px;height:50px;margin-left:-25px;border-radius:50%;text-align:center;font-size:1.4em;line-height:50px;color:#fff;background-color:#999}.timeline>li.timeline-inverted>.timeline-panel{float:right}.timeline>li.timeline-inverted>.timeline-panel:before{right:auto;left:-15px;border-right-width:15px;border-left-width:0}.timeline>li.timeline-inverted>.timeline-panel:after{right:auto;left:-14px;border-right-width:14px;border-left-width:0}.timeline-badge.primary{background-color:#2e6da4!important}.timeline-badge.success{background-color:#3f903f!important}.timeline-badge.warning{background-color:#f0ad4e!important}.timeline-badge.danger{background-color:#d9534f!important}.timeline-badge.info{background-color:#5bc0de!important}.timeline-title{margin-top:0;color:inherit}.timeline-body>p,.timeline-body>ul{margin-bottom:0}.timeline-body>p+p{margin-top:5px}@media (max-width:767px){ul.timeline:before{left:40px}ul.timeline>li>.timeline-panel{width:calc(10%);width:-moz-calc(10%);width:-webkit-calc(10%);float:right}ul.timeline>li>.timeline-badge{top:16px;left:15px;margin-left:0}ul.timeline>li>.timeline-panel:before{right:auto;left:-15px;border-right-width:15px;border-left-width:0}ul.timeline>li>.timeline-panel:after{right:auto;left:-14px;border-right-width:14px;border-left-width:0}} \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/dist/js/sb-admin-2.js b/build/lib/helpdesk/static/helpdesk/dist/js/sb-admin-2.js new file mode 100644 index 00000000..24b26ce5 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/dist/js/sb-admin-2.js @@ -0,0 +1,47 @@ +/*! + * Start Bootstrap - SB Admin 2 v3.3.7+1 (http://startbootstrap.com/template-overviews/sb-admin-2) + * Copyright 2013-2016 Start Bootstrap + * Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap/blob/gh-pages/LICENSE) + */ +$(function() { + $('#side-menu').metisMenu(); +}); + +//Loads the correct sidebar on window load, +//collapses the sidebar on window resize. +// Sets the min-height of #page-wrapper to window size +$(function() { + $(window).bind("load resize", function() { + var topOffset = 50; + var width = (this.window.innerWidth > 0) ? this.window.innerWidth : this.screen.width; + if (width < 768) { + $('div.navbar-collapse').addClass('collapse'); + topOffset = 100; // 2-row-menu + } else { + $('div.navbar-collapse').removeClass('collapse'); + } + + var height = ((this.window.innerHeight > 0) ? this.window.innerHeight : this.screen.height) - 1; + height = height - topOffset; + if (height < 1) height = 1; + if (height > topOffset) { + $("#page-wrapper").css("min-height", (height) + "px"); + } + }); + + var url = window.location; + // var element = $('ul.nav a').filter(function() { + // return this.href == url; + // }).addClass('active').parent().parent().addClass('in').parent(); + var element = $('ul.nav a').filter(function() { + return this.href == url; + }).addClass('active').parent(); + + while (true) { + if (element.is('li')) { + element = element.parent().addClass('in').parent(); + } else { + break; + } + } +}); diff --git a/build/lib/helpdesk/static/helpdesk/dist/js/sb-admin-2.min.js b/build/lib/helpdesk/static/helpdesk/dist/js/sb-admin-2.min.js new file mode 100644 index 00000000..892ea1e3 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/dist/js/sb-admin-2.min.js @@ -0,0 +1,6 @@ +/*! + * Start Bootstrap - SB Admin 2 v3.3.7+1 (http://startbootstrap.com/template-overviews/sb-admin-2) + * Copyright 2013-2016 Start Bootstrap + * Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap/blob/gh-pages/LICENSE) + */ +$(function(){$("#side-menu").metisMenu()}),$(function(){$(window).bind("load resize",function(){var i=50,n=this.window.innerWidth>0?this.window.innerWidth:this.screen.width;n<768?($("div.navbar-collapse").addClass("collapse"),i=100):$("div.navbar-collapse").removeClass("collapse");var e=(this.window.innerHeight>0?this.window.innerHeight:this.screen.height)-1;e-=i,e<1&&(e=1),e>i&&$("#page-wrapper").css("min-height",e+"px")});for(var i=window.location,n=$("ul.nav a").filter(function(){return this.href==i}).addClass("active").parent();;){if(!n.is("li"))break;n=n.parent().addClass("in").parent()}}); \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/filter.js b/build/lib/helpdesk/static/helpdesk/filter.js new file mode 100644 index 00000000..7052f5f0 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/filter.js @@ -0,0 +1,21 @@ +$(document).ready(function() { + $("#filterBuilderButton").click(function() { + var boxName = "#filterBox" + $("#filterBuilderSelect").val(); + $(boxName).slideDown(); + return false; + }); + $(".filterBuilderRemove").click(function() { + var boxName = "#" + $(this).parents(".filterBox").attr('id'); + $(boxName).slideUp(); + $(boxName).children("input:text").each(function() { + $(this).val(""); + }); + $(boxName).children("input:checkbox").each(function() { + this.checked = false; + }); + $(boxName).children("select").each(function() { + this.selectedIndex = -1; + }); + return false; + }); +}); diff --git a/build/lib/helpdesk/static/helpdesk/helpdesk-extend.css b/build/lib/helpdesk/static/helpdesk/helpdesk-extend.css new file mode 100644 index 00000000..4d280241 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/helpdesk-extend.css @@ -0,0 +1,78 @@ +/* +Bootstrap overrides +*/ + +.btn-file { + position: relative; + overflow: hidden; +} +.btn-file input[type=file] { + position: absolute; + top: 0; + right: 0; + min-width: 100%; + min-height: 100%; + font-size: 100px; + text-align: right; + filter: alpha(opacity=0); + opacity: 0; + outline: none; + background: white; + cursor: inherit; + display: block; +} + +.thumbnail.filterBox { + display: none; + float: left; + border: solid #ccc 1px; + padding: 10px; + margin: 4px; + max-width: 24%; + min-height: 200px; +} + +.thumbnail.filterBoxShow { + display: block; +} + +.filterBox label { + clear: both; + display: block; +} + +.filterBox .filterHelp { + color: #aaa; + font-size: 0.8em; + clear: both; +} + +#searchtabs {margin-bottom: 20px;} + +.row_tablehead, table.table caption {background-color: #dbd5d9;} +table.table caption { + padding-left: 2em; + line-height: 2em; font-weight: bold; +} +table.ticket-stats caption {color: #fbff00; font-style: italic;} +table.ticket-stats tbody th, table.ticket-stats tbody tr {padding-left: 20px} + +.errorlist {list-style: none;} +.errorlist {padding: 0;} +.has-error .input-group input, .has-error .input-group select, .has-error .input-group textarea {border-color: #b94a48} + +#helpdesk-nav-collapse #searchform { + padding-top: 0; +} +#ticket-description {background-color: #FCF8E3;} +.followup.well {background-color: #f4f5ff;} +/* +Add your custom styles here +*/ +#footer { + border-top: 2px solid #AAAAAA; + margin-top: 20px; + padding: 10px 0; +} +#helpdesk-body {padding-top: 100px;} +img.brand {padding-right: 30px;} diff --git a/build/lib/helpdesk/static/helpdesk/helpdesk-print.css b/build/lib/helpdesk/static/helpdesk/helpdesk-print.css new file mode 100644 index 00000000..e69de29b diff --git a/build/lib/helpdesk/static/helpdesk/helpdesk.css b/build/lib/helpdesk/static/helpdesk/helpdesk.css new file mode 100644 index 00000000..42f65e9a --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/helpdesk.css @@ -0,0 +1,323 @@ +body { + font: 10pt "Trebuchet MS", Arial, sans-serif; + background-color: #fff; + text-align: center; +} + +table { + border-collapse: collapse; + margin-top: 8px; + padding: 80px; +} + +#container { + width: 700px; + margin: 0 auto; + text-align: left; +} + +#header h1 { + float: left; + margin-top: 20px; + padding-top: 20px; + line-height: 24px; +} + +#header ul { + float: right; + margin-top: 40px; + line-height: 24px; +} +#header li { + display: inline; + float: left; +} + +#header li a { + padding: 2px 3px; + margin: 2px; + border: solid #444 1px; + color: #000; + background-color: #eee; + text-decoration: none; + font-size: 10pt; + line-height: 12pt; +} + +#searchform .input { + border: solid #444 1px; + background-color: #fff; + color: #ccc; + padding: 0px 3px; + margin: 0px 2px; + font-size: 10pt; + line-height: 12pt; +} + +#searchform .input:focus { + color: #000; +} + +#header li a:hover { + background-color: #ccc; +} + +#header, #body, #footer { + clear: both; +} + +label { + font-weight: bold; +} + +span.form_optional { + color: #666; + font-size: 95%; +} + +dd.form_help_text { + color: #666; + font-size: 95%; +} + +ul.errorlist { + color: #a33; + font-size: 95%; +} + +dt { + padding-top: 8px; +} + +.row_tablehead { + background-color: #6593C0; + font-weight: bold; + color: #fff; + border-bottom: solid white 1px; +} + +.row_tablehead span.ticket_toolbar { + float: right; + text-align: right; +} + +.row_tablehead td { + padding-left: 12px; + line-height: 16pt; + font-size: 12pt; +} + +.row_columnheads { + background-color: #94C0E8; + font-size: 10pt; + line-height: 12pt; +} + +th { + font-weight: bold; + color: #3E5F84; + text-align: left; + padding-left: 12px; +} + +.row_odd { + background-color: #fff; +} + +.row_even { + background-color: #ecf6fc; +} + +.row_odd, .row_even { + color: #6C79A0; + border-bottom: solid #d5e7fd 1px; +} + +.row_odd th, .row_even th { + font-size: 10pt; +} + +.row_odd td:first-child, .row_even td:first-child { + padding-left: 12px; +} + +.cell_bold { + font-weight: bold; +} + +td a, th a { + color: inherit; + text-decoration: none; +} + +td { + font-size: 10pt; +} + +td.report { + font-size: 10pt; + text-align: center; +} + +.hover { + background-color: #bcd4ec; +} + +div.followup { + width: 100%; + border-top: solid #666 1px; + padding:0 0 2px; +} + +div.followup_mod { + width: auto; + border: solid #666 1px; + padding: 5px; + margin: 0px 0px 10px; +} + +div.followup .title, div.followup_mod .title { + font-weight: bold; + font-size: 10pt; +} + +div.followup .title span, div.followup_mod .title span { + color: #aaa; + font-weight: normal; +} + +div.followup_mod small { + float: right; + font-weight: bold; + font-style: italic; +} + +span.private { + color: #aaa; + font-style: italic; +} + +a.ticket_link_status_Closed { + text-decoration: line-through; +} + +a.ticket_link_status_Open { + color: #393; +} + +a.ticket_link_status_Reopened { + color: #393; +} + +a.ticket_link_status_Resolved { + color: #996; +} + +a.ticket_link_status { + color: #369; + font: 12pt Garamond; +} + +a img { + border: none; + padding: 2px; +} + +textarea#commentBox { + width: 100%; +} + +.filterBox { + display: none; + float: left; + border: solid #ccc 1px; + padding: 2px; + margin: 4px; + max-width: 24%; +} + +.filterBoxShow { + display: block; +} + +.filterBox label { + clear: both; + display: block; +} + +.filterBox .filterHelp { + color: #aaa; + font-size: 0.8em; + clear: both; +} + +span.priority1, span.priority2, span.priority3, span.priority4, span.priority5 { + padding: 1px 12px; + font-weight: bold; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + margin: 2px; + display: block; + text-align: center; + width: 20px; +} + +span.priority1 { + background-color: #c00; + color: #fff; +} + +span.priority2 { + background-color: #e80; + color: #fff; +} + +span.priority3 { + background-color: #fe8; + color: #000; +} + +span.priority4 { + background-color: #59c; + color: #fff; +} + +span.priority5 { + background-color: #8c5; + color: #fff; +} + +a.followup-edit { + float:right; +} + +/* tooltips for link hover */ +a.tooltip, a.tooltip:link, a.tooltip:visited, a.tooltip:active { + position: relative; + text-decoration: none; + font-style: italic; +} + +a.tooltip:hover { + background: transparent; +} + +a.tooltip span { + display: none; + text-decoration: none; +} + +a.tooltip:hover span { + display: block; + position: absolute; + top: 25px; + left: 0; + width: 250px; + z-index: 10; + color: #000000; + border:1px solid #000000; + background: #FFFFCC; + font: 12px Verdana, sans-serif; + text-align: left; +} + diff --git a/build/lib/helpdesk/static/helpdesk/jquery.translate-debug-all.js b/build/lib/helpdesk/static/helpdesk/jquery.translate-debug-all.js new file mode 100644 index 00000000..db922995 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/jquery.translate-debug-all.js @@ -0,0 +1,1546 @@ +/*! + * jQuery nodesContainingText plugin + * + * Version: 1.1.2 + * + * http://code.google.com/p/jquery-translate/ + * + * Copyright (c) 2009 Balazs Endresz (balazs.endresz@gmail.com) + * Dual licensed under the MIT and GPL licenses. + * + */ + +;(function($){ + +function Nct(){} + +Nct.prototype = { + init: function(jq, o){ + this.textArray = []; + this.elements = []; + this.options = o; + this.jquery = jq; + this.n = -1; + if(o.async === true) + o.async = 2; + + if(o.not){ + jq = jq.not(o.not); + jq = jq.add( jq.find("*").not(o.not) ).not( $(o.not).find("*") ); + }else + jq = jq.add( jq.find("*") ); + + this.jq = jq; + this.jql = this.jq.length; + return this.process(); + + }, + + process: function(){ + this.n++; + var that = this, o = this.options, text = "", hasTextNode = false, + hasChildNode = false, el = this.jq[this.n], e, c, ret; + + if(this.n === this.jql){ + ret = this.jquery.pushStack(this.elements, "nodesContainingText"); + o.complete.call(ret, ret, this.textArray); + + if(o.returnAll === false && o.walk === false) + return this.jquery; + return ret; + } + + if(!el) + return this.process(); + e=$(el); + + var nodeName = el.nodeName.toUpperCase(), + type = nodeName === "INPUT" && $.attr(el, "type").toLowerCase(); + + if( ({SCRIPT:1, NOSCRIPT:1, STYLE:1, OBJECT:1, IFRAME:1})[ nodeName ] ) + return this.process(); + + if(typeof o.subject === "string"){ + text=e.attr(o.subject); + }else{ + if(o.altAndVal && (nodeName === "IMG" || type === "image" ) ) + text = e.attr("alt"); + else if( o.altAndVal && ({text:1, button:1, submit:1})[ type ] ) + text = e.val(); + else if(nodeName === "TEXTAREA") + text = e.val(); + else{ + //check childNodes: + c = el.firstChild; + if(o.walk !== true) + hasChildNode = true; + else{ + while(c){ + if(c.nodeType == 1){ + hasChildNode = true; + break; + } + c=c.nextSibling; + } + } + + if(!hasChildNode) + text = e.text(); + else{//check textNodes: + if(o.walk !== true) + hasTextNode = true; + + c=el.firstChild; + while(c){ + if(c.nodeType == 3 && c.nodeValue.match(/\S/) !== null){//textnodes with text + /*jslint skipLines*/ + if(c.nodeValue.match(//) !== null){ + if(c.nodeValue.match(/(\S+(?=.*<))|(>(?=.*\S+))/) !== null){ + hasTextNode = true; + break; + } + }else{ + hasTextNode = true; + break; + } + /*jslint skipLinesEnd*/ + } + c = c.nextSibling; + } + + if(hasTextNode){//remove child nodes from jq + //remove scripts: + text = e.html(); + /*jslint skipLines*/ + text = o.stripScripts ? text.replace(/]*>([\s\S]*?)<\/script>/gi, "") : text; + /*jslint skipLinesEnd*/ + this.jq = this.jq.not( e.find("*") ); + } + } + } + } + + if(!text) + return this.process(); + this.elements.push(el); + this.textArray.push(text); + + o.each.call(el, this.elements.length - 1, el, text); + + if(o.async){ + setTimeout(function(){that.process();}, o.async); + return this.jquery; + }else + return this.process(); + + } +}; + +var defaults = { + not: "", + async: false, + each: function(){}, + complete: function(){}, + comments: false, + returnAll: true, + walk: true, + altAndVal: false, + subject: true, + stripScripts: true +}; + +$.fn.nodesContainingText = function(o){ + o = $.extend({}, defaults, $.fn.nodesContainingText.defaults, o); + return new Nct().init(this, o); +}; + +$.fn.nodesContainingText.defaults = defaults; + +})(jQuery);/*! + * Textnode Translator + * Ariel Flesler - http://flesler.blogspot.com/2008/05/textnode-translator-for-javascript.html + */ +//This is now only a placeholder, the original script has been modified +//and the Translator class is no longer exposed +/*! + * jQuery Translate plugin + * + * Version: ${version} + * + * http://code.google.com/p/jquery-translate/ + * + * Copyright (c) 2009 Balazs Endresz (balazs.endresz@gmail.com) + * Dual licensed under the MIT and GPL licenses. + * + * This plugin uses the 'Google AJAX Language API' (http://code.google.com/apis/ajaxlanguage/) + * You can read the terms of use at http://code.google.com/apis/ajaxlanguage/terms.html + * + */ +;(function($){ + +function $function(){} + +var True = true, False = false, undefined, replace = "".replace, + Str = String, Fn = Function, Obj = Object, + GL, GLL, toLangCode, inverseLanguages = {}, + loading, readyList = [], key, + defaults = { + from: "", + to: "", + start: $function, + error: $function, + each: $function, + complete: $function, + onTimeout: $function, + timeout: 0, + + stripComments: True, + stripWhitespace: True, + stripScripts: True, + separators: /\.\?\!;:/, + limit: 1750, + + + walk: True, + returnAll: False, + replace: True, + rebind: True, + data: True, + setLangAttr: False, + subject: True, + not: "", + altAndVal:True, + async: False, + toggle: False, + fromOriginal: True, + + parallel: false, + trim: true, + alwaysReplace: false + //,response: $function + + }; + + + +function ms_loaded(languageCodes, languageNames){ + GLL = {}; + for(var i = 0; i < languageCodes.length; i++){ + GLL[languageNames[i].toUpperCase()] = languageCodes[i]; + } + + //$.translate.GL = GL = google.language; + $.translate.GLL = GLL; // = GL.Languages; + + loaded(); +} + +function loaded(){ + toLangCode = $.translate.toLanguageCode; + + $.each(GLL, function(l, lc){ + inverseLanguages[ lc.toUpperCase() ] = l; + }); + + $.translate.isReady = True; + var fn; + while((fn = readyList.shift())) fn(); +} + +function filter(obj, fn){ + var newObj = {}; + $.each(obj, function(lang, langCode){ + if( fn(langCode, lang) === True) newObj[ lang ] = langCode; + }); + return newObj; +} + +function bind(fn, thisObj, args){ + return function(){ + return fn.apply(thisObj === True ? arguments[0] : thisObj, args || arguments); + }; +} + +function isSet(e){ + return e !== undefined; +} + +function validate(_args, overload, error){ + var matched, obj = {}, args = $.grep(_args, isSet); + + $.each(overload, function(_, el){ + var matches = $.grep(el[0], function(e, i){ + return isSet(args[i]) && args[i].constructor === e; + }).length; + if(matches === args.length && matches === el[0].length && (matched = True)){ + $.each(el[1], function(i, prop){ + obj[prop] = args[i]; + }); + return False; + } + }); + //TODO + if(!matched) throw error; + return obj; +} + + +function getOpt(args0, _defaults){ + //args0=[].slice.call(args0, 0) + var args = validate(args0 , $.translate.overload, "jQuery.translate: Invalid arguments" ), + o = args.options || {}; + delete args.options; + o = $.extend({}, defaults, _defaults, $.extend(o, args)); + + if(o.fromOriginal) o.toggle = True; + if(o.toggle) o.data = True; + if(o.async === True) o.async = 2; + if(o.alwaysReplace === true){ //see issue #58 + o.toggle = false; + o.fromOriginal = false; + } + + return o; +} + + +function T(){ + //copy over static methods during each instantiation + //for backward compatibility and access inside callback functions + this.extend($.translate); + delete this.defaults; + delete this.fn; +} + +T.prototype = { + version: "${version}", + + _init: function(t, o){ + var separator = o.separators.source || o.separators, + isString = this.isString = typeof t === "string", + lastpos = 0, substr; + + $.each(["stripComments", "stripScripts", "stripWhitespace"], function(i, name){ + var fn = $.translate[name]; + if( o[name] ) + t = isString ? fn(t) : $.map(t, fn); + }); + + this.rawSource = "

" + (isString ? t : t.join("
")) + "
"; + this._m3 = new RegExp("[" + separator + "](?![^" + separator + "]*[" + separator + "])"); + this.options = o; + this.from = o.from = toLangCode(o.from) || ""; + this.to = o.to = toLangCode(o.to) || ""; + this.source = t; + this.rawTranslation = ""; + this.translation = []; + this.i = 0; + this.stopped = False; + this.elements = o.nodes; + + //this._nres = 0; + //this._progress = 0; + this._i = -1; //TODO: rename + this.rawSources = []; + + while(True){ + substr = this.truncate( this.rawSource.substr(lastpos), o.limit); + if(!substr) break; + this.rawSources.push(substr); + lastpos += substr.length; + } + this.queue = new Array(this.rawSources.length); + this.done = 0; + + o.start.call(this, t , o.from, o.to, o); + + if(o.timeout) + this.timeout = setTimeout(bind(o.onTimeout, this, [t, o.from, o.to, o]), o.timeout); + + (o.toggle && o.nodes) ? + (o.textNodes ? this._toggleTextNodes() : this._toggle()) : + this._process(); + }, + + _process: function(){ + if(this.stopped) + return; + var o = this.options, + i = this.rawTranslation.length, + lastpos, subst, divst, divcl; + var that = this; + + while( (lastpos = this.rawTranslation.lastIndexOf("", i)) > -1){ + + i = lastpos - 1; + subst = this.rawTranslation.substr(0, i + 1); + /*jslint skipLines*/ + divst = subst.match(/ ]/gi); + divcl = subst.match(/<\/div>/gi); + /*jslint skipLinesEnd*/ + + divst = divst ? divst.length : 0; + divcl = divcl ? divcl.length : 0; + + if(divst !== divcl + 1) continue; //if there are some unclosed divs + + var divscompl = $( this.rawTranslation.substr(0, i + 7) ), + divlen = divscompl.length, + l = this.i; + + if(l === divlen) break; //if no new elements have been completely translated + + divscompl.slice(l, divlen).each( bind(function(j, e){ + if(this.stopped) + return False; + var e_html = $(e).html(), tr = o.trim ? $.trim(e_html) : e_html, + i = l + j, src = this.source, + from = !this.from && this.detectedSourceLanguage || this.from; + this.translation[i] = tr;//create an array for complete callback + this.isString ? this.translation = tr : src = this.source[i]; + + o.each.call(this, i, tr, src, from, this.to, o); + + this.i++; + }, this)); + + break; + } + + if(this.rawSources.length - 1 == this._i) + this._complete(); + + var _translate = bind(this._translate, this); + + if(o.parallel){ + if(this._i < 0){ + if(!o.parallel){ + $.each(this.rawSources, _translate); + }else{ + var j = 0, n = this.rawSources.length; + function seq(){ + _translate(); + if(j++ < n) + setTimeout( seq, o.parallel ); + } + seq(); + } + } + }else + _translate(); + + }, + + _translate: function(){ + this._i++; + var _this = this, i = this._i, src = this.rawSourceSub = this.rawSources[i]; + if(!src) return; + + if(key.length < 40){ + $.ajax({ + url: "https://www.googleapis.com/language/translate/v2", + dataType: "jsonp", + jsonp: "callback", + crossDomain: true, + //context: this, //doesn't work with older versions of jQuery + data: $.extend({"key": key, target: this.to, q: src}, this.from ? {source: this.from} : {}), + success: function(response){ + if(response.error){ + return _this.options.error.call(_this, response.error, _this.rawSourceSub, _this.from, _this.to, _this.options); + } + var tr = response.data.translations[0].translatedText; + _this.queue[i] = tr || _this.rawSourceSub; + _this.detectedSourceLanguage = response.data.translations[0].detectedSourceLanguage; + _this._check(); + } + }); + + /* + GL.translate(src, this.from, this.to, bind(function(result){ + //this._progress = 100 * (++this._nres) / this.rawSources.length; + //this.options.response.call(this, this._progress, result); + if(result.error) + return this.options.error.call(this, result.error, this.rawSourceSub, this.from, this.to, this.options); + + this.queue[i] = result.translation || this.rawSourceSub; + this.detectedSourceLanguage = result.detectedSourceLanguage; + this._check(); + }, this)); + */ + }else{ + $.ajax({ + url: "http://api.microsofttranslator.com/V2/Ajax.svc/Translate", + dataType: "jsonp", + jsonp: "oncomplete", + crossDomain: true, + //context: this, + data: {appId: key, from: _this.from, to: _this.to, contentType: "text/plain", text: src}, + success: function(data, status){ + //console.log(data); + _this.queue[i] = data || _this.rawSourceSub; + //this.detectedSourceLanguage = result.detectedSourceLanguage; + _this._check(); + } + }); + } + }, + + _check: function(){ + if(!this.options.parallel){ + this.rawTranslation += this.queue[this._i]; + this._process(); + return; + } + + var done = 0; + jQuery.each(this.queue, function(i, n) { + if (n != undefined) done = i; + else return false; + }); + + if ((done > this.done) || (done === this.queue.length - 1)) { + for(var i = 0; i <= done; i++) + this.rawTranslation += this.queue[i]; + this._process(); + } + this.done = done; + + }, + + _complete: function(){ + clearTimeout(this.timeout); + + this.options.complete.call(this, this.translation, this.source, + !this.from && this.detectedSourceLanguage || this.from, this.to, this.options); + }, + + stop: function(){ + if(this.stopped) + return this; + this.stopped = True; + this.options.error.call(this, {message:"stopped"}); + return this; + } +}; + + + +$.translate = function(t, a){ + if(t == undefined) + return new T(); + if( $.isFunction(t) ) + return $.translate.ready(t, a); + var that = new T(); + + var args = [].slice.call(arguments, 0); + args.shift(); + return $.translate.ready( bind(that._init, that, [t, getOpt(args, $.translate.defaults)] ), False, that ); +}; + + +$.translate.fn = $.translate.prototype = T.prototype; + +$.translate.fn.extend = $.translate.extend = $.extend; + + +$.translate.extend({ + + _bind: bind, + + _filter: filter, + + _validate: validate, + + _getOpt: getOpt, + + _defaults: defaults, //base defaults used by other components as well //TODO + + defaults: $.extend({}, defaults), + + capitalize: function(t){ return t.charAt(0).toUpperCase() + t.substr(1).toLowerCase(); }, + + truncate: function(text, limit){ + var i, m1, m2, m3, m4, t, encoded = encodeURIComponent( text ); + + for(i = 0; i < 10; i++){ + try { + t = decodeURIComponent( encoded.substr(0, limit - i) ); + } catch(e){ continue; } + if(t) break; + } + + return ( !( m1 = /<(?![^<]*>)/.exec(t) ) ) ? ( //if no broken tag present + ( !( m2 = />\s*$/.exec(t) ) ) ? ( //if doesn't end with '>' + ( m3 = this._m3.exec(t) ) ? ( //if broken sentence present + ( m4 = />(?![^>]*<)/.exec(t) ) ? ( + m3.index > m4.index ? t.substring(0, m3.index+1) : t.substring(0, m4.index+1) + ) : t.substring(0, m3.index+1) ) : t ) : t ) : t.substring(0, m1.index); + }, + + getLanguages: function(a, b){ + if(a == undefined || (b == undefined && !a)) + return GLL; + + var newObj = {}, typeof_a = typeof a, + languages = b ? $.translate.getLanguages(a) : GLL, + filterArg = ( typeof_a === "object" || typeof_a === "function" ) ? a : b; + + if(filterArg) + if(filterArg.call) //if it's a filter function + newObj = filter(languages, filterArg); + else //if it's an array of languages + for(var i = 0, length = filterArg.length, lang; i < length; i++){ + lang = $.translate.toLanguage(filterArg[i]); + if(languages[lang] != undefined) + newObj[lang] = languages[lang]; + } + else //if the first argument is true -> only translatable languages + newObj = filter(GLL, $.translate.isTranslatable); + + return newObj; + }, + + + toLanguage: function(a, format){ + var u = a.toUpperCase(); + var l = inverseLanguages[u] || + (GLL[u] ? u : undefined) || + inverseLanguages[($.translate.languageCodeMap[a.toLowerCase()]||"").toUpperCase()]; + return l == undefined ? undefined : + format === "lowercase" ? l.toLowerCase() : format === "capitalize" ? $.translate.capitalize(l) : l; + }, + + toLanguageCode: function(a){ + return GLL[a] || + GLL[ $.translate.toLanguage(a) ] || + $.translate.languageCodeMap[a.toLowerCase()]; + }, + + same: function(a, b){ + return a === b || toLangCode(a) === toLangCode(b); + }, + + isTranslatable: function(l){ + return !!toLangCode(l); + }, + + //keys must be lower case, and values must equal to a + //language code specified in the Language API + languageCodeMap: { + "pt": "pt-PT", + "pt-br": "pt-PT", + "he": "iw", + "zlm": "ms", + "zh-hans": "zh-CN", + "zh-hant": "zh-TW" + //,"zh-sg":"zh-CN" + //,"zh-hk":"zh-TW" + //,"zh-mo":"zh-TW" + }, + + //use only language codes specified in the Language API + isRtl: { + "ar": True, + "iw": True, + "fa": True, + "ur": True, + "yi": True + }, + + getBranding: function(){ + if(typeof console != "undefined") + console.log("$.translate.getBranding() IS DEPRECATED! PLEASE REMOVE IT FROM YOUR CODE!"); + return $(); + }, + + load: function(_key, version){ + loading = True; + key = _key; + + if(key.length < 40){ //Google API + /* + function _load(){ + google.load("language", version || "1", {"callback" : google_loaded}); + } + + if(typeof google !== "undefined" && google.load) + _load(); + else + $.getScript(((document.location.protocol == "https:") ? "https://" : "http://") + + "www.google.com/jsapi" + (key ? "?key=" + key : ""), _load); + */ + + /* + $.ajax({ + url: "https://www.googleapis.com/language/translate/v2/languages", + dataType: "jsonp", + jsonp: "oncomplete", + crossDomain: true, + context: this, + data: {key: key, target: "en"}, + success: function(response, status){ + var languageCodes = [], languageNames = []; + $.each(response.data.languages, function(i, e){ + languageCodes.push(e.language); + languageNames.push(e.name); + }); + ms_loaded(languageCodes, languageNames); + } + }); + */ + + var response = {"data": { + "languages": [ + { + "language": "af", + "name": "Afrikaans" + }, + { + "language": "sq", + "name": "Albanian" + }, + { + "language": "ar", + "name": "Arabic" + }, + { + "language": "be", + "name": "Belarusian" + }, + { + "language": "bg", + "name": "Bulgarian" + }, + { + "language": "ca", + "name": "Catalan" + }, + { + "language": "zh", + "name": "Chinese (Simplified)" + }, + { + "language": "zh-TW", + "name": "Chinese (Traditional)" + }, + { + "language": "hr", + "name": "Croatian" + }, + { + "language": "cs", + "name": "Czech" + }, + { + "language": "da", + "name": "Danish" + }, + { + "language": "nl", + "name": "Dutch" + }, + { + "language": "en", + "name": "English" + }, + { + "language": "et", + "name": "Estonian" + }, + { + "language": "tl", + "name": "Filipino" + }, + { + "language": "fi", + "name": "Finnish" + }, + { + "language": "fr", + "name": "French" + }, + { + "language": "gl", + "name": "Galician" + }, + { + "language": "de", + "name": "German" + }, + { + "language": "el", + "name": "Greek" + }, + { + "language": "ht", + "name": "Haitian Creole" + }, + { + "language": "iw", + "name": "Hebrew" + }, + { + "language": "hi", + "name": "Hindi" + }, + { + "language": "hu", + "name": "Hungarian" + }, + { + "language": "is", + "name": "Icelandic" + }, + { + "language": "id", + "name": "Indonesian" + }, + { + "language": "ga", + "name": "Irish" + }, + { + "language": "it", + "name": "Italian" + }, + { + "language": "ja", + "name": "Japanese" + }, + { + "language": "ko", + "name": "Korean" + }, + { + "language": "lv", + "name": "Latvian" + }, + { + "language": "lt", + "name": "Lithuanian" + }, + { + "language": "mk", + "name": "Macedonian" + }, + { + "language": "ms", + "name": "Malay" + }, + { + "language": "mt", + "name": "Maltese" + }, + { + "language": "no", + "name": "Norwegian" + }, + { + "language": "fa", + "name": "Persian" + }, + { + "language": "pl", + "name": "Polish" + }, + { + "language": "pt", + "name": "Portuguese" + }, + { + "language": "ro", + "name": "Romanian" + }, + { + "language": "ru", + "name": "Russian" + }, + { + "language": "sr", + "name": "Serbian" + }, + { + "language": "sk", + "name": "Slovak" + }, + { + "language": "sl", + "name": "Slovenian" + }, + { + "language": "es", + "name": "Spanish" + }, + { + "language": "sw", + "name": "Swahili" + }, + { + "language": "sv", + "name": "Swedish" + }, + { + "language": "th", + "name": "Thai" + }, + { + "language": "tr", + "name": "Turkish" + }, + { + "language": "uk", + "name": "Ukrainian" + }, + { + "language": "vi", + "name": "Vietnamese" + }, + { + "language": "cy", + "name": "Welsh" + }, + { + "language": "yi", + "name": "Yiddish" + } + ] + } +}; + + var languageCodes = [], languageNames = []; + $.each(response.data.languages, function(i, e){ + languageCodes.push(e.language); + languageNames.push(e.name); + }); + ms_loaded(languageCodes, languageNames); + + }else{ //Microsoft API + $.ajax({ + url: "http://api.microsofttranslator.com/V2/Ajax.svc/GetLanguagesForTranslate", + dataType: "jsonp", + jsonp: "oncomplete", + crossDomain: true, + context: this, + data: {appId: key}, + success: function(languageCodes, status){ + $.ajax({ + url: "http://api.microsofttranslator.com/V2/Ajax.svc/GetLanguageNames", + dataType: "jsonp", + jsonp: "oncomplete", + crossDomain: true, + context: this, + data: {appId: key, locale: "en", languageCodes: '["'+languageCodes.join('", "')+'"]'}, + success: function(languageNames, status){ + ms_loaded(languageCodes, languageNames); + } + }); + } + }); + + } + + return $.translate; + }, + + ready: function(fn, preventAutoload, that){ + $.translate.isReady ? fn() : readyList.push(fn); + if(!loading && !preventAutoload) + $.translate.load(); + return that || $.translate; + }, + + isReady: False, + + overload: [ + [[],[]], + [[Str, Str, Obj], ["from", "to", "options"] ], + [[Str, Obj], ["to", "options"] ], + [[Obj], ["options"] ], + [[Str, Str], ["from", "to"] ], + [[Str], ["to"] ], + [[Str, Str, Fn], ["from", "to", "complete"] ], + [[Str, Fn], ["to", "complete"] ] + //TODO + //,[[Str, Str, Fn, Fn], ["from", "to", "each", "complete"]] + ] + /*jslint skipLines*/ + , + //jslint doesn't seem to be able to parse some regexes correctly if used on the server, + //however it works fine if it's run on the command line: java -jar rhino.jar jslint.js file.js + stripScripts: bind(replace, True, [/]*>([\s\S]*?)<\/script>/gi, ""]), + + stripWhitespace: bind(replace, True, [/\s\s+/g, " "]), + + stripComments: bind(replace, True, [//g, ""]) + /*jslint skipLinesEnd*/ +}); + + +})(jQuery);/*!- + * jQuery.fn.nodesContainingText adapter for the jQuery Translate plugin + * Version: ${version} + * http://code.google.com/p/jquery-translate/ + */ +;(function($){ + +var True = true, + isInput = {text:True, button:True, submit:True}, + dontCopyEvents = {SCRIPT:True, NOSCRIPT:True, STYLE:True, OBJECT:True, IFRAME:True}, + $fly = $([]); + +$fly.length = 1; + +function getDoc(node){ + while (node && node.nodeType != 9) + node = node.parentNode; + return node; +} + +function toggleDir(e, dir){ + var align = e.css("text-align"); + e.css("direction", dir); + if(align === "right") e.css("text-align", "left"); + if(align === "left") e.css("text-align", "right"); +} + +function getType(el, o){ + var nodeName = el.nodeName.toUpperCase(), + type = nodeName === 'INPUT' && $.attr(el, 'type').toLowerCase(); + o = o || {altAndVal:True, subject:True}; + return typeof o.subject === "string" ? o.subject : + o.altAndVal && (nodeName === 'IMG' || type === "image" ) ? "alt" : + o.altAndVal && isInput[ type ] ? "$val" : + nodeName === "TEXTAREA" ? "$val" : "$html"; +} + +$.translate.fn._toggle = function(){ + var o = this.options, to = o.to, stop; + + this.elements.each($.translate._bind(function(i, el){ + this.i = i; + var e = $(el), tr = $.translate.getData(e, to, o); + + if(!tr) return !(stop = True); + + this.translation.push(tr); + + o.each.call(this, i, el, tr, this.source[i], this.from, to, o); + //'from' will be undefined if it wasn't set + }, this)); + + !stop ? this._complete() : this._process(); + //o.complete.call(this, o.nodes, this.translation, this.source, this.from, this.to, o) +}; + + + +$.translate.extend({ + _getType: getType, + + each: function(i, el, t, s, from, to, o){ + $fly[0] = el; + $.translate.setData($fly, to, t, from, s, o); + $.translate.replace($fly, t, to, o); + $.translate.setLangAttr($fly, to, o); + }, + + getData: function(e, lang, o){ + var el = e[0] || e, data = $.data(el, "translation"); + return data && data[lang] && data[lang][ getType(el, o) ]; + }, + + setData: function(e, to, t, from, s, o){ + if(o && !o.data) return; + + var el = e[0] || e, + type = getType(el, o), + data = $.data(el, "translation"); + + data = data || $.data(el, "translation", {}); + (data[from] = data[from] || {})[type] = s; + (data[to] = data[to] || {})[type] = t; + }, + + + replace: function(e, t, to, o){ + + if(o && !o.replace) return; + + if(o && typeof o.subject === "string") + return e.attr(o.subject, t); + + var el = e[0] || e, + nodeName = el.nodeName.toUpperCase(), + type = nodeName === 'INPUT' && $.attr(el, 'type').toLowerCase(), + isRtl = $.translate.isRtl, + lang = $.data(el, "lang"); + + //http://code.google.com/p/jquery-translate/issues/detail?id=38 + if(!o.alwaysReplace) + if( lang === to ) + return; + + if( isRtl[ to ] !== isRtl[ lang || o && o.from ] ){ + if( isRtl[ to ] ) + toggleDir(e, "rtl"); + else if( e.css("direction") === "rtl" ) + toggleDir(e, "ltr"); + } + + if( (!o || o.altAndVal) && (nodeName === 'IMG' || type === "image" ) ) + e.attr("alt", t); + else if( nodeName === "TEXTAREA" || (!o || o.altAndVal) && isInput[ type ] ) + e.val(t); + else{ + if(!o || o.rebind){ + this.doc = this.doc || getDoc(el); + var origContents = e.find("*").not("script"), + newElem = $(this.doc.createElement("div")).html(t); + $.translate.copyEvents( origContents, newElem.find("*") ); + e.html( newElem.contents() ); + }else + e.html(t); + } + + //used for determining if the text-align property should be changed, + //it's much faster than setting the "lang" attribute, see bug #13 + $.data(el, "lang", to); + }, + + setLangAttr: function(e, to, o){ + if(!o || o.setLangAttr) + e.attr((!o || o.setLangAttr === True) ? "lang" : o.setLangAttr, to); + }, + + copyEvents: function(from, to){ + to.each(function(i, to_i){ + var from_i = from[i]; + if( !to_i || !from_i ) //in some rare cases the translated html structure can be slightly different + return false; + if( dontCopyEvents[ from_i.nodeName.toUpperCase() ]) + return True; + var events = $.data(from_i, "events"); + if(!events) + return True; + for(var type in events) + for(var handler in events[type]) + $.event.add(to_i, type, events[type][handler], events[type][handler].data); + }); + } + +}); + + +$.fn.translate = function(a, b, c){ + var o = $.translate._getOpt(arguments, $.fn.translate.defaults), + ncto = $.extend( {}, $.translate._defaults, $.fn.translate.defaults, o, + { complete:function(e,t){$.translate(function(){ + + var from = $.translate.toLanguageCode(o.from); + + if(o.fromOriginal) + e.each(function(i, el){ + $fly[0] = el; + var data = $.translate.getData($fly, from, o); + if( !data ) return true; + t[i] = data; + }); + + + var each = o.each; + + function unshiftArgs(method){ + return function(){ + [].unshift.call(arguments, this.elements); + method.apply(this, arguments); + }; + } + + //TODO: set as instance property + o.nodes = e; + o.start = unshiftArgs(o.start); + o.onTimeout = unshiftArgs(o.onTimeout); + o.complete = unshiftArgs(o.complete); + + o.each = function(i){ + var args = arguments; + if(arguments.length !== 7) //if isn't called from _toggle + [].splice.call(args, 1, 0, this.elements[i]); + this.each.apply(this, args); + each.apply(this, args); + }; + + $.translate(t, o); + + });}, + + each: function(){} + }); + + if(this.nodesContainingText) + return this.nodesContainingText(ncto); + + //fallback if nodesContainingText method is not present: + o.nodes = this; + $.translate($.map(this, function(e){ return $(e).html() || $(e).val(); }), o); + return this; +}; + +$.fn.translate.defaults = $.extend({}, $.translate._defaults); + +})(jQuery);/*!- + * TextNode Translator for the jQuery Translate plugin + * Version: ${version} + * http://code.google.com/p/jquery-translate/ + */ + +;(function($){ + + +function getTextNodes( root, _filter ){ + + var nodes = [], + skip = {SCRIPT:1, NOSCRIPT:1, STYLE:1, IFRAME:1}, + notType = typeof _filter, + filter = notType === "string" ? function(node){ return !$(node).is(_filter); } : + notType === "function" ? _filter : //e.g. function(node){ return node.nodeName != 'A'; } + null; + + function recurse(_, root){ + var i = 0, children = root.childNodes, l = children.length, node; + for(; i < l; i++){ + node = children[i]; + + if(node.nodeType == 3 && /\S/.test(node.nodeValue)) + nodes.push(node); + else if( node.nodeType == 1 && + !skip[ node.nodeName.toUpperCase() ] && + (!filter || filter(node))) + recurse(null, node); + } + } + + $.each((root.length && !root.nodeName) ? root : [root], recurse); + + return nodes; +} + +function toggleDir(e, dir){ + var align = e.css("text-align"); + e.css("direction", dir); + if(align === "right") e.css("text-align", "left"); + if(align === "left") e.css("text-align", "right"); +} + +function setLangAttr(e, to, o){ + if(!o || o.setLangAttr) + $(e).attr((!o || o.setLangAttr === true) ? "lang" : o.setLangAttr, to); +} + +function replace(parent, node, text, to, o){ + if(!o.replace) return; + var isRtl = $.translate.isRtl, + lang = $.data(parent, "lang"); + + if( isRtl[ to ] !== isRtl[ lang || o && o.from ] ){ + var $parent = $(parent); + if( isRtl[ to ] ) + toggleDir($parent, "rtl"); + else if( $parent.css("direction") === "rtl" ) + toggleDir($parent, "ltr"); + } + + $.data(parent, "lang", to); + + if(text != node.nodeValue){ + var newTextNode = document.createTextNode(text); + parent.replaceChild(newTextNode, node); + return newTextNode; + } + + return node; +} + +function setData(parent, o, src, trnsl){ + if(o.data){ + var TR = "translation"; + if(!$.data(parent, TR)) + $.data(parent, TR, {}); + + if(!$.data(parent, TR)[o.from]) + $.data(parent, TR)[o.from] = []; + [].push.call($.data(parent, TR)[o.from], src); + + if(!$.data(parent, TR)[o.to]) + $.data(parent, TR)[o.to] = []; + [].push.call($.data(parent, TR)[o.to], trnsl); + } +} + +function getData(parent, lang, that){ + that._childIndex = that._prevParent === parent ? that._childIndex + 1 : 0; + var tr = $.data(parent, "translation"); + that._prevParent = parent; + return tr && tr[lang] && tr[lang][that._childIndex]; + +} + +function _each(i, textNode, t, s, from, to, o){ + t = t.replace(/</g, '<') + .replace(/>/g, '>') + .replace(/&/g, '&') + .replace(/"/g, '"') + .replace(/'|'/g, "'"); + + var parent = textNode.parentNode; + setData(parent, o, s, t); + var newTextNode = replace(parent, textNode, t, to, o); + setLangAttr(parent, o.to, o); + + return newTextNode; +} + +$.translateTextNodes = function(root){ + var args = [].slice.call(arguments,0); + args.shift(); + +$.translate(function(){ + var o = $.translate._getOpt(args, $.translateTextNodes.defaults), + each = o.each, + nodes = getTextNodes(root, o.not), + contents = $.map(nodes, function(n){ return n.nodeValue; }), + from = $.translate.toLanguageCode(o.from), + obj = {}; + + o.nodes = nodes; + o.textNodes = true; + o.trim = false; + + if(o.fromOriginal) + $.each(nodes, function(i, textNode){ + var data = getData(textNode.parentNode, from, obj); + if( !data ) return true; + contents[i] = data; + }); + + function unshiftArgs(method){ + return function(){ + [].unshift.call(arguments, this.elements); + method.apply(this, arguments); + }; + } + + o.start = unshiftArgs(o.start); + o.onTimeout = unshiftArgs(o.onTimeout); + o.complete = unshiftArgs(o.complete); + + o.each = function(i){ + var args = arguments; + if(arguments.length !== 7) //if isn't called from _toggle + [].splice.call(args, 1, 0, this.elements[i]); + this.elements[i] = args[1] = _each.apply(this, args); + + each.apply(this, args); + }; + + $.translate(contents, o); + +}); +}; + +$.translate.fn._toggleTextNodes = function(){ + var o = this.options, to = o.to, stop; + + $.each(this.elements, $.translate._bind(function(i, textNode){ + this.i = i; + var parent = textNode.parentNode, + tr = getData(parent, to, this); + + if(!tr) return !(stop = true); + + this.translation.push(tr); + + o.each.call(this, i, textNode, tr, this.source[i], this.from, to, o); + //'from' will be undefined if it wasn't set + }, this)); + + !stop ? this._complete() : this._process(); + //o.complete.call(this, this.elements, this.translation, this.source, this.from, this.to, o); +}; + +$.fn.translateTextNodes = function(a, b, c){ + [].unshift.call(arguments, this); + $.translateTextNodes.apply(null, arguments); + return this; +}; + +$.translateTextNodes.defaults = $.fn.translateTextNodes.defaults = $.extend({}, $.translate._defaults); + + +})(jQuery); +/*!- + * Simple user interface extension for the jQuery Translate plugin + * Version: ${version} + * http://code.google.com/p/jquery-translate/ + */ +;(function($){ + +var defaults = { + tags: ["select", "option"], + filter: $.translate.isTranslatable, + label: $.translate.toNativeLanguage || + function(langCode, lang){ + return $.translate.capitalize(lang); + }, + includeUnknown: false +}; + +$.translate.ui = function(){ + var o = {}, str='', cs='', cl=''; + + if(typeof arguments[0] === "string") + o.tags = $.makeArray(arguments); + else o = arguments[0]; + + o = $.extend({}, defaults, $.translate.ui.defaults, o); + + if(o.tags[2]){ + cs = '<' + o.tags[2] + '>'; + cl = ''; + } + + var languages = $.translate.getLanguages(o.filter); + if(!o.includeUnknown) delete languages.UNKNOWN; + + $.each( languages, function(l, lc){ + str += ('<' + o.tags[1] + " value=" + lc + '>' + cs + + //$.translate.capitalize(l) + " - " + + o.label(lc, l) + + cl + ''); + }); + + return $('<' + o.tags[0] + ' class="jq-translate-ui">' + str + ''); + +}; + +$.translate.ui.defaults = $.extend({}, defaults); + + +})(jQuery); +/*!- + * Progress indicator extension for the jQuery Translate plugin + * Version: ${version} + * http://code.google.com/p/jquery-translate/ + */ + +;jQuery.translate.fn.progress = function(selector, options){ + if(!this.i) this._pr = 0; + this._pr += this.source[this.i].length; + var progress = 100 * this._pr / ( this.rawSource.length - ( 11 * (this.i + 1) ) ); + + if(selector){ + var e = jQuery(selector); + if( !this.i && !e.hasClass("ui-progressbar") ) + e.progressbar(options); + e.progressbar( "option", "value", progress ); + } + + return progress; +};/*!- + * Native language names extension for the jQuery Translate plugin + * Version: ${version} + * http://code.google.com/p/jquery-translate/ + */ +;(function($){ +$.translate.extend({ + + toNativeLanguage: function(lang){ + return $.translate.nativeLanguages[ lang ] || + $.translate.nativeLanguages[ $.translate.toLanguageCode(lang) ]; + }, + + nativeLanguages: { + "af":"Afrikaans", + "be":"Беларуская", + "is":"Íslenska", + "ga":"Gaeilge", + "mk":"Македонски", + "ms":"Bahasa Melayu", + "sw":"Kiswahili", + "cy":"Cymraeg", + "yi":"ייִדיש", + + "sq":"Shqipe", + "ar":"العربية", + "bg":"Български", + "ca":"Català", + "zh":"中文", + "zh-CN":"简体中文", + "zh-TW":"繁體中文", + "hr":"Hrvatski", + "cs":"Čeština", + "da":"Dansk", + "nl":"Nederlands", + "en":"English", + "et":"Eesti", + "tl":"Tagalog", + "fi":"Suomi", + "fr":"Français", + "gl":"Galego", + "de":"Deutsch", + "el":"Ελληνικά", + "iw":"עברית", + "hi":"हिन्दी", + "hu":"Magyar", + "id":"Bahasa Indonesia", + "it":"Italiano", + "ja":"日本語", + "ko":"한국어", + "lv":"Latviešu", + "lt":"Lietuvių", + "mt":"Malti", + "no":"Norsk", + "fa":"فارسی", + "pl":"Polski", + "pt-PT":"Português", + "ro":"Român", + "ru":"Русский", + "sr":"Српски", + "sk":"Slovenský", + "sl":"Slovenski", + "es":"Español", + "sv":"Svenska", + "th":"ไทย", + "tr":"Türkçe", + "uk":"Українська", + "vi":"Tiếng Việt" + } + +}); + +})(jQuery);/*!- + * Paralell extension for the jQuery Translate plugin + * Version: ${version} + * http://code.google.com/p/jquery-translate/ + */ + +;(function($){ +$.translate.extend({ + defer: function(){ + return $.translate._bind($.translate, null, arguments); + }, + + run: function(array, finished){ + var count = array.length; + $.each(array, function(){ + var inst = this(), + complete = inst.options.complete; + inst.options.complete = function(){ + complete.apply(this, arguments); + if(!--count) finished(); + }; + }); + } +}); + +})(jQuery); diff --git a/build/lib/helpdesk/static/helpdesk/js/sb-admin-2.js b/build/lib/helpdesk/static/helpdesk/js/sb-admin-2.js new file mode 100644 index 00000000..e5523140 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/js/sb-admin-2.js @@ -0,0 +1,42 @@ +$(function() { + $('#side-menu').metisMenu(); +}); + +//Loads the correct sidebar on window load, +//collapses the sidebar on window resize. +// Sets the min-height of #page-wrapper to window size +$(function() { + $(window).bind("load resize", function() { + var topOffset = 50; + var width = (this.window.innerWidth > 0) ? this.window.innerWidth : this.screen.width; + if (width < 768) { + $('div.navbar-collapse').addClass('collapse'); + topOffset = 100; // 2-row-menu + } else { + $('div.navbar-collapse').removeClass('collapse'); + } + + var height = ((this.window.innerHeight > 0) ? this.window.innerHeight : this.screen.height) - 1; + height = height - topOffset; + if (height < 1) height = 1; + if (height > topOffset) { + $("#page-wrapper").css("min-height", (height) + "px"); + } + }); + + var url = window.location; + // var element = $('ul.nav a').filter(function() { + // return this.href == url; + // }).addClass('active').parent().parent().addClass('in').parent(); + var element = $('ul.nav a').filter(function() { + return this.href == url; + }).addClass('active').parent(); + + while (true) { + if (element.is('li')) { + element = element.parent().addClass('in').parent(); + } else { + break; + } + } +}); diff --git a/build/lib/helpdesk/static/helpdesk/less/mixins.less b/build/lib/helpdesk/static/helpdesk/less/mixins.less new file mode 100644 index 00000000..c570996c --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/less/mixins.less @@ -0,0 +1 @@ +// Mixins diff --git a/build/lib/helpdesk/static/helpdesk/less/sb-admin-2.less b/build/lib/helpdesk/static/helpdesk/less/sb-admin-2.less new file mode 100644 index 00000000..157b6e27 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/less/sb-admin-2.less @@ -0,0 +1,548 @@ +@import "variables.less"; +@import "mixins.less"; + +// Global Styles + +body { + background-color: @gray-lightest; +} + +// Wrappers + +#wrapper { + width: 100%; +} + +#page-wrapper { + padding: 0 15px; + min-height: 568px; + background-color: white; +} + +@media(min-width:768px) { + #page-wrapper { + position: inherit; + margin: 0 0 0 250px; + padding: 0 30px; + border-left: 1px solid darken(@gray-lightest, 6.5%); + } +} + +// Navigation + +// --Topbar + +.navbar-top-links { + margin-right: 0; +} + +.navbar-top-links li { + display: inline-block; +} + +.navbar-top-links li:last-child { + margin-right: 15px; +} + +.navbar-top-links li a { + padding: 15px; + min-height: 50px; +} + +.navbar-top-links .dropdown-menu li { + display: block; +} + +.navbar-top-links .dropdown-menu li:last-child { + margin-right: 0; +} + +.navbar-top-links .dropdown-menu li a { + padding: 3px 20px; + min-height: 0; +} + +.navbar-top-links .dropdown-menu li a div { + white-space: normal; +} + +.navbar-top-links .dropdown-messages, +.navbar-top-links .dropdown-tasks, +.navbar-top-links .dropdown-alerts { + width: 310px; + min-width: 0; +} + +.navbar-top-links .dropdown-messages { + margin-left: 5px; +} + +.navbar-top-links .dropdown-tasks { + margin-left: -59px; +} + +.navbar-top-links .dropdown-alerts { + margin-left: -123px; +} + +.navbar-top-links .dropdown-user { + right: 0; + left: auto; +} + +// --Sidebar + +.sidebar { + .sidebar-nav.navbar-collapse { + padding-left: 0; + padding-right: 0; + } +} + +.sidebar .sidebar-search { + padding: 15px; +} + +.sidebar ul li { + border-bottom: 1px solid darken(@gray-lightest, 6.5%); + a { + &.active { + background-color: @gray-lighter; + } + } +} + +.sidebar .arrow { + float: right; +} + +.sidebar .fa.arrow:before { + content: "\f104"; +} + +.sidebar .active > a > .fa.arrow:before { + content: "\f107"; +} + +.sidebar .nav-second-level li, +.sidebar .nav-third-level li { + border-bottom: none !important; +} + +.sidebar .nav-second-level li a { + padding-left: 37px; +} + +.sidebar .nav-third-level li a { + padding-left: 52px; +} + +@media(min-width:768px) { + .sidebar { + z-index: 1; + position: absolute; + width: 250px; + margin-top: 51px; + } + + .navbar-top-links .dropdown-messages, + .navbar-top-links .dropdown-tasks, + .navbar-top-links .dropdown-alerts { + margin-left: auto; + } +} + +// Buttons + +.btn-outline { + color: inherit; + background-color: transparent; + transition: all .5s; +} + +.btn-primary.btn-outline { + color: @brand-primary; +} + +.btn-success.btn-outline { + color: @brand-success; +} + +.btn-info.btn-outline { + color: @brand-info; +} + +.btn-warning.btn-outline { + color: @brand-warning; +} + +.btn-danger.btn-outline { + color: @brand-danger; +} + +.btn-primary.btn-outline:hover, +.btn-success.btn-outline:hover, +.btn-info.btn-outline:hover, +.btn-warning.btn-outline:hover, +.btn-danger.btn-outline:hover { + color: white; +} + +// Chat Widget + +.chat { + margin: 0; + padding: 0; + list-style: none; +} + +.chat li { + margin-bottom: 10px; + padding-bottom: 5px; + border-bottom: 1px dotted @gray-light; +} + +.chat li.left .chat-body { + margin-left: 60px; +} + +.chat li.right .chat-body { + margin-right: 60px; +} + +.chat li .chat-body p { + margin: 0; +} + +.panel .slidedown .glyphicon, +.chat .glyphicon { + margin-right: 5px; +} + +.chat-panel .panel-body { + height: 350px; + overflow-y: scroll; +} + +// Login Page + +.login-panel { + margin-top: 25%; +} + +// Flot Charts Containers + +.flot-chart { + display: block; + height: 400px; +} + +.flot-chart-content { + width: 100%; + height: 100%; +} + +// DataTables Overrides + +table.dataTable thead .sorting, +table.dataTable thead .sorting_asc, +table.dataTable thead .sorting_desc, +table.dataTable thead .sorting_asc_disabled, +table.dataTable thead .sorting_desc_disabled { + background: transparent; +} + +table.dataTable thead .sorting_asc:after { + content: "\f0de"; + float: right; + font-family: fontawesome; +} + +table.dataTable thead .sorting_desc:after { + content: "\f0dd"; + float: right; + font-family: fontawesome; +} + +table.dataTable thead .sorting:after { + content: "\f0dc"; + float: right; + font-family: fontawesome; + color: rgba(50,50,50,.5); +} + +// Circle Buttons + +.btn-circle { + width: 30px; + height: 30px; + padding: 6px 0; + border-radius: 15px; + text-align: center; + font-size: 12px; + line-height: 1.428571429; +} + +.btn-circle.btn-lg { + width: 50px; + height: 50px; + padding: 10px 16px; + border-radius: 25px; + font-size: 18px; + line-height: 1.33; +} + +.btn-circle.btn-xl { + width: 70px; + height: 70px; + padding: 10px 16px; + border-radius: 35px; + font-size: 24px; + line-height: 1.33; +} + +// Grid Demo Elements + +.show-grid [class^="col-"] { + padding-top: 10px; + padding-bottom: 10px; + border: 1px solid #ddd; + background-color: #eee !important; +} + +.show-grid { + margin: 15px 0; +} + +// Custom Colored Panels + +.huge { + font-size: 40px; +} + +.panel-green { + border-color: @brand-success; + > .panel-heading { + border-color: @brand-success; + color: white; + background-color: @brand-success; + } + > a { + color: @brand-success; + &:hover { + color: darken(@brand-success, 15%); + } + } +} + +.panel-red { + border-color: @brand-danger; + > .panel-heading { + border-color: @brand-danger; + color: white; + background-color: @brand-danger; + } + > a { + color: @brand-danger; + &:hover { + color: darken(@brand-danger, 15%); + } + } +} + +.panel-yellow { + border-color: @brand-warning; + > .panel-heading { + border-color: @brand-warning; + color: white; + background-color: @brand-warning; + } + > a { + color: @brand-warning; + &:hover { + color: darken(@brand-warning, 15%); + } + } +} + +// Timeline +.timeline { + position: relative; + padding: 20px 0 20px; + list-style: none; +} + +.timeline:before { + content: " "; + position: absolute; + top: 0; + bottom: 0; + left: 50%; + width: 3px; + margin-left: -1.5px; + background-color: #eeeeee; +} + +.timeline > li { + position: relative; + margin-bottom: 20px; +} + +.timeline > li:before, +.timeline > li:after { + content: " "; + display: table; +} + +.timeline > li:after { + clear: both; +} + +.timeline > li:before, +.timeline > li:after { + content: " "; + display: table; +} + +.timeline > li:after { + clear: both; +} + +.timeline > li > .timeline-panel { + float: left; + position: relative; + width: 46%; + padding: 20px; + border: 1px solid #d4d4d4; + border-radius: 2px; + -webkit-box-shadow: 0 1px 6px rgba(0,0,0,0.175); + box-shadow: 0 1px 6px rgba(0,0,0,0.175); +} + +.timeline > li > .timeline-panel:before { + content: " "; + display: inline-block; + position: absolute; + top: 26px; + right: -15px; + border-top: 15px solid transparent; + border-right: 0 solid #ccc; + border-bottom: 15px solid transparent; + border-left: 15px solid #ccc; +} + +.timeline > li > .timeline-panel:after { + content: " "; + display: inline-block; + position: absolute; + top: 27px; + right: -14px; + border-top: 14px solid transparent; + border-right: 0 solid #fff; + border-bottom: 14px solid transparent; + border-left: 14px solid #fff; +} + +.timeline > li > .timeline-badge { + z-index: 100; + position: absolute; + top: 16px; + left: 50%; + width: 50px; + height: 50px; + margin-left: -25px; + border-radius: 50% 50% 50% 50%; + text-align: center; + font-size: 1.4em; + line-height: 50px; + color: #fff; + background-color: #999999; +} + +.timeline > li.timeline-inverted > .timeline-panel { + float: right; +} + +.timeline > li.timeline-inverted > .timeline-panel:before { + right: auto; + left: -15px; + border-right-width: 15px; + border-left-width: 0; +} + +.timeline > li.timeline-inverted > .timeline-panel:after { + right: auto; + left: -14px; + border-right-width: 14px; + border-left-width: 0; +} + +.timeline-badge.primary { + background-color: #2e6da4 !important; +} + +.timeline-badge.success { + background-color: #3f903f !important; +} + +.timeline-badge.warning { + background-color: #f0ad4e !important; +} + +.timeline-badge.danger { + background-color: #d9534f !important; +} + +.timeline-badge.info { + background-color: #5bc0de !important; +} + +.timeline-title { + margin-top: 0; + color: inherit; +} + +.timeline-body > p, +.timeline-body > ul { + margin-bottom: 0; +} + +.timeline-body > p + p { + margin-top: 5px; +} + +@media(max-width:767px) { + ul.timeline:before { + left: 40px; + } + + ul.timeline > li > .timeline-panel { + width: calc(100% - 90px); + width: -moz-calc(100% - 90px); + width: -webkit-calc(100% - 90px); + } + + ul.timeline > li > .timeline-badge { + top: 16px; + left: 15px; + margin-left: 0; + } + + ul.timeline > li > .timeline-panel { + float: right; + } + + ul.timeline > li > .timeline-panel:before { + right: auto; + left: -15px; + border-right-width: 15px; + border-left-width: 0; + } + + ul.timeline > li > .timeline-panel:after { + right: auto; + left: -14px; + border-right-width: 14px; + border-left-width: 0; + } +} diff --git a/build/lib/helpdesk/static/helpdesk/less/variables.less b/build/lib/helpdesk/static/helpdesk/less/variables.less new file mode 100644 index 00000000..22f0fc98 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/less/variables.less @@ -0,0 +1,14 @@ +// Variables + +@gray-darker: lighten(#000, 13.5%); +@gray-dark: lighten(#000, 20%); +@gray: lighten(#000, 33.5%); +@gray-light: lighten(#000, 60%); +@gray-lighter: lighten(#000, 93.5%); +@gray-lightest: lighten(#000, 97.25%); +@brand-primary: #428bca; +@brand-success: #5cb85c; +@brand-info: #5bc0de; +@brand-warning: #f0ad4e; +@brand-danger: #d9534f; + diff --git a/build/lib/helpdesk/static/helpdesk/vendor/bootstrap-social/bootstrap-social.css b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap-social/bootstrap-social.css new file mode 100644 index 00000000..93e16f76 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap-social/bootstrap-social.css @@ -0,0 +1,147 @@ +/* + * Social Buttons for Bootstrap + * + * Copyright 2013-2016 Panayiotis Lipiridis + * Licensed under the MIT License + * + * https://github.com/lipis/bootstrap-social + */ + +.btn-social{position:relative;padding-left:44px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.btn-social>:first-child{position:absolute;left:0;top:0;bottom:0;width:32px;line-height:34px;font-size:1.6em;text-align:center;border-right:1px solid rgba(0,0,0,0.2)} +.btn-social.btn-lg{padding-left:61px}.btn-social.btn-lg>:first-child{line-height:45px;width:45px;font-size:1.8em} +.btn-social.btn-sm{padding-left:38px}.btn-social.btn-sm>:first-child{line-height:28px;width:28px;font-size:1.4em} +.btn-social.btn-xs{padding-left:30px}.btn-social.btn-xs>:first-child{line-height:20px;width:20px;font-size:1.2em} +.btn-social-icon{position:relative;padding-left:44px;text-align:left;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;height:34px;width:34px;padding:0}.btn-social-icon>:first-child{position:absolute;left:0;top:0;bottom:0;width:32px;line-height:34px;font-size:1.6em;text-align:center;border-right:1px solid rgba(0,0,0,0.2)} +.btn-social-icon.btn-lg{padding-left:61px}.btn-social-icon.btn-lg>:first-child{line-height:45px;width:45px;font-size:1.8em} +.btn-social-icon.btn-sm{padding-left:38px}.btn-social-icon.btn-sm>:first-child{line-height:28px;width:28px;font-size:1.4em} +.btn-social-icon.btn-xs{padding-left:30px}.btn-social-icon.btn-xs>:first-child{line-height:20px;width:20px;font-size:1.2em} +.btn-social-icon>:first-child{border:none;text-align:center;width:100% !important} +.btn-social-icon.btn-lg{height:45px;width:45px;padding-left:0;padding-right:0} +.btn-social-icon.btn-sm{height:30px;width:30px;padding-left:0;padding-right:0} +.btn-social-icon.btn-xs{height:22px;width:22px;padding-left:0;padding-right:0} +.btn-adn{color:#fff;background-color:#d87a68;border-color:rgba(0,0,0,0.2)}.btn-adn:focus,.btn-adn.focus{color:#fff;background-color:#ce563f;border-color:rgba(0,0,0,0.2)} +.btn-adn:hover{color:#fff;background-color:#ce563f;border-color:rgba(0,0,0,0.2)} +.btn-adn:active,.btn-adn.active,.open>.dropdown-toggle.btn-adn{color:#fff;background-color:#ce563f;border-color:rgba(0,0,0,0.2)}.btn-adn:active:hover,.btn-adn.active:hover,.open>.dropdown-toggle.btn-adn:hover,.btn-adn:active:focus,.btn-adn.active:focus,.open>.dropdown-toggle.btn-adn:focus,.btn-adn:active.focus,.btn-adn.active.focus,.open>.dropdown-toggle.btn-adn.focus{color:#fff;background-color:#b94630;border-color:rgba(0,0,0,0.2)} +.btn-adn:active,.btn-adn.active,.open>.dropdown-toggle.btn-adn{background-image:none} +.btn-adn.disabled:hover,.btn-adn[disabled]:hover,fieldset[disabled] .btn-adn:hover,.btn-adn.disabled:focus,.btn-adn[disabled]:focus,fieldset[disabled] .btn-adn:focus,.btn-adn.disabled.focus,.btn-adn[disabled].focus,fieldset[disabled] .btn-adn.focus{background-color:#d87a68;border-color:rgba(0,0,0,0.2)} +.btn-adn .badge{color:#d87a68;background-color:#fff} +.btn-bitbucket{color:#fff;background-color:#205081;border-color:rgba(0,0,0,0.2)}.btn-bitbucket:focus,.btn-bitbucket.focus{color:#fff;background-color:#163758;border-color:rgba(0,0,0,0.2)} +.btn-bitbucket:hover{color:#fff;background-color:#163758;border-color:rgba(0,0,0,0.2)} +.btn-bitbucket:active,.btn-bitbucket.active,.open>.dropdown-toggle.btn-bitbucket{color:#fff;background-color:#163758;border-color:rgba(0,0,0,0.2)}.btn-bitbucket:active:hover,.btn-bitbucket.active:hover,.open>.dropdown-toggle.btn-bitbucket:hover,.btn-bitbucket:active:focus,.btn-bitbucket.active:focus,.open>.dropdown-toggle.btn-bitbucket:focus,.btn-bitbucket:active.focus,.btn-bitbucket.active.focus,.open>.dropdown-toggle.btn-bitbucket.focus{color:#fff;background-color:#0f253c;border-color:rgba(0,0,0,0.2)} +.btn-bitbucket:active,.btn-bitbucket.active,.open>.dropdown-toggle.btn-bitbucket{background-image:none} +.btn-bitbucket.disabled:hover,.btn-bitbucket[disabled]:hover,fieldset[disabled] .btn-bitbucket:hover,.btn-bitbucket.disabled:focus,.btn-bitbucket[disabled]:focus,fieldset[disabled] .btn-bitbucket:focus,.btn-bitbucket.disabled.focus,.btn-bitbucket[disabled].focus,fieldset[disabled] .btn-bitbucket.focus{background-color:#205081;border-color:rgba(0,0,0,0.2)} +.btn-bitbucket .badge{color:#205081;background-color:#fff} +.btn-dropbox{color:#fff;background-color:#1087dd;border-color:rgba(0,0,0,0.2)}.btn-dropbox:focus,.btn-dropbox.focus{color:#fff;background-color:#0d6aad;border-color:rgba(0,0,0,0.2)} +.btn-dropbox:hover{color:#fff;background-color:#0d6aad;border-color:rgba(0,0,0,0.2)} +.btn-dropbox:active,.btn-dropbox.active,.open>.dropdown-toggle.btn-dropbox{color:#fff;background-color:#0d6aad;border-color:rgba(0,0,0,0.2)}.btn-dropbox:active:hover,.btn-dropbox.active:hover,.open>.dropdown-toggle.btn-dropbox:hover,.btn-dropbox:active:focus,.btn-dropbox.active:focus,.open>.dropdown-toggle.btn-dropbox:focus,.btn-dropbox:active.focus,.btn-dropbox.active.focus,.open>.dropdown-toggle.btn-dropbox.focus{color:#fff;background-color:#0a568c;border-color:rgba(0,0,0,0.2)} +.btn-dropbox:active,.btn-dropbox.active,.open>.dropdown-toggle.btn-dropbox{background-image:none} +.btn-dropbox.disabled:hover,.btn-dropbox[disabled]:hover,fieldset[disabled] .btn-dropbox:hover,.btn-dropbox.disabled:focus,.btn-dropbox[disabled]:focus,fieldset[disabled] .btn-dropbox:focus,.btn-dropbox.disabled.focus,.btn-dropbox[disabled].focus,fieldset[disabled] .btn-dropbox.focus{background-color:#1087dd;border-color:rgba(0,0,0,0.2)} +.btn-dropbox .badge{color:#1087dd;background-color:#fff} +.btn-facebook{color:#fff;background-color:#3b5998;border-color:rgba(0,0,0,0.2)}.btn-facebook:focus,.btn-facebook.focus{color:#fff;background-color:#2d4373;border-color:rgba(0,0,0,0.2)} +.btn-facebook:hover{color:#fff;background-color:#2d4373;border-color:rgba(0,0,0,0.2)} +.btn-facebook:active,.btn-facebook.active,.open>.dropdown-toggle.btn-facebook{color:#fff;background-color:#2d4373;border-color:rgba(0,0,0,0.2)}.btn-facebook:active:hover,.btn-facebook.active:hover,.open>.dropdown-toggle.btn-facebook:hover,.btn-facebook:active:focus,.btn-facebook.active:focus,.open>.dropdown-toggle.btn-facebook:focus,.btn-facebook:active.focus,.btn-facebook.active.focus,.open>.dropdown-toggle.btn-facebook.focus{color:#fff;background-color:#23345a;border-color:rgba(0,0,0,0.2)} +.btn-facebook:active,.btn-facebook.active,.open>.dropdown-toggle.btn-facebook{background-image:none} +.btn-facebook.disabled:hover,.btn-facebook[disabled]:hover,fieldset[disabled] .btn-facebook:hover,.btn-facebook.disabled:focus,.btn-facebook[disabled]:focus,fieldset[disabled] .btn-facebook:focus,.btn-facebook.disabled.focus,.btn-facebook[disabled].focus,fieldset[disabled] .btn-facebook.focus{background-color:#3b5998;border-color:rgba(0,0,0,0.2)} +.btn-facebook .badge{color:#3b5998;background-color:#fff} +.btn-flickr{color:#fff;background-color:#ff0084;border-color:rgba(0,0,0,0.2)}.btn-flickr:focus,.btn-flickr.focus{color:#fff;background-color:#cc006a;border-color:rgba(0,0,0,0.2)} +.btn-flickr:hover{color:#fff;background-color:#cc006a;border-color:rgba(0,0,0,0.2)} +.btn-flickr:active,.btn-flickr.active,.open>.dropdown-toggle.btn-flickr{color:#fff;background-color:#cc006a;border-color:rgba(0,0,0,0.2)}.btn-flickr:active:hover,.btn-flickr.active:hover,.open>.dropdown-toggle.btn-flickr:hover,.btn-flickr:active:focus,.btn-flickr.active:focus,.open>.dropdown-toggle.btn-flickr:focus,.btn-flickr:active.focus,.btn-flickr.active.focus,.open>.dropdown-toggle.btn-flickr.focus{color:#fff;background-color:#a80057;border-color:rgba(0,0,0,0.2)} +.btn-flickr:active,.btn-flickr.active,.open>.dropdown-toggle.btn-flickr{background-image:none} +.btn-flickr.disabled:hover,.btn-flickr[disabled]:hover,fieldset[disabled] .btn-flickr:hover,.btn-flickr.disabled:focus,.btn-flickr[disabled]:focus,fieldset[disabled] .btn-flickr:focus,.btn-flickr.disabled.focus,.btn-flickr[disabled].focus,fieldset[disabled] .btn-flickr.focus{background-color:#ff0084;border-color:rgba(0,0,0,0.2)} +.btn-flickr .badge{color:#ff0084;background-color:#fff} +.btn-foursquare{color:#fff;background-color:#f94877;border-color:rgba(0,0,0,0.2)}.btn-foursquare:focus,.btn-foursquare.focus{color:#fff;background-color:#f71752;border-color:rgba(0,0,0,0.2)} +.btn-foursquare:hover{color:#fff;background-color:#f71752;border-color:rgba(0,0,0,0.2)} +.btn-foursquare:active,.btn-foursquare.active,.open>.dropdown-toggle.btn-foursquare{color:#fff;background-color:#f71752;border-color:rgba(0,0,0,0.2)}.btn-foursquare:active:hover,.btn-foursquare.active:hover,.open>.dropdown-toggle.btn-foursquare:hover,.btn-foursquare:active:focus,.btn-foursquare.active:focus,.open>.dropdown-toggle.btn-foursquare:focus,.btn-foursquare:active.focus,.btn-foursquare.active.focus,.open>.dropdown-toggle.btn-foursquare.focus{color:#fff;background-color:#e30742;border-color:rgba(0,0,0,0.2)} +.btn-foursquare:active,.btn-foursquare.active,.open>.dropdown-toggle.btn-foursquare{background-image:none} +.btn-foursquare.disabled:hover,.btn-foursquare[disabled]:hover,fieldset[disabled] .btn-foursquare:hover,.btn-foursquare.disabled:focus,.btn-foursquare[disabled]:focus,fieldset[disabled] .btn-foursquare:focus,.btn-foursquare.disabled.focus,.btn-foursquare[disabled].focus,fieldset[disabled] .btn-foursquare.focus{background-color:#f94877;border-color:rgba(0,0,0,0.2)} +.btn-foursquare .badge{color:#f94877;background-color:#fff} +.btn-github{color:#fff;background-color:#444;border-color:rgba(0,0,0,0.2)}.btn-github:focus,.btn-github.focus{color:#fff;background-color:#2b2b2b;border-color:rgba(0,0,0,0.2)} +.btn-github:hover{color:#fff;background-color:#2b2b2b;border-color:rgba(0,0,0,0.2)} +.btn-github:active,.btn-github.active,.open>.dropdown-toggle.btn-github{color:#fff;background-color:#2b2b2b;border-color:rgba(0,0,0,0.2)}.btn-github:active:hover,.btn-github.active:hover,.open>.dropdown-toggle.btn-github:hover,.btn-github:active:focus,.btn-github.active:focus,.open>.dropdown-toggle.btn-github:focus,.btn-github:active.focus,.btn-github.active.focus,.open>.dropdown-toggle.btn-github.focus{color:#fff;background-color:#191919;border-color:rgba(0,0,0,0.2)} +.btn-github:active,.btn-github.active,.open>.dropdown-toggle.btn-github{background-image:none} +.btn-github.disabled:hover,.btn-github[disabled]:hover,fieldset[disabled] .btn-github:hover,.btn-github.disabled:focus,.btn-github[disabled]:focus,fieldset[disabled] .btn-github:focus,.btn-github.disabled.focus,.btn-github[disabled].focus,fieldset[disabled] .btn-github.focus{background-color:#444;border-color:rgba(0,0,0,0.2)} +.btn-github .badge{color:#444;background-color:#fff} +.btn-google{color:#fff;background-color:#dd4b39;border-color:rgba(0,0,0,0.2)}.btn-google:focus,.btn-google.focus{color:#fff;background-color:#c23321;border-color:rgba(0,0,0,0.2)} +.btn-google:hover{color:#fff;background-color:#c23321;border-color:rgba(0,0,0,0.2)} +.btn-google:active,.btn-google.active,.open>.dropdown-toggle.btn-google{color:#fff;background-color:#c23321;border-color:rgba(0,0,0,0.2)}.btn-google:active:hover,.btn-google.active:hover,.open>.dropdown-toggle.btn-google:hover,.btn-google:active:focus,.btn-google.active:focus,.open>.dropdown-toggle.btn-google:focus,.btn-google:active.focus,.btn-google.active.focus,.open>.dropdown-toggle.btn-google.focus{color:#fff;background-color:#a32b1c;border-color:rgba(0,0,0,0.2)} +.btn-google:active,.btn-google.active,.open>.dropdown-toggle.btn-google{background-image:none} +.btn-google.disabled:hover,.btn-google[disabled]:hover,fieldset[disabled] .btn-google:hover,.btn-google.disabled:focus,.btn-google[disabled]:focus,fieldset[disabled] .btn-google:focus,.btn-google.disabled.focus,.btn-google[disabled].focus,fieldset[disabled] .btn-google.focus{background-color:#dd4b39;border-color:rgba(0,0,0,0.2)} +.btn-google .badge{color:#dd4b39;background-color:#fff} +.btn-instagram{color:#fff;background-color:#3f729b;border-color:rgba(0,0,0,0.2)}.btn-instagram:focus,.btn-instagram.focus{color:#fff;background-color:#305777;border-color:rgba(0,0,0,0.2)} +.btn-instagram:hover{color:#fff;background-color:#305777;border-color:rgba(0,0,0,0.2)} +.btn-instagram:active,.btn-instagram.active,.open>.dropdown-toggle.btn-instagram{color:#fff;background-color:#305777;border-color:rgba(0,0,0,0.2)}.btn-instagram:active:hover,.btn-instagram.active:hover,.open>.dropdown-toggle.btn-instagram:hover,.btn-instagram:active:focus,.btn-instagram.active:focus,.open>.dropdown-toggle.btn-instagram:focus,.btn-instagram:active.focus,.btn-instagram.active.focus,.open>.dropdown-toggle.btn-instagram.focus{color:#fff;background-color:#26455d;border-color:rgba(0,0,0,0.2)} +.btn-instagram:active,.btn-instagram.active,.open>.dropdown-toggle.btn-instagram{background-image:none} +.btn-instagram.disabled:hover,.btn-instagram[disabled]:hover,fieldset[disabled] .btn-instagram:hover,.btn-instagram.disabled:focus,.btn-instagram[disabled]:focus,fieldset[disabled] .btn-instagram:focus,.btn-instagram.disabled.focus,.btn-instagram[disabled].focus,fieldset[disabled] .btn-instagram.focus{background-color:#3f729b;border-color:rgba(0,0,0,0.2)} +.btn-instagram .badge{color:#3f729b;background-color:#fff} +.btn-linkedin{color:#fff;background-color:#007bb6;border-color:rgba(0,0,0,0.2)}.btn-linkedin:focus,.btn-linkedin.focus{color:#fff;background-color:#005983;border-color:rgba(0,0,0,0.2)} +.btn-linkedin:hover{color:#fff;background-color:#005983;border-color:rgba(0,0,0,0.2)} +.btn-linkedin:active,.btn-linkedin.active,.open>.dropdown-toggle.btn-linkedin{color:#fff;background-color:#005983;border-color:rgba(0,0,0,0.2)}.btn-linkedin:active:hover,.btn-linkedin.active:hover,.open>.dropdown-toggle.btn-linkedin:hover,.btn-linkedin:active:focus,.btn-linkedin.active:focus,.open>.dropdown-toggle.btn-linkedin:focus,.btn-linkedin:active.focus,.btn-linkedin.active.focus,.open>.dropdown-toggle.btn-linkedin.focus{color:#fff;background-color:#00405f;border-color:rgba(0,0,0,0.2)} +.btn-linkedin:active,.btn-linkedin.active,.open>.dropdown-toggle.btn-linkedin{background-image:none} +.btn-linkedin.disabled:hover,.btn-linkedin[disabled]:hover,fieldset[disabled] .btn-linkedin:hover,.btn-linkedin.disabled:focus,.btn-linkedin[disabled]:focus,fieldset[disabled] .btn-linkedin:focus,.btn-linkedin.disabled.focus,.btn-linkedin[disabled].focus,fieldset[disabled] .btn-linkedin.focus{background-color:#007bb6;border-color:rgba(0,0,0,0.2)} +.btn-linkedin .badge{color:#007bb6;background-color:#fff} +.btn-microsoft{color:#fff;background-color:#2672ec;border-color:rgba(0,0,0,0.2)}.btn-microsoft:focus,.btn-microsoft.focus{color:#fff;background-color:#125acd;border-color:rgba(0,0,0,0.2)} +.btn-microsoft:hover{color:#fff;background-color:#125acd;border-color:rgba(0,0,0,0.2)} +.btn-microsoft:active,.btn-microsoft.active,.open>.dropdown-toggle.btn-microsoft{color:#fff;background-color:#125acd;border-color:rgba(0,0,0,0.2)}.btn-microsoft:active:hover,.btn-microsoft.active:hover,.open>.dropdown-toggle.btn-microsoft:hover,.btn-microsoft:active:focus,.btn-microsoft.active:focus,.open>.dropdown-toggle.btn-microsoft:focus,.btn-microsoft:active.focus,.btn-microsoft.active.focus,.open>.dropdown-toggle.btn-microsoft.focus{color:#fff;background-color:#0f4bac;border-color:rgba(0,0,0,0.2)} +.btn-microsoft:active,.btn-microsoft.active,.open>.dropdown-toggle.btn-microsoft{background-image:none} +.btn-microsoft.disabled:hover,.btn-microsoft[disabled]:hover,fieldset[disabled] .btn-microsoft:hover,.btn-microsoft.disabled:focus,.btn-microsoft[disabled]:focus,fieldset[disabled] .btn-microsoft:focus,.btn-microsoft.disabled.focus,.btn-microsoft[disabled].focus,fieldset[disabled] .btn-microsoft.focus{background-color:#2672ec;border-color:rgba(0,0,0,0.2)} +.btn-microsoft .badge{color:#2672ec;background-color:#fff} +.btn-odnoklassniki{color:#fff;background-color:#f4731c;border-color:rgba(0,0,0,0.2)}.btn-odnoklassniki:focus,.btn-odnoklassniki.focus{color:#fff;background-color:#d35b0a;border-color:rgba(0,0,0,0.2)} +.btn-odnoklassniki:hover{color:#fff;background-color:#d35b0a;border-color:rgba(0,0,0,0.2)} +.btn-odnoklassniki:active,.btn-odnoklassniki.active,.open>.dropdown-toggle.btn-odnoklassniki{color:#fff;background-color:#d35b0a;border-color:rgba(0,0,0,0.2)}.btn-odnoklassniki:active:hover,.btn-odnoklassniki.active:hover,.open>.dropdown-toggle.btn-odnoklassniki:hover,.btn-odnoklassniki:active:focus,.btn-odnoklassniki.active:focus,.open>.dropdown-toggle.btn-odnoklassniki:focus,.btn-odnoklassniki:active.focus,.btn-odnoklassniki.active.focus,.open>.dropdown-toggle.btn-odnoklassniki.focus{color:#fff;background-color:#b14c09;border-color:rgba(0,0,0,0.2)} +.btn-odnoklassniki:active,.btn-odnoklassniki.active,.open>.dropdown-toggle.btn-odnoklassniki{background-image:none} +.btn-odnoklassniki.disabled:hover,.btn-odnoklassniki[disabled]:hover,fieldset[disabled] .btn-odnoklassniki:hover,.btn-odnoklassniki.disabled:focus,.btn-odnoklassniki[disabled]:focus,fieldset[disabled] .btn-odnoklassniki:focus,.btn-odnoklassniki.disabled.focus,.btn-odnoklassniki[disabled].focus,fieldset[disabled] .btn-odnoklassniki.focus{background-color:#f4731c;border-color:rgba(0,0,0,0.2)} +.btn-odnoklassniki .badge{color:#f4731c;background-color:#fff} +.btn-openid{color:#fff;background-color:#f7931e;border-color:rgba(0,0,0,0.2)}.btn-openid:focus,.btn-openid.focus{color:#fff;background-color:#da7908;border-color:rgba(0,0,0,0.2)} +.btn-openid:hover{color:#fff;background-color:#da7908;border-color:rgba(0,0,0,0.2)} +.btn-openid:active,.btn-openid.active,.open>.dropdown-toggle.btn-openid{color:#fff;background-color:#da7908;border-color:rgba(0,0,0,0.2)}.btn-openid:active:hover,.btn-openid.active:hover,.open>.dropdown-toggle.btn-openid:hover,.btn-openid:active:focus,.btn-openid.active:focus,.open>.dropdown-toggle.btn-openid:focus,.btn-openid:active.focus,.btn-openid.active.focus,.open>.dropdown-toggle.btn-openid.focus{color:#fff;background-color:#b86607;border-color:rgba(0,0,0,0.2)} +.btn-openid:active,.btn-openid.active,.open>.dropdown-toggle.btn-openid{background-image:none} +.btn-openid.disabled:hover,.btn-openid[disabled]:hover,fieldset[disabled] .btn-openid:hover,.btn-openid.disabled:focus,.btn-openid[disabled]:focus,fieldset[disabled] .btn-openid:focus,.btn-openid.disabled.focus,.btn-openid[disabled].focus,fieldset[disabled] .btn-openid.focus{background-color:#f7931e;border-color:rgba(0,0,0,0.2)} +.btn-openid .badge{color:#f7931e;background-color:#fff} +.btn-pinterest{color:#fff;background-color:#cb2027;border-color:rgba(0,0,0,0.2)}.btn-pinterest:focus,.btn-pinterest.focus{color:#fff;background-color:#9f191f;border-color:rgba(0,0,0,0.2)} +.btn-pinterest:hover{color:#fff;background-color:#9f191f;border-color:rgba(0,0,0,0.2)} +.btn-pinterest:active,.btn-pinterest.active,.open>.dropdown-toggle.btn-pinterest{color:#fff;background-color:#9f191f;border-color:rgba(0,0,0,0.2)}.btn-pinterest:active:hover,.btn-pinterest.active:hover,.open>.dropdown-toggle.btn-pinterest:hover,.btn-pinterest:active:focus,.btn-pinterest.active:focus,.open>.dropdown-toggle.btn-pinterest:focus,.btn-pinterest:active.focus,.btn-pinterest.active.focus,.open>.dropdown-toggle.btn-pinterest.focus{color:#fff;background-color:#801419;border-color:rgba(0,0,0,0.2)} +.btn-pinterest:active,.btn-pinterest.active,.open>.dropdown-toggle.btn-pinterest{background-image:none} +.btn-pinterest.disabled:hover,.btn-pinterest[disabled]:hover,fieldset[disabled] .btn-pinterest:hover,.btn-pinterest.disabled:focus,.btn-pinterest[disabled]:focus,fieldset[disabled] .btn-pinterest:focus,.btn-pinterest.disabled.focus,.btn-pinterest[disabled].focus,fieldset[disabled] .btn-pinterest.focus{background-color:#cb2027;border-color:rgba(0,0,0,0.2)} +.btn-pinterest .badge{color:#cb2027;background-color:#fff} +.btn-reddit{color:#000;background-color:#eff7ff;border-color:rgba(0,0,0,0.2)}.btn-reddit:focus,.btn-reddit.focus{color:#000;background-color:#bcddff;border-color:rgba(0,0,0,0.2)} +.btn-reddit:hover{color:#000;background-color:#bcddff;border-color:rgba(0,0,0,0.2)} +.btn-reddit:active,.btn-reddit.active,.open>.dropdown-toggle.btn-reddit{color:#000;background-color:#bcddff;border-color:rgba(0,0,0,0.2)}.btn-reddit:active:hover,.btn-reddit.active:hover,.open>.dropdown-toggle.btn-reddit:hover,.btn-reddit:active:focus,.btn-reddit.active:focus,.open>.dropdown-toggle.btn-reddit:focus,.btn-reddit:active.focus,.btn-reddit.active.focus,.open>.dropdown-toggle.btn-reddit.focus{color:#000;background-color:#98ccff;border-color:rgba(0,0,0,0.2)} +.btn-reddit:active,.btn-reddit.active,.open>.dropdown-toggle.btn-reddit{background-image:none} +.btn-reddit.disabled:hover,.btn-reddit[disabled]:hover,fieldset[disabled] .btn-reddit:hover,.btn-reddit.disabled:focus,.btn-reddit[disabled]:focus,fieldset[disabled] .btn-reddit:focus,.btn-reddit.disabled.focus,.btn-reddit[disabled].focus,fieldset[disabled] .btn-reddit.focus{background-color:#eff7ff;border-color:rgba(0,0,0,0.2)} +.btn-reddit .badge{color:#eff7ff;background-color:#000} +.btn-soundcloud{color:#fff;background-color:#f50;border-color:rgba(0,0,0,0.2)}.btn-soundcloud:focus,.btn-soundcloud.focus{color:#fff;background-color:#c40;border-color:rgba(0,0,0,0.2)} +.btn-soundcloud:hover{color:#fff;background-color:#c40;border-color:rgba(0,0,0,0.2)} +.btn-soundcloud:active,.btn-soundcloud.active,.open>.dropdown-toggle.btn-soundcloud{color:#fff;background-color:#c40;border-color:rgba(0,0,0,0.2)}.btn-soundcloud:active:hover,.btn-soundcloud.active:hover,.open>.dropdown-toggle.btn-soundcloud:hover,.btn-soundcloud:active:focus,.btn-soundcloud.active:focus,.open>.dropdown-toggle.btn-soundcloud:focus,.btn-soundcloud:active.focus,.btn-soundcloud.active.focus,.open>.dropdown-toggle.btn-soundcloud.focus{color:#fff;background-color:#a83800;border-color:rgba(0,0,0,0.2)} +.btn-soundcloud:active,.btn-soundcloud.active,.open>.dropdown-toggle.btn-soundcloud{background-image:none} +.btn-soundcloud.disabled:hover,.btn-soundcloud[disabled]:hover,fieldset[disabled] .btn-soundcloud:hover,.btn-soundcloud.disabled:focus,.btn-soundcloud[disabled]:focus,fieldset[disabled] .btn-soundcloud:focus,.btn-soundcloud.disabled.focus,.btn-soundcloud[disabled].focus,fieldset[disabled] .btn-soundcloud.focus{background-color:#f50;border-color:rgba(0,0,0,0.2)} +.btn-soundcloud .badge{color:#f50;background-color:#fff} +.btn-tumblr{color:#fff;background-color:#2c4762;border-color:rgba(0,0,0,0.2)}.btn-tumblr:focus,.btn-tumblr.focus{color:#fff;background-color:#1c2d3f;border-color:rgba(0,0,0,0.2)} +.btn-tumblr:hover{color:#fff;background-color:#1c2d3f;border-color:rgba(0,0,0,0.2)} +.btn-tumblr:active,.btn-tumblr.active,.open>.dropdown-toggle.btn-tumblr{color:#fff;background-color:#1c2d3f;border-color:rgba(0,0,0,0.2)}.btn-tumblr:active:hover,.btn-tumblr.active:hover,.open>.dropdown-toggle.btn-tumblr:hover,.btn-tumblr:active:focus,.btn-tumblr.active:focus,.open>.dropdown-toggle.btn-tumblr:focus,.btn-tumblr:active.focus,.btn-tumblr.active.focus,.open>.dropdown-toggle.btn-tumblr.focus{color:#fff;background-color:#111c26;border-color:rgba(0,0,0,0.2)} +.btn-tumblr:active,.btn-tumblr.active,.open>.dropdown-toggle.btn-tumblr{background-image:none} +.btn-tumblr.disabled:hover,.btn-tumblr[disabled]:hover,fieldset[disabled] .btn-tumblr:hover,.btn-tumblr.disabled:focus,.btn-tumblr[disabled]:focus,fieldset[disabled] .btn-tumblr:focus,.btn-tumblr.disabled.focus,.btn-tumblr[disabled].focus,fieldset[disabled] .btn-tumblr.focus{background-color:#2c4762;border-color:rgba(0,0,0,0.2)} +.btn-tumblr .badge{color:#2c4762;background-color:#fff} +.btn-twitter{color:#fff;background-color:#55acee;border-color:rgba(0,0,0,0.2)}.btn-twitter:focus,.btn-twitter.focus{color:#fff;background-color:#2795e9;border-color:rgba(0,0,0,0.2)} +.btn-twitter:hover{color:#fff;background-color:#2795e9;border-color:rgba(0,0,0,0.2)} +.btn-twitter:active,.btn-twitter.active,.open>.dropdown-toggle.btn-twitter{color:#fff;background-color:#2795e9;border-color:rgba(0,0,0,0.2)}.btn-twitter:active:hover,.btn-twitter.active:hover,.open>.dropdown-toggle.btn-twitter:hover,.btn-twitter:active:focus,.btn-twitter.active:focus,.open>.dropdown-toggle.btn-twitter:focus,.btn-twitter:active.focus,.btn-twitter.active.focus,.open>.dropdown-toggle.btn-twitter.focus{color:#fff;background-color:#1583d7;border-color:rgba(0,0,0,0.2)} +.btn-twitter:active,.btn-twitter.active,.open>.dropdown-toggle.btn-twitter{background-image:none} +.btn-twitter.disabled:hover,.btn-twitter[disabled]:hover,fieldset[disabled] .btn-twitter:hover,.btn-twitter.disabled:focus,.btn-twitter[disabled]:focus,fieldset[disabled] .btn-twitter:focus,.btn-twitter.disabled.focus,.btn-twitter[disabled].focus,fieldset[disabled] .btn-twitter.focus{background-color:#55acee;border-color:rgba(0,0,0,0.2)} +.btn-twitter .badge{color:#55acee;background-color:#fff} +.btn-vimeo{color:#fff;background-color:#1ab7ea;border-color:rgba(0,0,0,0.2)}.btn-vimeo:focus,.btn-vimeo.focus{color:#fff;background-color:#1295bf;border-color:rgba(0,0,0,0.2)} +.btn-vimeo:hover{color:#fff;background-color:#1295bf;border-color:rgba(0,0,0,0.2)} +.btn-vimeo:active,.btn-vimeo.active,.open>.dropdown-toggle.btn-vimeo{color:#fff;background-color:#1295bf;border-color:rgba(0,0,0,0.2)}.btn-vimeo:active:hover,.btn-vimeo.active:hover,.open>.dropdown-toggle.btn-vimeo:hover,.btn-vimeo:active:focus,.btn-vimeo.active:focus,.open>.dropdown-toggle.btn-vimeo:focus,.btn-vimeo:active.focus,.btn-vimeo.active.focus,.open>.dropdown-toggle.btn-vimeo.focus{color:#fff;background-color:#0f7b9f;border-color:rgba(0,0,0,0.2)} +.btn-vimeo:active,.btn-vimeo.active,.open>.dropdown-toggle.btn-vimeo{background-image:none} +.btn-vimeo.disabled:hover,.btn-vimeo[disabled]:hover,fieldset[disabled] .btn-vimeo:hover,.btn-vimeo.disabled:focus,.btn-vimeo[disabled]:focus,fieldset[disabled] .btn-vimeo:focus,.btn-vimeo.disabled.focus,.btn-vimeo[disabled].focus,fieldset[disabled] .btn-vimeo.focus{background-color:#1ab7ea;border-color:rgba(0,0,0,0.2)} +.btn-vimeo .badge{color:#1ab7ea;background-color:#fff} +.btn-vk{color:#fff;background-color:#587ea3;border-color:rgba(0,0,0,0.2)}.btn-vk:focus,.btn-vk.focus{color:#fff;background-color:#466482;border-color:rgba(0,0,0,0.2)} +.btn-vk:hover{color:#fff;background-color:#466482;border-color:rgba(0,0,0,0.2)} +.btn-vk:active,.btn-vk.active,.open>.dropdown-toggle.btn-vk{color:#fff;background-color:#466482;border-color:rgba(0,0,0,0.2)}.btn-vk:active:hover,.btn-vk.active:hover,.open>.dropdown-toggle.btn-vk:hover,.btn-vk:active:focus,.btn-vk.active:focus,.open>.dropdown-toggle.btn-vk:focus,.btn-vk:active.focus,.btn-vk.active.focus,.open>.dropdown-toggle.btn-vk.focus{color:#fff;background-color:#3a526b;border-color:rgba(0,0,0,0.2)} +.btn-vk:active,.btn-vk.active,.open>.dropdown-toggle.btn-vk{background-image:none} +.btn-vk.disabled:hover,.btn-vk[disabled]:hover,fieldset[disabled] .btn-vk:hover,.btn-vk.disabled:focus,.btn-vk[disabled]:focus,fieldset[disabled] .btn-vk:focus,.btn-vk.disabled.focus,.btn-vk[disabled].focus,fieldset[disabled] .btn-vk.focus{background-color:#587ea3;border-color:rgba(0,0,0,0.2)} +.btn-vk .badge{color:#587ea3;background-color:#fff} +.btn-yahoo{color:#fff;background-color:#720e9e;border-color:rgba(0,0,0,0.2)}.btn-yahoo:focus,.btn-yahoo.focus{color:#fff;background-color:#500a6f;border-color:rgba(0,0,0,0.2)} +.btn-yahoo:hover{color:#fff;background-color:#500a6f;border-color:rgba(0,0,0,0.2)} +.btn-yahoo:active,.btn-yahoo.active,.open>.dropdown-toggle.btn-yahoo{color:#fff;background-color:#500a6f;border-color:rgba(0,0,0,0.2)}.btn-yahoo:active:hover,.btn-yahoo.active:hover,.open>.dropdown-toggle.btn-yahoo:hover,.btn-yahoo:active:focus,.btn-yahoo.active:focus,.open>.dropdown-toggle.btn-yahoo:focus,.btn-yahoo:active.focus,.btn-yahoo.active.focus,.open>.dropdown-toggle.btn-yahoo.focus{color:#fff;background-color:#39074e;border-color:rgba(0,0,0,0.2)} +.btn-yahoo:active,.btn-yahoo.active,.open>.dropdown-toggle.btn-yahoo{background-image:none} +.btn-yahoo.disabled:hover,.btn-yahoo[disabled]:hover,fieldset[disabled] .btn-yahoo:hover,.btn-yahoo.disabled:focus,.btn-yahoo[disabled]:focus,fieldset[disabled] .btn-yahoo:focus,.btn-yahoo.disabled.focus,.btn-yahoo[disabled].focus,fieldset[disabled] .btn-yahoo.focus{background-color:#720e9e;border-color:rgba(0,0,0,0.2)} +.btn-yahoo .badge{color:#720e9e;background-color:#fff} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/bootstrap-social/bootstrap-social.less b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap-social/bootstrap-social.less new file mode 100644 index 00000000..63d2b0eb --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap-social/bootstrap-social.less @@ -0,0 +1,115 @@ +/* + * Social Buttons for Bootstrap + * + * Copyright 2013-2016 Panayiotis Lipiridis + * Licensed under the MIT License + * + * https://github.com/lipis/bootstrap-social + */ + +@bs-height-base: (@line-height-computed + @padding-base-vertical * 2); +@bs-height-lg: (floor(@font-size-large * @line-height-base) + @padding-large-vertical * 2); +@bs-height-sm: (floor(@font-size-small * 1.5) + @padding-small-vertical * 2); +@bs-height-xs: (floor(@font-size-small * 1.2) + @padding-small-vertical + 1); + +.btn-social { + position: relative; + padding-left: (@bs-height-base + @padding-base-horizontal); + text-align: left; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + > :first-child { + position: absolute; + left: 0; + top: 0; + bottom: 0; + width: @bs-height-base; + line-height: (@bs-height-base + 2); + font-size: 1.6em; + text-align: center; + border-right: 1px solid rgba(0, 0, 0, 0.2); + } + &.btn-lg { + padding-left: (@bs-height-lg + @padding-large-horizontal); + > :first-child { + line-height: @bs-height-lg; + width: @bs-height-lg; + font-size: 1.8em; + } + } + &.btn-sm { + padding-left: (@bs-height-sm + @padding-small-horizontal); + > :first-child { + line-height: @bs-height-sm; + width: @bs-height-sm; + font-size: 1.4em; + } + } + &.btn-xs { + padding-left: (@bs-height-xs + @padding-small-horizontal); + > :first-child { + line-height: @bs-height-xs; + width: @bs-height-xs; + font-size: 1.2em; + } + } +} + +.btn-social-icon { + .btn-social; + height: (@bs-height-base + 2); + width: (@bs-height-base + 2); + padding: 0; + > :first-child { + border: none; + text-align: center; + width: 100%!important; + } + &.btn-lg { + height: @bs-height-lg; + width: @bs-height-lg; + padding-left: 0; + padding-right: 0; + } + &.btn-sm { + height: (@bs-height-sm + 2); + width: (@bs-height-sm + 2); + padding-left: 0; + padding-right: 0; + } + &.btn-xs { + height: (@bs-height-xs + 2); + width: (@bs-height-xs + 2); + padding-left: 0; + padding-right: 0; + } +} + +.btn-social(@color-bg, @color: #fff) { + background-color: @color-bg; + .button-variant(@color, @color-bg, rgba(0,0,0,.2)); +} + + +.btn-adn { .btn-social(#d87a68); } +.btn-bitbucket { .btn-social(#205081); } +.btn-dropbox { .btn-social(#1087dd); } +.btn-facebook { .btn-social(#3b5998); } +.btn-flickr { .btn-social(#ff0084); } +.btn-foursquare { .btn-social(#f94877); } +.btn-github { .btn-social(#444444); } +.btn-google { .btn-social(#dd4b39); } +.btn-instagram { .btn-social(#3f729b); } +.btn-linkedin { .btn-social(#007bb6); } +.btn-microsoft { .btn-social(#2672ec); } +.btn-odnoklassniki { .btn-social(#f4731c); } +.btn-openid { .btn-social(#f7931e); } +.btn-pinterest { .btn-social(#cb2027); } +.btn-reddit { .btn-social(#eff7ff, #000); } +.btn-soundcloud { .btn-social(#ff5500); } +.btn-tumblr { .btn-social(#2c4762); } +.btn-twitter { .btn-social(#55acee); } +.btn-vimeo { .btn-social(#1ab7ea); } +.btn-vk { .btn-social(#587ea3); } +.btn-yahoo { .btn-social(#720e9e); } diff --git a/build/lib/helpdesk/static/helpdesk/vendor/bootstrap-social/bootstrap-social.scss b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap-social/bootstrap-social.scss new file mode 100644 index 00000000..4448b01b --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap-social/bootstrap-social.scss @@ -0,0 +1,115 @@ +/* + * Social Buttons for Bootstrap + * + * Copyright 2013-2016 Panayiotis Lipiridis + * Licensed under the MIT License + * + * https://github.com/lipis/bootstrap-social + */ + +$bs-height-base: ($line-height-computed + $padding-base-vertical * 2) !default; +$bs-height-lg: (floor($font-size-large * $line-height-base) + $padding-large-vertical * 2) !default; +$bs-height-sm: (floor($font-size-small * 1.5) + $padding-small-vertical * 2) !default; +$bs-height-xs: (floor($font-size-small * 1.2) + $padding-small-vertical + 1) !default; + +.btn-social { + position: relative; + padding-left: ($bs-height-base + $padding-base-horizontal); + text-align: left; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + > :first-child { + position: absolute; + left: 0; + top: 0; + bottom: 0; + width: $bs-height-base; + line-height: ($bs-height-base + 2); + font-size: 1.6em; + text-align: center; + border-right: 1px solid rgba(0, 0, 0, 0.2); + } + &.btn-lg { + padding-left: ($bs-height-lg + $padding-large-horizontal); + > :first-child { + line-height: $bs-height-lg; + width: $bs-height-lg; + font-size: 1.8em; + } + } + &.btn-sm { + padding-left: ($bs-height-sm + $padding-small-horizontal); + > :first-child { + line-height: $bs-height-sm; + width: $bs-height-sm; + font-size: 1.4em; + } + } + &.btn-xs { + padding-left: ($bs-height-xs + $padding-small-horizontal); + > :first-child { + line-height: $bs-height-xs; + width: $bs-height-xs; + font-size: 1.2em; + } + } +} + +.btn-social-icon { + @extend .btn-social; + height: ($bs-height-base + 2); + width: ($bs-height-base + 2); + padding: 0; + > :first-child { + border: none; + text-align: center; + width: 100%!important; + } + &.btn-lg { + height: $bs-height-lg; + width: $bs-height-lg; + padding-left: 0; + padding-right: 0; + } + &.btn-sm { + height: ($bs-height-sm + 2); + width: ($bs-height-sm + 2); + padding-left: 0; + padding-right: 0; + } + &.btn-xs { + height: ($bs-height-xs + 2); + width: ($bs-height-xs + 2); + padding-left: 0; + padding-right: 0; + } +} + +@mixin btn-social($color-bg, $color: #fff) { + background-color: $color-bg; + @include button-variant($color, $color-bg, rgba(0,0,0,.2)); +} + + +.btn-adn { @include btn-social(#d87a68); } +.btn-bitbucket { @include btn-social(#205081); } +.btn-dropbox { @include btn-social(#1087dd); } +.btn-facebook { @include btn-social(#3b5998); } +.btn-flickr { @include btn-social(#ff0084); } +.btn-foursquare { @include btn-social(#f94877); } +.btn-github { @include btn-social(#444444); } +.btn-google { @include btn-social(#dd4b39); } +.btn-instagram { @include btn-social(#3f729b); } +.btn-linkedin { @include btn-social(#007bb6); } +.btn-microsoft { @include btn-social(#2672ec); } +.btn-odnoklassniki { @include btn-social(#f4731c); } +.btn-openid { @include btn-social(#f7931e); } +.btn-pinterest { @include btn-social(#cb2027); } +.btn-reddit { @include btn-social(#eff7ff, #000); } +.btn-soundcloud { @include btn-social(#ff5500); } +.btn-tumblr { @include btn-social(#2c4762); } +.btn-twitter { @include btn-social(#55acee); } +.btn-vimeo { @include btn-social(#1ab7ea); } +.btn-vk { @include btn-social(#587ea3); } +.btn-yahoo { @include btn-social(#720e9e); } diff --git a/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/css/bootstrap.css b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/css/bootstrap.css new file mode 100644 index 00000000..6167622c --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/css/bootstrap.css @@ -0,0 +1,6757 @@ +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + */ +/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */ +html { + font-family: sans-serif; + -webkit-text-size-adjust: 100%; + -ms-text-size-adjust: 100%; +} +body { + margin: 0; +} +article, +aside, +details, +figcaption, +figure, +footer, +header, +hgroup, +main, +menu, +nav, +section, +summary { + display: block; +} +audio, +canvas, +progress, +video { + display: inline-block; + vertical-align: baseline; +} +audio:not([controls]) { + display: none; + height: 0; +} +[hidden], +template { + display: none; +} +a { + background-color: transparent; +} +a:active, +a:hover { + outline: 0; +} +abbr[title] { + border-bottom: 1px dotted; +} +b, +strong { + font-weight: bold; +} +dfn { + font-style: italic; +} +h1 { + margin: .67em 0; + font-size: 2em; +} +mark { + color: #000; + background: #ff0; +} +small { + font-size: 80%; +} +sub, +sup { + position: relative; + font-size: 75%; + line-height: 0; + vertical-align: baseline; +} +sup { + top: -.5em; +} +sub { + bottom: -.25em; +} +img { + border: 0; +} +svg:not(:root) { + overflow: hidden; +} +figure { + margin: 1em 40px; +} +hr { + height: 0; + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; +} +pre { + overflow: auto; +} +code, +kbd, +pre, +samp { + font-family: monospace, monospace; + font-size: 1em; +} +button, +input, +optgroup, +select, +textarea { + margin: 0; + font: inherit; + color: inherit; +} +button { + overflow: visible; +} +button, +select { + text-transform: none; +} +button, +html input[type="button"], +input[type="reset"], +input[type="submit"] { + -webkit-appearance: button; + cursor: pointer; +} +button[disabled], +html input[disabled] { + cursor: default; +} +button::-moz-focus-inner, +input::-moz-focus-inner { + padding: 0; + border: 0; +} +input { + line-height: normal; +} +input[type="checkbox"], +input[type="radio"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; + padding: 0; +} +input[type="number"]::-webkit-inner-spin-button, +input[type="number"]::-webkit-outer-spin-button { + height: auto; +} +input[type="search"] { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; + -webkit-appearance: textfield; +} +input[type="search"]::-webkit-search-cancel-button, +input[type="search"]::-webkit-search-decoration { + -webkit-appearance: none; +} +fieldset { + padding: .35em .625em .75em; + margin: 0 2px; + border: 1px solid #c0c0c0; +} +legend { + padding: 0; + border: 0; +} +textarea { + overflow: auto; +} +optgroup { + font-weight: bold; +} +table { + border-spacing: 0; + border-collapse: collapse; +} +td, +th { + padding: 0; +} +/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */ +@media print { + *, + *:before, + *:after { + color: #000 !important; + text-shadow: none !important; + background: transparent !important; + -webkit-box-shadow: none !important; + box-shadow: none !important; + } + a, + a:visited { + text-decoration: underline; + } + a[href]:after { + content: " (" attr(href) ")"; + } + abbr[title]:after { + content: " (" attr(title) ")"; + } + a[href^="#"]:after, + a[href^="javascript:"]:after { + content: ""; + } + pre, + blockquote { + border: 1px solid #999; + + page-break-inside: avoid; + } + thead { + display: table-header-group; + } + tr, + img { + page-break-inside: avoid; + } + img { + max-width: 100% !important; + } + p, + h2, + h3 { + orphans: 3; + widows: 3; + } + h2, + h3 { + page-break-after: avoid; + } + .navbar { + display: none; + } + .btn > .caret, + .dropup > .btn > .caret { + border-top-color: #000 !important; + } + .label { + border: 1px solid #000; + } + .table { + border-collapse: collapse !important; + } + .table td, + .table th { + background-color: #fff !important; + } + .table-bordered th, + .table-bordered td { + border: 1px solid #ddd !important; + } +} +@font-face { + font-family: 'Glyphicons Halflings'; + + src: url('../fonts/glyphicons-halflings-regular.eot'); + src: url('../fonts/glyphicons-halflings-regular.eot?#iefix') format('embedded-opentype'), url('../fonts/glyphicons-halflings-regular.woff2') format('woff2'), url('../fonts/glyphicons-halflings-regular.woff') format('woff'), url('../fonts/glyphicons-halflings-regular.ttf') format('truetype'), url('../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular') format('svg'); +} +.glyphicon { + position: relative; + top: 1px; + display: inline-block; + font-family: 'Glyphicons Halflings'; + font-style: normal; + font-weight: normal; + line-height: 1; + + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} +.glyphicon-asterisk:before { + content: "\002a"; +} +.glyphicon-plus:before { + content: "\002b"; +} +.glyphicon-euro:before, +.glyphicon-eur:before { + content: "\20ac"; +} +.glyphicon-minus:before { + content: "\2212"; +} +.glyphicon-cloud:before { + content: "\2601"; +} +.glyphicon-envelope:before { + content: "\2709"; +} +.glyphicon-pencil:before { + content: "\270f"; +} +.glyphicon-glass:before { + content: "\e001"; +} +.glyphicon-music:before { + content: "\e002"; +} +.glyphicon-search:before { + content: "\e003"; +} +.glyphicon-heart:before { + content: "\e005"; +} +.glyphicon-star:before { + content: "\e006"; +} +.glyphicon-star-empty:before { + content: "\e007"; +} +.glyphicon-user:before { + content: "\e008"; +} +.glyphicon-film:before { + content: "\e009"; +} +.glyphicon-th-large:before { + content: "\e010"; +} +.glyphicon-th:before { + content: "\e011"; +} +.glyphicon-th-list:before { + content: "\e012"; +} +.glyphicon-ok:before { + content: "\e013"; +} +.glyphicon-remove:before { + content: "\e014"; +} +.glyphicon-zoom-in:before { + content: "\e015"; +} +.glyphicon-zoom-out:before { + content: "\e016"; +} +.glyphicon-off:before { + content: "\e017"; +} +.glyphicon-signal:before { + content: "\e018"; +} +.glyphicon-cog:before { + content: "\e019"; +} +.glyphicon-trash:before { + content: "\e020"; +} +.glyphicon-home:before { + content: "\e021"; +} +.glyphicon-file:before { + content: "\e022"; +} +.glyphicon-time:before { + content: "\e023"; +} +.glyphicon-road:before { + content: "\e024"; +} +.glyphicon-download-alt:before { + content: "\e025"; +} +.glyphicon-download:before { + content: "\e026"; +} +.glyphicon-upload:before { + content: "\e027"; +} +.glyphicon-inbox:before { + content: "\e028"; +} +.glyphicon-play-circle:before { + content: "\e029"; +} +.glyphicon-repeat:before { + content: "\e030"; +} +.glyphicon-refresh:before { + content: "\e031"; +} +.glyphicon-list-alt:before { + content: "\e032"; +} +.glyphicon-lock:before { + content: "\e033"; +} +.glyphicon-flag:before { + content: "\e034"; +} +.glyphicon-headphones:before { + content: "\e035"; +} +.glyphicon-volume-off:before { + content: "\e036"; +} +.glyphicon-volume-down:before { + content: "\e037"; +} +.glyphicon-volume-up:before { + content: "\e038"; +} +.glyphicon-qrcode:before { + content: "\e039"; +} +.glyphicon-barcode:before { + content: "\e040"; +} +.glyphicon-tag:before { + content: "\e041"; +} +.glyphicon-tags:before { + content: "\e042"; +} +.glyphicon-book:before { + content: "\e043"; +} +.glyphicon-bookmark:before { + content: "\e044"; +} +.glyphicon-print:before { + content: "\e045"; +} +.glyphicon-camera:before { + content: "\e046"; +} +.glyphicon-font:before { + content: "\e047"; +} +.glyphicon-bold:before { + content: "\e048"; +} +.glyphicon-italic:before { + content: "\e049"; +} +.glyphicon-text-height:before { + content: "\e050"; +} +.glyphicon-text-width:before { + content: "\e051"; +} +.glyphicon-align-left:before { + content: "\e052"; +} +.glyphicon-align-center:before { + content: "\e053"; +} +.glyphicon-align-right:before { + content: "\e054"; +} +.glyphicon-align-justify:before { + content: "\e055"; +} +.glyphicon-list:before { + content: "\e056"; +} +.glyphicon-indent-left:before { + content: "\e057"; +} +.glyphicon-indent-right:before { + content: "\e058"; +} +.glyphicon-facetime-video:before { + content: "\e059"; +} +.glyphicon-picture:before { + content: "\e060"; +} +.glyphicon-map-marker:before { + content: "\e062"; +} +.glyphicon-adjust:before { + content: "\e063"; +} +.glyphicon-tint:before { + content: "\e064"; +} +.glyphicon-edit:before { + content: "\e065"; +} +.glyphicon-share:before { + content: "\e066"; +} +.glyphicon-check:before { + content: "\e067"; +} +.glyphicon-move:before { + content: "\e068"; +} +.glyphicon-step-backward:before { + content: "\e069"; +} +.glyphicon-fast-backward:before { + content: "\e070"; +} +.glyphicon-backward:before { + content: "\e071"; +} +.glyphicon-play:before { + content: "\e072"; +} +.glyphicon-pause:before { + content: "\e073"; +} +.glyphicon-stop:before { + content: "\e074"; +} +.glyphicon-forward:before { + content: "\e075"; +} +.glyphicon-fast-forward:before { + content: "\e076"; +} +.glyphicon-step-forward:before { + content: "\e077"; +} +.glyphicon-eject:before { + content: "\e078"; +} +.glyphicon-chevron-left:before { + content: "\e079"; +} +.glyphicon-chevron-right:before { + content: "\e080"; +} +.glyphicon-plus-sign:before { + content: "\e081"; +} +.glyphicon-minus-sign:before { + content: "\e082"; +} +.glyphicon-remove-sign:before { + content: "\e083"; +} +.glyphicon-ok-sign:before { + content: "\e084"; +} +.glyphicon-question-sign:before { + content: "\e085"; +} +.glyphicon-info-sign:before { + content: "\e086"; +} +.glyphicon-screenshot:before { + content: "\e087"; +} +.glyphicon-remove-circle:before { + content: "\e088"; +} +.glyphicon-ok-circle:before { + content: "\e089"; +} +.glyphicon-ban-circle:before { + content: "\e090"; +} +.glyphicon-arrow-left:before { + content: "\e091"; +} +.glyphicon-arrow-right:before { + content: "\e092"; +} +.glyphicon-arrow-up:before { + content: "\e093"; +} +.glyphicon-arrow-down:before { + content: "\e094"; +} +.glyphicon-share-alt:before { + content: "\e095"; +} +.glyphicon-resize-full:before { + content: "\e096"; +} +.glyphicon-resize-small:before { + content: "\e097"; +} +.glyphicon-exclamation-sign:before { + content: "\e101"; +} +.glyphicon-gift:before { + content: "\e102"; +} +.glyphicon-leaf:before { + content: "\e103"; +} +.glyphicon-fire:before { + content: "\e104"; +} +.glyphicon-eye-open:before { + content: "\e105"; +} +.glyphicon-eye-close:before { + content: "\e106"; +} +.glyphicon-warning-sign:before { + content: "\e107"; +} +.glyphicon-plane:before { + content: "\e108"; +} +.glyphicon-calendar:before { + content: "\e109"; +} +.glyphicon-random:before { + content: "\e110"; +} +.glyphicon-comment:before { + content: "\e111"; +} +.glyphicon-magnet:before { + content: "\e112"; +} +.glyphicon-chevron-up:before { + content: "\e113"; +} +.glyphicon-chevron-down:before { + content: "\e114"; +} +.glyphicon-retweet:before { + content: "\e115"; +} +.glyphicon-shopping-cart:before { + content: "\e116"; +} +.glyphicon-folder-close:before { + content: "\e117"; +} +.glyphicon-folder-open:before { + content: "\e118"; +} +.glyphicon-resize-vertical:before { + content: "\e119"; +} +.glyphicon-resize-horizontal:before { + content: "\e120"; +} +.glyphicon-hdd:before { + content: "\e121"; +} +.glyphicon-bullhorn:before { + content: "\e122"; +} +.glyphicon-bell:before { + content: "\e123"; +} +.glyphicon-certificate:before { + content: "\e124"; +} +.glyphicon-thumbs-up:before { + content: "\e125"; +} +.glyphicon-thumbs-down:before { + content: "\e126"; +} +.glyphicon-hand-right:before { + content: "\e127"; +} +.glyphicon-hand-left:before { + content: "\e128"; +} +.glyphicon-hand-up:before { + content: "\e129"; +} +.glyphicon-hand-down:before { + content: "\e130"; +} +.glyphicon-circle-arrow-right:before { + content: "\e131"; +} +.glyphicon-circle-arrow-left:before { + content: "\e132"; +} +.glyphicon-circle-arrow-up:before { + content: "\e133"; +} +.glyphicon-circle-arrow-down:before { + content: "\e134"; +} +.glyphicon-globe:before { + content: "\e135"; +} +.glyphicon-wrench:before { + content: "\e136"; +} +.glyphicon-tasks:before { + content: "\e137"; +} +.glyphicon-filter:before { + content: "\e138"; +} +.glyphicon-briefcase:before { + content: "\e139"; +} +.glyphicon-fullscreen:before { + content: "\e140"; +} +.glyphicon-dashboard:before { + content: "\e141"; +} +.glyphicon-paperclip:before { + content: "\e142"; +} +.glyphicon-heart-empty:before { + content: "\e143"; +} +.glyphicon-link:before { + content: "\e144"; +} +.glyphicon-phone:before { + content: "\e145"; +} +.glyphicon-pushpin:before { + content: "\e146"; +} +.glyphicon-usd:before { + content: "\e148"; +} +.glyphicon-gbp:before { + content: "\e149"; +} +.glyphicon-sort:before { + content: "\e150"; +} +.glyphicon-sort-by-alphabet:before { + content: "\e151"; +} +.glyphicon-sort-by-alphabet-alt:before { + content: "\e152"; +} +.glyphicon-sort-by-order:before { + content: "\e153"; +} +.glyphicon-sort-by-order-alt:before { + content: "\e154"; +} +.glyphicon-sort-by-attributes:before { + content: "\e155"; +} +.glyphicon-sort-by-attributes-alt:before { + content: "\e156"; +} +.glyphicon-unchecked:before { + content: "\e157"; +} +.glyphicon-expand:before { + content: "\e158"; +} +.glyphicon-collapse-down:before { + content: "\e159"; +} +.glyphicon-collapse-up:before { + content: "\e160"; +} +.glyphicon-log-in:before { + content: "\e161"; +} +.glyphicon-flash:before { + content: "\e162"; +} +.glyphicon-log-out:before { + content: "\e163"; +} +.glyphicon-new-window:before { + content: "\e164"; +} +.glyphicon-record:before { + content: "\e165"; +} +.glyphicon-save:before { + content: "\e166"; +} +.glyphicon-open:before { + content: "\e167"; +} +.glyphicon-saved:before { + content: "\e168"; +} +.glyphicon-import:before { + content: "\e169"; +} +.glyphicon-export:before { + content: "\e170"; +} +.glyphicon-send:before { + content: "\e171"; +} +.glyphicon-floppy-disk:before { + content: "\e172"; +} +.glyphicon-floppy-saved:before { + content: "\e173"; +} +.glyphicon-floppy-remove:before { + content: "\e174"; +} +.glyphicon-floppy-save:before { + content: "\e175"; +} +.glyphicon-floppy-open:before { + content: "\e176"; +} +.glyphicon-credit-card:before { + content: "\e177"; +} +.glyphicon-transfer:before { + content: "\e178"; +} +.glyphicon-cutlery:before { + content: "\e179"; +} +.glyphicon-header:before { + content: "\e180"; +} +.glyphicon-compressed:before { + content: "\e181"; +} +.glyphicon-earphone:before { + content: "\e182"; +} +.glyphicon-phone-alt:before { + content: "\e183"; +} +.glyphicon-tower:before { + content: "\e184"; +} +.glyphicon-stats:before { + content: "\e185"; +} +.glyphicon-sd-video:before { + content: "\e186"; +} +.glyphicon-hd-video:before { + content: "\e187"; +} +.glyphicon-subtitles:before { + content: "\e188"; +} +.glyphicon-sound-stereo:before { + content: "\e189"; +} +.glyphicon-sound-dolby:before { + content: "\e190"; +} +.glyphicon-sound-5-1:before { + content: "\e191"; +} +.glyphicon-sound-6-1:before { + content: "\e192"; +} +.glyphicon-sound-7-1:before { + content: "\e193"; +} +.glyphicon-copyright-mark:before { + content: "\e194"; +} +.glyphicon-registration-mark:before { + content: "\e195"; +} +.glyphicon-cloud-download:before { + content: "\e197"; +} +.glyphicon-cloud-upload:before { + content: "\e198"; +} +.glyphicon-tree-conifer:before { + content: "\e199"; +} +.glyphicon-tree-deciduous:before { + content: "\e200"; +} +.glyphicon-cd:before { + content: "\e201"; +} +.glyphicon-save-file:before { + content: "\e202"; +} +.glyphicon-open-file:before { + content: "\e203"; +} +.glyphicon-level-up:before { + content: "\e204"; +} +.glyphicon-copy:before { + content: "\e205"; +} +.glyphicon-paste:before { + content: "\e206"; +} +.glyphicon-alert:before { + content: "\e209"; +} +.glyphicon-equalizer:before { + content: "\e210"; +} +.glyphicon-king:before { + content: "\e211"; +} +.glyphicon-queen:before { + content: "\e212"; +} +.glyphicon-pawn:before { + content: "\e213"; +} +.glyphicon-bishop:before { + content: "\e214"; +} +.glyphicon-knight:before { + content: "\e215"; +} +.glyphicon-baby-formula:before { + content: "\e216"; +} +.glyphicon-tent:before { + content: "\26fa"; +} +.glyphicon-blackboard:before { + content: "\e218"; +} +.glyphicon-bed:before { + content: "\e219"; +} +.glyphicon-apple:before { + content: "\f8ff"; +} +.glyphicon-erase:before { + content: "\e221"; +} +.glyphicon-hourglass:before { + content: "\231b"; +} +.glyphicon-lamp:before { + content: "\e223"; +} +.glyphicon-duplicate:before { + content: "\e224"; +} +.glyphicon-piggy-bank:before { + content: "\e225"; +} +.glyphicon-scissors:before { + content: "\e226"; +} +.glyphicon-bitcoin:before { + content: "\e227"; +} +.glyphicon-btc:before { + content: "\e227"; +} +.glyphicon-xbt:before { + content: "\e227"; +} +.glyphicon-yen:before { + content: "\00a5"; +} +.glyphicon-jpy:before { + content: "\00a5"; +} +.glyphicon-ruble:before { + content: "\20bd"; +} +.glyphicon-rub:before { + content: "\20bd"; +} +.glyphicon-scale:before { + content: "\e230"; +} +.glyphicon-ice-lolly:before { + content: "\e231"; +} +.glyphicon-ice-lolly-tasted:before { + content: "\e232"; +} +.glyphicon-education:before { + content: "\e233"; +} +.glyphicon-option-horizontal:before { + content: "\e234"; +} +.glyphicon-option-vertical:before { + content: "\e235"; +} +.glyphicon-menu-hamburger:before { + content: "\e236"; +} +.glyphicon-modal-window:before { + content: "\e237"; +} +.glyphicon-oil:before { + content: "\e238"; +} +.glyphicon-grain:before { + content: "\e239"; +} +.glyphicon-sunglasses:before { + content: "\e240"; +} +.glyphicon-text-size:before { + content: "\e241"; +} +.glyphicon-text-color:before { + content: "\e242"; +} +.glyphicon-text-background:before { + content: "\e243"; +} +.glyphicon-object-align-top:before { + content: "\e244"; +} +.glyphicon-object-align-bottom:before { + content: "\e245"; +} +.glyphicon-object-align-horizontal:before { + content: "\e246"; +} +.glyphicon-object-align-left:before { + content: "\e247"; +} +.glyphicon-object-align-vertical:before { + content: "\e248"; +} +.glyphicon-object-align-right:before { + content: "\e249"; +} +.glyphicon-triangle-right:before { + content: "\e250"; +} +.glyphicon-triangle-left:before { + content: "\e251"; +} +.glyphicon-triangle-bottom:before { + content: "\e252"; +} +.glyphicon-triangle-top:before { + content: "\e253"; +} +.glyphicon-console:before { + content: "\e254"; +} +.glyphicon-superscript:before { + content: "\e255"; +} +.glyphicon-subscript:before { + content: "\e256"; +} +.glyphicon-menu-left:before { + content: "\e257"; +} +.glyphicon-menu-right:before { + content: "\e258"; +} +.glyphicon-menu-down:before { + content: "\e259"; +} +.glyphicon-menu-up:before { + content: "\e260"; +} +* { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +*:before, +*:after { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +html { + font-size: 10px; + + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} +body { + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + line-height: 1.42857143; + color: #333; + background-color: #fff; +} +input, +button, +select, +textarea { + font-family: inherit; + font-size: inherit; + line-height: inherit; +} +a { + color: #337ab7; + text-decoration: none; +} +a:hover, +a:focus { + color: #23527c; + text-decoration: underline; +} +a:focus { + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +figure { + margin: 0; +} +img { + vertical-align: middle; +} +.img-responsive, +.thumbnail > img, +.thumbnail a > img, +.carousel-inner > .item > img, +.carousel-inner > .item > a > img { + display: block; + max-width: 100%; + height: auto; +} +.img-rounded { + border-radius: 6px; +} +.img-thumbnail { + display: inline-block; + max-width: 100%; + height: auto; + padding: 4px; + line-height: 1.42857143; + background-color: #fff; + border: 1px solid #ddd; + border-radius: 4px; + -webkit-transition: all .2s ease-in-out; + -o-transition: all .2s ease-in-out; + transition: all .2s ease-in-out; +} +.img-circle { + border-radius: 50%; +} +hr { + margin-top: 20px; + margin-bottom: 20px; + border: 0; + border-top: 1px solid #eee; +} +.sr-only { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + margin: -1px; + overflow: hidden; + clip: rect(0, 0, 0, 0); + border: 0; +} +.sr-only-focusable:active, +.sr-only-focusable:focus { + position: static; + width: auto; + height: auto; + margin: 0; + overflow: visible; + clip: auto; +} +[role="button"] { + cursor: pointer; +} +h1, +h2, +h3, +h4, +h5, +h6, +.h1, +.h2, +.h3, +.h4, +.h5, +.h6 { + font-family: inherit; + font-weight: 500; + line-height: 1.1; + color: inherit; +} +h1 small, +h2 small, +h3 small, +h4 small, +h5 small, +h6 small, +.h1 small, +.h2 small, +.h3 small, +.h4 small, +.h5 small, +.h6 small, +h1 .small, +h2 .small, +h3 .small, +h4 .small, +h5 .small, +h6 .small, +.h1 .small, +.h2 .small, +.h3 .small, +.h4 .small, +.h5 .small, +.h6 .small { + font-weight: normal; + line-height: 1; + color: #777; +} +h1, +.h1, +h2, +.h2, +h3, +.h3 { + margin-top: 20px; + margin-bottom: 10px; +} +h1 small, +.h1 small, +h2 small, +.h2 small, +h3 small, +.h3 small, +h1 .small, +.h1 .small, +h2 .small, +.h2 .small, +h3 .small, +.h3 .small { + font-size: 65%; +} +h4, +.h4, +h5, +.h5, +h6, +.h6 { + margin-top: 10px; + margin-bottom: 10px; +} +h4 small, +.h4 small, +h5 small, +.h5 small, +h6 small, +.h6 small, +h4 .small, +.h4 .small, +h5 .small, +.h5 .small, +h6 .small, +.h6 .small { + font-size: 75%; +} +h1, +.h1 { + font-size: 36px; +} +h2, +.h2 { + font-size: 30px; +} +h3, +.h3 { + font-size: 24px; +} +h4, +.h4 { + font-size: 18px; +} +h5, +.h5 { + font-size: 14px; +} +h6, +.h6 { + font-size: 12px; +} +p { + margin: 0 0 10px; +} +.lead { + margin-bottom: 20px; + font-size: 16px; + font-weight: 300; + line-height: 1.4; +} +@media (min-width: 768px) { + .lead { + font-size: 21px; + } +} +small, +.small { + font-size: 85%; +} +mark, +.mark { + padding: .2em; + background-color: #fcf8e3; +} +.text-left { + text-align: left; +} +.text-right { + text-align: right; +} +.text-center { + text-align: center; +} +.text-justify { + text-align: justify; +} +.text-nowrap { + white-space: nowrap; +} +.text-lowercase { + text-transform: lowercase; +} +.text-uppercase { + text-transform: uppercase; +} +.text-capitalize { + text-transform: capitalize; +} +.text-muted { + color: #777; +} +.text-primary { + color: #337ab7; +} +a.text-primary:hover, +a.text-primary:focus { + color: #286090; +} +.text-success { + color: #3c763d; +} +a.text-success:hover, +a.text-success:focus { + color: #2b542c; +} +.text-info { + color: #31708f; +} +a.text-info:hover, +a.text-info:focus { + color: #245269; +} +.text-warning { + color: #8a6d3b; +} +a.text-warning:hover, +a.text-warning:focus { + color: #66512c; +} +.text-danger { + color: #a94442; +} +a.text-danger:hover, +a.text-danger:focus { + color: #843534; +} +.bg-primary { + color: #fff; + background-color: #337ab7; +} +a.bg-primary:hover, +a.bg-primary:focus { + background-color: #286090; +} +.bg-success { + background-color: #dff0d8; +} +a.bg-success:hover, +a.bg-success:focus { + background-color: #c1e2b3; +} +.bg-info { + background-color: #d9edf7; +} +a.bg-info:hover, +a.bg-info:focus { + background-color: #afd9ee; +} +.bg-warning { + background-color: #fcf8e3; +} +a.bg-warning:hover, +a.bg-warning:focus { + background-color: #f7ecb5; +} +.bg-danger { + background-color: #f2dede; +} +a.bg-danger:hover, +a.bg-danger:focus { + background-color: #e4b9b9; +} +.page-header { + padding-bottom: 9px; + margin: 40px 0 20px; + border-bottom: 1px solid #eee; +} +ul, +ol { + margin-top: 0; + margin-bottom: 10px; +} +ul ul, +ol ul, +ul ol, +ol ol { + margin-bottom: 0; +} +.list-unstyled { + padding-left: 0; + list-style: none; +} +.list-inline { + padding-left: 0; + margin-left: -5px; + list-style: none; +} +.list-inline > li { + display: inline-block; + padding-right: 5px; + padding-left: 5px; +} +dl { + margin-top: 0; + margin-bottom: 20px; +} +dt, +dd { + line-height: 1.42857143; +} +dt { + font-weight: bold; +} +dd { + margin-left: 0; +} +@media (min-width: 768px) { + .dl-horizontal dt { + float: left; + width: 160px; + overflow: hidden; + clear: left; + text-align: right; + text-overflow: ellipsis; + white-space: nowrap; + } + .dl-horizontal dd { + margin-left: 180px; + } +} +abbr[title], +abbr[data-original-title] { + cursor: help; + border-bottom: 1px dotted #777; +} +.initialism { + font-size: 90%; + text-transform: uppercase; +} +blockquote { + padding: 10px 20px; + margin: 0 0 20px; + font-size: 17.5px; + border-left: 5px solid #eee; +} +blockquote p:last-child, +blockquote ul:last-child, +blockquote ol:last-child { + margin-bottom: 0; +} +blockquote footer, +blockquote small, +blockquote .small { + display: block; + font-size: 80%; + line-height: 1.42857143; + color: #777; +} +blockquote footer:before, +blockquote small:before, +blockquote .small:before { + content: '\2014 \00A0'; +} +.blockquote-reverse, +blockquote.pull-right { + padding-right: 15px; + padding-left: 0; + text-align: right; + border-right: 5px solid #eee; + border-left: 0; +} +.blockquote-reverse footer:before, +blockquote.pull-right footer:before, +.blockquote-reverse small:before, +blockquote.pull-right small:before, +.blockquote-reverse .small:before, +blockquote.pull-right .small:before { + content: ''; +} +.blockquote-reverse footer:after, +blockquote.pull-right footer:after, +.blockquote-reverse small:after, +blockquote.pull-right small:after, +.blockquote-reverse .small:after, +blockquote.pull-right .small:after { + content: '\00A0 \2014'; +} +address { + margin-bottom: 20px; + font-style: normal; + line-height: 1.42857143; +} +code, +kbd, +pre, +samp { + font-family: Menlo, Monaco, Consolas, "Courier New", monospace; +} +code { + padding: 2px 4px; + font-size: 90%; + color: #c7254e; + background-color: #f9f2f4; + border-radius: 4px; +} +kbd { + padding: 2px 4px; + font-size: 90%; + color: #fff; + background-color: #333; + border-radius: 3px; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25); +} +kbd kbd { + padding: 0; + font-size: 100%; + font-weight: bold; + -webkit-box-shadow: none; + box-shadow: none; +} +pre { + display: block; + padding: 9.5px; + margin: 0 0 10px; + font-size: 13px; + line-height: 1.42857143; + color: #333; + word-break: break-all; + word-wrap: break-word; + background-color: #f5f5f5; + border: 1px solid #ccc; + border-radius: 4px; +} +pre code { + padding: 0; + font-size: inherit; + color: inherit; + white-space: pre-wrap; + background-color: transparent; + border-radius: 0; +} +.pre-scrollable { + max-height: 340px; + overflow-y: scroll; +} +.container { + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} +@media (min-width: 768px) { + .container { + width: 750px; + } +} +@media (min-width: 992px) { + .container { + width: 970px; + } +} +@media (min-width: 1200px) { + .container { + width: 1170px; + } +} +.container-fluid { + padding-right: 15px; + padding-left: 15px; + margin-right: auto; + margin-left: auto; +} +.row { + margin-right: -15px; + margin-left: -15px; +} +.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 { + position: relative; + min-height: 1px; + padding-right: 15px; + padding-left: 15px; +} +.col-xs-1, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9, .col-xs-10, .col-xs-11, .col-xs-12 { + float: left; +} +.col-xs-12 { + width: 100%; +} +.col-xs-11 { + width: 91.66666667%; +} +.col-xs-10 { + width: 83.33333333%; +} +.col-xs-9 { + width: 75%; +} +.col-xs-8 { + width: 66.66666667%; +} +.col-xs-7 { + width: 58.33333333%; +} +.col-xs-6 { + width: 50%; +} +.col-xs-5 { + width: 41.66666667%; +} +.col-xs-4 { + width: 33.33333333%; +} +.col-xs-3 { + width: 25%; +} +.col-xs-2 { + width: 16.66666667%; +} +.col-xs-1 { + width: 8.33333333%; +} +.col-xs-pull-12 { + right: 100%; +} +.col-xs-pull-11 { + right: 91.66666667%; +} +.col-xs-pull-10 { + right: 83.33333333%; +} +.col-xs-pull-9 { + right: 75%; +} +.col-xs-pull-8 { + right: 66.66666667%; +} +.col-xs-pull-7 { + right: 58.33333333%; +} +.col-xs-pull-6 { + right: 50%; +} +.col-xs-pull-5 { + right: 41.66666667%; +} +.col-xs-pull-4 { + right: 33.33333333%; +} +.col-xs-pull-3 { + right: 25%; +} +.col-xs-pull-2 { + right: 16.66666667%; +} +.col-xs-pull-1 { + right: 8.33333333%; +} +.col-xs-pull-0 { + right: auto; +} +.col-xs-push-12 { + left: 100%; +} +.col-xs-push-11 { + left: 91.66666667%; +} +.col-xs-push-10 { + left: 83.33333333%; +} +.col-xs-push-9 { + left: 75%; +} +.col-xs-push-8 { + left: 66.66666667%; +} +.col-xs-push-7 { + left: 58.33333333%; +} +.col-xs-push-6 { + left: 50%; +} +.col-xs-push-5 { + left: 41.66666667%; +} +.col-xs-push-4 { + left: 33.33333333%; +} +.col-xs-push-3 { + left: 25%; +} +.col-xs-push-2 { + left: 16.66666667%; +} +.col-xs-push-1 { + left: 8.33333333%; +} +.col-xs-push-0 { + left: auto; +} +.col-xs-offset-12 { + margin-left: 100%; +} +.col-xs-offset-11 { + margin-left: 91.66666667%; +} +.col-xs-offset-10 { + margin-left: 83.33333333%; +} +.col-xs-offset-9 { + margin-left: 75%; +} +.col-xs-offset-8 { + margin-left: 66.66666667%; +} +.col-xs-offset-7 { + margin-left: 58.33333333%; +} +.col-xs-offset-6 { + margin-left: 50%; +} +.col-xs-offset-5 { + margin-left: 41.66666667%; +} +.col-xs-offset-4 { + margin-left: 33.33333333%; +} +.col-xs-offset-3 { + margin-left: 25%; +} +.col-xs-offset-2 { + margin-left: 16.66666667%; +} +.col-xs-offset-1 { + margin-left: 8.33333333%; +} +.col-xs-offset-0 { + margin-left: 0; +} +@media (min-width: 768px) { + .col-sm-1, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-sm-10, .col-sm-11, .col-sm-12 { + float: left; + } + .col-sm-12 { + width: 100%; + } + .col-sm-11 { + width: 91.66666667%; + } + .col-sm-10 { + width: 83.33333333%; + } + .col-sm-9 { + width: 75%; + } + .col-sm-8 { + width: 66.66666667%; + } + .col-sm-7 { + width: 58.33333333%; + } + .col-sm-6 { + width: 50%; + } + .col-sm-5 { + width: 41.66666667%; + } + .col-sm-4 { + width: 33.33333333%; + } + .col-sm-3 { + width: 25%; + } + .col-sm-2 { + width: 16.66666667%; + } + .col-sm-1 { + width: 8.33333333%; + } + .col-sm-pull-12 { + right: 100%; + } + .col-sm-pull-11 { + right: 91.66666667%; + } + .col-sm-pull-10 { + right: 83.33333333%; + } + .col-sm-pull-9 { + right: 75%; + } + .col-sm-pull-8 { + right: 66.66666667%; + } + .col-sm-pull-7 { + right: 58.33333333%; + } + .col-sm-pull-6 { + right: 50%; + } + .col-sm-pull-5 { + right: 41.66666667%; + } + .col-sm-pull-4 { + right: 33.33333333%; + } + .col-sm-pull-3 { + right: 25%; + } + .col-sm-pull-2 { + right: 16.66666667%; + } + .col-sm-pull-1 { + right: 8.33333333%; + } + .col-sm-pull-0 { + right: auto; + } + .col-sm-push-12 { + left: 100%; + } + .col-sm-push-11 { + left: 91.66666667%; + } + .col-sm-push-10 { + left: 83.33333333%; + } + .col-sm-push-9 { + left: 75%; + } + .col-sm-push-8 { + left: 66.66666667%; + } + .col-sm-push-7 { + left: 58.33333333%; + } + .col-sm-push-6 { + left: 50%; + } + .col-sm-push-5 { + left: 41.66666667%; + } + .col-sm-push-4 { + left: 33.33333333%; + } + .col-sm-push-3 { + left: 25%; + } + .col-sm-push-2 { + left: 16.66666667%; + } + .col-sm-push-1 { + left: 8.33333333%; + } + .col-sm-push-0 { + left: auto; + } + .col-sm-offset-12 { + margin-left: 100%; + } + .col-sm-offset-11 { + margin-left: 91.66666667%; + } + .col-sm-offset-10 { + margin-left: 83.33333333%; + } + .col-sm-offset-9 { + margin-left: 75%; + } + .col-sm-offset-8 { + margin-left: 66.66666667%; + } + .col-sm-offset-7 { + margin-left: 58.33333333%; + } + .col-sm-offset-6 { + margin-left: 50%; + } + .col-sm-offset-5 { + margin-left: 41.66666667%; + } + .col-sm-offset-4 { + margin-left: 33.33333333%; + } + .col-sm-offset-3 { + margin-left: 25%; + } + .col-sm-offset-2 { + margin-left: 16.66666667%; + } + .col-sm-offset-1 { + margin-left: 8.33333333%; + } + .col-sm-offset-0 { + margin-left: 0; + } +} +@media (min-width: 992px) { + .col-md-1, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-md-10, .col-md-11, .col-md-12 { + float: left; + } + .col-md-12 { + width: 100%; + } + .col-md-11 { + width: 91.66666667%; + } + .col-md-10 { + width: 83.33333333%; + } + .col-md-9 { + width: 75%; + } + .col-md-8 { + width: 66.66666667%; + } + .col-md-7 { + width: 58.33333333%; + } + .col-md-6 { + width: 50%; + } + .col-md-5 { + width: 41.66666667%; + } + .col-md-4 { + width: 33.33333333%; + } + .col-md-3 { + width: 25%; + } + .col-md-2 { + width: 16.66666667%; + } + .col-md-1 { + width: 8.33333333%; + } + .col-md-pull-12 { + right: 100%; + } + .col-md-pull-11 { + right: 91.66666667%; + } + .col-md-pull-10 { + right: 83.33333333%; + } + .col-md-pull-9 { + right: 75%; + } + .col-md-pull-8 { + right: 66.66666667%; + } + .col-md-pull-7 { + right: 58.33333333%; + } + .col-md-pull-6 { + right: 50%; + } + .col-md-pull-5 { + right: 41.66666667%; + } + .col-md-pull-4 { + right: 33.33333333%; + } + .col-md-pull-3 { + right: 25%; + } + .col-md-pull-2 { + right: 16.66666667%; + } + .col-md-pull-1 { + right: 8.33333333%; + } + .col-md-pull-0 { + right: auto; + } + .col-md-push-12 { + left: 100%; + } + .col-md-push-11 { + left: 91.66666667%; + } + .col-md-push-10 { + left: 83.33333333%; + } + .col-md-push-9 { + left: 75%; + } + .col-md-push-8 { + left: 66.66666667%; + } + .col-md-push-7 { + left: 58.33333333%; + } + .col-md-push-6 { + left: 50%; + } + .col-md-push-5 { + left: 41.66666667%; + } + .col-md-push-4 { + left: 33.33333333%; + } + .col-md-push-3 { + left: 25%; + } + .col-md-push-2 { + left: 16.66666667%; + } + .col-md-push-1 { + left: 8.33333333%; + } + .col-md-push-0 { + left: auto; + } + .col-md-offset-12 { + margin-left: 100%; + } + .col-md-offset-11 { + margin-left: 91.66666667%; + } + .col-md-offset-10 { + margin-left: 83.33333333%; + } + .col-md-offset-9 { + margin-left: 75%; + } + .col-md-offset-8 { + margin-left: 66.66666667%; + } + .col-md-offset-7 { + margin-left: 58.33333333%; + } + .col-md-offset-6 { + margin-left: 50%; + } + .col-md-offset-5 { + margin-left: 41.66666667%; + } + .col-md-offset-4 { + margin-left: 33.33333333%; + } + .col-md-offset-3 { + margin-left: 25%; + } + .col-md-offset-2 { + margin-left: 16.66666667%; + } + .col-md-offset-1 { + margin-left: 8.33333333%; + } + .col-md-offset-0 { + margin-left: 0; + } +} +@media (min-width: 1200px) { + .col-lg-1, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-lg-10, .col-lg-11, .col-lg-12 { + float: left; + } + .col-lg-12 { + width: 100%; + } + .col-lg-11 { + width: 91.66666667%; + } + .col-lg-10 { + width: 83.33333333%; + } + .col-lg-9 { + width: 75%; + } + .col-lg-8 { + width: 66.66666667%; + } + .col-lg-7 { + width: 58.33333333%; + } + .col-lg-6 { + width: 50%; + } + .col-lg-5 { + width: 41.66666667%; + } + .col-lg-4 { + width: 33.33333333%; + } + .col-lg-3 { + width: 25%; + } + .col-lg-2 { + width: 16.66666667%; + } + .col-lg-1 { + width: 8.33333333%; + } + .col-lg-pull-12 { + right: 100%; + } + .col-lg-pull-11 { + right: 91.66666667%; + } + .col-lg-pull-10 { + right: 83.33333333%; + } + .col-lg-pull-9 { + right: 75%; + } + .col-lg-pull-8 { + right: 66.66666667%; + } + .col-lg-pull-7 { + right: 58.33333333%; + } + .col-lg-pull-6 { + right: 50%; + } + .col-lg-pull-5 { + right: 41.66666667%; + } + .col-lg-pull-4 { + right: 33.33333333%; + } + .col-lg-pull-3 { + right: 25%; + } + .col-lg-pull-2 { + right: 16.66666667%; + } + .col-lg-pull-1 { + right: 8.33333333%; + } + .col-lg-pull-0 { + right: auto; + } + .col-lg-push-12 { + left: 100%; + } + .col-lg-push-11 { + left: 91.66666667%; + } + .col-lg-push-10 { + left: 83.33333333%; + } + .col-lg-push-9 { + left: 75%; + } + .col-lg-push-8 { + left: 66.66666667%; + } + .col-lg-push-7 { + left: 58.33333333%; + } + .col-lg-push-6 { + left: 50%; + } + .col-lg-push-5 { + left: 41.66666667%; + } + .col-lg-push-4 { + left: 33.33333333%; + } + .col-lg-push-3 { + left: 25%; + } + .col-lg-push-2 { + left: 16.66666667%; + } + .col-lg-push-1 { + left: 8.33333333%; + } + .col-lg-push-0 { + left: auto; + } + .col-lg-offset-12 { + margin-left: 100%; + } + .col-lg-offset-11 { + margin-left: 91.66666667%; + } + .col-lg-offset-10 { + margin-left: 83.33333333%; + } + .col-lg-offset-9 { + margin-left: 75%; + } + .col-lg-offset-8 { + margin-left: 66.66666667%; + } + .col-lg-offset-7 { + margin-left: 58.33333333%; + } + .col-lg-offset-6 { + margin-left: 50%; + } + .col-lg-offset-5 { + margin-left: 41.66666667%; + } + .col-lg-offset-4 { + margin-left: 33.33333333%; + } + .col-lg-offset-3 { + margin-left: 25%; + } + .col-lg-offset-2 { + margin-left: 16.66666667%; + } + .col-lg-offset-1 { + margin-left: 8.33333333%; + } + .col-lg-offset-0 { + margin-left: 0; + } +} +table { + background-color: transparent; +} +caption { + padding-top: 8px; + padding-bottom: 8px; + color: #777; + text-align: left; +} +th { + text-align: left; +} +.table { + width: 100%; + max-width: 100%; + margin-bottom: 20px; +} +.table > thead > tr > th, +.table > tbody > tr > th, +.table > tfoot > tr > th, +.table > thead > tr > td, +.table > tbody > tr > td, +.table > tfoot > tr > td { + padding: 8px; + line-height: 1.42857143; + vertical-align: top; + border-top: 1px solid #ddd; +} +.table > thead > tr > th { + vertical-align: bottom; + border-bottom: 2px solid #ddd; +} +.table > caption + thead > tr:first-child > th, +.table > colgroup + thead > tr:first-child > th, +.table > thead:first-child > tr:first-child > th, +.table > caption + thead > tr:first-child > td, +.table > colgroup + thead > tr:first-child > td, +.table > thead:first-child > tr:first-child > td { + border-top: 0; +} +.table > tbody + tbody { + border-top: 2px solid #ddd; +} +.table .table { + background-color: #fff; +} +.table-condensed > thead > tr > th, +.table-condensed > tbody > tr > th, +.table-condensed > tfoot > tr > th, +.table-condensed > thead > tr > td, +.table-condensed > tbody > tr > td, +.table-condensed > tfoot > tr > td { + padding: 5px; +} +.table-bordered { + border: 1px solid #ddd; +} +.table-bordered > thead > tr > th, +.table-bordered > tbody > tr > th, +.table-bordered > tfoot > tr > th, +.table-bordered > thead > tr > td, +.table-bordered > tbody > tr > td, +.table-bordered > tfoot > tr > td { + border: 1px solid #ddd; +} +.table-bordered > thead > tr > th, +.table-bordered > thead > tr > td { + border-bottom-width: 2px; +} +.table-striped > tbody > tr:nth-of-type(odd) { + background-color: #f9f9f9; +} +.table-hover > tbody > tr:hover { + background-color: #f5f5f5; +} +table col[class*="col-"] { + position: static; + display: table-column; + float: none; +} +table td[class*="col-"], +table th[class*="col-"] { + position: static; + display: table-cell; + float: none; +} +.table > thead > tr > td.active, +.table > tbody > tr > td.active, +.table > tfoot > tr > td.active, +.table > thead > tr > th.active, +.table > tbody > tr > th.active, +.table > tfoot > tr > th.active, +.table > thead > tr.active > td, +.table > tbody > tr.active > td, +.table > tfoot > tr.active > td, +.table > thead > tr.active > th, +.table > tbody > tr.active > th, +.table > tfoot > tr.active > th { + background-color: #f5f5f5; +} +.table-hover > tbody > tr > td.active:hover, +.table-hover > tbody > tr > th.active:hover, +.table-hover > tbody > tr.active:hover > td, +.table-hover > tbody > tr:hover > .active, +.table-hover > tbody > tr.active:hover > th { + background-color: #e8e8e8; +} +.table > thead > tr > td.success, +.table > tbody > tr > td.success, +.table > tfoot > tr > td.success, +.table > thead > tr > th.success, +.table > tbody > tr > th.success, +.table > tfoot > tr > th.success, +.table > thead > tr.success > td, +.table > tbody > tr.success > td, +.table > tfoot > tr.success > td, +.table > thead > tr.success > th, +.table > tbody > tr.success > th, +.table > tfoot > tr.success > th { + background-color: #dff0d8; +} +.table-hover > tbody > tr > td.success:hover, +.table-hover > tbody > tr > th.success:hover, +.table-hover > tbody > tr.success:hover > td, +.table-hover > tbody > tr:hover > .success, +.table-hover > tbody > tr.success:hover > th { + background-color: #d0e9c6; +} +.table > thead > tr > td.info, +.table > tbody > tr > td.info, +.table > tfoot > tr > td.info, +.table > thead > tr > th.info, +.table > tbody > tr > th.info, +.table > tfoot > tr > th.info, +.table > thead > tr.info > td, +.table > tbody > tr.info > td, +.table > tfoot > tr.info > td, +.table > thead > tr.info > th, +.table > tbody > tr.info > th, +.table > tfoot > tr.info > th { + background-color: #d9edf7; +} +.table-hover > tbody > tr > td.info:hover, +.table-hover > tbody > tr > th.info:hover, +.table-hover > tbody > tr.info:hover > td, +.table-hover > tbody > tr:hover > .info, +.table-hover > tbody > tr.info:hover > th { + background-color: #c4e3f3; +} +.table > thead > tr > td.warning, +.table > tbody > tr > td.warning, +.table > tfoot > tr > td.warning, +.table > thead > tr > th.warning, +.table > tbody > tr > th.warning, +.table > tfoot > tr > th.warning, +.table > thead > tr.warning > td, +.table > tbody > tr.warning > td, +.table > tfoot > tr.warning > td, +.table > thead > tr.warning > th, +.table > tbody > tr.warning > th, +.table > tfoot > tr.warning > th { + background-color: #fcf8e3; +} +.table-hover > tbody > tr > td.warning:hover, +.table-hover > tbody > tr > th.warning:hover, +.table-hover > tbody > tr.warning:hover > td, +.table-hover > tbody > tr:hover > .warning, +.table-hover > tbody > tr.warning:hover > th { + background-color: #faf2cc; +} +.table > thead > tr > td.danger, +.table > tbody > tr > td.danger, +.table > tfoot > tr > td.danger, +.table > thead > tr > th.danger, +.table > tbody > tr > th.danger, +.table > tfoot > tr > th.danger, +.table > thead > tr.danger > td, +.table > tbody > tr.danger > td, +.table > tfoot > tr.danger > td, +.table > thead > tr.danger > th, +.table > tbody > tr.danger > th, +.table > tfoot > tr.danger > th { + background-color: #f2dede; +} +.table-hover > tbody > tr > td.danger:hover, +.table-hover > tbody > tr > th.danger:hover, +.table-hover > tbody > tr.danger:hover > td, +.table-hover > tbody > tr:hover > .danger, +.table-hover > tbody > tr.danger:hover > th { + background-color: #ebcccc; +} +.table-responsive { + min-height: .01%; + overflow-x: auto; +} +@media screen and (max-width: 767px) { + .table-responsive { + width: 100%; + margin-bottom: 15px; + overflow-y: hidden; + -ms-overflow-style: -ms-autohiding-scrollbar; + border: 1px solid #ddd; + } + .table-responsive > .table { + margin-bottom: 0; + } + .table-responsive > .table > thead > tr > th, + .table-responsive > .table > tbody > tr > th, + .table-responsive > .table > tfoot > tr > th, + .table-responsive > .table > thead > tr > td, + .table-responsive > .table > tbody > tr > td, + .table-responsive > .table > tfoot > tr > td { + white-space: nowrap; + } + .table-responsive > .table-bordered { + border: 0; + } + .table-responsive > .table-bordered > thead > tr > th:first-child, + .table-responsive > .table-bordered > tbody > tr > th:first-child, + .table-responsive > .table-bordered > tfoot > tr > th:first-child, + .table-responsive > .table-bordered > thead > tr > td:first-child, + .table-responsive > .table-bordered > tbody > tr > td:first-child, + .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0; + } + .table-responsive > .table-bordered > thead > tr > th:last-child, + .table-responsive > .table-bordered > tbody > tr > th:last-child, + .table-responsive > .table-bordered > tfoot > tr > th:last-child, + .table-responsive > .table-bordered > thead > tr > td:last-child, + .table-responsive > .table-bordered > tbody > tr > td:last-child, + .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0; + } + .table-responsive > .table-bordered > tbody > tr:last-child > th, + .table-responsive > .table-bordered > tfoot > tr:last-child > th, + .table-responsive > .table-bordered > tbody > tr:last-child > td, + .table-responsive > .table-bordered > tfoot > tr:last-child > td { + border-bottom: 0; + } +} +fieldset { + min-width: 0; + padding: 0; + margin: 0; + border: 0; +} +legend { + display: block; + width: 100%; + padding: 0; + margin-bottom: 20px; + font-size: 21px; + line-height: inherit; + color: #333; + border: 0; + border-bottom: 1px solid #e5e5e5; +} +label { + display: inline-block; + max-width: 100%; + margin-bottom: 5px; + font-weight: bold; +} +input[type="search"] { + -webkit-box-sizing: border-box; + -moz-box-sizing: border-box; + box-sizing: border-box; +} +input[type="radio"], +input[type="checkbox"] { + margin: 4px 0 0; + margin-top: 1px \9; + line-height: normal; +} +input[type="file"] { + display: block; +} +input[type="range"] { + display: block; + width: 100%; +} +select[multiple], +select[size] { + height: auto; +} +input[type="file"]:focus, +input[type="radio"]:focus, +input[type="checkbox"]:focus { + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +output { + display: block; + padding-top: 7px; + font-size: 14px; + line-height: 1.42857143; + color: #555; +} +.form-control { + display: block; + width: 100%; + height: 34px; + padding: 6px 12px; + font-size: 14px; + line-height: 1.42857143; + color: #555; + background-color: #fff; + background-image: none; + border: 1px solid #ccc; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + -webkit-transition: border-color ease-in-out .15s, -webkit-box-shadow ease-in-out .15s; + -o-transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; + transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s; +} +.form-control:focus { + border-color: #66afe9; + outline: 0; + -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6); + box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, .6); +} +.form-control::-moz-placeholder { + color: #999; + opacity: 1; +} +.form-control:-ms-input-placeholder { + color: #999; +} +.form-control::-webkit-input-placeholder { + color: #999; +} +.form-control::-ms-expand { + background-color: transparent; + border: 0; +} +.form-control[disabled], +.form-control[readonly], +fieldset[disabled] .form-control { + background-color: #eee; + opacity: 1; +} +.form-control[disabled], +fieldset[disabled] .form-control { + cursor: not-allowed; +} +textarea.form-control { + height: auto; +} +input[type="search"] { + -webkit-appearance: none; +} +@media screen and (-webkit-min-device-pixel-ratio: 0) { + input[type="date"].form-control, + input[type="time"].form-control, + input[type="datetime-local"].form-control, + input[type="month"].form-control { + line-height: 34px; + } + input[type="date"].input-sm, + input[type="time"].input-sm, + input[type="datetime-local"].input-sm, + input[type="month"].input-sm, + .input-group-sm input[type="date"], + .input-group-sm input[type="time"], + .input-group-sm input[type="datetime-local"], + .input-group-sm input[type="month"] { + line-height: 30px; + } + input[type="date"].input-lg, + input[type="time"].input-lg, + input[type="datetime-local"].input-lg, + input[type="month"].input-lg, + .input-group-lg input[type="date"], + .input-group-lg input[type="time"], + .input-group-lg input[type="datetime-local"], + .input-group-lg input[type="month"] { + line-height: 46px; + } +} +.form-group { + margin-bottom: 15px; +} +.radio, +.checkbox { + position: relative; + display: block; + margin-top: 10px; + margin-bottom: 10px; +} +.radio label, +.checkbox label { + min-height: 20px; + padding-left: 20px; + margin-bottom: 0; + font-weight: normal; + cursor: pointer; +} +.radio input[type="radio"], +.radio-inline input[type="radio"], +.checkbox input[type="checkbox"], +.checkbox-inline input[type="checkbox"] { + position: absolute; + margin-top: 4px \9; + margin-left: -20px; +} +.radio + .radio, +.checkbox + .checkbox { + margin-top: -5px; +} +.radio-inline, +.checkbox-inline { + position: relative; + display: inline-block; + padding-left: 20px; + margin-bottom: 0; + font-weight: normal; + vertical-align: middle; + cursor: pointer; +} +.radio-inline + .radio-inline, +.checkbox-inline + .checkbox-inline { + margin-top: 0; + margin-left: 10px; +} +input[type="radio"][disabled], +input[type="checkbox"][disabled], +input[type="radio"].disabled, +input[type="checkbox"].disabled, +fieldset[disabled] input[type="radio"], +fieldset[disabled] input[type="checkbox"] { + cursor: not-allowed; +} +.radio-inline.disabled, +.checkbox-inline.disabled, +fieldset[disabled] .radio-inline, +fieldset[disabled] .checkbox-inline { + cursor: not-allowed; +} +.radio.disabled label, +.checkbox.disabled label, +fieldset[disabled] .radio label, +fieldset[disabled] .checkbox label { + cursor: not-allowed; +} +.form-control-static { + min-height: 34px; + padding-top: 7px; + padding-bottom: 7px; + margin-bottom: 0; +} +.form-control-static.input-lg, +.form-control-static.input-sm { + padding-right: 0; + padding-left: 0; +} +.input-sm { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +select.input-sm { + height: 30px; + line-height: 30px; +} +textarea.input-sm, +select[multiple].input-sm { + height: auto; +} +.form-group-sm .form-control { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.form-group-sm select.form-control { + height: 30px; + line-height: 30px; +} +.form-group-sm textarea.form-control, +.form-group-sm select[multiple].form-control { + height: auto; +} +.form-group-sm .form-control-static { + height: 30px; + min-height: 32px; + padding: 6px 10px; + font-size: 12px; + line-height: 1.5; +} +.input-lg { + height: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +select.input-lg { + height: 46px; + line-height: 46px; +} +textarea.input-lg, +select[multiple].input-lg { + height: auto; +} +.form-group-lg .form-control { + height: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +.form-group-lg select.form-control { + height: 46px; + line-height: 46px; +} +.form-group-lg textarea.form-control, +.form-group-lg select[multiple].form-control { + height: auto; +} +.form-group-lg .form-control-static { + height: 46px; + min-height: 38px; + padding: 11px 16px; + font-size: 18px; + line-height: 1.3333333; +} +.has-feedback { + position: relative; +} +.has-feedback .form-control { + padding-right: 42.5px; +} +.form-control-feedback { + position: absolute; + top: 0; + right: 0; + z-index: 2; + display: block; + width: 34px; + height: 34px; + line-height: 34px; + text-align: center; + pointer-events: none; +} +.input-lg + .form-control-feedback, +.input-group-lg + .form-control-feedback, +.form-group-lg .form-control + .form-control-feedback { + width: 46px; + height: 46px; + line-height: 46px; +} +.input-sm + .form-control-feedback, +.input-group-sm + .form-control-feedback, +.form-group-sm .form-control + .form-control-feedback { + width: 30px; + height: 30px; + line-height: 30px; +} +.has-success .help-block, +.has-success .control-label, +.has-success .radio, +.has-success .checkbox, +.has-success .radio-inline, +.has-success .checkbox-inline, +.has-success.radio label, +.has-success.checkbox label, +.has-success.radio-inline label, +.has-success.checkbox-inline label { + color: #3c763d; +} +.has-success .form-control { + border-color: #3c763d; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); +} +.has-success .form-control:focus { + border-color: #2b542c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168; +} +.has-success .input-group-addon { + color: #3c763d; + background-color: #dff0d8; + border-color: #3c763d; +} +.has-success .form-control-feedback { + color: #3c763d; +} +.has-warning .help-block, +.has-warning .control-label, +.has-warning .radio, +.has-warning .checkbox, +.has-warning .radio-inline, +.has-warning .checkbox-inline, +.has-warning.radio label, +.has-warning.checkbox label, +.has-warning.radio-inline label, +.has-warning.checkbox-inline label { + color: #8a6d3b; +} +.has-warning .form-control { + border-color: #8a6d3b; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); +} +.has-warning .form-control:focus { + border-color: #66512c; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b; +} +.has-warning .input-group-addon { + color: #8a6d3b; + background-color: #fcf8e3; + border-color: #8a6d3b; +} +.has-warning .form-control-feedback { + color: #8a6d3b; +} +.has-error .help-block, +.has-error .control-label, +.has-error .radio, +.has-error .checkbox, +.has-error .radio-inline, +.has-error .checkbox-inline, +.has-error.radio label, +.has-error.checkbox label, +.has-error.radio-inline label, +.has-error.checkbox-inline label { + color: #a94442; +} +.has-error .form-control { + border-color: #a94442; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075); +} +.has-error .form-control:focus { + border-color: #843534; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483; +} +.has-error .input-group-addon { + color: #a94442; + background-color: #f2dede; + border-color: #a94442; +} +.has-error .form-control-feedback { + color: #a94442; +} +.has-feedback label ~ .form-control-feedback { + top: 25px; +} +.has-feedback label.sr-only ~ .form-control-feedback { + top: 0; +} +.help-block { + display: block; + margin-top: 5px; + margin-bottom: 10px; + color: #737373; +} +@media (min-width: 768px) { + .form-inline .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .form-control { + display: inline-block; + width: auto; + vertical-align: middle; + } + .form-inline .form-control-static { + display: inline-block; + } + .form-inline .input-group { + display: inline-table; + vertical-align: middle; + } + .form-inline .input-group .input-group-addon, + .form-inline .input-group .input-group-btn, + .form-inline .input-group .form-control { + width: auto; + } + .form-inline .input-group > .form-control { + width: 100%; + } + .form-inline .control-label { + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .radio, + .form-inline .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + vertical-align: middle; + } + .form-inline .radio label, + .form-inline .checkbox label { + padding-left: 0; + } + .form-inline .radio input[type="radio"], + .form-inline .checkbox input[type="checkbox"] { + position: relative; + margin-left: 0; + } + .form-inline .has-feedback .form-control-feedback { + top: 0; + } +} +.form-horizontal .radio, +.form-horizontal .checkbox, +.form-horizontal .radio-inline, +.form-horizontal .checkbox-inline { + padding-top: 7px; + margin-top: 0; + margin-bottom: 0; +} +.form-horizontal .radio, +.form-horizontal .checkbox { + min-height: 27px; +} +.form-horizontal .form-group { + margin-right: -15px; + margin-left: -15px; +} +@media (min-width: 768px) { + .form-horizontal .control-label { + padding-top: 7px; + margin-bottom: 0; + text-align: right; + } +} +.form-horizontal .has-feedback .form-control-feedback { + right: 15px; +} +@media (min-width: 768px) { + .form-horizontal .form-group-lg .control-label { + padding-top: 11px; + font-size: 18px; + } +} +@media (min-width: 768px) { + .form-horizontal .form-group-sm .control-label { + padding-top: 6px; + font-size: 12px; + } +} +.btn { + display: inline-block; + padding: 6px 12px; + margin-bottom: 0; + font-size: 14px; + font-weight: normal; + line-height: 1.42857143; + text-align: center; + white-space: nowrap; + vertical-align: middle; + -ms-touch-action: manipulation; + touch-action: manipulation; + cursor: pointer; + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + background-image: none; + border: 1px solid transparent; + border-radius: 4px; +} +.btn:focus, +.btn:active:focus, +.btn.active:focus, +.btn.focus, +.btn:active.focus, +.btn.active.focus { + outline: 5px auto -webkit-focus-ring-color; + outline-offset: -2px; +} +.btn:hover, +.btn:focus, +.btn.focus { + color: #333; + text-decoration: none; +} +.btn:active, +.btn.active { + background-image: none; + outline: 0; + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); +} +.btn.disabled, +.btn[disabled], +fieldset[disabled] .btn { + cursor: not-allowed; + filter: alpha(opacity=65); + -webkit-box-shadow: none; + box-shadow: none; + opacity: .65; +} +a.btn.disabled, +fieldset[disabled] a.btn { + pointer-events: none; +} +.btn-default { + color: #333; + background-color: #fff; + border-color: #ccc; +} +.btn-default:focus, +.btn-default.focus { + color: #333; + background-color: #e6e6e6; + border-color: #8c8c8c; +} +.btn-default:hover { + color: #333; + background-color: #e6e6e6; + border-color: #adadad; +} +.btn-default:active, +.btn-default.active, +.open > .dropdown-toggle.btn-default { + color: #333; + background-color: #e6e6e6; + border-color: #adadad; +} +.btn-default:active:hover, +.btn-default.active:hover, +.open > .dropdown-toggle.btn-default:hover, +.btn-default:active:focus, +.btn-default.active:focus, +.open > .dropdown-toggle.btn-default:focus, +.btn-default:active.focus, +.btn-default.active.focus, +.open > .dropdown-toggle.btn-default.focus { + color: #333; + background-color: #d4d4d4; + border-color: #8c8c8c; +} +.btn-default:active, +.btn-default.active, +.open > .dropdown-toggle.btn-default { + background-image: none; +} +.btn-default.disabled:hover, +.btn-default[disabled]:hover, +fieldset[disabled] .btn-default:hover, +.btn-default.disabled:focus, +.btn-default[disabled]:focus, +fieldset[disabled] .btn-default:focus, +.btn-default.disabled.focus, +.btn-default[disabled].focus, +fieldset[disabled] .btn-default.focus { + background-color: #fff; + border-color: #ccc; +} +.btn-default .badge { + color: #fff; + background-color: #333; +} +.btn-primary { + color: #fff; + background-color: #337ab7; + border-color: #2e6da4; +} +.btn-primary:focus, +.btn-primary.focus { + color: #fff; + background-color: #286090; + border-color: #122b40; +} +.btn-primary:hover { + color: #fff; + background-color: #286090; + border-color: #204d74; +} +.btn-primary:active, +.btn-primary.active, +.open > .dropdown-toggle.btn-primary { + color: #fff; + background-color: #286090; + border-color: #204d74; +} +.btn-primary:active:hover, +.btn-primary.active:hover, +.open > .dropdown-toggle.btn-primary:hover, +.btn-primary:active:focus, +.btn-primary.active:focus, +.open > .dropdown-toggle.btn-primary:focus, +.btn-primary:active.focus, +.btn-primary.active.focus, +.open > .dropdown-toggle.btn-primary.focus { + color: #fff; + background-color: #204d74; + border-color: #122b40; +} +.btn-primary:active, +.btn-primary.active, +.open > .dropdown-toggle.btn-primary { + background-image: none; +} +.btn-primary.disabled:hover, +.btn-primary[disabled]:hover, +fieldset[disabled] .btn-primary:hover, +.btn-primary.disabled:focus, +.btn-primary[disabled]:focus, +fieldset[disabled] .btn-primary:focus, +.btn-primary.disabled.focus, +.btn-primary[disabled].focus, +fieldset[disabled] .btn-primary.focus { + background-color: #337ab7; + border-color: #2e6da4; +} +.btn-primary .badge { + color: #337ab7; + background-color: #fff; +} +.btn-success { + color: #fff; + background-color: #5cb85c; + border-color: #4cae4c; +} +.btn-success:focus, +.btn-success.focus { + color: #fff; + background-color: #449d44; + border-color: #255625; +} +.btn-success:hover { + color: #fff; + background-color: #449d44; + border-color: #398439; +} +.btn-success:active, +.btn-success.active, +.open > .dropdown-toggle.btn-success { + color: #fff; + background-color: #449d44; + border-color: #398439; +} +.btn-success:active:hover, +.btn-success.active:hover, +.open > .dropdown-toggle.btn-success:hover, +.btn-success:active:focus, +.btn-success.active:focus, +.open > .dropdown-toggle.btn-success:focus, +.btn-success:active.focus, +.btn-success.active.focus, +.open > .dropdown-toggle.btn-success.focus { + color: #fff; + background-color: #398439; + border-color: #255625; +} +.btn-success:active, +.btn-success.active, +.open > .dropdown-toggle.btn-success { + background-image: none; +} +.btn-success.disabled:hover, +.btn-success[disabled]:hover, +fieldset[disabled] .btn-success:hover, +.btn-success.disabled:focus, +.btn-success[disabled]:focus, +fieldset[disabled] .btn-success:focus, +.btn-success.disabled.focus, +.btn-success[disabled].focus, +fieldset[disabled] .btn-success.focus { + background-color: #5cb85c; + border-color: #4cae4c; +} +.btn-success .badge { + color: #5cb85c; + background-color: #fff; +} +.btn-info { + color: #fff; + background-color: #5bc0de; + border-color: #46b8da; +} +.btn-info:focus, +.btn-info.focus { + color: #fff; + background-color: #31b0d5; + border-color: #1b6d85; +} +.btn-info:hover { + color: #fff; + background-color: #31b0d5; + border-color: #269abc; +} +.btn-info:active, +.btn-info.active, +.open > .dropdown-toggle.btn-info { + color: #fff; + background-color: #31b0d5; + border-color: #269abc; +} +.btn-info:active:hover, +.btn-info.active:hover, +.open > .dropdown-toggle.btn-info:hover, +.btn-info:active:focus, +.btn-info.active:focus, +.open > .dropdown-toggle.btn-info:focus, +.btn-info:active.focus, +.btn-info.active.focus, +.open > .dropdown-toggle.btn-info.focus { + color: #fff; + background-color: #269abc; + border-color: #1b6d85; +} +.btn-info:active, +.btn-info.active, +.open > .dropdown-toggle.btn-info { + background-image: none; +} +.btn-info.disabled:hover, +.btn-info[disabled]:hover, +fieldset[disabled] .btn-info:hover, +.btn-info.disabled:focus, +.btn-info[disabled]:focus, +fieldset[disabled] .btn-info:focus, +.btn-info.disabled.focus, +.btn-info[disabled].focus, +fieldset[disabled] .btn-info.focus { + background-color: #5bc0de; + border-color: #46b8da; +} +.btn-info .badge { + color: #5bc0de; + background-color: #fff; +} +.btn-warning { + color: #fff; + background-color: #f0ad4e; + border-color: #eea236; +} +.btn-warning:focus, +.btn-warning.focus { + color: #fff; + background-color: #ec971f; + border-color: #985f0d; +} +.btn-warning:hover { + color: #fff; + background-color: #ec971f; + border-color: #d58512; +} +.btn-warning:active, +.btn-warning.active, +.open > .dropdown-toggle.btn-warning { + color: #fff; + background-color: #ec971f; + border-color: #d58512; +} +.btn-warning:active:hover, +.btn-warning.active:hover, +.open > .dropdown-toggle.btn-warning:hover, +.btn-warning:active:focus, +.btn-warning.active:focus, +.open > .dropdown-toggle.btn-warning:focus, +.btn-warning:active.focus, +.btn-warning.active.focus, +.open > .dropdown-toggle.btn-warning.focus { + color: #fff; + background-color: #d58512; + border-color: #985f0d; +} +.btn-warning:active, +.btn-warning.active, +.open > .dropdown-toggle.btn-warning { + background-image: none; +} +.btn-warning.disabled:hover, +.btn-warning[disabled]:hover, +fieldset[disabled] .btn-warning:hover, +.btn-warning.disabled:focus, +.btn-warning[disabled]:focus, +fieldset[disabled] .btn-warning:focus, +.btn-warning.disabled.focus, +.btn-warning[disabled].focus, +fieldset[disabled] .btn-warning.focus { + background-color: #f0ad4e; + border-color: #eea236; +} +.btn-warning .badge { + color: #f0ad4e; + background-color: #fff; +} +.btn-danger { + color: #fff; + background-color: #d9534f; + border-color: #d43f3a; +} +.btn-danger:focus, +.btn-danger.focus { + color: #fff; + background-color: #c9302c; + border-color: #761c19; +} +.btn-danger:hover { + color: #fff; + background-color: #c9302c; + border-color: #ac2925; +} +.btn-danger:active, +.btn-danger.active, +.open > .dropdown-toggle.btn-danger { + color: #fff; + background-color: #c9302c; + border-color: #ac2925; +} +.btn-danger:active:hover, +.btn-danger.active:hover, +.open > .dropdown-toggle.btn-danger:hover, +.btn-danger:active:focus, +.btn-danger.active:focus, +.open > .dropdown-toggle.btn-danger:focus, +.btn-danger:active.focus, +.btn-danger.active.focus, +.open > .dropdown-toggle.btn-danger.focus { + color: #fff; + background-color: #ac2925; + border-color: #761c19; +} +.btn-danger:active, +.btn-danger.active, +.open > .dropdown-toggle.btn-danger { + background-image: none; +} +.btn-danger.disabled:hover, +.btn-danger[disabled]:hover, +fieldset[disabled] .btn-danger:hover, +.btn-danger.disabled:focus, +.btn-danger[disabled]:focus, +fieldset[disabled] .btn-danger:focus, +.btn-danger.disabled.focus, +.btn-danger[disabled].focus, +fieldset[disabled] .btn-danger.focus { + background-color: #d9534f; + border-color: #d43f3a; +} +.btn-danger .badge { + color: #d9534f; + background-color: #fff; +} +.btn-link { + font-weight: normal; + color: #337ab7; + border-radius: 0; +} +.btn-link, +.btn-link:active, +.btn-link.active, +.btn-link[disabled], +fieldset[disabled] .btn-link { + background-color: transparent; + -webkit-box-shadow: none; + box-shadow: none; +} +.btn-link, +.btn-link:hover, +.btn-link:focus, +.btn-link:active { + border-color: transparent; +} +.btn-link:hover, +.btn-link:focus { + color: #23527c; + text-decoration: underline; + background-color: transparent; +} +.btn-link[disabled]:hover, +fieldset[disabled] .btn-link:hover, +.btn-link[disabled]:focus, +fieldset[disabled] .btn-link:focus { + color: #777; + text-decoration: none; +} +.btn-lg, +.btn-group-lg > .btn { + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +.btn-sm, +.btn-group-sm > .btn { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.btn-xs, +.btn-group-xs > .btn { + padding: 1px 5px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +.btn-block { + display: block; + width: 100%; +} +.btn-block + .btn-block { + margin-top: 5px; +} +input[type="submit"].btn-block, +input[type="reset"].btn-block, +input[type="button"].btn-block { + width: 100%; +} +.fade { + opacity: 0; + -webkit-transition: opacity .15s linear; + -o-transition: opacity .15s linear; + transition: opacity .15s linear; +} +.fade.in { + opacity: 1; +} +.collapse { + display: none; +} +.collapse.in { + display: block; +} +tr.collapse.in { + display: table-row; +} +tbody.collapse.in { + display: table-row-group; +} +.collapsing { + position: relative; + height: 0; + overflow: hidden; + -webkit-transition-timing-function: ease; + -o-transition-timing-function: ease; + transition-timing-function: ease; + -webkit-transition-duration: .35s; + -o-transition-duration: .35s; + transition-duration: .35s; + -webkit-transition-property: height, visibility; + -o-transition-property: height, visibility; + transition-property: height, visibility; +} +.caret { + display: inline-block; + width: 0; + height: 0; + margin-left: 2px; + vertical-align: middle; + border-top: 4px dashed; + border-top: 4px solid \9; + border-right: 4px solid transparent; + border-left: 4px solid transparent; +} +.dropup, +.dropdown { + position: relative; +} +.dropdown-toggle:focus { + outline: 0; +} +.dropdown-menu { + position: absolute; + top: 100%; + left: 0; + z-index: 1000; + display: none; + float: left; + min-width: 160px; + padding: 5px 0; + margin: 2px 0 0; + font-size: 14px; + text-align: left; + list-style: none; + background-color: #fff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, .15); + border-radius: 4px; + -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, .175); + box-shadow: 0 6px 12px rgba(0, 0, 0, .175); +} +.dropdown-menu.pull-right { + right: 0; + left: auto; +} +.dropdown-menu .divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #e5e5e5; +} +.dropdown-menu > li > a { + display: block; + padding: 3px 20px; + clear: both; + font-weight: normal; + line-height: 1.42857143; + color: #333; + white-space: nowrap; +} +.dropdown-menu > li > a:hover, +.dropdown-menu > li > a:focus { + color: #262626; + text-decoration: none; + background-color: #f5f5f5; +} +.dropdown-menu > .active > a, +.dropdown-menu > .active > a:hover, +.dropdown-menu > .active > a:focus { + color: #fff; + text-decoration: none; + background-color: #337ab7; + outline: 0; +} +.dropdown-menu > .disabled > a, +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + color: #777; +} +.dropdown-menu > .disabled > a:hover, +.dropdown-menu > .disabled > a:focus { + text-decoration: none; + cursor: not-allowed; + background-color: transparent; + background-image: none; + filter: progid:DXImageTransform.Microsoft.gradient(enabled = false); +} +.open > .dropdown-menu { + display: block; +} +.open > a { + outline: 0; +} +.dropdown-menu-right { + right: 0; + left: auto; +} +.dropdown-menu-left { + right: auto; + left: 0; +} +.dropdown-header { + display: block; + padding: 3px 20px; + font-size: 12px; + line-height: 1.42857143; + color: #777; + white-space: nowrap; +} +.dropdown-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 990; +} +.pull-right > .dropdown-menu { + right: 0; + left: auto; +} +.dropup .caret, +.navbar-fixed-bottom .dropdown .caret { + content: ""; + border-top: 0; + border-bottom: 4px dashed; + border-bottom: 4px solid \9; +} +.dropup .dropdown-menu, +.navbar-fixed-bottom .dropdown .dropdown-menu { + top: auto; + bottom: 100%; + margin-bottom: 2px; +} +@media (min-width: 768px) { + .navbar-right .dropdown-menu { + right: 0; + left: auto; + } + .navbar-right .dropdown-menu-left { + right: auto; + left: 0; + } +} +.btn-group, +.btn-group-vertical { + position: relative; + display: inline-block; + vertical-align: middle; +} +.btn-group > .btn, +.btn-group-vertical > .btn { + position: relative; + float: left; +} +.btn-group > .btn:hover, +.btn-group-vertical > .btn:hover, +.btn-group > .btn:focus, +.btn-group-vertical > .btn:focus, +.btn-group > .btn:active, +.btn-group-vertical > .btn:active, +.btn-group > .btn.active, +.btn-group-vertical > .btn.active { + z-index: 2; +} +.btn-group .btn + .btn, +.btn-group .btn + .btn-group, +.btn-group .btn-group + .btn, +.btn-group .btn-group + .btn-group { + margin-left: -1px; +} +.btn-toolbar { + margin-left: -5px; +} +.btn-toolbar .btn, +.btn-toolbar .btn-group, +.btn-toolbar .input-group { + float: left; +} +.btn-toolbar > .btn, +.btn-toolbar > .btn-group, +.btn-toolbar > .input-group { + margin-left: 5px; +} +.btn-group > .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) { + border-radius: 0; +} +.btn-group > .btn:first-child { + margin-left: 0; +} +.btn-group > .btn:first-child:not(:last-child):not(.dropdown-toggle) { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.btn-group > .btn:last-child:not(:first-child), +.btn-group > .dropdown-toggle:not(:first-child) { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group > .btn-group { + float: left; +} +.btn-group > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} +.btn-group > .btn-group:first-child:not(:last-child) > .btn:last-child, +.btn-group > .btn-group:first-child:not(:last-child) > .dropdown-toggle { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.btn-group > .btn-group:last-child:not(:first-child) > .btn:first-child { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group .dropdown-toggle:active, +.btn-group.open .dropdown-toggle { + outline: 0; +} +.btn-group > .btn + .dropdown-toggle { + padding-right: 8px; + padding-left: 8px; +} +.btn-group > .btn-lg + .dropdown-toggle { + padding-right: 12px; + padding-left: 12px; +} +.btn-group.open .dropdown-toggle { + -webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); + box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125); +} +.btn-group.open .dropdown-toggle.btn-link { + -webkit-box-shadow: none; + box-shadow: none; +} +.btn .caret { + margin-left: 0; +} +.btn-lg .caret { + border-width: 5px 5px 0; + border-bottom-width: 0; +} +.dropup .btn-lg .caret { + border-width: 0 5px 5px; +} +.btn-group-vertical > .btn, +.btn-group-vertical > .btn-group, +.btn-group-vertical > .btn-group > .btn { + display: block; + float: none; + width: 100%; + max-width: 100%; +} +.btn-group-vertical > .btn-group > .btn { + float: none; +} +.btn-group-vertical > .btn + .btn, +.btn-group-vertical > .btn + .btn-group, +.btn-group-vertical > .btn-group + .btn, +.btn-group-vertical > .btn-group + .btn-group { + margin-top: -1px; + margin-left: 0; +} +.btn-group-vertical > .btn:not(:first-child):not(:last-child) { + border-radius: 0; +} +.btn-group-vertical > .btn:first-child:not(:last-child) { + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn:last-child:not(:first-child) { + border-top-left-radius: 0; + border-top-right-radius: 0; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px; +} +.btn-group-vertical > .btn-group:not(:first-child):not(:last-child) > .btn { + border-radius: 0; +} +.btn-group-vertical > .btn-group:first-child:not(:last-child) > .btn:last-child, +.btn-group-vertical > .btn-group:first-child:not(:last-child) > .dropdown-toggle { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.btn-group-vertical > .btn-group:last-child:not(:first-child) > .btn:first-child { + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.btn-group-justified { + display: table; + width: 100%; + table-layout: fixed; + border-collapse: separate; +} +.btn-group-justified > .btn, +.btn-group-justified > .btn-group { + display: table-cell; + float: none; + width: 1%; +} +.btn-group-justified > .btn-group .btn { + width: 100%; +} +.btn-group-justified > .btn-group .dropdown-menu { + left: auto; +} +[data-toggle="buttons"] > .btn input[type="radio"], +[data-toggle="buttons"] > .btn-group > .btn input[type="radio"], +[data-toggle="buttons"] > .btn input[type="checkbox"], +[data-toggle="buttons"] > .btn-group > .btn input[type="checkbox"] { + position: absolute; + clip: rect(0, 0, 0, 0); + pointer-events: none; +} +.input-group { + position: relative; + display: table; + border-collapse: separate; +} +.input-group[class*="col-"] { + float: none; + padding-right: 0; + padding-left: 0; +} +.input-group .form-control { + position: relative; + z-index: 2; + float: left; + width: 100%; + margin-bottom: 0; +} +.input-group .form-control:focus { + z-index: 3; +} +.input-group-lg > .form-control, +.input-group-lg > .input-group-addon, +.input-group-lg > .input-group-btn > .btn { + height: 46px; + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; + border-radius: 6px; +} +select.input-group-lg > .form-control, +select.input-group-lg > .input-group-addon, +select.input-group-lg > .input-group-btn > .btn { + height: 46px; + line-height: 46px; +} +textarea.input-group-lg > .form-control, +textarea.input-group-lg > .input-group-addon, +textarea.input-group-lg > .input-group-btn > .btn, +select[multiple].input-group-lg > .form-control, +select[multiple].input-group-lg > .input-group-addon, +select[multiple].input-group-lg > .input-group-btn > .btn { + height: auto; +} +.input-group-sm > .form-control, +.input-group-sm > .input-group-addon, +.input-group-sm > .input-group-btn > .btn { + height: 30px; + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; + border-radius: 3px; +} +select.input-group-sm > .form-control, +select.input-group-sm > .input-group-addon, +select.input-group-sm > .input-group-btn > .btn { + height: 30px; + line-height: 30px; +} +textarea.input-group-sm > .form-control, +textarea.input-group-sm > .input-group-addon, +textarea.input-group-sm > .input-group-btn > .btn, +select[multiple].input-group-sm > .form-control, +select[multiple].input-group-sm > .input-group-addon, +select[multiple].input-group-sm > .input-group-btn > .btn { + height: auto; +} +.input-group-addon, +.input-group-btn, +.input-group .form-control { + display: table-cell; +} +.input-group-addon:not(:first-child):not(:last-child), +.input-group-btn:not(:first-child):not(:last-child), +.input-group .form-control:not(:first-child):not(:last-child) { + border-radius: 0; +} +.input-group-addon, +.input-group-btn { + width: 1%; + white-space: nowrap; + vertical-align: middle; +} +.input-group-addon { + padding: 6px 12px; + font-size: 14px; + font-weight: normal; + line-height: 1; + color: #555; + text-align: center; + background-color: #eee; + border: 1px solid #ccc; + border-radius: 4px; +} +.input-group-addon.input-sm { + padding: 5px 10px; + font-size: 12px; + border-radius: 3px; +} +.input-group-addon.input-lg { + padding: 10px 16px; + font-size: 18px; + border-radius: 6px; +} +.input-group-addon input[type="radio"], +.input-group-addon input[type="checkbox"] { + margin-top: 0; +} +.input-group .form-control:first-child, +.input-group-addon:first-child, +.input-group-btn:first-child > .btn, +.input-group-btn:first-child > .btn-group > .btn, +.input-group-btn:first-child > .dropdown-toggle, +.input-group-btn:last-child > .btn:not(:last-child):not(.dropdown-toggle), +.input-group-btn:last-child > .btn-group:not(:last-child) > .btn { + border-top-right-radius: 0; + border-bottom-right-radius: 0; +} +.input-group-addon:first-child { + border-right: 0; +} +.input-group .form-control:last-child, +.input-group-addon:last-child, +.input-group-btn:last-child > .btn, +.input-group-btn:last-child > .btn-group > .btn, +.input-group-btn:last-child > .dropdown-toggle, +.input-group-btn:first-child > .btn:not(:first-child), +.input-group-btn:first-child > .btn-group:not(:first-child) > .btn { + border-top-left-radius: 0; + border-bottom-left-radius: 0; +} +.input-group-addon:last-child { + border-left: 0; +} +.input-group-btn { + position: relative; + font-size: 0; + white-space: nowrap; +} +.input-group-btn > .btn { + position: relative; +} +.input-group-btn > .btn + .btn { + margin-left: -1px; +} +.input-group-btn > .btn:hover, +.input-group-btn > .btn:focus, +.input-group-btn > .btn:active { + z-index: 2; +} +.input-group-btn:first-child > .btn, +.input-group-btn:first-child > .btn-group { + margin-right: -1px; +} +.input-group-btn:last-child > .btn, +.input-group-btn:last-child > .btn-group { + z-index: 2; + margin-left: -1px; +} +.nav { + padding-left: 0; + margin-bottom: 0; + list-style: none; +} +.nav > li { + position: relative; + display: block; +} +.nav > li > a { + position: relative; + display: block; + padding: 10px 15px; +} +.nav > li > a:hover, +.nav > li > a:focus { + text-decoration: none; + background-color: #eee; +} +.nav > li.disabled > a { + color: #777; +} +.nav > li.disabled > a:hover, +.nav > li.disabled > a:focus { + color: #777; + text-decoration: none; + cursor: not-allowed; + background-color: transparent; +} +.nav .open > a, +.nav .open > a:hover, +.nav .open > a:focus { + background-color: #eee; + border-color: #337ab7; +} +.nav .nav-divider { + height: 1px; + margin: 9px 0; + overflow: hidden; + background-color: #e5e5e5; +} +.nav > li > a > img { + max-width: none; +} +.nav-tabs { + border-bottom: 1px solid #ddd; +} +.nav-tabs > li { + float: left; + margin-bottom: -1px; +} +.nav-tabs > li > a { + margin-right: 2px; + line-height: 1.42857143; + border: 1px solid transparent; + border-radius: 4px 4px 0 0; +} +.nav-tabs > li > a:hover { + border-color: #eee #eee #ddd; +} +.nav-tabs > li.active > a, +.nav-tabs > li.active > a:hover, +.nav-tabs > li.active > a:focus { + color: #555; + cursor: default; + background-color: #fff; + border: 1px solid #ddd; + border-bottom-color: transparent; +} +.nav-tabs.nav-justified { + width: 100%; + border-bottom: 0; +} +.nav-tabs.nav-justified > li { + float: none; +} +.nav-tabs.nav-justified > li > a { + margin-bottom: 5px; + text-align: center; +} +.nav-tabs.nav-justified > .dropdown .dropdown-menu { + top: auto; + left: auto; +} +@media (min-width: 768px) { + .nav-tabs.nav-justified > li { + display: table-cell; + width: 1%; + } + .nav-tabs.nav-justified > li > a { + margin-bottom: 0; + } +} +.nav-tabs.nav-justified > li > a { + margin-right: 0; + border-radius: 4px; +} +.nav-tabs.nav-justified > .active > a, +.nav-tabs.nav-justified > .active > a:hover, +.nav-tabs.nav-justified > .active > a:focus { + border: 1px solid #ddd; +} +@media (min-width: 768px) { + .nav-tabs.nav-justified > li > a { + border-bottom: 1px solid #ddd; + border-radius: 4px 4px 0 0; + } + .nav-tabs.nav-justified > .active > a, + .nav-tabs.nav-justified > .active > a:hover, + .nav-tabs.nav-justified > .active > a:focus { + border-bottom-color: #fff; + } +} +.nav-pills > li { + float: left; +} +.nav-pills > li > a { + border-radius: 4px; +} +.nav-pills > li + li { + margin-left: 2px; +} +.nav-pills > li.active > a, +.nav-pills > li.active > a:hover, +.nav-pills > li.active > a:focus { + color: #fff; + background-color: #337ab7; +} +.nav-stacked > li { + float: none; +} +.nav-stacked > li + li { + margin-top: 2px; + margin-left: 0; +} +.nav-justified { + width: 100%; +} +.nav-justified > li { + float: none; +} +.nav-justified > li > a { + margin-bottom: 5px; + text-align: center; +} +.nav-justified > .dropdown .dropdown-menu { + top: auto; + left: auto; +} +@media (min-width: 768px) { + .nav-justified > li { + display: table-cell; + width: 1%; + } + .nav-justified > li > a { + margin-bottom: 0; + } +} +.nav-tabs-justified { + border-bottom: 0; +} +.nav-tabs-justified > li > a { + margin-right: 0; + border-radius: 4px; +} +.nav-tabs-justified > .active > a, +.nav-tabs-justified > .active > a:hover, +.nav-tabs-justified > .active > a:focus { + border: 1px solid #ddd; +} +@media (min-width: 768px) { + .nav-tabs-justified > li > a { + border-bottom: 1px solid #ddd; + border-radius: 4px 4px 0 0; + } + .nav-tabs-justified > .active > a, + .nav-tabs-justified > .active > a:hover, + .nav-tabs-justified > .active > a:focus { + border-bottom-color: #fff; + } +} +.tab-content > .tab-pane { + display: none; +} +.tab-content > .active { + display: block; +} +.nav-tabs .dropdown-menu { + margin-top: -1px; + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.navbar { + position: relative; + min-height: 50px; + margin-bottom: 20px; + border: 1px solid transparent; +} +@media (min-width: 768px) { + .navbar { + border-radius: 4px; + } +} +@media (min-width: 768px) { + .navbar-header { + float: left; + } +} +.navbar-collapse { + padding-right: 15px; + padding-left: 15px; + overflow-x: visible; + -webkit-overflow-scrolling: touch; + border-top: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1); +} +.navbar-collapse.in { + overflow-y: auto; +} +@media (min-width: 768px) { + .navbar-collapse { + width: auto; + border-top: 0; + -webkit-box-shadow: none; + box-shadow: none; + } + .navbar-collapse.collapse { + display: block !important; + height: auto !important; + padding-bottom: 0; + overflow: visible !important; + } + .navbar-collapse.in { + overflow-y: visible; + } + .navbar-fixed-top .navbar-collapse, + .navbar-static-top .navbar-collapse, + .navbar-fixed-bottom .navbar-collapse { + padding-right: 0; + padding-left: 0; + } +} +.navbar-fixed-top .navbar-collapse, +.navbar-fixed-bottom .navbar-collapse { + max-height: 340px; +} +@media (max-device-width: 480px) and (orientation: landscape) { + .navbar-fixed-top .navbar-collapse, + .navbar-fixed-bottom .navbar-collapse { + max-height: 200px; + } +} +.container > .navbar-header, +.container-fluid > .navbar-header, +.container > .navbar-collapse, +.container-fluid > .navbar-collapse { + margin-right: -15px; + margin-left: -15px; +} +@media (min-width: 768px) { + .container > .navbar-header, + .container-fluid > .navbar-header, + .container > .navbar-collapse, + .container-fluid > .navbar-collapse { + margin-right: 0; + margin-left: 0; + } +} +.navbar-static-top { + z-index: 1000; + border-width: 0 0 1px; +} +@media (min-width: 768px) { + .navbar-static-top { + border-radius: 0; + } +} +.navbar-fixed-top, +.navbar-fixed-bottom { + position: fixed; + right: 0; + left: 0; + z-index: 1030; +} +@media (min-width: 768px) { + .navbar-fixed-top, + .navbar-fixed-bottom { + border-radius: 0; + } +} +.navbar-fixed-top { + top: 0; + border-width: 0 0 1px; +} +.navbar-fixed-bottom { + bottom: 0; + margin-bottom: 0; + border-width: 1px 0 0; +} +.navbar-brand { + float: left; + height: 50px; + padding: 15px 15px; + font-size: 18px; + line-height: 20px; +} +.navbar-brand:hover, +.navbar-brand:focus { + text-decoration: none; +} +.navbar-brand > img { + display: block; +} +@media (min-width: 768px) { + .navbar > .container .navbar-brand, + .navbar > .container-fluid .navbar-brand { + margin-left: -15px; + } +} +.navbar-toggle { + position: relative; + float: right; + padding: 9px 10px; + margin-top: 8px; + margin-right: 15px; + margin-bottom: 8px; + background-color: transparent; + background-image: none; + border: 1px solid transparent; + border-radius: 4px; +} +.navbar-toggle:focus { + outline: 0; +} +.navbar-toggle .icon-bar { + display: block; + width: 22px; + height: 2px; + border-radius: 1px; +} +.navbar-toggle .icon-bar + .icon-bar { + margin-top: 4px; +} +@media (min-width: 768px) { + .navbar-toggle { + display: none; + } +} +.navbar-nav { + margin: 7.5px -15px; +} +.navbar-nav > li > a { + padding-top: 10px; + padding-bottom: 10px; + line-height: 20px; +} +@media (max-width: 767px) { + .navbar-nav .open .dropdown-menu { + position: static; + float: none; + width: auto; + margin-top: 0; + background-color: transparent; + border: 0; + -webkit-box-shadow: none; + box-shadow: none; + } + .navbar-nav .open .dropdown-menu > li > a, + .navbar-nav .open .dropdown-menu .dropdown-header { + padding: 5px 15px 5px 25px; + } + .navbar-nav .open .dropdown-menu > li > a { + line-height: 20px; + } + .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-nav .open .dropdown-menu > li > a:focus { + background-image: none; + } +} +@media (min-width: 768px) { + .navbar-nav { + float: left; + margin: 0; + } + .navbar-nav > li { + float: left; + } + .navbar-nav > li > a { + padding-top: 15px; + padding-bottom: 15px; + } +} +.navbar-form { + padding: 10px 15px; + margin-top: 8px; + margin-right: -15px; + margin-bottom: 8px; + margin-left: -15px; + border-top: 1px solid transparent; + border-bottom: 1px solid transparent; + -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); + box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1); +} +@media (min-width: 768px) { + .navbar-form .form-group { + display: inline-block; + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .form-control { + display: inline-block; + width: auto; + vertical-align: middle; + } + .navbar-form .form-control-static { + display: inline-block; + } + .navbar-form .input-group { + display: inline-table; + vertical-align: middle; + } + .navbar-form .input-group .input-group-addon, + .navbar-form .input-group .input-group-btn, + .navbar-form .input-group .form-control { + width: auto; + } + .navbar-form .input-group > .form-control { + width: 100%; + } + .navbar-form .control-label { + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .radio, + .navbar-form .checkbox { + display: inline-block; + margin-top: 0; + margin-bottom: 0; + vertical-align: middle; + } + .navbar-form .radio label, + .navbar-form .checkbox label { + padding-left: 0; + } + .navbar-form .radio input[type="radio"], + .navbar-form .checkbox input[type="checkbox"] { + position: relative; + margin-left: 0; + } + .navbar-form .has-feedback .form-control-feedback { + top: 0; + } +} +@media (max-width: 767px) { + .navbar-form .form-group { + margin-bottom: 5px; + } + .navbar-form .form-group:last-child { + margin-bottom: 0; + } +} +@media (min-width: 768px) { + .navbar-form { + width: auto; + padding-top: 0; + padding-bottom: 0; + margin-right: 0; + margin-left: 0; + border: 0; + -webkit-box-shadow: none; + box-shadow: none; + } +} +.navbar-nav > li > .dropdown-menu { + margin-top: 0; + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.navbar-fixed-bottom .navbar-nav > li > .dropdown-menu { + margin-bottom: 0; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; +} +.navbar-btn { + margin-top: 8px; + margin-bottom: 8px; +} +.navbar-btn.btn-sm { + margin-top: 10px; + margin-bottom: 10px; +} +.navbar-btn.btn-xs { + margin-top: 14px; + margin-bottom: 14px; +} +.navbar-text { + margin-top: 15px; + margin-bottom: 15px; +} +@media (min-width: 768px) { + .navbar-text { + float: left; + margin-right: 15px; + margin-left: 15px; + } +} +@media (min-width: 768px) { + .navbar-left { + float: left !important; + } + .navbar-right { + float: right !important; + margin-right: -15px; + } + .navbar-right ~ .navbar-right { + margin-right: 0; + } +} +.navbar-default { + background-color: #f8f8f8; + border-color: #e7e7e7; +} +.navbar-default .navbar-brand { + color: #777; +} +.navbar-default .navbar-brand:hover, +.navbar-default .navbar-brand:focus { + color: #5e5e5e; + background-color: transparent; +} +.navbar-default .navbar-text { + color: #777; +} +.navbar-default .navbar-nav > li > a { + color: #777; +} +.navbar-default .navbar-nav > li > a:hover, +.navbar-default .navbar-nav > li > a:focus { + color: #333; + background-color: transparent; +} +.navbar-default .navbar-nav > .active > a, +.navbar-default .navbar-nav > .active > a:hover, +.navbar-default .navbar-nav > .active > a:focus { + color: #555; + background-color: #e7e7e7; +} +.navbar-default .navbar-nav > .disabled > a, +.navbar-default .navbar-nav > .disabled > a:hover, +.navbar-default .navbar-nav > .disabled > a:focus { + color: #ccc; + background-color: transparent; +} +.navbar-default .navbar-toggle { + border-color: #ddd; +} +.navbar-default .navbar-toggle:hover, +.navbar-default .navbar-toggle:focus { + background-color: #ddd; +} +.navbar-default .navbar-toggle .icon-bar { + background-color: #888; +} +.navbar-default .navbar-collapse, +.navbar-default .navbar-form { + border-color: #e7e7e7; +} +.navbar-default .navbar-nav > .open > a, +.navbar-default .navbar-nav > .open > a:hover, +.navbar-default .navbar-nav > .open > a:focus { + color: #555; + background-color: #e7e7e7; +} +@media (max-width: 767px) { + .navbar-default .navbar-nav .open .dropdown-menu > li > a { + color: #777; + } + .navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus { + color: #333; + background-color: transparent; + } + .navbar-default .navbar-nav .open .dropdown-menu > .active > a, + .navbar-default .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #555; + background-color: #e7e7e7; + } + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a, + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .navbar-default .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #ccc; + background-color: transparent; + } +} +.navbar-default .navbar-link { + color: #777; +} +.navbar-default .navbar-link:hover { + color: #333; +} +.navbar-default .btn-link { + color: #777; +} +.navbar-default .btn-link:hover, +.navbar-default .btn-link:focus { + color: #333; +} +.navbar-default .btn-link[disabled]:hover, +fieldset[disabled] .navbar-default .btn-link:hover, +.navbar-default .btn-link[disabled]:focus, +fieldset[disabled] .navbar-default .btn-link:focus { + color: #ccc; +} +.navbar-inverse { + background-color: #222; + border-color: #080808; +} +.navbar-inverse .navbar-brand { + color: #9d9d9d; +} +.navbar-inverse .navbar-brand:hover, +.navbar-inverse .navbar-brand:focus { + color: #fff; + background-color: transparent; +} +.navbar-inverse .navbar-text { + color: #9d9d9d; +} +.navbar-inverse .navbar-nav > li > a { + color: #9d9d9d; +} +.navbar-inverse .navbar-nav > li > a:hover, +.navbar-inverse .navbar-nav > li > a:focus { + color: #fff; + background-color: transparent; +} +.navbar-inverse .navbar-nav > .active > a, +.navbar-inverse .navbar-nav > .active > a:hover, +.navbar-inverse .navbar-nav > .active > a:focus { + color: #fff; + background-color: #080808; +} +.navbar-inverse .navbar-nav > .disabled > a, +.navbar-inverse .navbar-nav > .disabled > a:hover, +.navbar-inverse .navbar-nav > .disabled > a:focus { + color: #444; + background-color: transparent; +} +.navbar-inverse .navbar-toggle { + border-color: #333; +} +.navbar-inverse .navbar-toggle:hover, +.navbar-inverse .navbar-toggle:focus { + background-color: #333; +} +.navbar-inverse .navbar-toggle .icon-bar { + background-color: #fff; +} +.navbar-inverse .navbar-collapse, +.navbar-inverse .navbar-form { + border-color: #101010; +} +.navbar-inverse .navbar-nav > .open > a, +.navbar-inverse .navbar-nav > .open > a:hover, +.navbar-inverse .navbar-nav > .open > a:focus { + color: #fff; + background-color: #080808; +} +@media (max-width: 767px) { + .navbar-inverse .navbar-nav .open .dropdown-menu > .dropdown-header { + border-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu .divider { + background-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a { + color: #9d9d9d; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > li > a:focus { + color: #fff; + background-color: transparent; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a, + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > .active > a:focus { + color: #fff; + background-color: #080808; + } + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a, + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:hover, + .navbar-inverse .navbar-nav .open .dropdown-menu > .disabled > a:focus { + color: #444; + background-color: transparent; + } +} +.navbar-inverse .navbar-link { + color: #9d9d9d; +} +.navbar-inverse .navbar-link:hover { + color: #fff; +} +.navbar-inverse .btn-link { + color: #9d9d9d; +} +.navbar-inverse .btn-link:hover, +.navbar-inverse .btn-link:focus { + color: #fff; +} +.navbar-inverse .btn-link[disabled]:hover, +fieldset[disabled] .navbar-inverse .btn-link:hover, +.navbar-inverse .btn-link[disabled]:focus, +fieldset[disabled] .navbar-inverse .btn-link:focus { + color: #444; +} +.breadcrumb { + padding: 8px 15px; + margin-bottom: 20px; + list-style: none; + background-color: #f5f5f5; + border-radius: 4px; +} +.breadcrumb > li { + display: inline-block; +} +.breadcrumb > li + li:before { + padding: 0 5px; + color: #ccc; + content: "/\00a0"; +} +.breadcrumb > .active { + color: #777; +} +.pagination { + display: inline-block; + padding-left: 0; + margin: 20px 0; + border-radius: 4px; +} +.pagination > li { + display: inline; +} +.pagination > li > a, +.pagination > li > span { + position: relative; + float: left; + padding: 6px 12px; + margin-left: -1px; + line-height: 1.42857143; + color: #337ab7; + text-decoration: none; + background-color: #fff; + border: 1px solid #ddd; +} +.pagination > li:first-child > a, +.pagination > li:first-child > span { + margin-left: 0; + border-top-left-radius: 4px; + border-bottom-left-radius: 4px; +} +.pagination > li:last-child > a, +.pagination > li:last-child > span { + border-top-right-radius: 4px; + border-bottom-right-radius: 4px; +} +.pagination > li > a:hover, +.pagination > li > span:hover, +.pagination > li > a:focus, +.pagination > li > span:focus { + z-index: 2; + color: #23527c; + background-color: #eee; + border-color: #ddd; +} +.pagination > .active > a, +.pagination > .active > span, +.pagination > .active > a:hover, +.pagination > .active > span:hover, +.pagination > .active > a:focus, +.pagination > .active > span:focus { + z-index: 3; + color: #fff; + cursor: default; + background-color: #337ab7; + border-color: #337ab7; +} +.pagination > .disabled > span, +.pagination > .disabled > span:hover, +.pagination > .disabled > span:focus, +.pagination > .disabled > a, +.pagination > .disabled > a:hover, +.pagination > .disabled > a:focus { + color: #777; + cursor: not-allowed; + background-color: #fff; + border-color: #ddd; +} +.pagination-lg > li > a, +.pagination-lg > li > span { + padding: 10px 16px; + font-size: 18px; + line-height: 1.3333333; +} +.pagination-lg > li:first-child > a, +.pagination-lg > li:first-child > span { + border-top-left-radius: 6px; + border-bottom-left-radius: 6px; +} +.pagination-lg > li:last-child > a, +.pagination-lg > li:last-child > span { + border-top-right-radius: 6px; + border-bottom-right-radius: 6px; +} +.pagination-sm > li > a, +.pagination-sm > li > span { + padding: 5px 10px; + font-size: 12px; + line-height: 1.5; +} +.pagination-sm > li:first-child > a, +.pagination-sm > li:first-child > span { + border-top-left-radius: 3px; + border-bottom-left-radius: 3px; +} +.pagination-sm > li:last-child > a, +.pagination-sm > li:last-child > span { + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; +} +.pager { + padding-left: 0; + margin: 20px 0; + text-align: center; + list-style: none; +} +.pager li { + display: inline; +} +.pager li > a, +.pager li > span { + display: inline-block; + padding: 5px 14px; + background-color: #fff; + border: 1px solid #ddd; + border-radius: 15px; +} +.pager li > a:hover, +.pager li > a:focus { + text-decoration: none; + background-color: #eee; +} +.pager .next > a, +.pager .next > span { + float: right; +} +.pager .previous > a, +.pager .previous > span { + float: left; +} +.pager .disabled > a, +.pager .disabled > a:hover, +.pager .disabled > a:focus, +.pager .disabled > span { + color: #777; + cursor: not-allowed; + background-color: #fff; +} +.label { + display: inline; + padding: .2em .6em .3em; + font-size: 75%; + font-weight: bold; + line-height: 1; + color: #fff; + text-align: center; + white-space: nowrap; + vertical-align: baseline; + border-radius: .25em; +} +a.label:hover, +a.label:focus { + color: #fff; + text-decoration: none; + cursor: pointer; +} +.label:empty { + display: none; +} +.btn .label { + position: relative; + top: -1px; +} +.label-default { + background-color: #777; +} +.label-default[href]:hover, +.label-default[href]:focus { + background-color: #5e5e5e; +} +.label-primary { + background-color: #337ab7; +} +.label-primary[href]:hover, +.label-primary[href]:focus { + background-color: #286090; +} +.label-success { + background-color: #5cb85c; +} +.label-success[href]:hover, +.label-success[href]:focus { + background-color: #449d44; +} +.label-info { + background-color: #5bc0de; +} +.label-info[href]:hover, +.label-info[href]:focus { + background-color: #31b0d5; +} +.label-warning { + background-color: #f0ad4e; +} +.label-warning[href]:hover, +.label-warning[href]:focus { + background-color: #ec971f; +} +.label-danger { + background-color: #d9534f; +} +.label-danger[href]:hover, +.label-danger[href]:focus { + background-color: #c9302c; +} +.badge { + display: inline-block; + min-width: 10px; + padding: 3px 7px; + font-size: 12px; + font-weight: bold; + line-height: 1; + color: #fff; + text-align: center; + white-space: nowrap; + vertical-align: middle; + background-color: #777; + border-radius: 10px; +} +.badge:empty { + display: none; +} +.btn .badge { + position: relative; + top: -1px; +} +.btn-xs .badge, +.btn-group-xs > .btn .badge { + top: 0; + padding: 1px 5px; +} +a.badge:hover, +a.badge:focus { + color: #fff; + text-decoration: none; + cursor: pointer; +} +.list-group-item.active > .badge, +.nav-pills > .active > a > .badge { + color: #337ab7; + background-color: #fff; +} +.list-group-item > .badge { + float: right; +} +.list-group-item > .badge + .badge { + margin-right: 5px; +} +.nav-pills > li > a > .badge { + margin-left: 3px; +} +.jumbotron { + padding-top: 30px; + padding-bottom: 30px; + margin-bottom: 30px; + color: inherit; + background-color: #eee; +} +.jumbotron h1, +.jumbotron .h1 { + color: inherit; +} +.jumbotron p { + margin-bottom: 15px; + font-size: 21px; + font-weight: 200; +} +.jumbotron > hr { + border-top-color: #d5d5d5; +} +.container .jumbotron, +.container-fluid .jumbotron { + padding-right: 15px; + padding-left: 15px; + border-radius: 6px; +} +.jumbotron .container { + max-width: 100%; +} +@media screen and (min-width: 768px) { + .jumbotron { + padding-top: 48px; + padding-bottom: 48px; + } + .container .jumbotron, + .container-fluid .jumbotron { + padding-right: 60px; + padding-left: 60px; + } + .jumbotron h1, + .jumbotron .h1 { + font-size: 63px; + } +} +.thumbnail { + display: block; + padding: 4px; + margin-bottom: 20px; + line-height: 1.42857143; + background-color: #fff; + border: 1px solid #ddd; + border-radius: 4px; + -webkit-transition: border .2s ease-in-out; + -o-transition: border .2s ease-in-out; + transition: border .2s ease-in-out; +} +.thumbnail > img, +.thumbnail a > img { + margin-right: auto; + margin-left: auto; +} +a.thumbnail:hover, +a.thumbnail:focus, +a.thumbnail.active { + border-color: #337ab7; +} +.thumbnail .caption { + padding: 9px; + color: #333; +} +.alert { + padding: 15px; + margin-bottom: 20px; + border: 1px solid transparent; + border-radius: 4px; +} +.alert h4 { + margin-top: 0; + color: inherit; +} +.alert .alert-link { + font-weight: bold; +} +.alert > p, +.alert > ul { + margin-bottom: 0; +} +.alert > p + p { + margin-top: 5px; +} +.alert-dismissable, +.alert-dismissible { + padding-right: 35px; +} +.alert-dismissable .close, +.alert-dismissible .close { + position: relative; + top: -2px; + right: -21px; + color: inherit; +} +.alert-success { + color: #3c763d; + background-color: #dff0d8; + border-color: #d6e9c6; +} +.alert-success hr { + border-top-color: #c9e2b3; +} +.alert-success .alert-link { + color: #2b542c; +} +.alert-info { + color: #31708f; + background-color: #d9edf7; + border-color: #bce8f1; +} +.alert-info hr { + border-top-color: #a6e1ec; +} +.alert-info .alert-link { + color: #245269; +} +.alert-warning { + color: #8a6d3b; + background-color: #fcf8e3; + border-color: #faebcc; +} +.alert-warning hr { + border-top-color: #f7e1b5; +} +.alert-warning .alert-link { + color: #66512c; +} +.alert-danger { + color: #a94442; + background-color: #f2dede; + border-color: #ebccd1; +} +.alert-danger hr { + border-top-color: #e4b9c0; +} +.alert-danger .alert-link { + color: #843534; +} +@-webkit-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +@-o-keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +@keyframes progress-bar-stripes { + from { + background-position: 40px 0; + } + to { + background-position: 0 0; + } +} +.progress { + height: 20px; + margin-bottom: 20px; + overflow: hidden; + background-color: #f5f5f5; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); + box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1); +} +.progress-bar { + float: left; + width: 0; + height: 100%; + font-size: 12px; + line-height: 20px; + color: #fff; + text-align: center; + background-color: #337ab7; + -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); + box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15); + -webkit-transition: width .6s ease; + -o-transition: width .6s ease; + transition: width .6s ease; +} +.progress-striped .progress-bar, +.progress-bar-striped { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + -webkit-background-size: 40px 40px; + background-size: 40px 40px; +} +.progress.active .progress-bar, +.progress-bar.active { + -webkit-animation: progress-bar-stripes 2s linear infinite; + -o-animation: progress-bar-stripes 2s linear infinite; + animation: progress-bar-stripes 2s linear infinite; +} +.progress-bar-success { + background-color: #5cb85c; +} +.progress-striped .progress-bar-success { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.progress-bar-info { + background-color: #5bc0de; +} +.progress-striped .progress-bar-info { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.progress-bar-warning { + background-color: #f0ad4e; +} +.progress-striped .progress-bar-warning { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.progress-bar-danger { + background-color: #d9534f; +} +.progress-striped .progress-bar-danger { + background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); + background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent); +} +.media { + margin-top: 15px; +} +.media:first-child { + margin-top: 0; +} +.media, +.media-body { + overflow: hidden; + zoom: 1; +} +.media-body { + width: 10000px; +} +.media-object { + display: block; +} +.media-object.img-thumbnail { + max-width: none; +} +.media-right, +.media > .pull-right { + padding-left: 10px; +} +.media-left, +.media > .pull-left { + padding-right: 10px; +} +.media-left, +.media-right, +.media-body { + display: table-cell; + vertical-align: top; +} +.media-middle { + vertical-align: middle; +} +.media-bottom { + vertical-align: bottom; +} +.media-heading { + margin-top: 0; + margin-bottom: 5px; +} +.media-list { + padding-left: 0; + list-style: none; +} +.list-group { + padding-left: 0; + margin-bottom: 20px; +} +.list-group-item { + position: relative; + display: block; + padding: 10px 15px; + margin-bottom: -1px; + background-color: #fff; + border: 1px solid #ddd; +} +.list-group-item:first-child { + border-top-left-radius: 4px; + border-top-right-radius: 4px; +} +.list-group-item:last-child { + margin-bottom: 0; + border-bottom-right-radius: 4px; + border-bottom-left-radius: 4px; +} +a.list-group-item, +button.list-group-item { + color: #555; +} +a.list-group-item .list-group-item-heading, +button.list-group-item .list-group-item-heading { + color: #333; +} +a.list-group-item:hover, +button.list-group-item:hover, +a.list-group-item:focus, +button.list-group-item:focus { + color: #555; + text-decoration: none; + background-color: #f5f5f5; +} +button.list-group-item { + width: 100%; + text-align: left; +} +.list-group-item.disabled, +.list-group-item.disabled:hover, +.list-group-item.disabled:focus { + color: #777; + cursor: not-allowed; + background-color: #eee; +} +.list-group-item.disabled .list-group-item-heading, +.list-group-item.disabled:hover .list-group-item-heading, +.list-group-item.disabled:focus .list-group-item-heading { + color: inherit; +} +.list-group-item.disabled .list-group-item-text, +.list-group-item.disabled:hover .list-group-item-text, +.list-group-item.disabled:focus .list-group-item-text { + color: #777; +} +.list-group-item.active, +.list-group-item.active:hover, +.list-group-item.active:focus { + z-index: 2; + color: #fff; + background-color: #337ab7; + border-color: #337ab7; +} +.list-group-item.active .list-group-item-heading, +.list-group-item.active:hover .list-group-item-heading, +.list-group-item.active:focus .list-group-item-heading, +.list-group-item.active .list-group-item-heading > small, +.list-group-item.active:hover .list-group-item-heading > small, +.list-group-item.active:focus .list-group-item-heading > small, +.list-group-item.active .list-group-item-heading > .small, +.list-group-item.active:hover .list-group-item-heading > .small, +.list-group-item.active:focus .list-group-item-heading > .small { + color: inherit; +} +.list-group-item.active .list-group-item-text, +.list-group-item.active:hover .list-group-item-text, +.list-group-item.active:focus .list-group-item-text { + color: #c7ddef; +} +.list-group-item-success { + color: #3c763d; + background-color: #dff0d8; +} +a.list-group-item-success, +button.list-group-item-success { + color: #3c763d; +} +a.list-group-item-success .list-group-item-heading, +button.list-group-item-success .list-group-item-heading { + color: inherit; +} +a.list-group-item-success:hover, +button.list-group-item-success:hover, +a.list-group-item-success:focus, +button.list-group-item-success:focus { + color: #3c763d; + background-color: #d0e9c6; +} +a.list-group-item-success.active, +button.list-group-item-success.active, +a.list-group-item-success.active:hover, +button.list-group-item-success.active:hover, +a.list-group-item-success.active:focus, +button.list-group-item-success.active:focus { + color: #fff; + background-color: #3c763d; + border-color: #3c763d; +} +.list-group-item-info { + color: #31708f; + background-color: #d9edf7; +} +a.list-group-item-info, +button.list-group-item-info { + color: #31708f; +} +a.list-group-item-info .list-group-item-heading, +button.list-group-item-info .list-group-item-heading { + color: inherit; +} +a.list-group-item-info:hover, +button.list-group-item-info:hover, +a.list-group-item-info:focus, +button.list-group-item-info:focus { + color: #31708f; + background-color: #c4e3f3; +} +a.list-group-item-info.active, +button.list-group-item-info.active, +a.list-group-item-info.active:hover, +button.list-group-item-info.active:hover, +a.list-group-item-info.active:focus, +button.list-group-item-info.active:focus { + color: #fff; + background-color: #31708f; + border-color: #31708f; +} +.list-group-item-warning { + color: #8a6d3b; + background-color: #fcf8e3; +} +a.list-group-item-warning, +button.list-group-item-warning { + color: #8a6d3b; +} +a.list-group-item-warning .list-group-item-heading, +button.list-group-item-warning .list-group-item-heading { + color: inherit; +} +a.list-group-item-warning:hover, +button.list-group-item-warning:hover, +a.list-group-item-warning:focus, +button.list-group-item-warning:focus { + color: #8a6d3b; + background-color: #faf2cc; +} +a.list-group-item-warning.active, +button.list-group-item-warning.active, +a.list-group-item-warning.active:hover, +button.list-group-item-warning.active:hover, +a.list-group-item-warning.active:focus, +button.list-group-item-warning.active:focus { + color: #fff; + background-color: #8a6d3b; + border-color: #8a6d3b; +} +.list-group-item-danger { + color: #a94442; + background-color: #f2dede; +} +a.list-group-item-danger, +button.list-group-item-danger { + color: #a94442; +} +a.list-group-item-danger .list-group-item-heading, +button.list-group-item-danger .list-group-item-heading { + color: inherit; +} +a.list-group-item-danger:hover, +button.list-group-item-danger:hover, +a.list-group-item-danger:focus, +button.list-group-item-danger:focus { + color: #a94442; + background-color: #ebcccc; +} +a.list-group-item-danger.active, +button.list-group-item-danger.active, +a.list-group-item-danger.active:hover, +button.list-group-item-danger.active:hover, +a.list-group-item-danger.active:focus, +button.list-group-item-danger.active:focus { + color: #fff; + background-color: #a94442; + border-color: #a94442; +} +.list-group-item-heading { + margin-top: 0; + margin-bottom: 5px; +} +.list-group-item-text { + margin-bottom: 0; + line-height: 1.3; +} +.panel { + margin-bottom: 20px; + background-color: #fff; + border: 1px solid transparent; + border-radius: 4px; + -webkit-box-shadow: 0 1px 1px rgba(0, 0, 0, .05); + box-shadow: 0 1px 1px rgba(0, 0, 0, .05); +} +.panel-body { + padding: 15px; +} +.panel-heading { + padding: 10px 15px; + border-bottom: 1px solid transparent; + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel-heading > .dropdown .dropdown-toggle { + color: inherit; +} +.panel-title { + margin-top: 0; + margin-bottom: 0; + font-size: 16px; + color: inherit; +} +.panel-title > a, +.panel-title > small, +.panel-title > .small, +.panel-title > small > a, +.panel-title > .small > a { + color: inherit; +} +.panel-footer { + padding: 10px 15px; + background-color: #f5f5f5; + border-top: 1px solid #ddd; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .list-group, +.panel > .panel-collapse > .list-group { + margin-bottom: 0; +} +.panel > .list-group .list-group-item, +.panel > .panel-collapse > .list-group .list-group-item { + border-width: 1px 0; + border-radius: 0; +} +.panel > .list-group:first-child .list-group-item:first-child, +.panel > .panel-collapse > .list-group:first-child .list-group-item:first-child { + border-top: 0; + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel > .list-group:last-child .list-group-item:last-child, +.panel > .panel-collapse > .list-group:last-child .list-group-item:last-child { + border-bottom: 0; + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .panel-heading + .panel-collapse > .list-group .list-group-item:first-child { + border-top-left-radius: 0; + border-top-right-radius: 0; +} +.panel-heading + .list-group .list-group-item:first-child { + border-top-width: 0; +} +.list-group + .panel-footer { + border-top-width: 0; +} +.panel > .table, +.panel > .table-responsive > .table, +.panel > .panel-collapse > .table { + margin-bottom: 0; +} +.panel > .table caption, +.panel > .table-responsive > .table caption, +.panel > .panel-collapse > .table caption { + padding-right: 15px; + padding-left: 15px; +} +.panel > .table:first-child, +.panel > .table-responsive:first-child > .table:first-child { + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child { + border-top-left-radius: 3px; + border-top-right-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child td:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child td:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:first-child, +.panel > .table:first-child > thead:first-child > tr:first-child th:first-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:first-child, +.panel > .table:first-child > tbody:first-child > tr:first-child th:first-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:first-child { + border-top-left-radius: 3px; +} +.panel > .table:first-child > thead:first-child > tr:first-child td:last-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child td:last-child, +.panel > .table:first-child > tbody:first-child > tr:first-child td:last-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child td:last-child, +.panel > .table:first-child > thead:first-child > tr:first-child th:last-child, +.panel > .table-responsive:first-child > .table:first-child > thead:first-child > tr:first-child th:last-child, +.panel > .table:first-child > tbody:first-child > tr:first-child th:last-child, +.panel > .table-responsive:first-child > .table:first-child > tbody:first-child > tr:first-child th:last-child { + border-top-right-radius: 3px; +} +.panel > .table:last-child, +.panel > .table-responsive:last-child > .table:last-child { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child { + border-bottom-right-radius: 3px; + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child td:first-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:first-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child td:first-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:first-child, +.panel > .table:last-child > tbody:last-child > tr:last-child th:first-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:first-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child th:first-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:first-child { + border-bottom-left-radius: 3px; +} +.panel > .table:last-child > tbody:last-child > tr:last-child td:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child td:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child td:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child td:last-child, +.panel > .table:last-child > tbody:last-child > tr:last-child th:last-child, +.panel > .table-responsive:last-child > .table:last-child > tbody:last-child > tr:last-child th:last-child, +.panel > .table:last-child > tfoot:last-child > tr:last-child th:last-child, +.panel > .table-responsive:last-child > .table:last-child > tfoot:last-child > tr:last-child th:last-child { + border-bottom-right-radius: 3px; +} +.panel > .panel-body + .table, +.panel > .panel-body + .table-responsive, +.panel > .table + .panel-body, +.panel > .table-responsive + .panel-body { + border-top: 1px solid #ddd; +} +.panel > .table > tbody:first-child > tr:first-child th, +.panel > .table > tbody:first-child > tr:first-child td { + border-top: 0; +} +.panel > .table-bordered, +.panel > .table-responsive > .table-bordered { + border: 0; +} +.panel > .table-bordered > thead > tr > th:first-child, +.panel > .table-responsive > .table-bordered > thead > tr > th:first-child, +.panel > .table-bordered > tbody > tr > th:first-child, +.panel > .table-responsive > .table-bordered > tbody > tr > th:first-child, +.panel > .table-bordered > tfoot > tr > th:first-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > th:first-child, +.panel > .table-bordered > thead > tr > td:first-child, +.panel > .table-responsive > .table-bordered > thead > tr > td:first-child, +.panel > .table-bordered > tbody > tr > td:first-child, +.panel > .table-responsive > .table-bordered > tbody > tr > td:first-child, +.panel > .table-bordered > tfoot > tr > td:first-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > td:first-child { + border-left: 0; +} +.panel > .table-bordered > thead > tr > th:last-child, +.panel > .table-responsive > .table-bordered > thead > tr > th:last-child, +.panel > .table-bordered > tbody > tr > th:last-child, +.panel > .table-responsive > .table-bordered > tbody > tr > th:last-child, +.panel > .table-bordered > tfoot > tr > th:last-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > th:last-child, +.panel > .table-bordered > thead > tr > td:last-child, +.panel > .table-responsive > .table-bordered > thead > tr > td:last-child, +.panel > .table-bordered > tbody > tr > td:last-child, +.panel > .table-responsive > .table-bordered > tbody > tr > td:last-child, +.panel > .table-bordered > tfoot > tr > td:last-child, +.panel > .table-responsive > .table-bordered > tfoot > tr > td:last-child { + border-right: 0; +} +.panel > .table-bordered > thead > tr:first-child > td, +.panel > .table-responsive > .table-bordered > thead > tr:first-child > td, +.panel > .table-bordered > tbody > tr:first-child > td, +.panel > .table-responsive > .table-bordered > tbody > tr:first-child > td, +.panel > .table-bordered > thead > tr:first-child > th, +.panel > .table-responsive > .table-bordered > thead > tr:first-child > th, +.panel > .table-bordered > tbody > tr:first-child > th, +.panel > .table-responsive > .table-bordered > tbody > tr:first-child > th { + border-bottom: 0; +} +.panel > .table-bordered > tbody > tr:last-child > td, +.panel > .table-responsive > .table-bordered > tbody > tr:last-child > td, +.panel > .table-bordered > tfoot > tr:last-child > td, +.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > td, +.panel > .table-bordered > tbody > tr:last-child > th, +.panel > .table-responsive > .table-bordered > tbody > tr:last-child > th, +.panel > .table-bordered > tfoot > tr:last-child > th, +.panel > .table-responsive > .table-bordered > tfoot > tr:last-child > th { + border-bottom: 0; +} +.panel > .table-responsive { + margin-bottom: 0; + border: 0; +} +.panel-group { + margin-bottom: 20px; +} +.panel-group .panel { + margin-bottom: 0; + border-radius: 4px; +} +.panel-group .panel + .panel { + margin-top: 5px; +} +.panel-group .panel-heading { + border-bottom: 0; +} +.panel-group .panel-heading + .panel-collapse > .panel-body, +.panel-group .panel-heading + .panel-collapse > .list-group { + border-top: 1px solid #ddd; +} +.panel-group .panel-footer { + border-top: 0; +} +.panel-group .panel-footer + .panel-collapse .panel-body { + border-bottom: 1px solid #ddd; +} +.panel-default { + border-color: #ddd; +} +.panel-default > .panel-heading { + color: #333; + background-color: #f5f5f5; + border-color: #ddd; +} +.panel-default > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #ddd; +} +.panel-default > .panel-heading .badge { + color: #f5f5f5; + background-color: #333; +} +.panel-default > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #ddd; +} +.panel-primary { + border-color: #337ab7; +} +.panel-primary > .panel-heading { + color: #fff; + background-color: #337ab7; + border-color: #337ab7; +} +.panel-primary > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #337ab7; +} +.panel-primary > .panel-heading .badge { + color: #337ab7; + background-color: #fff; +} +.panel-primary > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #337ab7; +} +.panel-success { + border-color: #d6e9c6; +} +.panel-success > .panel-heading { + color: #3c763d; + background-color: #dff0d8; + border-color: #d6e9c6; +} +.panel-success > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #d6e9c6; +} +.panel-success > .panel-heading .badge { + color: #dff0d8; + background-color: #3c763d; +} +.panel-success > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #d6e9c6; +} +.panel-info { + border-color: #bce8f1; +} +.panel-info > .panel-heading { + color: #31708f; + background-color: #d9edf7; + border-color: #bce8f1; +} +.panel-info > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #bce8f1; +} +.panel-info > .panel-heading .badge { + color: #d9edf7; + background-color: #31708f; +} +.panel-info > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #bce8f1; +} +.panel-warning { + border-color: #faebcc; +} +.panel-warning > .panel-heading { + color: #8a6d3b; + background-color: #fcf8e3; + border-color: #faebcc; +} +.panel-warning > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #faebcc; +} +.panel-warning > .panel-heading .badge { + color: #fcf8e3; + background-color: #8a6d3b; +} +.panel-warning > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #faebcc; +} +.panel-danger { + border-color: #ebccd1; +} +.panel-danger > .panel-heading { + color: #a94442; + background-color: #f2dede; + border-color: #ebccd1; +} +.panel-danger > .panel-heading + .panel-collapse > .panel-body { + border-top-color: #ebccd1; +} +.panel-danger > .panel-heading .badge { + color: #f2dede; + background-color: #a94442; +} +.panel-danger > .panel-footer + .panel-collapse > .panel-body { + border-bottom-color: #ebccd1; +} +.embed-responsive { + position: relative; + display: block; + height: 0; + padding: 0; + overflow: hidden; +} +.embed-responsive .embed-responsive-item, +.embed-responsive iframe, +.embed-responsive embed, +.embed-responsive object, +.embed-responsive video { + position: absolute; + top: 0; + bottom: 0; + left: 0; + width: 100%; + height: 100%; + border: 0; +} +.embed-responsive-16by9 { + padding-bottom: 56.25%; +} +.embed-responsive-4by3 { + padding-bottom: 75%; +} +.well { + min-height: 20px; + padding: 19px; + margin-bottom: 20px; + background-color: #f5f5f5; + border: 1px solid #e3e3e3; + border-radius: 4px; + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05); +} +.well blockquote { + border-color: #ddd; + border-color: rgba(0, 0, 0, .15); +} +.well-lg { + padding: 24px; + border-radius: 6px; +} +.well-sm { + padding: 9px; + border-radius: 3px; +} +.close { + float: right; + font-size: 21px; + font-weight: bold; + line-height: 1; + color: #000; + text-shadow: 0 1px 0 #fff; + filter: alpha(opacity=20); + opacity: .2; +} +.close:hover, +.close:focus { + color: #000; + text-decoration: none; + cursor: pointer; + filter: alpha(opacity=50); + opacity: .5; +} +button.close { + -webkit-appearance: none; + padding: 0; + cursor: pointer; + background: transparent; + border: 0; +} +.modal-open { + overflow: hidden; +} +.modal { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1050; + display: none; + overflow: hidden; + -webkit-overflow-scrolling: touch; + outline: 0; +} +.modal.fade .modal-dialog { + -webkit-transition: -webkit-transform .3s ease-out; + -o-transition: -o-transform .3s ease-out; + transition: transform .3s ease-out; + -webkit-transform: translate(0, -25%); + -ms-transform: translate(0, -25%); + -o-transform: translate(0, -25%); + transform: translate(0, -25%); +} +.modal.in .modal-dialog { + -webkit-transform: translate(0, 0); + -ms-transform: translate(0, 0); + -o-transform: translate(0, 0); + transform: translate(0, 0); +} +.modal-open .modal { + overflow-x: hidden; + overflow-y: auto; +} +.modal-dialog { + position: relative; + width: auto; + margin: 10px; +} +.modal-content { + position: relative; + background-color: #fff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #999; + border: 1px solid rgba(0, 0, 0, .2); + border-radius: 6px; + outline: 0; + -webkit-box-shadow: 0 3px 9px rgba(0, 0, 0, .5); + box-shadow: 0 3px 9px rgba(0, 0, 0, .5); +} +.modal-backdrop { + position: fixed; + top: 0; + right: 0; + bottom: 0; + left: 0; + z-index: 1040; + background-color: #000; +} +.modal-backdrop.fade { + filter: alpha(opacity=0); + opacity: 0; +} +.modal-backdrop.in { + filter: alpha(opacity=50); + opacity: .5; +} +.modal-header { + padding: 15px; + border-bottom: 1px solid #e5e5e5; +} +.modal-header .close { + margin-top: -2px; +} +.modal-title { + margin: 0; + line-height: 1.42857143; +} +.modal-body { + position: relative; + padding: 15px; +} +.modal-footer { + padding: 15px; + text-align: right; + border-top: 1px solid #e5e5e5; +} +.modal-footer .btn + .btn { + margin-bottom: 0; + margin-left: 5px; +} +.modal-footer .btn-group .btn + .btn { + margin-left: -1px; +} +.modal-footer .btn-block + .btn-block { + margin-left: 0; +} +.modal-scrollbar-measure { + position: absolute; + top: -9999px; + width: 50px; + height: 50px; + overflow: scroll; +} +@media (min-width: 768px) { + .modal-dialog { + width: 600px; + margin: 30px auto; + } + .modal-content { + -webkit-box-shadow: 0 5px 15px rgba(0, 0, 0, .5); + box-shadow: 0 5px 15px rgba(0, 0, 0, .5); + } + .modal-sm { + width: 300px; + } +} +@media (min-width: 992px) { + .modal-lg { + width: 900px; + } +} +.tooltip { + position: absolute; + z-index: 1070; + display: block; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 12px; + font-style: normal; + font-weight: normal; + line-height: 1.42857143; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + word-wrap: normal; + white-space: normal; + filter: alpha(opacity=0); + opacity: 0; + + line-break: auto; +} +.tooltip.in { + filter: alpha(opacity=90); + opacity: .9; +} +.tooltip.top { + padding: 5px 0; + margin-top: -3px; +} +.tooltip.right { + padding: 0 5px; + margin-left: 3px; +} +.tooltip.bottom { + padding: 5px 0; + margin-top: 3px; +} +.tooltip.left { + padding: 0 5px; + margin-left: -3px; +} +.tooltip-inner { + max-width: 200px; + padding: 3px 8px; + color: #fff; + text-align: center; + background-color: #000; + border-radius: 4px; +} +.tooltip-arrow { + position: absolute; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.tooltip.top .tooltip-arrow { + bottom: 0; + left: 50%; + margin-left: -5px; + border-width: 5px 5px 0; + border-top-color: #000; +} +.tooltip.top-left .tooltip-arrow { + right: 5px; + bottom: 0; + margin-bottom: -5px; + border-width: 5px 5px 0; + border-top-color: #000; +} +.tooltip.top-right .tooltip-arrow { + bottom: 0; + left: 5px; + margin-bottom: -5px; + border-width: 5px 5px 0; + border-top-color: #000; +} +.tooltip.right .tooltip-arrow { + top: 50%; + left: 0; + margin-top: -5px; + border-width: 5px 5px 5px 0; + border-right-color: #000; +} +.tooltip.left .tooltip-arrow { + top: 50%; + right: 0; + margin-top: -5px; + border-width: 5px 0 5px 5px; + border-left-color: #000; +} +.tooltip.bottom .tooltip-arrow { + top: 0; + left: 50%; + margin-left: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000; +} +.tooltip.bottom-left .tooltip-arrow { + top: 0; + right: 5px; + margin-top: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000; +} +.tooltip.bottom-right .tooltip-arrow { + top: 0; + left: 5px; + margin-top: -5px; + border-width: 0 5px 5px; + border-bottom-color: #000; +} +.popover { + position: absolute; + top: 0; + left: 0; + z-index: 1060; + display: none; + max-width: 276px; + padding: 1px; + font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; + font-size: 14px; + font-style: normal; + font-weight: normal; + line-height: 1.42857143; + text-align: left; + text-align: start; + text-decoration: none; + text-shadow: none; + text-transform: none; + letter-spacing: normal; + word-break: normal; + word-spacing: normal; + word-wrap: normal; + white-space: normal; + background-color: #fff; + -webkit-background-clip: padding-box; + background-clip: padding-box; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, .2); + border-radius: 6px; + -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, .2); + box-shadow: 0 5px 10px rgba(0, 0, 0, .2); + + line-break: auto; +} +.popover.top { + margin-top: -10px; +} +.popover.right { + margin-left: 10px; +} +.popover.bottom { + margin-top: 10px; +} +.popover.left { + margin-left: -10px; +} +.popover-title { + padding: 8px 14px; + margin: 0; + font-size: 14px; + background-color: #f7f7f7; + border-bottom: 1px solid #ebebeb; + border-radius: 5px 5px 0 0; +} +.popover-content { + padding: 9px 14px; +} +.popover > .arrow, +.popover > .arrow:after { + position: absolute; + display: block; + width: 0; + height: 0; + border-color: transparent; + border-style: solid; +} +.popover > .arrow { + border-width: 11px; +} +.popover > .arrow:after { + content: ""; + border-width: 10px; +} +.popover.top > .arrow { + bottom: -11px; + left: 50%; + margin-left: -11px; + border-top-color: #999; + border-top-color: rgba(0, 0, 0, .25); + border-bottom-width: 0; +} +.popover.top > .arrow:after { + bottom: 1px; + margin-left: -10px; + content: " "; + border-top-color: #fff; + border-bottom-width: 0; +} +.popover.right > .arrow { + top: 50%; + left: -11px; + margin-top: -11px; + border-right-color: #999; + border-right-color: rgba(0, 0, 0, .25); + border-left-width: 0; +} +.popover.right > .arrow:after { + bottom: -10px; + left: 1px; + content: " "; + border-right-color: #fff; + border-left-width: 0; +} +.popover.bottom > .arrow { + top: -11px; + left: 50%; + margin-left: -11px; + border-top-width: 0; + border-bottom-color: #999; + border-bottom-color: rgba(0, 0, 0, .25); +} +.popover.bottom > .arrow:after { + top: 1px; + margin-left: -10px; + content: " "; + border-top-width: 0; + border-bottom-color: #fff; +} +.popover.left > .arrow { + top: 50%; + right: -11px; + margin-top: -11px; + border-right-width: 0; + border-left-color: #999; + border-left-color: rgba(0, 0, 0, .25); +} +.popover.left > .arrow:after { + right: 1px; + bottom: -10px; + content: " "; + border-right-width: 0; + border-left-color: #fff; +} +.carousel { + position: relative; +} +.carousel-inner { + position: relative; + width: 100%; + overflow: hidden; +} +.carousel-inner > .item { + position: relative; + display: none; + -webkit-transition: .6s ease-in-out left; + -o-transition: .6s ease-in-out left; + transition: .6s ease-in-out left; +} +.carousel-inner > .item > img, +.carousel-inner > .item > a > img { + line-height: 1; +} +@media all and (transform-3d), (-webkit-transform-3d) { + .carousel-inner > .item { + -webkit-transition: -webkit-transform .6s ease-in-out; + -o-transition: -o-transform .6s ease-in-out; + transition: transform .6s ease-in-out; + + -webkit-backface-visibility: hidden; + backface-visibility: hidden; + -webkit-perspective: 1000px; + perspective: 1000px; + } + .carousel-inner > .item.next, + .carousel-inner > .item.active.right { + left: 0; + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + } + .carousel-inner > .item.prev, + .carousel-inner > .item.active.left { + left: 0; + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + } + .carousel-inner > .item.next.left, + .carousel-inner > .item.prev.right, + .carousel-inner > .item.active { + left: 0; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} +.carousel-inner > .active, +.carousel-inner > .next, +.carousel-inner > .prev { + display: block; +} +.carousel-inner > .active { + left: 0; +} +.carousel-inner > .next, +.carousel-inner > .prev { + position: absolute; + top: 0; + width: 100%; +} +.carousel-inner > .next { + left: 100%; +} +.carousel-inner > .prev { + left: -100%; +} +.carousel-inner > .next.left, +.carousel-inner > .prev.right { + left: 0; +} +.carousel-inner > .active.left { + left: -100%; +} +.carousel-inner > .active.right { + left: 100%; +} +.carousel-control { + position: absolute; + top: 0; + bottom: 0; + left: 0; + width: 15%; + font-size: 20px; + color: #fff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, .6); + background-color: rgba(0, 0, 0, 0); + filter: alpha(opacity=50); + opacity: .5; +} +.carousel-control.left { + background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); + background-image: -o-linear-gradient(left, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); + background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .5)), to(rgba(0, 0, 0, .0001))); + background-image: linear-gradient(to right, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, .0001) 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1); + background-repeat: repeat-x; +} +.carousel-control.right { + right: 0; + left: auto; + background-image: -webkit-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); + background-image: -o-linear-gradient(left, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); + background-image: -webkit-gradient(linear, left top, right top, from(rgba(0, 0, 0, .0001)), to(rgba(0, 0, 0, .5))); + background-image: linear-gradient(to right, rgba(0, 0, 0, .0001) 0%, rgba(0, 0, 0, .5) 100%); + filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1); + background-repeat: repeat-x; +} +.carousel-control:hover, +.carousel-control:focus { + color: #fff; + text-decoration: none; + filter: alpha(opacity=90); + outline: 0; + opacity: .9; +} +.carousel-control .icon-prev, +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-left, +.carousel-control .glyphicon-chevron-right { + position: absolute; + top: 50%; + z-index: 5; + display: inline-block; + margin-top: -10px; +} +.carousel-control .icon-prev, +.carousel-control .glyphicon-chevron-left { + left: 50%; + margin-left: -10px; +} +.carousel-control .icon-next, +.carousel-control .glyphicon-chevron-right { + right: 50%; + margin-right: -10px; +} +.carousel-control .icon-prev, +.carousel-control .icon-next { + width: 20px; + height: 20px; + font-family: serif; + line-height: 1; +} +.carousel-control .icon-prev:before { + content: '\2039'; +} +.carousel-control .icon-next:before { + content: '\203a'; +} +.carousel-indicators { + position: absolute; + bottom: 10px; + left: 50%; + z-index: 15; + width: 60%; + padding-left: 0; + margin-left: -30%; + text-align: center; + list-style: none; +} +.carousel-indicators li { + display: inline-block; + width: 10px; + height: 10px; + margin: 1px; + text-indent: -999px; + cursor: pointer; + background-color: #000 \9; + background-color: rgba(0, 0, 0, 0); + border: 1px solid #fff; + border-radius: 10px; +} +.carousel-indicators .active { + width: 12px; + height: 12px; + margin: 0; + background-color: #fff; +} +.carousel-caption { + position: absolute; + right: 15%; + bottom: 20px; + left: 15%; + z-index: 10; + padding-top: 20px; + padding-bottom: 20px; + color: #fff; + text-align: center; + text-shadow: 0 1px 2px rgba(0, 0, 0, .6); +} +.carousel-caption .btn { + text-shadow: none; +} +@media screen and (min-width: 768px) { + .carousel-control .glyphicon-chevron-left, + .carousel-control .glyphicon-chevron-right, + .carousel-control .icon-prev, + .carousel-control .icon-next { + width: 30px; + height: 30px; + margin-top: -10px; + font-size: 30px; + } + .carousel-control .glyphicon-chevron-left, + .carousel-control .icon-prev { + margin-left: -10px; + } + .carousel-control .glyphicon-chevron-right, + .carousel-control .icon-next { + margin-right: -10px; + } + .carousel-caption { + right: 20%; + left: 20%; + padding-bottom: 30px; + } + .carousel-indicators { + bottom: 20px; + } +} +.clearfix:before, +.clearfix:after, +.dl-horizontal dd:before, +.dl-horizontal dd:after, +.container:before, +.container:after, +.container-fluid:before, +.container-fluid:after, +.row:before, +.row:after, +.form-horizontal .form-group:before, +.form-horizontal .form-group:after, +.btn-toolbar:before, +.btn-toolbar:after, +.btn-group-vertical > .btn-group:before, +.btn-group-vertical > .btn-group:after, +.nav:before, +.nav:after, +.navbar:before, +.navbar:after, +.navbar-header:before, +.navbar-header:after, +.navbar-collapse:before, +.navbar-collapse:after, +.pager:before, +.pager:after, +.panel-body:before, +.panel-body:after, +.modal-header:before, +.modal-header:after, +.modal-footer:before, +.modal-footer:after { + display: table; + content: " "; +} +.clearfix:after, +.dl-horizontal dd:after, +.container:after, +.container-fluid:after, +.row:after, +.form-horizontal .form-group:after, +.btn-toolbar:after, +.btn-group-vertical > .btn-group:after, +.nav:after, +.navbar:after, +.navbar-header:after, +.navbar-collapse:after, +.pager:after, +.panel-body:after, +.modal-header:after, +.modal-footer:after { + clear: both; +} +.center-block { + display: block; + margin-right: auto; + margin-left: auto; +} +.pull-right { + float: right !important; +} +.pull-left { + float: left !important; +} +.hide { + display: none !important; +} +.show { + display: block !important; +} +.invisible { + visibility: hidden; +} +.text-hide { + font: 0/0 a; + color: transparent; + text-shadow: none; + background-color: transparent; + border: 0; +} +.hidden { + display: none !important; +} +.affix { + position: fixed; +} +@-ms-viewport { + width: device-width; +} +.visible-xs, +.visible-sm, +.visible-md, +.visible-lg { + display: none !important; +} +.visible-xs-block, +.visible-xs-inline, +.visible-xs-inline-block, +.visible-sm-block, +.visible-sm-inline, +.visible-sm-inline-block, +.visible-md-block, +.visible-md-inline, +.visible-md-inline-block, +.visible-lg-block, +.visible-lg-inline, +.visible-lg-inline-block { + display: none !important; +} +@media (max-width: 767px) { + .visible-xs { + display: block !important; + } + table.visible-xs { + display: table !important; + } + tr.visible-xs { + display: table-row !important; + } + th.visible-xs, + td.visible-xs { + display: table-cell !important; + } +} +@media (max-width: 767px) { + .visible-xs-block { + display: block !important; + } +} +@media (max-width: 767px) { + .visible-xs-inline { + display: inline !important; + } +} +@media (max-width: 767px) { + .visible-xs-inline-block { + display: inline-block !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm { + display: block !important; + } + table.visible-sm { + display: table !important; + } + tr.visible-sm { + display: table-row !important; + } + th.visible-sm, + td.visible-sm { + display: table-cell !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-block { + display: block !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-inline { + display: inline !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .visible-sm-inline-block { + display: inline-block !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md { + display: block !important; + } + table.visible-md { + display: table !important; + } + tr.visible-md { + display: table-row !important; + } + th.visible-md, + td.visible-md { + display: table-cell !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-block { + display: block !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-inline { + display: inline !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .visible-md-inline-block { + display: inline-block !important; + } +} +@media (min-width: 1200px) { + .visible-lg { + display: block !important; + } + table.visible-lg { + display: table !important; + } + tr.visible-lg { + display: table-row !important; + } + th.visible-lg, + td.visible-lg { + display: table-cell !important; + } +} +@media (min-width: 1200px) { + .visible-lg-block { + display: block !important; + } +} +@media (min-width: 1200px) { + .visible-lg-inline { + display: inline !important; + } +} +@media (min-width: 1200px) { + .visible-lg-inline-block { + display: inline-block !important; + } +} +@media (max-width: 767px) { + .hidden-xs { + display: none !important; + } +} +@media (min-width: 768px) and (max-width: 991px) { + .hidden-sm { + display: none !important; + } +} +@media (min-width: 992px) and (max-width: 1199px) { + .hidden-md { + display: none !important; + } +} +@media (min-width: 1200px) { + .hidden-lg { + display: none !important; + } +} +.visible-print { + display: none !important; +} +@media print { + .visible-print { + display: block !important; + } + table.visible-print { + display: table !important; + } + tr.visible-print { + display: table-row !important; + } + th.visible-print, + td.visible-print { + display: table-cell !important; + } +} +.visible-print-block { + display: none !important; +} +@media print { + .visible-print-block { + display: block !important; + } +} +.visible-print-inline { + display: none !important; +} +@media print { + .visible-print-inline { + display: inline !important; + } +} +.visible-print-inline-block { + display: none !important; +} +@media print { + .visible-print-inline-block { + display: inline-block !important; + } +} +@media print { + .hidden-print { + display: none !important; + } +} +/*# sourceMappingURL=bootstrap.css.map */ diff --git a/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/css/bootstrap.min.css b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/css/bootstrap.min.css new file mode 100644 index 00000000..ed3905e0 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/css/bootstrap.min.css @@ -0,0 +1,6 @@ +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + *//*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:700}dfn{font-style:italic}h1{margin:.67em 0;font-size:2em}mark{color:#000;background:#ff0}small{font-size:80%}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-.5em}sub{bottom:-.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{height:0;-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{margin:0;font:inherit;color:inherit}button{overflow:visible}button,select{text-transform:none}button,html input[type=button],input[type=reset],input[type=submit]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}input{line-height:normal}input[type=checkbox],input[type=radio]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;padding:0}input[type=number]::-webkit-inner-spin-button,input[type=number]::-webkit-outer-spin-button{height:auto}input[type=search]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none}fieldset{padding:.35em .625em .75em;margin:0 2px;border:1px solid silver}legend{padding:0;border:0}textarea{overflow:auto}optgroup{font-weight:700}table{border-spacing:0;border-collapse:collapse}td,th{padding:0}/*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */@media print{*,:after,:before{color:#000!important;text-shadow:none!important;background:0 0!important;-webkit-box-shadow:none!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:" (" attr(href) ")"}abbr[title]:after{content:" (" attr(title) ")"}a[href^="javascript:"]:after,a[href^="#"]:after{content:""}blockquote,pre{border:1px solid #999;page-break-inside:avoid}thead{display:table-header-group}img,tr{page-break-inside:avoid}img{max-width:100%!important}h2,h3,p{orphans:3;widows:3}h2,h3{page-break-after:avoid}.navbar{display:none}.btn>.caret,.dropup>.btn>.caret{border-top-color:#000!important}.label{border:1px solid #000}.table{border-collapse:collapse!important}.table td,.table th{background-color:#fff!important}.table-bordered td,.table-bordered th{border:1px solid #ddd!important}}@font-face{font-family:'Glyphicons Halflings';src:url(../fonts/glyphicons-halflings-regular.eot);src:url(../fonts/glyphicons-halflings-regular.eot?#iefix) format('embedded-opentype'),url(../fonts/glyphicons-halflings-regular.woff2) format('woff2'),url(../fonts/glyphicons-halflings-regular.woff) format('woff'),url(../fonts/glyphicons-halflings-regular.ttf) format('truetype'),url(../fonts/glyphicons-halflings-regular.svg#glyphicons_halflingsregular) format('svg')}.glyphicon{position:relative;top:1px;display:inline-block;font-family:'Glyphicons Halflings';font-style:normal;font-weight:400;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.glyphicon-asterisk:before{content:"\002a"}.glyphicon-plus:before{content:"\002b"}.glyphicon-eur:before,.glyphicon-euro:before{content:"\20ac"}.glyphicon-minus:before{content:"\2212"}.glyphicon-cloud:before{content:"\2601"}.glyphicon-envelope:before{content:"\2709"}.glyphicon-pencil:before{content:"\270f"}.glyphicon-glass:before{content:"\e001"}.glyphicon-music:before{content:"\e002"}.glyphicon-search:before{content:"\e003"}.glyphicon-heart:before{content:"\e005"}.glyphicon-star:before{content:"\e006"}.glyphicon-star-empty:before{content:"\e007"}.glyphicon-user:before{content:"\e008"}.glyphicon-film:before{content:"\e009"}.glyphicon-th-large:before{content:"\e010"}.glyphicon-th:before{content:"\e011"}.glyphicon-th-list:before{content:"\e012"}.glyphicon-ok:before{content:"\e013"}.glyphicon-remove:before{content:"\e014"}.glyphicon-zoom-in:before{content:"\e015"}.glyphicon-zoom-out:before{content:"\e016"}.glyphicon-off:before{content:"\e017"}.glyphicon-signal:before{content:"\e018"}.glyphicon-cog:before{content:"\e019"}.glyphicon-trash:before{content:"\e020"}.glyphicon-home:before{content:"\e021"}.glyphicon-file:before{content:"\e022"}.glyphicon-time:before{content:"\e023"}.glyphicon-road:before{content:"\e024"}.glyphicon-download-alt:before{content:"\e025"}.glyphicon-download:before{content:"\e026"}.glyphicon-upload:before{content:"\e027"}.glyphicon-inbox:before{content:"\e028"}.glyphicon-play-circle:before{content:"\e029"}.glyphicon-repeat:before{content:"\e030"}.glyphicon-refresh:before{content:"\e031"}.glyphicon-list-alt:before{content:"\e032"}.glyphicon-lock:before{content:"\e033"}.glyphicon-flag:before{content:"\e034"}.glyphicon-headphones:before{content:"\e035"}.glyphicon-volume-off:before{content:"\e036"}.glyphicon-volume-down:before{content:"\e037"}.glyphicon-volume-up:before{content:"\e038"}.glyphicon-qrcode:before{content:"\e039"}.glyphicon-barcode:before{content:"\e040"}.glyphicon-tag:before{content:"\e041"}.glyphicon-tags:before{content:"\e042"}.glyphicon-book:before{content:"\e043"}.glyphicon-bookmark:before{content:"\e044"}.glyphicon-print:before{content:"\e045"}.glyphicon-camera:before{content:"\e046"}.glyphicon-font:before{content:"\e047"}.glyphicon-bold:before{content:"\e048"}.glyphicon-italic:before{content:"\e049"}.glyphicon-text-height:before{content:"\e050"}.glyphicon-text-width:before{content:"\e051"}.glyphicon-align-left:before{content:"\e052"}.glyphicon-align-center:before{content:"\e053"}.glyphicon-align-right:before{content:"\e054"}.glyphicon-align-justify:before{content:"\e055"}.glyphicon-list:before{content:"\e056"}.glyphicon-indent-left:before{content:"\e057"}.glyphicon-indent-right:before{content:"\e058"}.glyphicon-facetime-video:before{content:"\e059"}.glyphicon-picture:before{content:"\e060"}.glyphicon-map-marker:before{content:"\e062"}.glyphicon-adjust:before{content:"\e063"}.glyphicon-tint:before{content:"\e064"}.glyphicon-edit:before{content:"\e065"}.glyphicon-share:before{content:"\e066"}.glyphicon-check:before{content:"\e067"}.glyphicon-move:before{content:"\e068"}.glyphicon-step-backward:before{content:"\e069"}.glyphicon-fast-backward:before{content:"\e070"}.glyphicon-backward:before{content:"\e071"}.glyphicon-play:before{content:"\e072"}.glyphicon-pause:before{content:"\e073"}.glyphicon-stop:before{content:"\e074"}.glyphicon-forward:before{content:"\e075"}.glyphicon-fast-forward:before{content:"\e076"}.glyphicon-step-forward:before{content:"\e077"}.glyphicon-eject:before{content:"\e078"}.glyphicon-chevron-left:before{content:"\e079"}.glyphicon-chevron-right:before{content:"\e080"}.glyphicon-plus-sign:before{content:"\e081"}.glyphicon-minus-sign:before{content:"\e082"}.glyphicon-remove-sign:before{content:"\e083"}.glyphicon-ok-sign:before{content:"\e084"}.glyphicon-question-sign:before{content:"\e085"}.glyphicon-info-sign:before{content:"\e086"}.glyphicon-screenshot:before{content:"\e087"}.glyphicon-remove-circle:before{content:"\e088"}.glyphicon-ok-circle:before{content:"\e089"}.glyphicon-ban-circle:before{content:"\e090"}.glyphicon-arrow-left:before{content:"\e091"}.glyphicon-arrow-right:before{content:"\e092"}.glyphicon-arrow-up:before{content:"\e093"}.glyphicon-arrow-down:before{content:"\e094"}.glyphicon-share-alt:before{content:"\e095"}.glyphicon-resize-full:before{content:"\e096"}.glyphicon-resize-small:before{content:"\e097"}.glyphicon-exclamation-sign:before{content:"\e101"}.glyphicon-gift:before{content:"\e102"}.glyphicon-leaf:before{content:"\e103"}.glyphicon-fire:before{content:"\e104"}.glyphicon-eye-open:before{content:"\e105"}.glyphicon-eye-close:before{content:"\e106"}.glyphicon-warning-sign:before{content:"\e107"}.glyphicon-plane:before{content:"\e108"}.glyphicon-calendar:before{content:"\e109"}.glyphicon-random:before{content:"\e110"}.glyphicon-comment:before{content:"\e111"}.glyphicon-magnet:before{content:"\e112"}.glyphicon-chevron-up:before{content:"\e113"}.glyphicon-chevron-down:before{content:"\e114"}.glyphicon-retweet:before{content:"\e115"}.glyphicon-shopping-cart:before{content:"\e116"}.glyphicon-folder-close:before{content:"\e117"}.glyphicon-folder-open:before{content:"\e118"}.glyphicon-resize-vertical:before{content:"\e119"}.glyphicon-resize-horizontal:before{content:"\e120"}.glyphicon-hdd:before{content:"\e121"}.glyphicon-bullhorn:before{content:"\e122"}.glyphicon-bell:before{content:"\e123"}.glyphicon-certificate:before{content:"\e124"}.glyphicon-thumbs-up:before{content:"\e125"}.glyphicon-thumbs-down:before{content:"\e126"}.glyphicon-hand-right:before{content:"\e127"}.glyphicon-hand-left:before{content:"\e128"}.glyphicon-hand-up:before{content:"\e129"}.glyphicon-hand-down:before{content:"\e130"}.glyphicon-circle-arrow-right:before{content:"\e131"}.glyphicon-circle-arrow-left:before{content:"\e132"}.glyphicon-circle-arrow-up:before{content:"\e133"}.glyphicon-circle-arrow-down:before{content:"\e134"}.glyphicon-globe:before{content:"\e135"}.glyphicon-wrench:before{content:"\e136"}.glyphicon-tasks:before{content:"\e137"}.glyphicon-filter:before{content:"\e138"}.glyphicon-briefcase:before{content:"\e139"}.glyphicon-fullscreen:before{content:"\e140"}.glyphicon-dashboard:before{content:"\e141"}.glyphicon-paperclip:before{content:"\e142"}.glyphicon-heart-empty:before{content:"\e143"}.glyphicon-link:before{content:"\e144"}.glyphicon-phone:before{content:"\e145"}.glyphicon-pushpin:before{content:"\e146"}.glyphicon-usd:before{content:"\e148"}.glyphicon-gbp:before{content:"\e149"}.glyphicon-sort:before{content:"\e150"}.glyphicon-sort-by-alphabet:before{content:"\e151"}.glyphicon-sort-by-alphabet-alt:before{content:"\e152"}.glyphicon-sort-by-order:before{content:"\e153"}.glyphicon-sort-by-order-alt:before{content:"\e154"}.glyphicon-sort-by-attributes:before{content:"\e155"}.glyphicon-sort-by-attributes-alt:before{content:"\e156"}.glyphicon-unchecked:before{content:"\e157"}.glyphicon-expand:before{content:"\e158"}.glyphicon-collapse-down:before{content:"\e159"}.glyphicon-collapse-up:before{content:"\e160"}.glyphicon-log-in:before{content:"\e161"}.glyphicon-flash:before{content:"\e162"}.glyphicon-log-out:before{content:"\e163"}.glyphicon-new-window:before{content:"\e164"}.glyphicon-record:before{content:"\e165"}.glyphicon-save:before{content:"\e166"}.glyphicon-open:before{content:"\e167"}.glyphicon-saved:before{content:"\e168"}.glyphicon-import:before{content:"\e169"}.glyphicon-export:before{content:"\e170"}.glyphicon-send:before{content:"\e171"}.glyphicon-floppy-disk:before{content:"\e172"}.glyphicon-floppy-saved:before{content:"\e173"}.glyphicon-floppy-remove:before{content:"\e174"}.glyphicon-floppy-save:before{content:"\e175"}.glyphicon-floppy-open:before{content:"\e176"}.glyphicon-credit-card:before{content:"\e177"}.glyphicon-transfer:before{content:"\e178"}.glyphicon-cutlery:before{content:"\e179"}.glyphicon-header:before{content:"\e180"}.glyphicon-compressed:before{content:"\e181"}.glyphicon-earphone:before{content:"\e182"}.glyphicon-phone-alt:before{content:"\e183"}.glyphicon-tower:before{content:"\e184"}.glyphicon-stats:before{content:"\e185"}.glyphicon-sd-video:before{content:"\e186"}.glyphicon-hd-video:before{content:"\e187"}.glyphicon-subtitles:before{content:"\e188"}.glyphicon-sound-stereo:before{content:"\e189"}.glyphicon-sound-dolby:before{content:"\e190"}.glyphicon-sound-5-1:before{content:"\e191"}.glyphicon-sound-6-1:before{content:"\e192"}.glyphicon-sound-7-1:before{content:"\e193"}.glyphicon-copyright-mark:before{content:"\e194"}.glyphicon-registration-mark:before{content:"\e195"}.glyphicon-cloud-download:before{content:"\e197"}.glyphicon-cloud-upload:before{content:"\e198"}.glyphicon-tree-conifer:before{content:"\e199"}.glyphicon-tree-deciduous:before{content:"\e200"}.glyphicon-cd:before{content:"\e201"}.glyphicon-save-file:before{content:"\e202"}.glyphicon-open-file:before{content:"\e203"}.glyphicon-level-up:before{content:"\e204"}.glyphicon-copy:before{content:"\e205"}.glyphicon-paste:before{content:"\e206"}.glyphicon-alert:before{content:"\e209"}.glyphicon-equalizer:before{content:"\e210"}.glyphicon-king:before{content:"\e211"}.glyphicon-queen:before{content:"\e212"}.glyphicon-pawn:before{content:"\e213"}.glyphicon-bishop:before{content:"\e214"}.glyphicon-knight:before{content:"\e215"}.glyphicon-baby-formula:before{content:"\e216"}.glyphicon-tent:before{content:"\26fa"}.glyphicon-blackboard:before{content:"\e218"}.glyphicon-bed:before{content:"\e219"}.glyphicon-apple:before{content:"\f8ff"}.glyphicon-erase:before{content:"\e221"}.glyphicon-hourglass:before{content:"\231b"}.glyphicon-lamp:before{content:"\e223"}.glyphicon-duplicate:before{content:"\e224"}.glyphicon-piggy-bank:before{content:"\e225"}.glyphicon-scissors:before{content:"\e226"}.glyphicon-bitcoin:before{content:"\e227"}.glyphicon-btc:before{content:"\e227"}.glyphicon-xbt:before{content:"\e227"}.glyphicon-yen:before{content:"\00a5"}.glyphicon-jpy:before{content:"\00a5"}.glyphicon-ruble:before{content:"\20bd"}.glyphicon-rub:before{content:"\20bd"}.glyphicon-scale:before{content:"\e230"}.glyphicon-ice-lolly:before{content:"\e231"}.glyphicon-ice-lolly-tasted:before{content:"\e232"}.glyphicon-education:before{content:"\e233"}.glyphicon-option-horizontal:before{content:"\e234"}.glyphicon-option-vertical:before{content:"\e235"}.glyphicon-menu-hamburger:before{content:"\e236"}.glyphicon-modal-window:before{content:"\e237"}.glyphicon-oil:before{content:"\e238"}.glyphicon-grain:before{content:"\e239"}.glyphicon-sunglasses:before{content:"\e240"}.glyphicon-text-size:before{content:"\e241"}.glyphicon-text-color:before{content:"\e242"}.glyphicon-text-background:before{content:"\e243"}.glyphicon-object-align-top:before{content:"\e244"}.glyphicon-object-align-bottom:before{content:"\e245"}.glyphicon-object-align-horizontal:before{content:"\e246"}.glyphicon-object-align-left:before{content:"\e247"}.glyphicon-object-align-vertical:before{content:"\e248"}.glyphicon-object-align-right:before{content:"\e249"}.glyphicon-triangle-right:before{content:"\e250"}.glyphicon-triangle-left:before{content:"\e251"}.glyphicon-triangle-bottom:before{content:"\e252"}.glyphicon-triangle-top:before{content:"\e253"}.glyphicon-console:before{content:"\e254"}.glyphicon-superscript:before{content:"\e255"}.glyphicon-subscript:before{content:"\e256"}.glyphicon-menu-left:before{content:"\e257"}.glyphicon-menu-right:before{content:"\e258"}.glyphicon-menu-down:before{content:"\e259"}.glyphicon-menu-up:before{content:"\e260"}*{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}:after,:before{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}html{font-size:10px;-webkit-tap-highlight-color:rgba(0,0,0,0)}body{font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:1.42857143;color:#333;background-color:#fff}button,input,select,textarea{font-family:inherit;font-size:inherit;line-height:inherit}a{color:#337ab7;text-decoration:none}a:focus,a:hover{color:#23527c;text-decoration:underline}a:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}figure{margin:0}img{vertical-align:middle}.carousel-inner>.item>a>img,.carousel-inner>.item>img,.img-responsive,.thumbnail a>img,.thumbnail>img{display:block;max-width:100%;height:auto}.img-rounded{border-radius:6px}.img-thumbnail{display:inline-block;max-width:100%;height:auto;padding:4px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:all .2s ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s ease-in-out}.img-circle{border-radius:50%}hr{margin-top:20px;margin-bottom:20px;border:0;border-top:1px solid #eee}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.sr-only-focusable:active,.sr-only-focusable:focus{position:static;width:auto;height:auto;margin:0;overflow:visible;clip:auto}[role=button]{cursor:pointer}.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6{font-family:inherit;font-weight:500;line-height:1.1;color:inherit}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-weight:400;line-height:1;color:#777}.h1,.h2,.h3,h1,h2,h3{margin-top:20px;margin-bottom:10px}.h1 .small,.h1 small,.h2 .small,.h2 small,.h3 .small,.h3 small,h1 .small,h1 small,h2 .small,h2 small,h3 .small,h3 small{font-size:65%}.h4,.h5,.h6,h4,h5,h6{margin-top:10px;margin-bottom:10px}.h4 .small,.h4 small,.h5 .small,.h5 small,.h6 .small,.h6 small,h4 .small,h4 small,h5 .small,h5 small,h6 .small,h6 small{font-size:75%}.h1,h1{font-size:36px}.h2,h2{font-size:30px}.h3,h3{font-size:24px}.h4,h4{font-size:18px}.h5,h5{font-size:14px}.h6,h6{font-size:12px}p{margin:0 0 10px}.lead{margin-bottom:20px;font-size:16px;font-weight:300;line-height:1.4}@media (min-width:768px){.lead{font-size:21px}}.small,small{font-size:85%}.mark,mark{padding:.2em;background-color:#fcf8e3}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}.text-justify{text-align:justify}.text-nowrap{white-space:nowrap}.text-lowercase{text-transform:lowercase}.text-uppercase{text-transform:uppercase}.text-capitalize{text-transform:capitalize}.text-muted{color:#777}.text-primary{color:#337ab7}a.text-primary:focus,a.text-primary:hover{color:#286090}.text-success{color:#3c763d}a.text-success:focus,a.text-success:hover{color:#2b542c}.text-info{color:#31708f}a.text-info:focus,a.text-info:hover{color:#245269}.text-warning{color:#8a6d3b}a.text-warning:focus,a.text-warning:hover{color:#66512c}.text-danger{color:#a94442}a.text-danger:focus,a.text-danger:hover{color:#843534}.bg-primary{color:#fff;background-color:#337ab7}a.bg-primary:focus,a.bg-primary:hover{background-color:#286090}.bg-success{background-color:#dff0d8}a.bg-success:focus,a.bg-success:hover{background-color:#c1e2b3}.bg-info{background-color:#d9edf7}a.bg-info:focus,a.bg-info:hover{background-color:#afd9ee}.bg-warning{background-color:#fcf8e3}a.bg-warning:focus,a.bg-warning:hover{background-color:#f7ecb5}.bg-danger{background-color:#f2dede}a.bg-danger:focus,a.bg-danger:hover{background-color:#e4b9b9}.page-header{padding-bottom:9px;margin:40px 0 20px;border-bottom:1px solid #eee}ol,ul{margin-top:0;margin-bottom:10px}ol ol,ol ul,ul ol,ul ul{margin-bottom:0}.list-unstyled{padding-left:0;list-style:none}.list-inline{padding-left:0;margin-left:-5px;list-style:none}.list-inline>li{display:inline-block;padding-right:5px;padding-left:5px}dl{margin-top:0;margin-bottom:20px}dd,dt{line-height:1.42857143}dt{font-weight:700}dd{margin-left:0}@media (min-width:768px){.dl-horizontal dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal dd{margin-left:180px}}abbr[data-original-title],abbr[title]{cursor:help;border-bottom:1px dotted #777}.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:10px 20px;margin:0 0 20px;font-size:17.5px;border-left:5px solid #eee}blockquote ol:last-child,blockquote p:last-child,blockquote ul:last-child{margin-bottom:0}blockquote .small,blockquote footer,blockquote small{display:block;font-size:80%;line-height:1.42857143;color:#777}blockquote .small:before,blockquote footer:before,blockquote small:before{content:'\2014 \00A0'}.blockquote-reverse,blockquote.pull-right{padding-right:15px;padding-left:0;text-align:right;border-right:5px solid #eee;border-left:0}.blockquote-reverse .small:before,.blockquote-reverse footer:before,.blockquote-reverse small:before,blockquote.pull-right .small:before,blockquote.pull-right footer:before,blockquote.pull-right small:before{content:''}.blockquote-reverse .small:after,.blockquote-reverse footer:after,.blockquote-reverse small:after,blockquote.pull-right .small:after,blockquote.pull-right footer:after,blockquote.pull-right small:after{content:'\00A0 \2014'}address{margin-bottom:20px;font-style:normal;line-height:1.42857143}code,kbd,pre,samp{font-family:Menlo,Monaco,Consolas,"Courier New",monospace}code{padding:2px 4px;font-size:90%;color:#c7254e;background-color:#f9f2f4;border-radius:4px}kbd{padding:2px 4px;font-size:90%;color:#fff;background-color:#333;border-radius:3px;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.25);box-shadow:inset 0 -1px 0 rgba(0,0,0,.25)}kbd kbd{padding:0;font-size:100%;font-weight:700;-webkit-box-shadow:none;box-shadow:none}pre{display:block;padding:9.5px;margin:0 0 10px;font-size:13px;line-height:1.42857143;color:#333;word-break:break-all;word-wrap:break-word;background-color:#f5f5f5;border:1px solid #ccc;border-radius:4px}pre code{padding:0;font-size:inherit;color:inherit;white-space:pre-wrap;background-color:transparent;border-radius:0}.pre-scrollable{max-height:340px;overflow-y:scroll}.container{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}@media (min-width:768px){.container{width:750px}}@media (min-width:992px){.container{width:970px}}@media (min-width:1200px){.container{width:1170px}}.container-fluid{padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.row{margin-right:-15px;margin-left:-15px}.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{position:relative;min-height:1px;padding-right:15px;padding-left:15px}.col-xs-1,.col-xs-10,.col-xs-11,.col-xs-12,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9{float:left}.col-xs-12{width:100%}.col-xs-11{width:91.66666667%}.col-xs-10{width:83.33333333%}.col-xs-9{width:75%}.col-xs-8{width:66.66666667%}.col-xs-7{width:58.33333333%}.col-xs-6{width:50%}.col-xs-5{width:41.66666667%}.col-xs-4{width:33.33333333%}.col-xs-3{width:25%}.col-xs-2{width:16.66666667%}.col-xs-1{width:8.33333333%}.col-xs-pull-12{right:100%}.col-xs-pull-11{right:91.66666667%}.col-xs-pull-10{right:83.33333333%}.col-xs-pull-9{right:75%}.col-xs-pull-8{right:66.66666667%}.col-xs-pull-7{right:58.33333333%}.col-xs-pull-6{right:50%}.col-xs-pull-5{right:41.66666667%}.col-xs-pull-4{right:33.33333333%}.col-xs-pull-3{right:25%}.col-xs-pull-2{right:16.66666667%}.col-xs-pull-1{right:8.33333333%}.col-xs-pull-0{right:auto}.col-xs-push-12{left:100%}.col-xs-push-11{left:91.66666667%}.col-xs-push-10{left:83.33333333%}.col-xs-push-9{left:75%}.col-xs-push-8{left:66.66666667%}.col-xs-push-7{left:58.33333333%}.col-xs-push-6{left:50%}.col-xs-push-5{left:41.66666667%}.col-xs-push-4{left:33.33333333%}.col-xs-push-3{left:25%}.col-xs-push-2{left:16.66666667%}.col-xs-push-1{left:8.33333333%}.col-xs-push-0{left:auto}.col-xs-offset-12{margin-left:100%}.col-xs-offset-11{margin-left:91.66666667%}.col-xs-offset-10{margin-left:83.33333333%}.col-xs-offset-9{margin-left:75%}.col-xs-offset-8{margin-left:66.66666667%}.col-xs-offset-7{margin-left:58.33333333%}.col-xs-offset-6{margin-left:50%}.col-xs-offset-5{margin-left:41.66666667%}.col-xs-offset-4{margin-left:33.33333333%}.col-xs-offset-3{margin-left:25%}.col-xs-offset-2{margin-left:16.66666667%}.col-xs-offset-1{margin-left:8.33333333%}.col-xs-offset-0{margin-left:0}@media (min-width:768px){.col-sm-1,.col-sm-10,.col-sm-11,.col-sm-12,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9{float:left}.col-sm-12{width:100%}.col-sm-11{width:91.66666667%}.col-sm-10{width:83.33333333%}.col-sm-9{width:75%}.col-sm-8{width:66.66666667%}.col-sm-7{width:58.33333333%}.col-sm-6{width:50%}.col-sm-5{width:41.66666667%}.col-sm-4{width:33.33333333%}.col-sm-3{width:25%}.col-sm-2{width:16.66666667%}.col-sm-1{width:8.33333333%}.col-sm-pull-12{right:100%}.col-sm-pull-11{right:91.66666667%}.col-sm-pull-10{right:83.33333333%}.col-sm-pull-9{right:75%}.col-sm-pull-8{right:66.66666667%}.col-sm-pull-7{right:58.33333333%}.col-sm-pull-6{right:50%}.col-sm-pull-5{right:41.66666667%}.col-sm-pull-4{right:33.33333333%}.col-sm-pull-3{right:25%}.col-sm-pull-2{right:16.66666667%}.col-sm-pull-1{right:8.33333333%}.col-sm-pull-0{right:auto}.col-sm-push-12{left:100%}.col-sm-push-11{left:91.66666667%}.col-sm-push-10{left:83.33333333%}.col-sm-push-9{left:75%}.col-sm-push-8{left:66.66666667%}.col-sm-push-7{left:58.33333333%}.col-sm-push-6{left:50%}.col-sm-push-5{left:41.66666667%}.col-sm-push-4{left:33.33333333%}.col-sm-push-3{left:25%}.col-sm-push-2{left:16.66666667%}.col-sm-push-1{left:8.33333333%}.col-sm-push-0{left:auto}.col-sm-offset-12{margin-left:100%}.col-sm-offset-11{margin-left:91.66666667%}.col-sm-offset-10{margin-left:83.33333333%}.col-sm-offset-9{margin-left:75%}.col-sm-offset-8{margin-left:66.66666667%}.col-sm-offset-7{margin-left:58.33333333%}.col-sm-offset-6{margin-left:50%}.col-sm-offset-5{margin-left:41.66666667%}.col-sm-offset-4{margin-left:33.33333333%}.col-sm-offset-3{margin-left:25%}.col-sm-offset-2{margin-left:16.66666667%}.col-sm-offset-1{margin-left:8.33333333%}.col-sm-offset-0{margin-left:0}}@media (min-width:992px){.col-md-1,.col-md-10,.col-md-11,.col-md-12,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9{float:left}.col-md-12{width:100%}.col-md-11{width:91.66666667%}.col-md-10{width:83.33333333%}.col-md-9{width:75%}.col-md-8{width:66.66666667%}.col-md-7{width:58.33333333%}.col-md-6{width:50%}.col-md-5{width:41.66666667%}.col-md-4{width:33.33333333%}.col-md-3{width:25%}.col-md-2{width:16.66666667%}.col-md-1{width:8.33333333%}.col-md-pull-12{right:100%}.col-md-pull-11{right:91.66666667%}.col-md-pull-10{right:83.33333333%}.col-md-pull-9{right:75%}.col-md-pull-8{right:66.66666667%}.col-md-pull-7{right:58.33333333%}.col-md-pull-6{right:50%}.col-md-pull-5{right:41.66666667%}.col-md-pull-4{right:33.33333333%}.col-md-pull-3{right:25%}.col-md-pull-2{right:16.66666667%}.col-md-pull-1{right:8.33333333%}.col-md-pull-0{right:auto}.col-md-push-12{left:100%}.col-md-push-11{left:91.66666667%}.col-md-push-10{left:83.33333333%}.col-md-push-9{left:75%}.col-md-push-8{left:66.66666667%}.col-md-push-7{left:58.33333333%}.col-md-push-6{left:50%}.col-md-push-5{left:41.66666667%}.col-md-push-4{left:33.33333333%}.col-md-push-3{left:25%}.col-md-push-2{left:16.66666667%}.col-md-push-1{left:8.33333333%}.col-md-push-0{left:auto}.col-md-offset-12{margin-left:100%}.col-md-offset-11{margin-left:91.66666667%}.col-md-offset-10{margin-left:83.33333333%}.col-md-offset-9{margin-left:75%}.col-md-offset-8{margin-left:66.66666667%}.col-md-offset-7{margin-left:58.33333333%}.col-md-offset-6{margin-left:50%}.col-md-offset-5{margin-left:41.66666667%}.col-md-offset-4{margin-left:33.33333333%}.col-md-offset-3{margin-left:25%}.col-md-offset-2{margin-left:16.66666667%}.col-md-offset-1{margin-left:8.33333333%}.col-md-offset-0{margin-left:0}}@media (min-width:1200px){.col-lg-1,.col-lg-10,.col-lg-11,.col-lg-12,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9{float:left}.col-lg-12{width:100%}.col-lg-11{width:91.66666667%}.col-lg-10{width:83.33333333%}.col-lg-9{width:75%}.col-lg-8{width:66.66666667%}.col-lg-7{width:58.33333333%}.col-lg-6{width:50%}.col-lg-5{width:41.66666667%}.col-lg-4{width:33.33333333%}.col-lg-3{width:25%}.col-lg-2{width:16.66666667%}.col-lg-1{width:8.33333333%}.col-lg-pull-12{right:100%}.col-lg-pull-11{right:91.66666667%}.col-lg-pull-10{right:83.33333333%}.col-lg-pull-9{right:75%}.col-lg-pull-8{right:66.66666667%}.col-lg-pull-7{right:58.33333333%}.col-lg-pull-6{right:50%}.col-lg-pull-5{right:41.66666667%}.col-lg-pull-4{right:33.33333333%}.col-lg-pull-3{right:25%}.col-lg-pull-2{right:16.66666667%}.col-lg-pull-1{right:8.33333333%}.col-lg-pull-0{right:auto}.col-lg-push-12{left:100%}.col-lg-push-11{left:91.66666667%}.col-lg-push-10{left:83.33333333%}.col-lg-push-9{left:75%}.col-lg-push-8{left:66.66666667%}.col-lg-push-7{left:58.33333333%}.col-lg-push-6{left:50%}.col-lg-push-5{left:41.66666667%}.col-lg-push-4{left:33.33333333%}.col-lg-push-3{left:25%}.col-lg-push-2{left:16.66666667%}.col-lg-push-1{left:8.33333333%}.col-lg-push-0{left:auto}.col-lg-offset-12{margin-left:100%}.col-lg-offset-11{margin-left:91.66666667%}.col-lg-offset-10{margin-left:83.33333333%}.col-lg-offset-9{margin-left:75%}.col-lg-offset-8{margin-left:66.66666667%}.col-lg-offset-7{margin-left:58.33333333%}.col-lg-offset-6{margin-left:50%}.col-lg-offset-5{margin-left:41.66666667%}.col-lg-offset-4{margin-left:33.33333333%}.col-lg-offset-3{margin-left:25%}.col-lg-offset-2{margin-left:16.66666667%}.col-lg-offset-1{margin-left:8.33333333%}.col-lg-offset-0{margin-left:0}}table{background-color:transparent}caption{padding-top:8px;padding-bottom:8px;color:#777;text-align:left}th{text-align:left}.table{width:100%;max-width:100%;margin-bottom:20px}.table>tbody>tr>td,.table>tbody>tr>th,.table>tfoot>tr>td,.table>tfoot>tr>th,.table>thead>tr>td,.table>thead>tr>th{padding:8px;line-height:1.42857143;vertical-align:top;border-top:1px solid #ddd}.table>thead>tr>th{vertical-align:bottom;border-bottom:2px solid #ddd}.table>caption+thead>tr:first-child>td,.table>caption+thead>tr:first-child>th,.table>colgroup+thead>tr:first-child>td,.table>colgroup+thead>tr:first-child>th,.table>thead:first-child>tr:first-child>td,.table>thead:first-child>tr:first-child>th{border-top:0}.table>tbody+tbody{border-top:2px solid #ddd}.table .table{background-color:#fff}.table-condensed>tbody>tr>td,.table-condensed>tbody>tr>th,.table-condensed>tfoot>tr>td,.table-condensed>tfoot>tr>th,.table-condensed>thead>tr>td,.table-condensed>thead>tr>th{padding:5px}.table-bordered{border:1px solid #ddd}.table-bordered>tbody>tr>td,.table-bordered>tbody>tr>th,.table-bordered>tfoot>tr>td,.table-bordered>tfoot>tr>th,.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border:1px solid #ddd}.table-bordered>thead>tr>td,.table-bordered>thead>tr>th{border-bottom-width:2px}.table-striped>tbody>tr:nth-of-type(odd){background-color:#f9f9f9}.table-hover>tbody>tr:hover{background-color:#f5f5f5}table col[class*=col-]{position:static;display:table-column;float:none}table td[class*=col-],table th[class*=col-]{position:static;display:table-cell;float:none}.table>tbody>tr.active>td,.table>tbody>tr.active>th,.table>tbody>tr>td.active,.table>tbody>tr>th.active,.table>tfoot>tr.active>td,.table>tfoot>tr.active>th,.table>tfoot>tr>td.active,.table>tfoot>tr>th.active,.table>thead>tr.active>td,.table>thead>tr.active>th,.table>thead>tr>td.active,.table>thead>tr>th.active{background-color:#f5f5f5}.table-hover>tbody>tr.active:hover>td,.table-hover>tbody>tr.active:hover>th,.table-hover>tbody>tr:hover>.active,.table-hover>tbody>tr>td.active:hover,.table-hover>tbody>tr>th.active:hover{background-color:#e8e8e8}.table>tbody>tr.success>td,.table>tbody>tr.success>th,.table>tbody>tr>td.success,.table>tbody>tr>th.success,.table>tfoot>tr.success>td,.table>tfoot>tr.success>th,.table>tfoot>tr>td.success,.table>tfoot>tr>th.success,.table>thead>tr.success>td,.table>thead>tr.success>th,.table>thead>tr>td.success,.table>thead>tr>th.success{background-color:#dff0d8}.table-hover>tbody>tr.success:hover>td,.table-hover>tbody>tr.success:hover>th,.table-hover>tbody>tr:hover>.success,.table-hover>tbody>tr>td.success:hover,.table-hover>tbody>tr>th.success:hover{background-color:#d0e9c6}.table>tbody>tr.info>td,.table>tbody>tr.info>th,.table>tbody>tr>td.info,.table>tbody>tr>th.info,.table>tfoot>tr.info>td,.table>tfoot>tr.info>th,.table>tfoot>tr>td.info,.table>tfoot>tr>th.info,.table>thead>tr.info>td,.table>thead>tr.info>th,.table>thead>tr>td.info,.table>thead>tr>th.info{background-color:#d9edf7}.table-hover>tbody>tr.info:hover>td,.table-hover>tbody>tr.info:hover>th,.table-hover>tbody>tr:hover>.info,.table-hover>tbody>tr>td.info:hover,.table-hover>tbody>tr>th.info:hover{background-color:#c4e3f3}.table>tbody>tr.warning>td,.table>tbody>tr.warning>th,.table>tbody>tr>td.warning,.table>tbody>tr>th.warning,.table>tfoot>tr.warning>td,.table>tfoot>tr.warning>th,.table>tfoot>tr>td.warning,.table>tfoot>tr>th.warning,.table>thead>tr.warning>td,.table>thead>tr.warning>th,.table>thead>tr>td.warning,.table>thead>tr>th.warning{background-color:#fcf8e3}.table-hover>tbody>tr.warning:hover>td,.table-hover>tbody>tr.warning:hover>th,.table-hover>tbody>tr:hover>.warning,.table-hover>tbody>tr>td.warning:hover,.table-hover>tbody>tr>th.warning:hover{background-color:#faf2cc}.table>tbody>tr.danger>td,.table>tbody>tr.danger>th,.table>tbody>tr>td.danger,.table>tbody>tr>th.danger,.table>tfoot>tr.danger>td,.table>tfoot>tr.danger>th,.table>tfoot>tr>td.danger,.table>tfoot>tr>th.danger,.table>thead>tr.danger>td,.table>thead>tr.danger>th,.table>thead>tr>td.danger,.table>thead>tr>th.danger{background-color:#f2dede}.table-hover>tbody>tr.danger:hover>td,.table-hover>tbody>tr.danger:hover>th,.table-hover>tbody>tr:hover>.danger,.table-hover>tbody>tr>td.danger:hover,.table-hover>tbody>tr>th.danger:hover{background-color:#ebcccc}.table-responsive{min-height:.01%;overflow-x:auto}@media screen and (max-width:767px){.table-responsive{width:100%;margin-bottom:15px;overflow-y:hidden;-ms-overflow-style:-ms-autohiding-scrollbar;border:1px solid #ddd}.table-responsive>.table{margin-bottom:0}.table-responsive>.table>tbody>tr>td,.table-responsive>.table>tbody>tr>th,.table-responsive>.table>tfoot>tr>td,.table-responsive>.table>tfoot>tr>th,.table-responsive>.table>thead>tr>td,.table-responsive>.table>thead>tr>th{white-space:nowrap}.table-responsive>.table-bordered{border:0}.table-responsive>.table-bordered>tbody>tr>td:first-child,.table-responsive>.table-bordered>tbody>tr>th:first-child,.table-responsive>.table-bordered>tfoot>tr>td:first-child,.table-responsive>.table-bordered>tfoot>tr>th:first-child,.table-responsive>.table-bordered>thead>tr>td:first-child,.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.table-responsive>.table-bordered>tbody>tr>td:last-child,.table-responsive>.table-bordered>tbody>tr>th:last-child,.table-responsive>.table-bordered>tfoot>tr>td:last-child,.table-responsive>.table-bordered>tfoot>tr>th:last-child,.table-responsive>.table-bordered>thead>tr>td:last-child,.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.table-responsive>.table-bordered>tbody>tr:last-child>td,.table-responsive>.table-bordered>tbody>tr:last-child>th,.table-responsive>.table-bordered>tfoot>tr:last-child>td,.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}}fieldset{min-width:0;padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:inherit;color:#333;border:0;border-bottom:1px solid #e5e5e5}label{display:inline-block;max-width:100%;margin-bottom:5px;font-weight:700}input[type=search]{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}input[type=checkbox],input[type=radio]{margin:4px 0 0;margin-top:1px\9;line-height:normal}input[type=file]{display:block}input[type=range]{display:block;width:100%}select[multiple],select[size]{height:auto}input[type=file]:focus,input[type=checkbox]:focus,input[type=radio]:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}output{display:block;padding-top:7px;font-size:14px;line-height:1.42857143;color:#555}.form-control{display:block;width:100%;height:34px;padding:6px 12px;font-size:14px;line-height:1.42857143;color:#555;background-color:#fff;background-image:none;border:1px solid #ccc;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075);-webkit-transition:border-color ease-in-out .15s,-webkit-box-shadow ease-in-out .15s;-o-transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s;transition:border-color ease-in-out .15s,box-shadow ease-in-out .15s}.form-control:focus{border-color:#66afe9;outline:0;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6);box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 8px rgba(102,175,233,.6)}.form-control::-moz-placeholder{color:#999;opacity:1}.form-control:-ms-input-placeholder{color:#999}.form-control::-webkit-input-placeholder{color:#999}.form-control::-ms-expand{background-color:transparent;border:0}.form-control[disabled],.form-control[readonly],fieldset[disabled] .form-control{background-color:#eee;opacity:1}.form-control[disabled],fieldset[disabled] .form-control{cursor:not-allowed}textarea.form-control{height:auto}input[type=search]{-webkit-appearance:none}@media screen and (-webkit-min-device-pixel-ratio:0){input[type=date].form-control,input[type=time].form-control,input[type=datetime-local].form-control,input[type=month].form-control{line-height:34px}.input-group-sm input[type=date],.input-group-sm input[type=time],.input-group-sm input[type=datetime-local],.input-group-sm input[type=month],input[type=date].input-sm,input[type=time].input-sm,input[type=datetime-local].input-sm,input[type=month].input-sm{line-height:30px}.input-group-lg input[type=date],.input-group-lg input[type=time],.input-group-lg input[type=datetime-local],.input-group-lg input[type=month],input[type=date].input-lg,input[type=time].input-lg,input[type=datetime-local].input-lg,input[type=month].input-lg{line-height:46px}}.form-group{margin-bottom:15px}.checkbox,.radio{position:relative;display:block;margin-top:10px;margin-bottom:10px}.checkbox label,.radio label{min-height:20px;padding-left:20px;margin-bottom:0;font-weight:400;cursor:pointer}.checkbox input[type=checkbox],.checkbox-inline input[type=checkbox],.radio input[type=radio],.radio-inline input[type=radio]{position:absolute;margin-top:4px\9;margin-left:-20px}.checkbox+.checkbox,.radio+.radio{margin-top:-5px}.checkbox-inline,.radio-inline{position:relative;display:inline-block;padding-left:20px;margin-bottom:0;font-weight:400;vertical-align:middle;cursor:pointer}.checkbox-inline+.checkbox-inline,.radio-inline+.radio-inline{margin-top:0;margin-left:10px}fieldset[disabled] input[type=checkbox],fieldset[disabled] input[type=radio],input[type=checkbox].disabled,input[type=checkbox][disabled],input[type=radio].disabled,input[type=radio][disabled]{cursor:not-allowed}.checkbox-inline.disabled,.radio-inline.disabled,fieldset[disabled] .checkbox-inline,fieldset[disabled] .radio-inline{cursor:not-allowed}.checkbox.disabled label,.radio.disabled label,fieldset[disabled] .checkbox label,fieldset[disabled] .radio label{cursor:not-allowed}.form-control-static{min-height:34px;padding-top:7px;padding-bottom:7px;margin-bottom:0}.form-control-static.input-lg,.form-control-static.input-sm{padding-right:0;padding-left:0}.input-sm{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-sm{height:30px;line-height:30px}select[multiple].input-sm,textarea.input-sm{height:auto}.form-group-sm .form-control{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.form-group-sm select.form-control{height:30px;line-height:30px}.form-group-sm select[multiple].form-control,.form-group-sm textarea.form-control{height:auto}.form-group-sm .form-control-static{height:30px;min-height:32px;padding:6px 10px;font-size:12px;line-height:1.5}.input-lg{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}select.input-lg{height:46px;line-height:46px}select[multiple].input-lg,textarea.input-lg{height:auto}.form-group-lg .form-control{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.form-group-lg select.form-control{height:46px;line-height:46px}.form-group-lg select[multiple].form-control,.form-group-lg textarea.form-control{height:auto}.form-group-lg .form-control-static{height:46px;min-height:38px;padding:11px 16px;font-size:18px;line-height:1.3333333}.has-feedback{position:relative}.has-feedback .form-control{padding-right:42.5px}.form-control-feedback{position:absolute;top:0;right:0;z-index:2;display:block;width:34px;height:34px;line-height:34px;text-align:center;pointer-events:none}.form-group-lg .form-control+.form-control-feedback,.input-group-lg+.form-control-feedback,.input-lg+.form-control-feedback{width:46px;height:46px;line-height:46px}.form-group-sm .form-control+.form-control-feedback,.input-group-sm+.form-control-feedback,.input-sm+.form-control-feedback{width:30px;height:30px;line-height:30px}.has-success .checkbox,.has-success .checkbox-inline,.has-success .control-label,.has-success .help-block,.has-success .radio,.has-success .radio-inline,.has-success.checkbox label,.has-success.checkbox-inline label,.has-success.radio label,.has-success.radio-inline label{color:#3c763d}.has-success .form-control{border-color:#3c763d;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-success .form-control:focus{border-color:#2b542c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #67b168}.has-success .input-group-addon{color:#3c763d;background-color:#dff0d8;border-color:#3c763d}.has-success .form-control-feedback{color:#3c763d}.has-warning .checkbox,.has-warning .checkbox-inline,.has-warning .control-label,.has-warning .help-block,.has-warning .radio,.has-warning .radio-inline,.has-warning.checkbox label,.has-warning.checkbox-inline label,.has-warning.radio label,.has-warning.radio-inline label{color:#8a6d3b}.has-warning .form-control{border-color:#8a6d3b;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-warning .form-control:focus{border-color:#66512c;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #c0a16b}.has-warning .input-group-addon{color:#8a6d3b;background-color:#fcf8e3;border-color:#8a6d3b}.has-warning .form-control-feedback{color:#8a6d3b}.has-error .checkbox,.has-error .checkbox-inline,.has-error .control-label,.has-error .help-block,.has-error .radio,.has-error .radio-inline,.has-error.checkbox label,.has-error.checkbox-inline label,.has-error.radio label,.has-error.radio-inline label{color:#a94442}.has-error .form-control{border-color:#a94442;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075);box-shadow:inset 0 1px 1px rgba(0,0,0,.075)}.has-error .form-control:focus{border-color:#843534;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483;box-shadow:inset 0 1px 1px rgba(0,0,0,.075),0 0 6px #ce8483}.has-error .input-group-addon{color:#a94442;background-color:#f2dede;border-color:#a94442}.has-error .form-control-feedback{color:#a94442}.has-feedback label~.form-control-feedback{top:25px}.has-feedback label.sr-only~.form-control-feedback{top:0}.help-block{display:block;margin-top:5px;margin-bottom:10px;color:#737373}@media (min-width:768px){.form-inline .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.form-inline .form-control{display:inline-block;width:auto;vertical-align:middle}.form-inline .form-control-static{display:inline-block}.form-inline .input-group{display:inline-table;vertical-align:middle}.form-inline .input-group .form-control,.form-inline .input-group .input-group-addon,.form-inline .input-group .input-group-btn{width:auto}.form-inline .input-group>.form-control{width:100%}.form-inline .control-label{margin-bottom:0;vertical-align:middle}.form-inline .checkbox,.form-inline .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.form-inline .checkbox label,.form-inline .radio label{padding-left:0}.form-inline .checkbox input[type=checkbox],.form-inline .radio input[type=radio]{position:relative;margin-left:0}.form-inline .has-feedback .form-control-feedback{top:0}}.form-horizontal .checkbox,.form-horizontal .checkbox-inline,.form-horizontal .radio,.form-horizontal .radio-inline{padding-top:7px;margin-top:0;margin-bottom:0}.form-horizontal .checkbox,.form-horizontal .radio{min-height:27px}.form-horizontal .form-group{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.form-horizontal .control-label{padding-top:7px;margin-bottom:0;text-align:right}}.form-horizontal .has-feedback .form-control-feedback{right:15px}@media (min-width:768px){.form-horizontal .form-group-lg .control-label{padding-top:11px;font-size:18px}}@media (min-width:768px){.form-horizontal .form-group-sm .control-label{padding-top:6px;font-size:12px}}.btn{display:inline-block;padding:6px 12px;margin-bottom:0;font-size:14px;font-weight:400;line-height:1.42857143;text-align:center;white-space:nowrap;vertical-align:middle;-ms-touch-action:manipulation;touch-action:manipulation;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;background-image:none;border:1px solid transparent;border-radius:4px}.btn.active.focus,.btn.active:focus,.btn.focus,.btn:active.focus,.btn:active:focus,.btn:focus{outline:5px auto -webkit-focus-ring-color;outline-offset:-2px}.btn.focus,.btn:focus,.btn:hover{color:#333;text-decoration:none}.btn.active,.btn:active{background-image:none;outline:0;-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn.disabled,.btn[disabled],fieldset[disabled] .btn{cursor:not-allowed;filter:alpha(opacity=65);-webkit-box-shadow:none;box-shadow:none;opacity:.65}a.btn.disabled,fieldset[disabled] a.btn{pointer-events:none}.btn-default{color:#333;background-color:#fff;border-color:#ccc}.btn-default.focus,.btn-default:focus{color:#333;background-color:#e6e6e6;border-color:#8c8c8c}.btn-default:hover{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active,.btn-default:active,.open>.dropdown-toggle.btn-default{color:#333;background-color:#e6e6e6;border-color:#adadad}.btn-default.active.focus,.btn-default.active:focus,.btn-default.active:hover,.btn-default:active.focus,.btn-default:active:focus,.btn-default:active:hover,.open>.dropdown-toggle.btn-default.focus,.open>.dropdown-toggle.btn-default:focus,.open>.dropdown-toggle.btn-default:hover{color:#333;background-color:#d4d4d4;border-color:#8c8c8c}.btn-default.active,.btn-default:active,.open>.dropdown-toggle.btn-default{background-image:none}.btn-default.disabled.focus,.btn-default.disabled:focus,.btn-default.disabled:hover,.btn-default[disabled].focus,.btn-default[disabled]:focus,.btn-default[disabled]:hover,fieldset[disabled] .btn-default.focus,fieldset[disabled] .btn-default:focus,fieldset[disabled] .btn-default:hover{background-color:#fff;border-color:#ccc}.btn-default .badge{color:#fff;background-color:#333}.btn-primary{color:#fff;background-color:#337ab7;border-color:#2e6da4}.btn-primary.focus,.btn-primary:focus{color:#fff;background-color:#286090;border-color:#122b40}.btn-primary:hover{color:#fff;background-color:#286090;border-color:#204d74}.btn-primary.active,.btn-primary:active,.open>.dropdown-toggle.btn-primary{color:#fff;background-color:#286090;border-color:#204d74}.btn-primary.active.focus,.btn-primary.active:focus,.btn-primary.active:hover,.btn-primary:active.focus,.btn-primary:active:focus,.btn-primary:active:hover,.open>.dropdown-toggle.btn-primary.focus,.open>.dropdown-toggle.btn-primary:focus,.open>.dropdown-toggle.btn-primary:hover{color:#fff;background-color:#204d74;border-color:#122b40}.btn-primary.active,.btn-primary:active,.open>.dropdown-toggle.btn-primary{background-image:none}.btn-primary.disabled.focus,.btn-primary.disabled:focus,.btn-primary.disabled:hover,.btn-primary[disabled].focus,.btn-primary[disabled]:focus,.btn-primary[disabled]:hover,fieldset[disabled] .btn-primary.focus,fieldset[disabled] .btn-primary:focus,fieldset[disabled] .btn-primary:hover{background-color:#337ab7;border-color:#2e6da4}.btn-primary .badge{color:#337ab7;background-color:#fff}.btn-success{color:#fff;background-color:#5cb85c;border-color:#4cae4c}.btn-success.focus,.btn-success:focus{color:#fff;background-color:#449d44;border-color:#255625}.btn-success:hover{color:#fff;background-color:#449d44;border-color:#398439}.btn-success.active,.btn-success:active,.open>.dropdown-toggle.btn-success{color:#fff;background-color:#449d44;border-color:#398439}.btn-success.active.focus,.btn-success.active:focus,.btn-success.active:hover,.btn-success:active.focus,.btn-success:active:focus,.btn-success:active:hover,.open>.dropdown-toggle.btn-success.focus,.open>.dropdown-toggle.btn-success:focus,.open>.dropdown-toggle.btn-success:hover{color:#fff;background-color:#398439;border-color:#255625}.btn-success.active,.btn-success:active,.open>.dropdown-toggle.btn-success{background-image:none}.btn-success.disabled.focus,.btn-success.disabled:focus,.btn-success.disabled:hover,.btn-success[disabled].focus,.btn-success[disabled]:focus,.btn-success[disabled]:hover,fieldset[disabled] .btn-success.focus,fieldset[disabled] .btn-success:focus,fieldset[disabled] .btn-success:hover{background-color:#5cb85c;border-color:#4cae4c}.btn-success .badge{color:#5cb85c;background-color:#fff}.btn-info{color:#fff;background-color:#5bc0de;border-color:#46b8da}.btn-info.focus,.btn-info:focus{color:#fff;background-color:#31b0d5;border-color:#1b6d85}.btn-info:hover{color:#fff;background-color:#31b0d5;border-color:#269abc}.btn-info.active,.btn-info:active,.open>.dropdown-toggle.btn-info{color:#fff;background-color:#31b0d5;border-color:#269abc}.btn-info.active.focus,.btn-info.active:focus,.btn-info.active:hover,.btn-info:active.focus,.btn-info:active:focus,.btn-info:active:hover,.open>.dropdown-toggle.btn-info.focus,.open>.dropdown-toggle.btn-info:focus,.open>.dropdown-toggle.btn-info:hover{color:#fff;background-color:#269abc;border-color:#1b6d85}.btn-info.active,.btn-info:active,.open>.dropdown-toggle.btn-info{background-image:none}.btn-info.disabled.focus,.btn-info.disabled:focus,.btn-info.disabled:hover,.btn-info[disabled].focus,.btn-info[disabled]:focus,.btn-info[disabled]:hover,fieldset[disabled] .btn-info.focus,fieldset[disabled] .btn-info:focus,fieldset[disabled] .btn-info:hover{background-color:#5bc0de;border-color:#46b8da}.btn-info .badge{color:#5bc0de;background-color:#fff}.btn-warning{color:#fff;background-color:#f0ad4e;border-color:#eea236}.btn-warning.focus,.btn-warning:focus{color:#fff;background-color:#ec971f;border-color:#985f0d}.btn-warning:hover{color:#fff;background-color:#ec971f;border-color:#d58512}.btn-warning.active,.btn-warning:active,.open>.dropdown-toggle.btn-warning{color:#fff;background-color:#ec971f;border-color:#d58512}.btn-warning.active.focus,.btn-warning.active:focus,.btn-warning.active:hover,.btn-warning:active.focus,.btn-warning:active:focus,.btn-warning:active:hover,.open>.dropdown-toggle.btn-warning.focus,.open>.dropdown-toggle.btn-warning:focus,.open>.dropdown-toggle.btn-warning:hover{color:#fff;background-color:#d58512;border-color:#985f0d}.btn-warning.active,.btn-warning:active,.open>.dropdown-toggle.btn-warning{background-image:none}.btn-warning.disabled.focus,.btn-warning.disabled:focus,.btn-warning.disabled:hover,.btn-warning[disabled].focus,.btn-warning[disabled]:focus,.btn-warning[disabled]:hover,fieldset[disabled] .btn-warning.focus,fieldset[disabled] .btn-warning:focus,fieldset[disabled] .btn-warning:hover{background-color:#f0ad4e;border-color:#eea236}.btn-warning .badge{color:#f0ad4e;background-color:#fff}.btn-danger{color:#fff;background-color:#d9534f;border-color:#d43f3a}.btn-danger.focus,.btn-danger:focus{color:#fff;background-color:#c9302c;border-color:#761c19}.btn-danger:hover{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger.active,.btn-danger:active,.open>.dropdown-toggle.btn-danger{color:#fff;background-color:#c9302c;border-color:#ac2925}.btn-danger.active.focus,.btn-danger.active:focus,.btn-danger.active:hover,.btn-danger:active.focus,.btn-danger:active:focus,.btn-danger:active:hover,.open>.dropdown-toggle.btn-danger.focus,.open>.dropdown-toggle.btn-danger:focus,.open>.dropdown-toggle.btn-danger:hover{color:#fff;background-color:#ac2925;border-color:#761c19}.btn-danger.active,.btn-danger:active,.open>.dropdown-toggle.btn-danger{background-image:none}.btn-danger.disabled.focus,.btn-danger.disabled:focus,.btn-danger.disabled:hover,.btn-danger[disabled].focus,.btn-danger[disabled]:focus,.btn-danger[disabled]:hover,fieldset[disabled] .btn-danger.focus,fieldset[disabled] .btn-danger:focus,fieldset[disabled] .btn-danger:hover{background-color:#d9534f;border-color:#d43f3a}.btn-danger .badge{color:#d9534f;background-color:#fff}.btn-link{font-weight:400;color:#337ab7;border-radius:0}.btn-link,.btn-link.active,.btn-link:active,.btn-link[disabled],fieldset[disabled] .btn-link{background-color:transparent;-webkit-box-shadow:none;box-shadow:none}.btn-link,.btn-link:active,.btn-link:focus,.btn-link:hover{border-color:transparent}.btn-link:focus,.btn-link:hover{color:#23527c;text-decoration:underline;background-color:transparent}.btn-link[disabled]:focus,.btn-link[disabled]:hover,fieldset[disabled] .btn-link:focus,fieldset[disabled] .btn-link:hover{color:#777;text-decoration:none}.btn-group-lg>.btn,.btn-lg{padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}.btn-group-sm>.btn,.btn-sm{padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}.btn-group-xs>.btn,.btn-xs{padding:1px 5px;font-size:12px;line-height:1.5;border-radius:3px}.btn-block{display:block;width:100%}.btn-block+.btn-block{margin-top:5px}input[type=button].btn-block,input[type=reset].btn-block,input[type=submit].btn-block{width:100%}.fade{opacity:0;-webkit-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s linear}.fade.in{opacity:1}.collapse{display:none}.collapse.in{display:block}tr.collapse.in{display:table-row}tbody.collapse.in{display:table-row-group}.collapsing{position:relative;height:0;overflow:hidden;-webkit-transition-timing-function:ease;-o-transition-timing-function:ease;transition-timing-function:ease;-webkit-transition-duration:.35s;-o-transition-duration:.35s;transition-duration:.35s;-webkit-transition-property:height,visibility;-o-transition-property:height,visibility;transition-property:height,visibility}.caret{display:inline-block;width:0;height:0;margin-left:2px;vertical-align:middle;border-top:4px dashed;border-top:4px solid\9;border-right:4px solid transparent;border-left:4px solid transparent}.dropdown,.dropup{position:relative}.dropdown-toggle:focus{outline:0}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px 0;margin:2px 0 0;font-size:14px;text-align:left;list-style:none;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.15);border-radius:4px;-webkit-box-shadow:0 6px 12px rgba(0,0,0,.175);box-shadow:0 6px 12px rgba(0,0,0,.175)}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu .divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.dropdown-menu>li>a{display:block;padding:3px 20px;clear:both;font-weight:400;line-height:1.42857143;color:#333;white-space:nowrap}.dropdown-menu>li>a:focus,.dropdown-menu>li>a:hover{color:#262626;text-decoration:none;background-color:#f5f5f5}.dropdown-menu>.active>a,.dropdown-menu>.active>a:focus,.dropdown-menu>.active>a:hover{color:#fff;text-decoration:none;background-color:#337ab7;outline:0}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{color:#777}.dropdown-menu>.disabled>a:focus,.dropdown-menu>.disabled>a:hover{text-decoration:none;cursor:not-allowed;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.open>.dropdown-menu{display:block}.open>a{outline:0}.dropdown-menu-right{right:0;left:auto}.dropdown-menu-left{right:auto;left:0}.dropdown-header{display:block;padding:3px 20px;font-size:12px;line-height:1.42857143;color:#777;white-space:nowrap}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup .caret,.navbar-fixed-bottom .dropdown .caret{content:"";border-top:0;border-bottom:4px dashed;border-bottom:4px solid\9}.dropup .dropdown-menu,.navbar-fixed-bottom .dropdown .dropdown-menu{top:auto;bottom:100%;margin-bottom:2px}@media (min-width:768px){.navbar-right .dropdown-menu{right:0;left:auto}.navbar-right .dropdown-menu-left{right:auto;left:0}}.btn-group,.btn-group-vertical{position:relative;display:inline-block;vertical-align:middle}.btn-group-vertical>.btn,.btn-group>.btn{position:relative;float:left}.btn-group-vertical>.btn.active,.btn-group-vertical>.btn:active,.btn-group-vertical>.btn:focus,.btn-group-vertical>.btn:hover,.btn-group>.btn.active,.btn-group>.btn:active,.btn-group>.btn:focus,.btn-group>.btn:hover{z-index:2}.btn-group .btn+.btn,.btn-group .btn+.btn-group,.btn-group .btn-group+.btn,.btn-group .btn-group+.btn-group{margin-left:-1px}.btn-toolbar{margin-left:-5px}.btn-toolbar .btn,.btn-toolbar .btn-group,.btn-toolbar .input-group{float:left}.btn-toolbar>.btn,.btn-toolbar>.btn-group,.btn-toolbar>.input-group{margin-left:5px}.btn-group>.btn:not(:first-child):not(:last-child):not(.dropdown-toggle){border-radius:0}.btn-group>.btn:first-child{margin-left:0}.btn-group>.btn:first-child:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn:last-child:not(:first-child),.btn-group>.dropdown-toggle:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.btn-group>.btn-group{float:left}.btn-group>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-top-right-radius:0;border-bottom-right-radius:0}.btn-group>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-bottom-left-radius:0}.btn-group .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-group>.btn+.dropdown-toggle{padding-right:8px;padding-left:8px}.btn-group>.btn-lg+.dropdown-toggle{padding-right:12px;padding-left:12px}.btn-group.open .dropdown-toggle{-webkit-box-shadow:inset 0 3px 5px rgba(0,0,0,.125);box-shadow:inset 0 3px 5px rgba(0,0,0,.125)}.btn-group.open .dropdown-toggle.btn-link{-webkit-box-shadow:none;box-shadow:none}.btn .caret{margin-left:0}.btn-lg .caret{border-width:5px 5px 0;border-bottom-width:0}.dropup .btn-lg .caret{border-width:0 5px 5px}.btn-group-vertical>.btn,.btn-group-vertical>.btn-group,.btn-group-vertical>.btn-group>.btn{display:block;float:none;width:100%;max-width:100%}.btn-group-vertical>.btn-group>.btn{float:none}.btn-group-vertical>.btn+.btn,.btn-group-vertical>.btn+.btn-group,.btn-group-vertical>.btn-group+.btn,.btn-group-vertical>.btn-group+.btn-group{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:not(:first-child):not(:last-child){border-radius:0}.btn-group-vertical>.btn:first-child:not(:last-child){border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn:last-child:not(:first-child){border-top-left-radius:0;border-top-right-radius:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}.btn-group-vertical>.btn-group:not(:first-child):not(:last-child)>.btn{border-radius:0}.btn-group-vertical>.btn-group:first-child:not(:last-child)>.btn:last-child,.btn-group-vertical>.btn-group:first-child:not(:last-child)>.dropdown-toggle{border-bottom-right-radius:0;border-bottom-left-radius:0}.btn-group-vertical>.btn-group:last-child:not(:first-child)>.btn:first-child{border-top-left-radius:0;border-top-right-radius:0}.btn-group-justified{display:table;width:100%;table-layout:fixed;border-collapse:separate}.btn-group-justified>.btn,.btn-group-justified>.btn-group{display:table-cell;float:none;width:1%}.btn-group-justified>.btn-group .btn{width:100%}.btn-group-justified>.btn-group .dropdown-menu{left:auto}[data-toggle=buttons]>.btn input[type=checkbox],[data-toggle=buttons]>.btn input[type=radio],[data-toggle=buttons]>.btn-group>.btn input[type=checkbox],[data-toggle=buttons]>.btn-group>.btn input[type=radio]{position:absolute;clip:rect(0,0,0,0);pointer-events:none}.input-group{position:relative;display:table;border-collapse:separate}.input-group[class*=col-]{float:none;padding-right:0;padding-left:0}.input-group .form-control{position:relative;z-index:2;float:left;width:100%;margin-bottom:0}.input-group .form-control:focus{z-index:3}.input-group-lg>.form-control,.input-group-lg>.input-group-addon,.input-group-lg>.input-group-btn>.btn{height:46px;padding:10px 16px;font-size:18px;line-height:1.3333333;border-radius:6px}select.input-group-lg>.form-control,select.input-group-lg>.input-group-addon,select.input-group-lg>.input-group-btn>.btn{height:46px;line-height:46px}select[multiple].input-group-lg>.form-control,select[multiple].input-group-lg>.input-group-addon,select[multiple].input-group-lg>.input-group-btn>.btn,textarea.input-group-lg>.form-control,textarea.input-group-lg>.input-group-addon,textarea.input-group-lg>.input-group-btn>.btn{height:auto}.input-group-sm>.form-control,.input-group-sm>.input-group-addon,.input-group-sm>.input-group-btn>.btn{height:30px;padding:5px 10px;font-size:12px;line-height:1.5;border-radius:3px}select.input-group-sm>.form-control,select.input-group-sm>.input-group-addon,select.input-group-sm>.input-group-btn>.btn{height:30px;line-height:30px}select[multiple].input-group-sm>.form-control,select[multiple].input-group-sm>.input-group-addon,select[multiple].input-group-sm>.input-group-btn>.btn,textarea.input-group-sm>.form-control,textarea.input-group-sm>.input-group-addon,textarea.input-group-sm>.input-group-btn>.btn{height:auto}.input-group .form-control,.input-group-addon,.input-group-btn{display:table-cell}.input-group .form-control:not(:first-child):not(:last-child),.input-group-addon:not(:first-child):not(:last-child),.input-group-btn:not(:first-child):not(:last-child){border-radius:0}.input-group-addon,.input-group-btn{width:1%;white-space:nowrap;vertical-align:middle}.input-group-addon{padding:6px 12px;font-size:14px;font-weight:400;line-height:1;color:#555;text-align:center;background-color:#eee;border:1px solid #ccc;border-radius:4px}.input-group-addon.input-sm{padding:5px 10px;font-size:12px;border-radius:3px}.input-group-addon.input-lg{padding:10px 16px;font-size:18px;border-radius:6px}.input-group-addon input[type=checkbox],.input-group-addon input[type=radio]{margin-top:0}.input-group .form-control:first-child,.input-group-addon:first-child,.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group>.btn,.input-group-btn:first-child>.dropdown-toggle,.input-group-btn:last-child>.btn-group:not(:last-child)>.btn,.input-group-btn:last-child>.btn:not(:last-child):not(.dropdown-toggle){border-top-right-radius:0;border-bottom-right-radius:0}.input-group-addon:first-child{border-right:0}.input-group .form-control:last-child,.input-group-addon:last-child,.input-group-btn:first-child>.btn-group:not(:first-child)>.btn,.input-group-btn:first-child>.btn:not(:first-child),.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group>.btn,.input-group-btn:last-child>.dropdown-toggle{border-top-left-radius:0;border-bottom-left-radius:0}.input-group-addon:last-child{border-left:0}.input-group-btn{position:relative;font-size:0;white-space:nowrap}.input-group-btn>.btn{position:relative}.input-group-btn>.btn+.btn{margin-left:-1px}.input-group-btn>.btn:active,.input-group-btn>.btn:focus,.input-group-btn>.btn:hover{z-index:2}.input-group-btn:first-child>.btn,.input-group-btn:first-child>.btn-group{margin-right:-1px}.input-group-btn:last-child>.btn,.input-group-btn:last-child>.btn-group{z-index:2;margin-left:-1px}.nav{padding-left:0;margin-bottom:0;list-style:none}.nav>li{position:relative;display:block}.nav>li>a{position:relative;display:block;padding:10px 15px}.nav>li>a:focus,.nav>li>a:hover{text-decoration:none;background-color:#eee}.nav>li.disabled>a{color:#777}.nav>li.disabled>a:focus,.nav>li.disabled>a:hover{color:#777;text-decoration:none;cursor:not-allowed;background-color:transparent}.nav .open>a,.nav .open>a:focus,.nav .open>a:hover{background-color:#eee;border-color:#337ab7}.nav .nav-divider{height:1px;margin:9px 0;overflow:hidden;background-color:#e5e5e5}.nav>li>a>img{max-width:none}.nav-tabs{border-bottom:1px solid #ddd}.nav-tabs>li{float:left;margin-bottom:-1px}.nav-tabs>li>a{margin-right:2px;line-height:1.42857143;border:1px solid transparent;border-radius:4px 4px 0 0}.nav-tabs>li>a:hover{border-color:#eee #eee #ddd}.nav-tabs>li.active>a,.nav-tabs>li.active>a:focus,.nav-tabs>li.active>a:hover{color:#555;cursor:default;background-color:#fff;border:1px solid #ddd;border-bottom-color:transparent}.nav-tabs.nav-justified{width:100%;border-bottom:0}.nav-tabs.nav-justified>li{float:none}.nav-tabs.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-tabs.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-tabs.nav-justified>li{display:table-cell;width:1%}.nav-tabs.nav-justified>li>a{margin-bottom:0}}.nav-tabs.nav-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs.nav-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs.nav-justified>.active>a,.nav-tabs.nav-justified>.active>a:focus,.nav-tabs.nav-justified>.active>a:hover{border-bottom-color:#fff}}.nav-pills>li{float:left}.nav-pills>li>a{border-radius:4px}.nav-pills>li+li{margin-left:2px}.nav-pills>li.active>a,.nav-pills>li.active>a:focus,.nav-pills>li.active>a:hover{color:#fff;background-color:#337ab7}.nav-stacked>li{float:none}.nav-stacked>li+li{margin-top:2px;margin-left:0}.nav-justified{width:100%}.nav-justified>li{float:none}.nav-justified>li>a{margin-bottom:5px;text-align:center}.nav-justified>.dropdown .dropdown-menu{top:auto;left:auto}@media (min-width:768px){.nav-justified>li{display:table-cell;width:1%}.nav-justified>li>a{margin-bottom:0}}.nav-tabs-justified{border-bottom:0}.nav-tabs-justified>li>a{margin-right:0;border-radius:4px}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border:1px solid #ddd}@media (min-width:768px){.nav-tabs-justified>li>a{border-bottom:1px solid #ddd;border-radius:4px 4px 0 0}.nav-tabs-justified>.active>a,.nav-tabs-justified>.active>a:focus,.nav-tabs-justified>.active>a:hover{border-bottom-color:#fff}}.tab-content>.tab-pane{display:none}.tab-content>.active{display:block}.nav-tabs .dropdown-menu{margin-top:-1px;border-top-left-radius:0;border-top-right-radius:0}.navbar{position:relative;min-height:50px;margin-bottom:20px;border:1px solid transparent}@media (min-width:768px){.navbar{border-radius:4px}}@media (min-width:768px){.navbar-header{float:left}}.navbar-collapse{padding-right:15px;padding-left:15px;overflow-x:visible;-webkit-overflow-scrolling:touch;border-top:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1)}.navbar-collapse.in{overflow-y:auto}@media (min-width:768px){.navbar-collapse{width:auto;border-top:0;-webkit-box-shadow:none;box-shadow:none}.navbar-collapse.collapse{display:block!important;height:auto!important;padding-bottom:0;overflow:visible!important}.navbar-collapse.in{overflow-y:visible}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse,.navbar-static-top .navbar-collapse{padding-right:0;padding-left:0}}.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:340px}@media (max-device-width:480px) and (orientation:landscape){.navbar-fixed-bottom .navbar-collapse,.navbar-fixed-top .navbar-collapse{max-height:200px}}.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:-15px;margin-left:-15px}@media (min-width:768px){.container-fluid>.navbar-collapse,.container-fluid>.navbar-header,.container>.navbar-collapse,.container>.navbar-header{margin-right:0;margin-left:0}}.navbar-static-top{z-index:1000;border-width:0 0 1px}@media (min-width:768px){.navbar-static-top{border-radius:0}}.navbar-fixed-bottom,.navbar-fixed-top{position:fixed;right:0;left:0;z-index:1030}@media (min-width:768px){.navbar-fixed-bottom,.navbar-fixed-top{border-radius:0}}.navbar-fixed-top{top:0;border-width:0 0 1px}.navbar-fixed-bottom{bottom:0;margin-bottom:0;border-width:1px 0 0}.navbar-brand{float:left;height:50px;padding:15px 15px;font-size:18px;line-height:20px}.navbar-brand:focus,.navbar-brand:hover{text-decoration:none}.navbar-brand>img{display:block}@media (min-width:768px){.navbar>.container .navbar-brand,.navbar>.container-fluid .navbar-brand{margin-left:-15px}}.navbar-toggle{position:relative;float:right;padding:9px 10px;margin-top:8px;margin-right:15px;margin-bottom:8px;background-color:transparent;background-image:none;border:1px solid transparent;border-radius:4px}.navbar-toggle:focus{outline:0}.navbar-toggle .icon-bar{display:block;width:22px;height:2px;border-radius:1px}.navbar-toggle .icon-bar+.icon-bar{margin-top:4px}@media (min-width:768px){.navbar-toggle{display:none}}.navbar-nav{margin:7.5px -15px}.navbar-nav>li>a{padding-top:10px;padding-bottom:10px;line-height:20px}@media (max-width:767px){.navbar-nav .open .dropdown-menu{position:static;float:none;width:auto;margin-top:0;background-color:transparent;border:0;-webkit-box-shadow:none;box-shadow:none}.navbar-nav .open .dropdown-menu .dropdown-header,.navbar-nav .open .dropdown-menu>li>a{padding:5px 15px 5px 25px}.navbar-nav .open .dropdown-menu>li>a{line-height:20px}.navbar-nav .open .dropdown-menu>li>a:focus,.navbar-nav .open .dropdown-menu>li>a:hover{background-image:none}}@media (min-width:768px){.navbar-nav{float:left;margin:0}.navbar-nav>li{float:left}.navbar-nav>li>a{padding-top:15px;padding-bottom:15px}}.navbar-form{padding:10px 15px;margin-top:8px;margin-right:-15px;margin-bottom:8px;margin-left:-15px;border-top:1px solid transparent;border-bottom:1px solid transparent;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 1px 0 rgba(255,255,255,.1)}@media (min-width:768px){.navbar-form .form-group{display:inline-block;margin-bottom:0;vertical-align:middle}.navbar-form .form-control{display:inline-block;width:auto;vertical-align:middle}.navbar-form .form-control-static{display:inline-block}.navbar-form .input-group{display:inline-table;vertical-align:middle}.navbar-form .input-group .form-control,.navbar-form .input-group .input-group-addon,.navbar-form .input-group .input-group-btn{width:auto}.navbar-form .input-group>.form-control{width:100%}.navbar-form .control-label{margin-bottom:0;vertical-align:middle}.navbar-form .checkbox,.navbar-form .radio{display:inline-block;margin-top:0;margin-bottom:0;vertical-align:middle}.navbar-form .checkbox label,.navbar-form .radio label{padding-left:0}.navbar-form .checkbox input[type=checkbox],.navbar-form .radio input[type=radio]{position:relative;margin-left:0}.navbar-form .has-feedback .form-control-feedback{top:0}}@media (max-width:767px){.navbar-form .form-group{margin-bottom:5px}.navbar-form .form-group:last-child{margin-bottom:0}}@media (min-width:768px){.navbar-form{width:auto;padding-top:0;padding-bottom:0;margin-right:0;margin-left:0;border:0;-webkit-box-shadow:none;box-shadow:none}}.navbar-nav>li>.dropdown-menu{margin-top:0;border-top-left-radius:0;border-top-right-radius:0}.navbar-fixed-bottom .navbar-nav>li>.dropdown-menu{margin-bottom:0;border-top-left-radius:4px;border-top-right-radius:4px;border-bottom-right-radius:0;border-bottom-left-radius:0}.navbar-btn{margin-top:8px;margin-bottom:8px}.navbar-btn.btn-sm{margin-top:10px;margin-bottom:10px}.navbar-btn.btn-xs{margin-top:14px;margin-bottom:14px}.navbar-text{margin-top:15px;margin-bottom:15px}@media (min-width:768px){.navbar-text{float:left;margin-right:15px;margin-left:15px}}@media (min-width:768px){.navbar-left{float:left!important}.navbar-right{float:right!important;margin-right:-15px}.navbar-right~.navbar-right{margin-right:0}}.navbar-default{background-color:#f8f8f8;border-color:#e7e7e7}.navbar-default .navbar-brand{color:#777}.navbar-default .navbar-brand:focus,.navbar-default .navbar-brand:hover{color:#5e5e5e;background-color:transparent}.navbar-default .navbar-text{color:#777}.navbar-default .navbar-nav>li>a{color:#777}.navbar-default .navbar-nav>li>a:focus,.navbar-default .navbar-nav>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav>.active>a,.navbar-default .navbar-nav>.active>a:focus,.navbar-default .navbar-nav>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav>.disabled>a,.navbar-default .navbar-nav>.disabled>a:focus,.navbar-default .navbar-nav>.disabled>a:hover{color:#ccc;background-color:transparent}.navbar-default .navbar-toggle{border-color:#ddd}.navbar-default .navbar-toggle:focus,.navbar-default .navbar-toggle:hover{background-color:#ddd}.navbar-default .navbar-toggle .icon-bar{background-color:#888}.navbar-default .navbar-collapse,.navbar-default .navbar-form{border-color:#e7e7e7}.navbar-default .navbar-nav>.open>a,.navbar-default .navbar-nav>.open>a:focus,.navbar-default .navbar-nav>.open>a:hover{color:#555;background-color:#e7e7e7}@media (max-width:767px){.navbar-default .navbar-nav .open .dropdown-menu>li>a{color:#777}.navbar-default .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>li>a:hover{color:#333;background-color:transparent}.navbar-default .navbar-nav .open .dropdown-menu>.active>a,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.active>a:hover{color:#555;background-color:#e7e7e7}.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-default .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#ccc;background-color:transparent}}.navbar-default .navbar-link{color:#777}.navbar-default .navbar-link:hover{color:#333}.navbar-default .btn-link{color:#777}.navbar-default .btn-link:focus,.navbar-default .btn-link:hover{color:#333}.navbar-default .btn-link[disabled]:focus,.navbar-default .btn-link[disabled]:hover,fieldset[disabled] .navbar-default .btn-link:focus,fieldset[disabled] .navbar-default .btn-link:hover{color:#ccc}.navbar-inverse{background-color:#222;border-color:#080808}.navbar-inverse .navbar-brand{color:#9d9d9d}.navbar-inverse .navbar-brand:focus,.navbar-inverse .navbar-brand:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-text{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav>li>a:focus,.navbar-inverse .navbar-nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav>.active>a,.navbar-inverse .navbar-nav>.active>a:focus,.navbar-inverse .navbar-nav>.active>a:hover{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav>.disabled>a,.navbar-inverse .navbar-nav>.disabled>a:focus,.navbar-inverse .navbar-nav>.disabled>a:hover{color:#444;background-color:transparent}.navbar-inverse .navbar-toggle{border-color:#333}.navbar-inverse .navbar-toggle:focus,.navbar-inverse .navbar-toggle:hover{background-color:#333}.navbar-inverse .navbar-toggle .icon-bar{background-color:#fff}.navbar-inverse .navbar-collapse,.navbar-inverse .navbar-form{border-color:#101010}.navbar-inverse .navbar-nav>.open>a,.navbar-inverse .navbar-nav>.open>a:focus,.navbar-inverse .navbar-nav>.open>a:hover{color:#fff;background-color:#080808}@media (max-width:767px){.navbar-inverse .navbar-nav .open .dropdown-menu>.dropdown-header{border-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu .divider{background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a{color:#9d9d9d}.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.active>a:hover{color:#fff;background-color:#080808}.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:focus,.navbar-inverse .navbar-nav .open .dropdown-menu>.disabled>a:hover{color:#444;background-color:transparent}}.navbar-inverse .navbar-link{color:#9d9d9d}.navbar-inverse .navbar-link:hover{color:#fff}.navbar-inverse .btn-link{color:#9d9d9d}.navbar-inverse .btn-link:focus,.navbar-inverse .btn-link:hover{color:#fff}.navbar-inverse .btn-link[disabled]:focus,.navbar-inverse .btn-link[disabled]:hover,fieldset[disabled] .navbar-inverse .btn-link:focus,fieldset[disabled] .navbar-inverse .btn-link:hover{color:#444}.breadcrumb{padding:8px 15px;margin-bottom:20px;list-style:none;background-color:#f5f5f5;border-radius:4px}.breadcrumb>li{display:inline-block}.breadcrumb>li+li:before{padding:0 5px;color:#ccc;content:"/\00a0"}.breadcrumb>.active{color:#777}.pagination{display:inline-block;padding-left:0;margin:20px 0;border-radius:4px}.pagination>li{display:inline}.pagination>li>a,.pagination>li>span{position:relative;float:left;padding:6px 12px;margin-left:-1px;line-height:1.42857143;color:#337ab7;text-decoration:none;background-color:#fff;border:1px solid #ddd}.pagination>li:first-child>a,.pagination>li:first-child>span{margin-left:0;border-top-left-radius:4px;border-bottom-left-radius:4px}.pagination>li:last-child>a,.pagination>li:last-child>span{border-top-right-radius:4px;border-bottom-right-radius:4px}.pagination>li>a:focus,.pagination>li>a:hover,.pagination>li>span:focus,.pagination>li>span:hover{z-index:2;color:#23527c;background-color:#eee;border-color:#ddd}.pagination>.active>a,.pagination>.active>a:focus,.pagination>.active>a:hover,.pagination>.active>span,.pagination>.active>span:focus,.pagination>.active>span:hover{z-index:3;color:#fff;cursor:default;background-color:#337ab7;border-color:#337ab7}.pagination>.disabled>a,.pagination>.disabled>a:focus,.pagination>.disabled>a:hover,.pagination>.disabled>span,.pagination>.disabled>span:focus,.pagination>.disabled>span:hover{color:#777;cursor:not-allowed;background-color:#fff;border-color:#ddd}.pagination-lg>li>a,.pagination-lg>li>span{padding:10px 16px;font-size:18px;line-height:1.3333333}.pagination-lg>li:first-child>a,.pagination-lg>li:first-child>span{border-top-left-radius:6px;border-bottom-left-radius:6px}.pagination-lg>li:last-child>a,.pagination-lg>li:last-child>span{border-top-right-radius:6px;border-bottom-right-radius:6px}.pagination-sm>li>a,.pagination-sm>li>span{padding:5px 10px;font-size:12px;line-height:1.5}.pagination-sm>li:first-child>a,.pagination-sm>li:first-child>span{border-top-left-radius:3px;border-bottom-left-radius:3px}.pagination-sm>li:last-child>a,.pagination-sm>li:last-child>span{border-top-right-radius:3px;border-bottom-right-radius:3px}.pager{padding-left:0;margin:20px 0;text-align:center;list-style:none}.pager li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 14px;background-color:#fff;border:1px solid #ddd;border-radius:15px}.pager li>a:focus,.pager li>a:hover{text-decoration:none;background-color:#eee}.pager .next>a,.pager .next>span{float:right}.pager .previous>a,.pager .previous>span{float:left}.pager .disabled>a,.pager .disabled>a:focus,.pager .disabled>a:hover,.pager .disabled>span{color:#777;cursor:not-allowed;background-color:#fff}.label{display:inline;padding:.2em .6em .3em;font-size:75%;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:baseline;border-radius:.25em}a.label:focus,a.label:hover{color:#fff;text-decoration:none;cursor:pointer}.label:empty{display:none}.btn .label{position:relative;top:-1px}.label-default{background-color:#777}.label-default[href]:focus,.label-default[href]:hover{background-color:#5e5e5e}.label-primary{background-color:#337ab7}.label-primary[href]:focus,.label-primary[href]:hover{background-color:#286090}.label-success{background-color:#5cb85c}.label-success[href]:focus,.label-success[href]:hover{background-color:#449d44}.label-info{background-color:#5bc0de}.label-info[href]:focus,.label-info[href]:hover{background-color:#31b0d5}.label-warning{background-color:#f0ad4e}.label-warning[href]:focus,.label-warning[href]:hover{background-color:#ec971f}.label-danger{background-color:#d9534f}.label-danger[href]:focus,.label-danger[href]:hover{background-color:#c9302c}.badge{display:inline-block;min-width:10px;padding:3px 7px;font-size:12px;font-weight:700;line-height:1;color:#fff;text-align:center;white-space:nowrap;vertical-align:middle;background-color:#777;border-radius:10px}.badge:empty{display:none}.btn .badge{position:relative;top:-1px}.btn-group-xs>.btn .badge,.btn-xs .badge{top:0;padding:1px 5px}a.badge:focus,a.badge:hover{color:#fff;text-decoration:none;cursor:pointer}.list-group-item.active>.badge,.nav-pills>.active>a>.badge{color:#337ab7;background-color:#fff}.list-group-item>.badge{float:right}.list-group-item>.badge+.badge{margin-right:5px}.nav-pills>li>a>.badge{margin-left:3px}.jumbotron{padding-top:30px;padding-bottom:30px;margin-bottom:30px;color:inherit;background-color:#eee}.jumbotron .h1,.jumbotron h1{color:inherit}.jumbotron p{margin-bottom:15px;font-size:21px;font-weight:200}.jumbotron>hr{border-top-color:#d5d5d5}.container .jumbotron,.container-fluid .jumbotron{padding-right:15px;padding-left:15px;border-radius:6px}.jumbotron .container{max-width:100%}@media screen and (min-width:768px){.jumbotron{padding-top:48px;padding-bottom:48px}.container .jumbotron,.container-fluid .jumbotron{padding-right:60px;padding-left:60px}.jumbotron .h1,.jumbotron h1{font-size:63px}}.thumbnail{display:block;padding:4px;margin-bottom:20px;line-height:1.42857143;background-color:#fff;border:1px solid #ddd;border-radius:4px;-webkit-transition:border .2s ease-in-out;-o-transition:border .2s ease-in-out;transition:border .2s ease-in-out}.thumbnail a>img,.thumbnail>img{margin-right:auto;margin-left:auto}a.thumbnail.active,a.thumbnail:focus,a.thumbnail:hover{border-color:#337ab7}.thumbnail .caption{padding:9px;color:#333}.alert{padding:15px;margin-bottom:20px;border:1px solid transparent;border-radius:4px}.alert h4{margin-top:0;color:inherit}.alert .alert-link{font-weight:700}.alert>p,.alert>ul{margin-bottom:0}.alert>p+p{margin-top:5px}.alert-dismissable,.alert-dismissible{padding-right:35px}.alert-dismissable .close,.alert-dismissible .close{position:relative;top:-2px;right:-21px;color:inherit}.alert-success{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.alert-success hr{border-top-color:#c9e2b3}.alert-success .alert-link{color:#2b542c}.alert-info{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.alert-info hr{border-top-color:#a6e1ec}.alert-info .alert-link{color:#245269}.alert-warning{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.alert-warning hr{border-top-color:#f7e1b5}.alert-warning .alert-link{color:#66512c}.alert-danger{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.alert-danger hr{border-top-color:#e4b9c0}.alert-danger .alert-link{color:#843534}@-webkit-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@-o-keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}@keyframes progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f5f5f5;border-radius:4px;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,.1);box-shadow:inset 0 1px 2px rgba(0,0,0,.1)}.progress-bar{float:left;width:0;height:100%;font-size:12px;line-height:20px;color:#fff;text-align:center;background-color:#337ab7;-webkit-box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);box-shadow:inset 0 -1px 0 rgba(0,0,0,.15);-webkit-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress-bar-striped,.progress-striped .progress-bar{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);-webkit-background-size:40px 40px;background-size:40px 40px}.progress-bar.active,.progress.active .progress-bar{-webkit-animation:progress-bar-stripes 2s linear infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear infinite}.progress-bar-success{background-color:#5cb85c}.progress-striped .progress-bar-success{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-info{background-color:#5bc0de}.progress-striped .progress-bar-info{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-warning{background-color:#f0ad4e}.progress-striped .progress-bar-warning{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.progress-bar-danger{background-color:#d9534f}.progress-striped .progress-bar-danger{background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,.15) 25%,transparent 25%,transparent 50%,rgba(255,255,255,.15) 50%,rgba(255,255,255,.15) 75%,transparent 75%,transparent)}.media{margin-top:15px}.media:first-child{margin-top:0}.media,.media-body{overflow:hidden;zoom:1}.media-body{width:10000px}.media-object{display:block}.media-object.img-thumbnail{max-width:none}.media-right,.media>.pull-right{padding-left:10px}.media-left,.media>.pull-left{padding-right:10px}.media-body,.media-left,.media-right{display:table-cell;vertical-align:top}.media-middle{vertical-align:middle}.media-bottom{vertical-align:bottom}.media-heading{margin-top:0;margin-bottom:5px}.media-list{padding-left:0;list-style:none}.list-group{padding-left:0;margin-bottom:20px}.list-group-item{position:relative;display:block;padding:10px 15px;margin-bottom:-1px;background-color:#fff;border:1px solid #ddd}.list-group-item:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.list-group-item:last-child{margin-bottom:0;border-bottom-right-radius:4px;border-bottom-left-radius:4px}a.list-group-item,button.list-group-item{color:#555}a.list-group-item .list-group-item-heading,button.list-group-item .list-group-item-heading{color:#333}a.list-group-item:focus,a.list-group-item:hover,button.list-group-item:focus,button.list-group-item:hover{color:#555;text-decoration:none;background-color:#f5f5f5}button.list-group-item{width:100%;text-align:left}.list-group-item.disabled,.list-group-item.disabled:focus,.list-group-item.disabled:hover{color:#777;cursor:not-allowed;background-color:#eee}.list-group-item.disabled .list-group-item-heading,.list-group-item.disabled:focus .list-group-item-heading,.list-group-item.disabled:hover .list-group-item-heading{color:inherit}.list-group-item.disabled .list-group-item-text,.list-group-item.disabled:focus .list-group-item-text,.list-group-item.disabled:hover .list-group-item-text{color:#777}.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover{z-index:2;color:#fff;background-color:#337ab7;border-color:#337ab7}.list-group-item.active .list-group-item-heading,.list-group-item.active .list-group-item-heading>.small,.list-group-item.active .list-group-item-heading>small,.list-group-item.active:focus .list-group-item-heading,.list-group-item.active:focus .list-group-item-heading>.small,.list-group-item.active:focus .list-group-item-heading>small,.list-group-item.active:hover .list-group-item-heading,.list-group-item.active:hover .list-group-item-heading>.small,.list-group-item.active:hover .list-group-item-heading>small{color:inherit}.list-group-item.active .list-group-item-text,.list-group-item.active:focus .list-group-item-text,.list-group-item.active:hover .list-group-item-text{color:#c7ddef}.list-group-item-success{color:#3c763d;background-color:#dff0d8}a.list-group-item-success,button.list-group-item-success{color:#3c763d}a.list-group-item-success .list-group-item-heading,button.list-group-item-success .list-group-item-heading{color:inherit}a.list-group-item-success:focus,a.list-group-item-success:hover,button.list-group-item-success:focus,button.list-group-item-success:hover{color:#3c763d;background-color:#d0e9c6}a.list-group-item-success.active,a.list-group-item-success.active:focus,a.list-group-item-success.active:hover,button.list-group-item-success.active,button.list-group-item-success.active:focus,button.list-group-item-success.active:hover{color:#fff;background-color:#3c763d;border-color:#3c763d}.list-group-item-info{color:#31708f;background-color:#d9edf7}a.list-group-item-info,button.list-group-item-info{color:#31708f}a.list-group-item-info .list-group-item-heading,button.list-group-item-info .list-group-item-heading{color:inherit}a.list-group-item-info:focus,a.list-group-item-info:hover,button.list-group-item-info:focus,button.list-group-item-info:hover{color:#31708f;background-color:#c4e3f3}a.list-group-item-info.active,a.list-group-item-info.active:focus,a.list-group-item-info.active:hover,button.list-group-item-info.active,button.list-group-item-info.active:focus,button.list-group-item-info.active:hover{color:#fff;background-color:#31708f;border-color:#31708f}.list-group-item-warning{color:#8a6d3b;background-color:#fcf8e3}a.list-group-item-warning,button.list-group-item-warning{color:#8a6d3b}a.list-group-item-warning .list-group-item-heading,button.list-group-item-warning .list-group-item-heading{color:inherit}a.list-group-item-warning:focus,a.list-group-item-warning:hover,button.list-group-item-warning:focus,button.list-group-item-warning:hover{color:#8a6d3b;background-color:#faf2cc}a.list-group-item-warning.active,a.list-group-item-warning.active:focus,a.list-group-item-warning.active:hover,button.list-group-item-warning.active,button.list-group-item-warning.active:focus,button.list-group-item-warning.active:hover{color:#fff;background-color:#8a6d3b;border-color:#8a6d3b}.list-group-item-danger{color:#a94442;background-color:#f2dede}a.list-group-item-danger,button.list-group-item-danger{color:#a94442}a.list-group-item-danger .list-group-item-heading,button.list-group-item-danger .list-group-item-heading{color:inherit}a.list-group-item-danger:focus,a.list-group-item-danger:hover,button.list-group-item-danger:focus,button.list-group-item-danger:hover{color:#a94442;background-color:#ebcccc}a.list-group-item-danger.active,a.list-group-item-danger.active:focus,a.list-group-item-danger.active:hover,button.list-group-item-danger.active,button.list-group-item-danger.active:focus,button.list-group-item-danger.active:hover{color:#fff;background-color:#a94442;border-color:#a94442}.list-group-item-heading{margin-top:0;margin-bottom:5px}.list-group-item-text{margin-bottom:0;line-height:1.3}.panel{margin-bottom:20px;background-color:#fff;border:1px solid transparent;border-radius:4px;-webkit-box-shadow:0 1px 1px rgba(0,0,0,.05);box-shadow:0 1px 1px rgba(0,0,0,.05)}.panel-body{padding:15px}.panel-heading{padding:10px 15px;border-bottom:1px solid transparent;border-top-left-radius:3px;border-top-right-radius:3px}.panel-heading>.dropdown .dropdown-toggle{color:inherit}.panel-title{margin-top:0;margin-bottom:0;font-size:16px;color:inherit}.panel-title>.small,.panel-title>.small>a,.panel-title>a,.panel-title>small,.panel-title>small>a{color:inherit}.panel-footer{padding:10px 15px;background-color:#f5f5f5;border-top:1px solid #ddd;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.list-group,.panel>.panel-collapse>.list-group{margin-bottom:0}.panel>.list-group .list-group-item,.panel>.panel-collapse>.list-group .list-group-item{border-width:1px 0;border-radius:0}.panel>.list-group:first-child .list-group-item:first-child,.panel>.panel-collapse>.list-group:first-child .list-group-item:first-child{border-top:0;border-top-left-radius:3px;border-top-right-radius:3px}.panel>.list-group:last-child .list-group-item:last-child,.panel>.panel-collapse>.list-group:last-child .list-group-item:last-child{border-bottom:0;border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.panel-heading+.panel-collapse>.list-group .list-group-item:first-child{border-top-left-radius:0;border-top-right-radius:0}.panel-heading+.list-group .list-group-item:first-child{border-top-width:0}.list-group+.panel-footer{border-top-width:0}.panel>.panel-collapse>.table,.panel>.table,.panel>.table-responsive>.table{margin-bottom:0}.panel>.panel-collapse>.table caption,.panel>.table caption,.panel>.table-responsive>.table caption{padding-right:15px;padding-left:15px}.panel>.table-responsive:first-child>.table:first-child,.panel>.table:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child,.panel>.table:first-child>thead:first-child>tr:first-child{border-top-left-radius:3px;border-top-right-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:first-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:first-child,.panel>.table:first-child>thead:first-child>tr:first-child td:first-child,.panel>.table:first-child>thead:first-child>tr:first-child th:first-child{border-top-left-radius:3px}.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table-responsive:first-child>.table:first-child>thead:first-child>tr:first-child th:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child td:last-child,.panel>.table:first-child>tbody:first-child>tr:first-child th:last-child,.panel>.table:first-child>thead:first-child>tr:first-child td:last-child,.panel>.table:first-child>thead:first-child>tr:first-child th:last-child{border-top-right-radius:3px}.panel>.table-responsive:last-child>.table:last-child,.panel>.table:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child{border-bottom-right-radius:3px;border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:first-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:first-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:first-child{border-bottom-left-radius:3px}.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table-responsive:last-child>.table:last-child>tfoot:last-child>tr:last-child th:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child td:last-child,.panel>.table:last-child>tbody:last-child>tr:last-child th:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child td:last-child,.panel>.table:last-child>tfoot:last-child>tr:last-child th:last-child{border-bottom-right-radius:3px}.panel>.panel-body+.table,.panel>.panel-body+.table-responsive,.panel>.table+.panel-body,.panel>.table-responsive+.panel-body{border-top:1px solid #ddd}.panel>.table>tbody:first-child>tr:first-child td,.panel>.table>tbody:first-child>tr:first-child th{border-top:0}.panel>.table-bordered,.panel>.table-responsive>.table-bordered{border:0}.panel>.table-bordered>tbody>tr>td:first-child,.panel>.table-bordered>tbody>tr>th:first-child,.panel>.table-bordered>tfoot>tr>td:first-child,.panel>.table-bordered>tfoot>tr>th:first-child,.panel>.table-bordered>thead>tr>td:first-child,.panel>.table-bordered>thead>tr>th:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:first-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:first-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:first-child,.panel>.table-responsive>.table-bordered>thead>tr>td:first-child,.panel>.table-responsive>.table-bordered>thead>tr>th:first-child{border-left:0}.panel>.table-bordered>tbody>tr>td:last-child,.panel>.table-bordered>tbody>tr>th:last-child,.panel>.table-bordered>tfoot>tr>td:last-child,.panel>.table-bordered>tfoot>tr>th:last-child,.panel>.table-bordered>thead>tr>td:last-child,.panel>.table-bordered>thead>tr>th:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>td:last-child,.panel>.table-responsive>.table-bordered>tbody>tr>th:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>td:last-child,.panel>.table-responsive>.table-bordered>tfoot>tr>th:last-child,.panel>.table-responsive>.table-bordered>thead>tr>td:last-child,.panel>.table-responsive>.table-bordered>thead>tr>th:last-child{border-right:0}.panel>.table-bordered>tbody>tr:first-child>td,.panel>.table-bordered>tbody>tr:first-child>th,.panel>.table-bordered>thead>tr:first-child>td,.panel>.table-bordered>thead>tr:first-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:first-child>th,.panel>.table-responsive>.table-bordered>thead>tr:first-child>td,.panel>.table-responsive>.table-bordered>thead>tr:first-child>th{border-bottom:0}.panel>.table-bordered>tbody>tr:last-child>td,.panel>.table-bordered>tbody>tr:last-child>th,.panel>.table-bordered>tfoot>tr:last-child>td,.panel>.table-bordered>tfoot>tr:last-child>th,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>td,.panel>.table-responsive>.table-bordered>tbody>tr:last-child>th,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>td,.panel>.table-responsive>.table-bordered>tfoot>tr:last-child>th{border-bottom:0}.panel>.table-responsive{margin-bottom:0;border:0}.panel-group{margin-bottom:20px}.panel-group .panel{margin-bottom:0;border-radius:4px}.panel-group .panel+.panel{margin-top:5px}.panel-group .panel-heading{border-bottom:0}.panel-group .panel-heading+.panel-collapse>.list-group,.panel-group .panel-heading+.panel-collapse>.panel-body{border-top:1px solid #ddd}.panel-group .panel-footer{border-top:0}.panel-group .panel-footer+.panel-collapse .panel-body{border-bottom:1px solid #ddd}.panel-default{border-color:#ddd}.panel-default>.panel-heading{color:#333;background-color:#f5f5f5;border-color:#ddd}.panel-default>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ddd}.panel-default>.panel-heading .badge{color:#f5f5f5;background-color:#333}.panel-default>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ddd}.panel-primary{border-color:#337ab7}.panel-primary>.panel-heading{color:#fff;background-color:#337ab7;border-color:#337ab7}.panel-primary>.panel-heading+.panel-collapse>.panel-body{border-top-color:#337ab7}.panel-primary>.panel-heading .badge{color:#337ab7;background-color:#fff}.panel-primary>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#337ab7}.panel-success{border-color:#d6e9c6}.panel-success>.panel-heading{color:#3c763d;background-color:#dff0d8;border-color:#d6e9c6}.panel-success>.panel-heading+.panel-collapse>.panel-body{border-top-color:#d6e9c6}.panel-success>.panel-heading .badge{color:#dff0d8;background-color:#3c763d}.panel-success>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#d6e9c6}.panel-info{border-color:#bce8f1}.panel-info>.panel-heading{color:#31708f;background-color:#d9edf7;border-color:#bce8f1}.panel-info>.panel-heading+.panel-collapse>.panel-body{border-top-color:#bce8f1}.panel-info>.panel-heading .badge{color:#d9edf7;background-color:#31708f}.panel-info>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#bce8f1}.panel-warning{border-color:#faebcc}.panel-warning>.panel-heading{color:#8a6d3b;background-color:#fcf8e3;border-color:#faebcc}.panel-warning>.panel-heading+.panel-collapse>.panel-body{border-top-color:#faebcc}.panel-warning>.panel-heading .badge{color:#fcf8e3;background-color:#8a6d3b}.panel-warning>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#faebcc}.panel-danger{border-color:#ebccd1}.panel-danger>.panel-heading{color:#a94442;background-color:#f2dede;border-color:#ebccd1}.panel-danger>.panel-heading+.panel-collapse>.panel-body{border-top-color:#ebccd1}.panel-danger>.panel-heading .badge{color:#f2dede;background-color:#a94442}.panel-danger>.panel-footer+.panel-collapse>.panel-body{border-bottom-color:#ebccd1}.embed-responsive{position:relative;display:block;height:0;padding:0;overflow:hidden}.embed-responsive .embed-responsive-item,.embed-responsive embed,.embed-responsive iframe,.embed-responsive object,.embed-responsive video{position:absolute;top:0;bottom:0;left:0;width:100%;height:100%;border:0}.embed-responsive-16by9{padding-bottom:56.25%}.embed-responsive-4by3{padding-bottom:75%}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px solid #e3e3e3;border-radius:4px;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,.05);box-shadow:inset 0 1px 1px rgba(0,0,0,.05)}.well blockquote{border-color:#ddd;border-color:rgba(0,0,0,.15)}.well-lg{padding:24px;border-radius:6px}.well-sm{padding:9px;border-radius:3px}.close{float:right;font-size:21px;font-weight:700;line-height:1;color:#000;text-shadow:0 1px 0 #fff;filter:alpha(opacity=20);opacity:.2}.close:focus,.close:hover{color:#000;text-decoration:none;cursor:pointer;filter:alpha(opacity=50);opacity:.5}button.close{-webkit-appearance:none;padding:0;cursor:pointer;background:0 0;border:0}.modal-open{overflow:hidden}.modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1050;display:none;overflow:hidden;-webkit-overflow-scrolling:touch;outline:0}.modal.fade .modal-dialog{-webkit-transition:-webkit-transform .3s ease-out;-o-transition:-o-transform .3s ease-out;transition:transform .3s ease-out;-webkit-transform:translate(0,-25%);-ms-transform:translate(0,-25%);-o-transform:translate(0,-25%);transform:translate(0,-25%)}.modal.in .modal-dialog{-webkit-transform:translate(0,0);-ms-transform:translate(0,0);-o-transform:translate(0,0);transform:translate(0,0)}.modal-open .modal{overflow-x:hidden;overflow-y:auto}.modal-dialog{position:relative;width:auto;margin:10px}.modal-content{position:relative;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #999;border:1px solid rgba(0,0,0,.2);border-radius:6px;outline:0;-webkit-box-shadow:0 3px 9px rgba(0,0,0,.5);box-shadow:0 3px 9px rgba(0,0,0,.5)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{filter:alpha(opacity=0);opacity:0}.modal-backdrop.in{filter:alpha(opacity=50);opacity:.5}.modal-header{padding:15px;border-bottom:1px solid #e5e5e5}.modal-header .close{margin-top:-2px}.modal-title{margin:0;line-height:1.42857143}.modal-body{position:relative;padding:15px}.modal-footer{padding:15px;text-align:right;border-top:1px solid #e5e5e5}.modal-footer .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer .btn-block+.btn-block{margin-left:0}.modal-scrollbar-measure{position:absolute;top:-9999px;width:50px;height:50px;overflow:scroll}@media (min-width:768px){.modal-dialog{width:600px;margin:30px auto}.modal-content{-webkit-box-shadow:0 5px 15px rgba(0,0,0,.5);box-shadow:0 5px 15px rgba(0,0,0,.5)}.modal-sm{width:300px}}@media (min-width:992px){.modal-lg{width:900px}}.tooltip{position:absolute;z-index:1070;display:block;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:12px;font-style:normal;font-weight:400;line-height:1.42857143;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;filter:alpha(opacity=0);opacity:0;line-break:auto}.tooltip.in{filter:alpha(opacity=90);opacity:.9}.tooltip.top{padding:5px 0;margin-top:-3px}.tooltip.right{padding:0 5px;margin-left:3px}.tooltip.bottom{padding:5px 0;margin-top:3px}.tooltip.left{padding:0 5px;margin-left:-3px}.tooltip-inner{max-width:200px;padding:3px 8px;color:#fff;text-align:center;background-color:#000;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-left .tooltip-arrow{right:5px;bottom:0;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.top-right .tooltip-arrow{bottom:0;left:5px;margin-bottom:-5px;border-width:5px 5px 0;border-top-color:#000}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-width:5px 5px 5px 0;border-right-color:#000}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-width:5px 0 5px 5px;border-left-color:#000}.tooltip.bottom .tooltip-arrow{top:0;left:50%;margin-left:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-left .tooltip-arrow{top:0;right:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.tooltip.bottom-right .tooltip-arrow{top:0;left:5px;margin-top:-5px;border-width:0 5px 5px;border-bottom-color:#000}.popover{position:absolute;top:0;left:0;z-index:1060;display:none;max-width:276px;padding:1px;font-family:"Helvetica Neue",Helvetica,Arial,sans-serif;font-size:14px;font-style:normal;font-weight:400;line-height:1.42857143;text-align:left;text-align:start;text-decoration:none;text-shadow:none;text-transform:none;letter-spacing:normal;word-break:normal;word-spacing:normal;word-wrap:normal;white-space:normal;background-color:#fff;-webkit-background-clip:padding-box;background-clip:padding-box;border:1px solid #ccc;border:1px solid rgba(0,0,0,.2);border-radius:6px;-webkit-box-shadow:0 5px 10px rgba(0,0,0,.2);box-shadow:0 5px 10px rgba(0,0,0,.2);line-break:auto}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{padding:8px 14px;margin:0;font-size:14px;background-color:#f7f7f7;border-bottom:1px solid #ebebeb;border-radius:5px 5px 0 0}.popover-content{padding:9px 14px}.popover>.arrow,.popover>.arrow:after{position:absolute;display:block;width:0;height:0;border-color:transparent;border-style:solid}.popover>.arrow{border-width:11px}.popover>.arrow:after{content:"";border-width:10px}.popover.top>.arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,.25);border-bottom-width:0}.popover.top>.arrow:after{bottom:1px;margin-left:-10px;content:" ";border-top-color:#fff;border-bottom-width:0}.popover.right>.arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,.25);border-left-width:0}.popover.right>.arrow:after{bottom:-10px;left:1px;content:" ";border-right-color:#fff;border-left-width:0}.popover.bottom>.arrow{top:-11px;left:50%;margin-left:-11px;border-top-width:0;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,.25)}.popover.bottom>.arrow:after{top:1px;margin-left:-10px;content:" ";border-top-width:0;border-bottom-color:#fff}.popover.left>.arrow{top:50%;right:-11px;margin-top:-11px;border-right-width:0;border-left-color:#999;border-left-color:rgba(0,0,0,.25)}.popover.left>.arrow:after{right:1px;bottom:-10px;content:" ";border-right-width:0;border-left-color:#fff}.carousel{position:relative}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s ease-in-out left}.carousel-inner>.item>a>img,.carousel-inner>.item>img{line-height:1}@media all and (transform-3d),(-webkit-transform-3d){.carousel-inner>.item{-webkit-transition:-webkit-transform .6s ease-in-out;-o-transition:-o-transform .6s ease-in-out;transition:transform .6s ease-in-out;-webkit-backface-visibility:hidden;backface-visibility:hidden;-webkit-perspective:1000px;perspective:1000px}.carousel-inner>.item.active.right,.carousel-inner>.item.next{left:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}.carousel-inner>.item.active.left,.carousel-inner>.item.prev{left:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}.carousel-inner>.item.active,.carousel-inner>.item.next.left,.carousel-inner>.item.prev.right{left:0;-webkit-transform:translate3d(0,0,0);transform:translate3d(0,0,0)}}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:0;bottom:0;left:0;width:15%;font-size:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6);background-color:rgba(0,0,0,0);filter:alpha(opacity=50);opacity:.5}.carousel-control.left{background-image:-webkit-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.5)),to(rgba(0,0,0,.0001)));background-image:linear-gradient(to right,rgba(0,0,0,.5) 0,rgba(0,0,0,.0001) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#80000000', endColorstr='#00000000', GradientType=1);background-repeat:repeat-x}.carousel-control.right{right:0;left:auto;background-image:-webkit-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:-o-linear-gradient(left,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);background-image:-webkit-gradient(linear,left top,right top,from(rgba(0,0,0,.0001)),to(rgba(0,0,0,.5)));background-image:linear-gradient(to right,rgba(0,0,0,.0001) 0,rgba(0,0,0,.5) 100%);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#00000000', endColorstr='#80000000', GradientType=1);background-repeat:repeat-x}.carousel-control:focus,.carousel-control:hover{color:#fff;text-decoration:none;filter:alpha(opacity=90);outline:0;opacity:.9}.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{position:absolute;top:50%;z-index:5;display:inline-block;margin-top:-10px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{left:50%;margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{right:50%;margin-right:-10px}.carousel-control .icon-next,.carousel-control .icon-prev{width:20px;height:20px;font-family:serif;line-height:1}.carousel-control .icon-prev:before{content:'\2039'}.carousel-control .icon-next:before{content:'\203a'}.carousel-indicators{position:absolute;bottom:10px;left:50%;z-index:15;width:60%;padding-left:0;margin-left:-30%;text-align:center;list-style:none}.carousel-indicators li{display:inline-block;width:10px;height:10px;margin:1px;text-indent:-999px;cursor:pointer;background-color:#000\9;background-color:rgba(0,0,0,0);border:1px solid #fff;border-radius:10px}.carousel-indicators .active{width:12px;height:12px;margin:0;background-color:#fff}.carousel-caption{position:absolute;right:15%;bottom:20px;left:15%;z-index:10;padding-top:20px;padding-bottom:20px;color:#fff;text-align:center;text-shadow:0 1px 2px rgba(0,0,0,.6)}.carousel-caption .btn{text-shadow:none}@media screen and (min-width:768px){.carousel-control .glyphicon-chevron-left,.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next,.carousel-control .icon-prev{width:30px;height:30px;margin-top:-10px;font-size:30px}.carousel-control .glyphicon-chevron-left,.carousel-control .icon-prev{margin-left:-10px}.carousel-control .glyphicon-chevron-right,.carousel-control .icon-next{margin-right:-10px}.carousel-caption{right:20%;left:20%;padding-bottom:30px}.carousel-indicators{bottom:20px}}.btn-group-vertical>.btn-group:after,.btn-group-vertical>.btn-group:before,.btn-toolbar:after,.btn-toolbar:before,.clearfix:after,.clearfix:before,.container-fluid:after,.container-fluid:before,.container:after,.container:before,.dl-horizontal dd:after,.dl-horizontal dd:before,.form-horizontal .form-group:after,.form-horizontal .form-group:before,.modal-footer:after,.modal-footer:before,.modal-header:after,.modal-header:before,.nav:after,.nav:before,.navbar-collapse:after,.navbar-collapse:before,.navbar-header:after,.navbar-header:before,.navbar:after,.navbar:before,.pager:after,.pager:before,.panel-body:after,.panel-body:before,.row:after,.row:before{display:table;content:" "}.btn-group-vertical>.btn-group:after,.btn-toolbar:after,.clearfix:after,.container-fluid:after,.container:after,.dl-horizontal dd:after,.form-horizontal .form-group:after,.modal-footer:after,.modal-header:after,.nav:after,.navbar-collapse:after,.navbar-header:after,.navbar:after,.pager:after,.panel-body:after,.row:after{clear:both}.center-block{display:block;margin-right:auto;margin-left:auto}.pull-right{float:right!important}.pull-left{float:left!important}.hide{display:none!important}.show{display:block!important}.invisible{visibility:hidden}.text-hide{font:0/0 a;color:transparent;text-shadow:none;background-color:transparent;border:0}.hidden{display:none!important}.affix{position:fixed}@-ms-viewport{width:device-width}.visible-lg,.visible-md,.visible-sm,.visible-xs{display:none!important}.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block{display:none!important}@media (max-width:767px){.visible-xs{display:block!important}table.visible-xs{display:table!important}tr.visible-xs{display:table-row!important}td.visible-xs,th.visible-xs{display:table-cell!important}}@media (max-width:767px){.visible-xs-block{display:block!important}}@media (max-width:767px){.visible-xs-inline{display:inline!important}}@media (max-width:767px){.visible-xs-inline-block{display:inline-block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm{display:block!important}table.visible-sm{display:table!important}tr.visible-sm{display:table-row!important}td.visible-sm,th.visible-sm{display:table-cell!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-block{display:block!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline{display:inline!important}}@media (min-width:768px) and (max-width:991px){.visible-sm-inline-block{display:inline-block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md{display:block!important}table.visible-md{display:table!important}tr.visible-md{display:table-row!important}td.visible-md,th.visible-md{display:table-cell!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-block{display:block!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline{display:inline!important}}@media (min-width:992px) and (max-width:1199px){.visible-md-inline-block{display:inline-block!important}}@media (min-width:1200px){.visible-lg{display:block!important}table.visible-lg{display:table!important}tr.visible-lg{display:table-row!important}td.visible-lg,th.visible-lg{display:table-cell!important}}@media (min-width:1200px){.visible-lg-block{display:block!important}}@media (min-width:1200px){.visible-lg-inline{display:inline!important}}@media (min-width:1200px){.visible-lg-inline-block{display:inline-block!important}}@media (max-width:767px){.hidden-xs{display:none!important}}@media (min-width:768px) and (max-width:991px){.hidden-sm{display:none!important}}@media (min-width:992px) and (max-width:1199px){.hidden-md{display:none!important}}@media (min-width:1200px){.hidden-lg{display:none!important}}.visible-print{display:none!important}@media print{.visible-print{display:block!important}table.visible-print{display:table!important}tr.visible-print{display:table-row!important}td.visible-print,th.visible-print{display:table-cell!important}}.visible-print-block{display:none!important}@media print{.visible-print-block{display:block!important}}.visible-print-inline{display:none!important}@media print{.visible-print-inline{display:inline!important}}.visible-print-inline-block{display:none!important}@media print{.visible-print-inline-block{display:inline-block!important}}@media print{.hidden-print{display:none!important}} +/*# sourceMappingURL=bootstrap.min.css.map */ \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/fonts/glyphicons-halflings-regular.eot b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/fonts/glyphicons-halflings-regular.eot new file mode 100644 index 00000000..b93a4953 Binary files /dev/null and b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/fonts/glyphicons-halflings-regular.eot differ diff --git a/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/fonts/glyphicons-halflings-regular.svg b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/fonts/glyphicons-halflings-regular.svg new file mode 100644 index 00000000..94fb5490 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/fonts/glyphicons-halflings-regular.svg @@ -0,0 +1,288 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/fonts/glyphicons-halflings-regular.ttf b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/fonts/glyphicons-halflings-regular.ttf new file mode 100644 index 00000000..1413fc60 Binary files /dev/null and b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/fonts/glyphicons-halflings-regular.ttf differ diff --git a/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff new file mode 100644 index 00000000..9e612858 Binary files /dev/null and b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff differ diff --git a/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff2 b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff2 new file mode 100644 index 00000000..64539b54 Binary files /dev/null and b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/fonts/glyphicons-halflings-regular.woff2 differ diff --git a/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/js/bootstrap.js b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/js/bootstrap.js new file mode 100644 index 00000000..8a2e99a5 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/js/bootstrap.js @@ -0,0 +1,2377 @@ +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2016 Twitter, Inc. + * Licensed under the MIT license + */ + +if (typeof jQuery === 'undefined') { + throw new Error('Bootstrap\'s JavaScript requires jQuery') +} + ++function ($) { + 'use strict'; + var version = $.fn.jquery.split(' ')[0].split('.') + if ((version[0] < 2 && version[1] < 9) || (version[0] == 1 && version[1] == 9 && version[2] < 1) || (version[0] > 3)) { + throw new Error('Bootstrap\'s JavaScript requires jQuery version 1.9.1 or higher, but lower than version 4') + } +}(jQuery); + +/* ======================================================================== + * Bootstrap: transition.js v3.3.7 + * http://getbootstrap.com/javascript/#transitions + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // CSS TRANSITION SUPPORT (Shoutout: http://www.modernizr.com/) + // ============================================================ + + function transitionEnd() { + var el = document.createElement('bootstrap') + + var transEndEventNames = { + WebkitTransition : 'webkitTransitionEnd', + MozTransition : 'transitionend', + OTransition : 'oTransitionEnd otransitionend', + transition : 'transitionend' + } + + for (var name in transEndEventNames) { + if (el.style[name] !== undefined) { + return { end: transEndEventNames[name] } + } + } + + return false // explicit for ie8 ( ._.) + } + + // http://blog.alexmaccaw.com/css-transitions + $.fn.emulateTransitionEnd = function (duration) { + var called = false + var $el = this + $(this).one('bsTransitionEnd', function () { called = true }) + var callback = function () { if (!called) $($el).trigger($.support.transition.end) } + setTimeout(callback, duration) + return this + } + + $(function () { + $.support.transition = transitionEnd() + + if (!$.support.transition) return + + $.event.special.bsTransitionEnd = { + bindType: $.support.transition.end, + delegateType: $.support.transition.end, + handle: function (e) { + if ($(e.target).is(this)) return e.handleObj.handler.apply(this, arguments) + } + } + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: alert.js v3.3.7 + * http://getbootstrap.com/javascript/#alerts + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // ALERT CLASS DEFINITION + // ====================== + + var dismiss = '[data-dismiss="alert"]' + var Alert = function (el) { + $(el).on('click', dismiss, this.close) + } + + Alert.VERSION = '3.3.7' + + Alert.TRANSITION_DURATION = 150 + + Alert.prototype.close = function (e) { + var $this = $(this) + var selector = $this.attr('data-target') + + if (!selector) { + selector = $this.attr('href') + selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 + } + + var $parent = $(selector === '#' ? [] : selector) + + if (e) e.preventDefault() + + if (!$parent.length) { + $parent = $this.closest('.alert') + } + + $parent.trigger(e = $.Event('close.bs.alert')) + + if (e.isDefaultPrevented()) return + + $parent.removeClass('in') + + function removeElement() { + // detach from parent, fire event then clean up data + $parent.detach().trigger('closed.bs.alert').remove() + } + + $.support.transition && $parent.hasClass('fade') ? + $parent + .one('bsTransitionEnd', removeElement) + .emulateTransitionEnd(Alert.TRANSITION_DURATION) : + removeElement() + } + + + // ALERT PLUGIN DEFINITION + // ======================= + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.alert') + + if (!data) $this.data('bs.alert', (data = new Alert(this))) + if (typeof option == 'string') data[option].call($this) + }) + } + + var old = $.fn.alert + + $.fn.alert = Plugin + $.fn.alert.Constructor = Alert + + + // ALERT NO CONFLICT + // ================= + + $.fn.alert.noConflict = function () { + $.fn.alert = old + return this + } + + + // ALERT DATA-API + // ============== + + $(document).on('click.bs.alert.data-api', dismiss, Alert.prototype.close) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: button.js v3.3.7 + * http://getbootstrap.com/javascript/#buttons + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // BUTTON PUBLIC CLASS DEFINITION + // ============================== + + var Button = function (element, options) { + this.$element = $(element) + this.options = $.extend({}, Button.DEFAULTS, options) + this.isLoading = false + } + + Button.VERSION = '3.3.7' + + Button.DEFAULTS = { + loadingText: 'loading...' + } + + Button.prototype.setState = function (state) { + var d = 'disabled' + var $el = this.$element + var val = $el.is('input') ? 'val' : 'html' + var data = $el.data() + + state += 'Text' + + if (data.resetText == null) $el.data('resetText', $el[val]()) + + // push to event loop to allow forms to submit + setTimeout($.proxy(function () { + $el[val](data[state] == null ? this.options[state] : data[state]) + + if (state == 'loadingText') { + this.isLoading = true + $el.addClass(d).attr(d, d).prop(d, true) + } else if (this.isLoading) { + this.isLoading = false + $el.removeClass(d).removeAttr(d).prop(d, false) + } + }, this), 0) + } + + Button.prototype.toggle = function () { + var changed = true + var $parent = this.$element.closest('[data-toggle="buttons"]') + + if ($parent.length) { + var $input = this.$element.find('input') + if ($input.prop('type') == 'radio') { + if ($input.prop('checked')) changed = false + $parent.find('.active').removeClass('active') + this.$element.addClass('active') + } else if ($input.prop('type') == 'checkbox') { + if (($input.prop('checked')) !== this.$element.hasClass('active')) changed = false + this.$element.toggleClass('active') + } + $input.prop('checked', this.$element.hasClass('active')) + if (changed) $input.trigger('change') + } else { + this.$element.attr('aria-pressed', !this.$element.hasClass('active')) + this.$element.toggleClass('active') + } + } + + + // BUTTON PLUGIN DEFINITION + // ======================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.button') + var options = typeof option == 'object' && option + + if (!data) $this.data('bs.button', (data = new Button(this, options))) + + if (option == 'toggle') data.toggle() + else if (option) data.setState(option) + }) + } + + var old = $.fn.button + + $.fn.button = Plugin + $.fn.button.Constructor = Button + + + // BUTTON NO CONFLICT + // ================== + + $.fn.button.noConflict = function () { + $.fn.button = old + return this + } + + + // BUTTON DATA-API + // =============== + + $(document) + .on('click.bs.button.data-api', '[data-toggle^="button"]', function (e) { + var $btn = $(e.target).closest('.btn') + Plugin.call($btn, 'toggle') + if (!($(e.target).is('input[type="radio"], input[type="checkbox"]'))) { + // Prevent double click on radios, and the double selections (so cancellation) on checkboxes + e.preventDefault() + // The target component still receive the focus + if ($btn.is('input,button')) $btn.trigger('focus') + else $btn.find('input:visible,button:visible').first().trigger('focus') + } + }) + .on('focus.bs.button.data-api blur.bs.button.data-api', '[data-toggle^="button"]', function (e) { + $(e.target).closest('.btn').toggleClass('focus', /^focus(in)?$/.test(e.type)) + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: carousel.js v3.3.7 + * http://getbootstrap.com/javascript/#carousel + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // CAROUSEL CLASS DEFINITION + // ========================= + + var Carousel = function (element, options) { + this.$element = $(element) + this.$indicators = this.$element.find('.carousel-indicators') + this.options = options + this.paused = null + this.sliding = null + this.interval = null + this.$active = null + this.$items = null + + this.options.keyboard && this.$element.on('keydown.bs.carousel', $.proxy(this.keydown, this)) + + this.options.pause == 'hover' && !('ontouchstart' in document.documentElement) && this.$element + .on('mouseenter.bs.carousel', $.proxy(this.pause, this)) + .on('mouseleave.bs.carousel', $.proxy(this.cycle, this)) + } + + Carousel.VERSION = '3.3.7' + + Carousel.TRANSITION_DURATION = 600 + + Carousel.DEFAULTS = { + interval: 5000, + pause: 'hover', + wrap: true, + keyboard: true + } + + Carousel.prototype.keydown = function (e) { + if (/input|textarea/i.test(e.target.tagName)) return + switch (e.which) { + case 37: this.prev(); break + case 39: this.next(); break + default: return + } + + e.preventDefault() + } + + Carousel.prototype.cycle = function (e) { + e || (this.paused = false) + + this.interval && clearInterval(this.interval) + + this.options.interval + && !this.paused + && (this.interval = setInterval($.proxy(this.next, this), this.options.interval)) + + return this + } + + Carousel.prototype.getItemIndex = function (item) { + this.$items = item.parent().children('.item') + return this.$items.index(item || this.$active) + } + + Carousel.prototype.getItemForDirection = function (direction, active) { + var activeIndex = this.getItemIndex(active) + var willWrap = (direction == 'prev' && activeIndex === 0) + || (direction == 'next' && activeIndex == (this.$items.length - 1)) + if (willWrap && !this.options.wrap) return active + var delta = direction == 'prev' ? -1 : 1 + var itemIndex = (activeIndex + delta) % this.$items.length + return this.$items.eq(itemIndex) + } + + Carousel.prototype.to = function (pos) { + var that = this + var activeIndex = this.getItemIndex(this.$active = this.$element.find('.item.active')) + + if (pos > (this.$items.length - 1) || pos < 0) return + + if (this.sliding) return this.$element.one('slid.bs.carousel', function () { that.to(pos) }) // yes, "slid" + if (activeIndex == pos) return this.pause().cycle() + + return this.slide(pos > activeIndex ? 'next' : 'prev', this.$items.eq(pos)) + } + + Carousel.prototype.pause = function (e) { + e || (this.paused = true) + + if (this.$element.find('.next, .prev').length && $.support.transition) { + this.$element.trigger($.support.transition.end) + this.cycle(true) + } + + this.interval = clearInterval(this.interval) + + return this + } + + Carousel.prototype.next = function () { + if (this.sliding) return + return this.slide('next') + } + + Carousel.prototype.prev = function () { + if (this.sliding) return + return this.slide('prev') + } + + Carousel.prototype.slide = function (type, next) { + var $active = this.$element.find('.item.active') + var $next = next || this.getItemForDirection(type, $active) + var isCycling = this.interval + var direction = type == 'next' ? 'left' : 'right' + var that = this + + if ($next.hasClass('active')) return (this.sliding = false) + + var relatedTarget = $next[0] + var slideEvent = $.Event('slide.bs.carousel', { + relatedTarget: relatedTarget, + direction: direction + }) + this.$element.trigger(slideEvent) + if (slideEvent.isDefaultPrevented()) return + + this.sliding = true + + isCycling && this.pause() + + if (this.$indicators.length) { + this.$indicators.find('.active').removeClass('active') + var $nextIndicator = $(this.$indicators.children()[this.getItemIndex($next)]) + $nextIndicator && $nextIndicator.addClass('active') + } + + var slidEvent = $.Event('slid.bs.carousel', { relatedTarget: relatedTarget, direction: direction }) // yes, "slid" + if ($.support.transition && this.$element.hasClass('slide')) { + $next.addClass(type) + $next[0].offsetWidth // force reflow + $active.addClass(direction) + $next.addClass(direction) + $active + .one('bsTransitionEnd', function () { + $next.removeClass([type, direction].join(' ')).addClass('active') + $active.removeClass(['active', direction].join(' ')) + that.sliding = false + setTimeout(function () { + that.$element.trigger(slidEvent) + }, 0) + }) + .emulateTransitionEnd(Carousel.TRANSITION_DURATION) + } else { + $active.removeClass('active') + $next.addClass('active') + this.sliding = false + this.$element.trigger(slidEvent) + } + + isCycling && this.cycle() + + return this + } + + + // CAROUSEL PLUGIN DEFINITION + // ========================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.carousel') + var options = $.extend({}, Carousel.DEFAULTS, $this.data(), typeof option == 'object' && option) + var action = typeof option == 'string' ? option : options.slide + + if (!data) $this.data('bs.carousel', (data = new Carousel(this, options))) + if (typeof option == 'number') data.to(option) + else if (action) data[action]() + else if (options.interval) data.pause().cycle() + }) + } + + var old = $.fn.carousel + + $.fn.carousel = Plugin + $.fn.carousel.Constructor = Carousel + + + // CAROUSEL NO CONFLICT + // ==================== + + $.fn.carousel.noConflict = function () { + $.fn.carousel = old + return this + } + + + // CAROUSEL DATA-API + // ================= + + var clickHandler = function (e) { + var href + var $this = $(this) + var $target = $($this.attr('data-target') || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) // strip for ie7 + if (!$target.hasClass('carousel')) return + var options = $.extend({}, $target.data(), $this.data()) + var slideIndex = $this.attr('data-slide-to') + if (slideIndex) options.interval = false + + Plugin.call($target, options) + + if (slideIndex) { + $target.data('bs.carousel').to(slideIndex) + } + + e.preventDefault() + } + + $(document) + .on('click.bs.carousel.data-api', '[data-slide]', clickHandler) + .on('click.bs.carousel.data-api', '[data-slide-to]', clickHandler) + + $(window).on('load', function () { + $('[data-ride="carousel"]').each(function () { + var $carousel = $(this) + Plugin.call($carousel, $carousel.data()) + }) + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: collapse.js v3.3.7 + * http://getbootstrap.com/javascript/#collapse + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + +/* jshint latedef: false */ + ++function ($) { + 'use strict'; + + // COLLAPSE PUBLIC CLASS DEFINITION + // ================================ + + var Collapse = function (element, options) { + this.$element = $(element) + this.options = $.extend({}, Collapse.DEFAULTS, options) + this.$trigger = $('[data-toggle="collapse"][href="#' + element.id + '"],' + + '[data-toggle="collapse"][data-target="#' + element.id + '"]') + this.transitioning = null + + if (this.options.parent) { + this.$parent = this.getParent() + } else { + this.addAriaAndCollapsedClass(this.$element, this.$trigger) + } + + if (this.options.toggle) this.toggle() + } + + Collapse.VERSION = '3.3.7' + + Collapse.TRANSITION_DURATION = 350 + + Collapse.DEFAULTS = { + toggle: true + } + + Collapse.prototype.dimension = function () { + var hasWidth = this.$element.hasClass('width') + return hasWidth ? 'width' : 'height' + } + + Collapse.prototype.show = function () { + if (this.transitioning || this.$element.hasClass('in')) return + + var activesData + var actives = this.$parent && this.$parent.children('.panel').children('.in, .collapsing') + + if (actives && actives.length) { + activesData = actives.data('bs.collapse') + if (activesData && activesData.transitioning) return + } + + var startEvent = $.Event('show.bs.collapse') + this.$element.trigger(startEvent) + if (startEvent.isDefaultPrevented()) return + + if (actives && actives.length) { + Plugin.call(actives, 'hide') + activesData || actives.data('bs.collapse', null) + } + + var dimension = this.dimension() + + this.$element + .removeClass('collapse') + .addClass('collapsing')[dimension](0) + .attr('aria-expanded', true) + + this.$trigger + .removeClass('collapsed') + .attr('aria-expanded', true) + + this.transitioning = 1 + + var complete = function () { + this.$element + .removeClass('collapsing') + .addClass('collapse in')[dimension]('') + this.transitioning = 0 + this.$element + .trigger('shown.bs.collapse') + } + + if (!$.support.transition) return complete.call(this) + + var scrollSize = $.camelCase(['scroll', dimension].join('-')) + + this.$element + .one('bsTransitionEnd', $.proxy(complete, this)) + .emulateTransitionEnd(Collapse.TRANSITION_DURATION)[dimension](this.$element[0][scrollSize]) + } + + Collapse.prototype.hide = function () { + if (this.transitioning || !this.$element.hasClass('in')) return + + var startEvent = $.Event('hide.bs.collapse') + this.$element.trigger(startEvent) + if (startEvent.isDefaultPrevented()) return + + var dimension = this.dimension() + + this.$element[dimension](this.$element[dimension]())[0].offsetHeight + + this.$element + .addClass('collapsing') + .removeClass('collapse in') + .attr('aria-expanded', false) + + this.$trigger + .addClass('collapsed') + .attr('aria-expanded', false) + + this.transitioning = 1 + + var complete = function () { + this.transitioning = 0 + this.$element + .removeClass('collapsing') + .addClass('collapse') + .trigger('hidden.bs.collapse') + } + + if (!$.support.transition) return complete.call(this) + + this.$element + [dimension](0) + .one('bsTransitionEnd', $.proxy(complete, this)) + .emulateTransitionEnd(Collapse.TRANSITION_DURATION) + } + + Collapse.prototype.toggle = function () { + this[this.$element.hasClass('in') ? 'hide' : 'show']() + } + + Collapse.prototype.getParent = function () { + return $(this.options.parent) + .find('[data-toggle="collapse"][data-parent="' + this.options.parent + '"]') + .each($.proxy(function (i, element) { + var $element = $(element) + this.addAriaAndCollapsedClass(getTargetFromTrigger($element), $element) + }, this)) + .end() + } + + Collapse.prototype.addAriaAndCollapsedClass = function ($element, $trigger) { + var isOpen = $element.hasClass('in') + + $element.attr('aria-expanded', isOpen) + $trigger + .toggleClass('collapsed', !isOpen) + .attr('aria-expanded', isOpen) + } + + function getTargetFromTrigger($trigger) { + var href + var target = $trigger.attr('data-target') + || (href = $trigger.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') // strip for ie7 + + return $(target) + } + + + // COLLAPSE PLUGIN DEFINITION + // ========================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.collapse') + var options = $.extend({}, Collapse.DEFAULTS, $this.data(), typeof option == 'object' && option) + + if (!data && options.toggle && /show|hide/.test(option)) options.toggle = false + if (!data) $this.data('bs.collapse', (data = new Collapse(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.collapse + + $.fn.collapse = Plugin + $.fn.collapse.Constructor = Collapse + + + // COLLAPSE NO CONFLICT + // ==================== + + $.fn.collapse.noConflict = function () { + $.fn.collapse = old + return this + } + + + // COLLAPSE DATA-API + // ================= + + $(document).on('click.bs.collapse.data-api', '[data-toggle="collapse"]', function (e) { + var $this = $(this) + + if (!$this.attr('data-target')) e.preventDefault() + + var $target = getTargetFromTrigger($this) + var data = $target.data('bs.collapse') + var option = data ? 'toggle' : $this.data() + + Plugin.call($target, option) + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: dropdown.js v3.3.7 + * http://getbootstrap.com/javascript/#dropdowns + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // DROPDOWN CLASS DEFINITION + // ========================= + + var backdrop = '.dropdown-backdrop' + var toggle = '[data-toggle="dropdown"]' + var Dropdown = function (element) { + $(element).on('click.bs.dropdown', this.toggle) + } + + Dropdown.VERSION = '3.3.7' + + function getParent($this) { + var selector = $this.attr('data-target') + + if (!selector) { + selector = $this.attr('href') + selector = selector && /#[A-Za-z]/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 + } + + var $parent = selector && $(selector) + + return $parent && $parent.length ? $parent : $this.parent() + } + + function clearMenus(e) { + if (e && e.which === 3) return + $(backdrop).remove() + $(toggle).each(function () { + var $this = $(this) + var $parent = getParent($this) + var relatedTarget = { relatedTarget: this } + + if (!$parent.hasClass('open')) return + + if (e && e.type == 'click' && /input|textarea/i.test(e.target.tagName) && $.contains($parent[0], e.target)) return + + $parent.trigger(e = $.Event('hide.bs.dropdown', relatedTarget)) + + if (e.isDefaultPrevented()) return + + $this.attr('aria-expanded', 'false') + $parent.removeClass('open').trigger($.Event('hidden.bs.dropdown', relatedTarget)) + }) + } + + Dropdown.prototype.toggle = function (e) { + var $this = $(this) + + if ($this.is('.disabled, :disabled')) return + + var $parent = getParent($this) + var isActive = $parent.hasClass('open') + + clearMenus() + + if (!isActive) { + if ('ontouchstart' in document.documentElement && !$parent.closest('.navbar-nav').length) { + // if mobile we use a backdrop because click events don't delegate + $(document.createElement('div')) + .addClass('dropdown-backdrop') + .insertAfter($(this)) + .on('click', clearMenus) + } + + var relatedTarget = { relatedTarget: this } + $parent.trigger(e = $.Event('show.bs.dropdown', relatedTarget)) + + if (e.isDefaultPrevented()) return + + $this + .trigger('focus') + .attr('aria-expanded', 'true') + + $parent + .toggleClass('open') + .trigger($.Event('shown.bs.dropdown', relatedTarget)) + } + + return false + } + + Dropdown.prototype.keydown = function (e) { + if (!/(38|40|27|32)/.test(e.which) || /input|textarea/i.test(e.target.tagName)) return + + var $this = $(this) + + e.preventDefault() + e.stopPropagation() + + if ($this.is('.disabled, :disabled')) return + + var $parent = getParent($this) + var isActive = $parent.hasClass('open') + + if (!isActive && e.which != 27 || isActive && e.which == 27) { + if (e.which == 27) $parent.find(toggle).trigger('focus') + return $this.trigger('click') + } + + var desc = ' li:not(.disabled):visible a' + var $items = $parent.find('.dropdown-menu' + desc) + + if (!$items.length) return + + var index = $items.index(e.target) + + if (e.which == 38 && index > 0) index-- // up + if (e.which == 40 && index < $items.length - 1) index++ // down + if (!~index) index = 0 + + $items.eq(index).trigger('focus') + } + + + // DROPDOWN PLUGIN DEFINITION + // ========================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.dropdown') + + if (!data) $this.data('bs.dropdown', (data = new Dropdown(this))) + if (typeof option == 'string') data[option].call($this) + }) + } + + var old = $.fn.dropdown + + $.fn.dropdown = Plugin + $.fn.dropdown.Constructor = Dropdown + + + // DROPDOWN NO CONFLICT + // ==================== + + $.fn.dropdown.noConflict = function () { + $.fn.dropdown = old + return this + } + + + // APPLY TO STANDARD DROPDOWN ELEMENTS + // =================================== + + $(document) + .on('click.bs.dropdown.data-api', clearMenus) + .on('click.bs.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() }) + .on('click.bs.dropdown.data-api', toggle, Dropdown.prototype.toggle) + .on('keydown.bs.dropdown.data-api', toggle, Dropdown.prototype.keydown) + .on('keydown.bs.dropdown.data-api', '.dropdown-menu', Dropdown.prototype.keydown) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: modal.js v3.3.7 + * http://getbootstrap.com/javascript/#modals + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // MODAL CLASS DEFINITION + // ====================== + + var Modal = function (element, options) { + this.options = options + this.$body = $(document.body) + this.$element = $(element) + this.$dialog = this.$element.find('.modal-dialog') + this.$backdrop = null + this.isShown = null + this.originalBodyPad = null + this.scrollbarWidth = 0 + this.ignoreBackdropClick = false + + if (this.options.remote) { + this.$element + .find('.modal-content') + .load(this.options.remote, $.proxy(function () { + this.$element.trigger('loaded.bs.modal') + }, this)) + } + } + + Modal.VERSION = '3.3.7' + + Modal.TRANSITION_DURATION = 300 + Modal.BACKDROP_TRANSITION_DURATION = 150 + + Modal.DEFAULTS = { + backdrop: true, + keyboard: true, + show: true + } + + Modal.prototype.toggle = function (_relatedTarget) { + return this.isShown ? this.hide() : this.show(_relatedTarget) + } + + Modal.prototype.show = function (_relatedTarget) { + var that = this + var e = $.Event('show.bs.modal', { relatedTarget: _relatedTarget }) + + this.$element.trigger(e) + + if (this.isShown || e.isDefaultPrevented()) return + + this.isShown = true + + this.checkScrollbar() + this.setScrollbar() + this.$body.addClass('modal-open') + + this.escape() + this.resize() + + this.$element.on('click.dismiss.bs.modal', '[data-dismiss="modal"]', $.proxy(this.hide, this)) + + this.$dialog.on('mousedown.dismiss.bs.modal', function () { + that.$element.one('mouseup.dismiss.bs.modal', function (e) { + if ($(e.target).is(that.$element)) that.ignoreBackdropClick = true + }) + }) + + this.backdrop(function () { + var transition = $.support.transition && that.$element.hasClass('fade') + + if (!that.$element.parent().length) { + that.$element.appendTo(that.$body) // don't move modals dom position + } + + that.$element + .show() + .scrollTop(0) + + that.adjustDialog() + + if (transition) { + that.$element[0].offsetWidth // force reflow + } + + that.$element.addClass('in') + + that.enforceFocus() + + var e = $.Event('shown.bs.modal', { relatedTarget: _relatedTarget }) + + transition ? + that.$dialog // wait for modal to slide in + .one('bsTransitionEnd', function () { + that.$element.trigger('focus').trigger(e) + }) + .emulateTransitionEnd(Modal.TRANSITION_DURATION) : + that.$element.trigger('focus').trigger(e) + }) + } + + Modal.prototype.hide = function (e) { + if (e) e.preventDefault() + + e = $.Event('hide.bs.modal') + + this.$element.trigger(e) + + if (!this.isShown || e.isDefaultPrevented()) return + + this.isShown = false + + this.escape() + this.resize() + + $(document).off('focusin.bs.modal') + + this.$element + .removeClass('in') + .off('click.dismiss.bs.modal') + .off('mouseup.dismiss.bs.modal') + + this.$dialog.off('mousedown.dismiss.bs.modal') + + $.support.transition && this.$element.hasClass('fade') ? + this.$element + .one('bsTransitionEnd', $.proxy(this.hideModal, this)) + .emulateTransitionEnd(Modal.TRANSITION_DURATION) : + this.hideModal() + } + + Modal.prototype.enforceFocus = function () { + $(document) + .off('focusin.bs.modal') // guard against infinite focus loop + .on('focusin.bs.modal', $.proxy(function (e) { + if (document !== e.target && + this.$element[0] !== e.target && + !this.$element.has(e.target).length) { + this.$element.trigger('focus') + } + }, this)) + } + + Modal.prototype.escape = function () { + if (this.isShown && this.options.keyboard) { + this.$element.on('keydown.dismiss.bs.modal', $.proxy(function (e) { + e.which == 27 && this.hide() + }, this)) + } else if (!this.isShown) { + this.$element.off('keydown.dismiss.bs.modal') + } + } + + Modal.prototype.resize = function () { + if (this.isShown) { + $(window).on('resize.bs.modal', $.proxy(this.handleUpdate, this)) + } else { + $(window).off('resize.bs.modal') + } + } + + Modal.prototype.hideModal = function () { + var that = this + this.$element.hide() + this.backdrop(function () { + that.$body.removeClass('modal-open') + that.resetAdjustments() + that.resetScrollbar() + that.$element.trigger('hidden.bs.modal') + }) + } + + Modal.prototype.removeBackdrop = function () { + this.$backdrop && this.$backdrop.remove() + this.$backdrop = null + } + + Modal.prototype.backdrop = function (callback) { + var that = this + var animate = this.$element.hasClass('fade') ? 'fade' : '' + + if (this.isShown && this.options.backdrop) { + var doAnimate = $.support.transition && animate + + this.$backdrop = $(document.createElement('div')) + .addClass('modal-backdrop ' + animate) + .appendTo(this.$body) + + this.$element.on('click.dismiss.bs.modal', $.proxy(function (e) { + if (this.ignoreBackdropClick) { + this.ignoreBackdropClick = false + return + } + if (e.target !== e.currentTarget) return + this.options.backdrop == 'static' + ? this.$element[0].focus() + : this.hide() + }, this)) + + if (doAnimate) this.$backdrop[0].offsetWidth // force reflow + + this.$backdrop.addClass('in') + + if (!callback) return + + doAnimate ? + this.$backdrop + .one('bsTransitionEnd', callback) + .emulateTransitionEnd(Modal.BACKDROP_TRANSITION_DURATION) : + callback() + + } else if (!this.isShown && this.$backdrop) { + this.$backdrop.removeClass('in') + + var callbackRemove = function () { + that.removeBackdrop() + callback && callback() + } + $.support.transition && this.$element.hasClass('fade') ? + this.$backdrop + .one('bsTransitionEnd', callbackRemove) + .emulateTransitionEnd(Modal.BACKDROP_TRANSITION_DURATION) : + callbackRemove() + + } else if (callback) { + callback() + } + } + + // these following methods are used to handle overflowing modals + + Modal.prototype.handleUpdate = function () { + this.adjustDialog() + } + + Modal.prototype.adjustDialog = function () { + var modalIsOverflowing = this.$element[0].scrollHeight > document.documentElement.clientHeight + + this.$element.css({ + paddingLeft: !this.bodyIsOverflowing && modalIsOverflowing ? this.scrollbarWidth : '', + paddingRight: this.bodyIsOverflowing && !modalIsOverflowing ? this.scrollbarWidth : '' + }) + } + + Modal.prototype.resetAdjustments = function () { + this.$element.css({ + paddingLeft: '', + paddingRight: '' + }) + } + + Modal.prototype.checkScrollbar = function () { + var fullWindowWidth = window.innerWidth + if (!fullWindowWidth) { // workaround for missing window.innerWidth in IE8 + var documentElementRect = document.documentElement.getBoundingClientRect() + fullWindowWidth = documentElementRect.right - Math.abs(documentElementRect.left) + } + this.bodyIsOverflowing = document.body.clientWidth < fullWindowWidth + this.scrollbarWidth = this.measureScrollbar() + } + + Modal.prototype.setScrollbar = function () { + var bodyPad = parseInt((this.$body.css('padding-right') || 0), 10) + this.originalBodyPad = document.body.style.paddingRight || '' + if (this.bodyIsOverflowing) this.$body.css('padding-right', bodyPad + this.scrollbarWidth) + } + + Modal.prototype.resetScrollbar = function () { + this.$body.css('padding-right', this.originalBodyPad) + } + + Modal.prototype.measureScrollbar = function () { // thx walsh + var scrollDiv = document.createElement('div') + scrollDiv.className = 'modal-scrollbar-measure' + this.$body.append(scrollDiv) + var scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth + this.$body[0].removeChild(scrollDiv) + return scrollbarWidth + } + + + // MODAL PLUGIN DEFINITION + // ======================= + + function Plugin(option, _relatedTarget) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.modal') + var options = $.extend({}, Modal.DEFAULTS, $this.data(), typeof option == 'object' && option) + + if (!data) $this.data('bs.modal', (data = new Modal(this, options))) + if (typeof option == 'string') data[option](_relatedTarget) + else if (options.show) data.show(_relatedTarget) + }) + } + + var old = $.fn.modal + + $.fn.modal = Plugin + $.fn.modal.Constructor = Modal + + + // MODAL NO CONFLICT + // ================= + + $.fn.modal.noConflict = function () { + $.fn.modal = old + return this + } + + + // MODAL DATA-API + // ============== + + $(document).on('click.bs.modal.data-api', '[data-toggle="modal"]', function (e) { + var $this = $(this) + var href = $this.attr('href') + var $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) // strip for ie7 + var option = $target.data('bs.modal') ? 'toggle' : $.extend({ remote: !/#/.test(href) && href }, $target.data(), $this.data()) + + if ($this.is('a')) e.preventDefault() + + $target.one('show.bs.modal', function (showEvent) { + if (showEvent.isDefaultPrevented()) return // only register focus restorer if modal will actually get shown + $target.one('hidden.bs.modal', function () { + $this.is(':visible') && $this.trigger('focus') + }) + }) + Plugin.call($target, option, this) + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: tooltip.js v3.3.7 + * http://getbootstrap.com/javascript/#tooltip + * Inspired by the original jQuery.tipsy by Jason Frame + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // TOOLTIP PUBLIC CLASS DEFINITION + // =============================== + + var Tooltip = function (element, options) { + this.type = null + this.options = null + this.enabled = null + this.timeout = null + this.hoverState = null + this.$element = null + this.inState = null + + this.init('tooltip', element, options) + } + + Tooltip.VERSION = '3.3.7' + + Tooltip.TRANSITION_DURATION = 150 + + Tooltip.DEFAULTS = { + animation: true, + placement: 'top', + selector: false, + template: '', + trigger: 'hover focus', + title: '', + delay: 0, + html: false, + container: false, + viewport: { + selector: 'body', + padding: 0 + } + } + + Tooltip.prototype.init = function (type, element, options) { + this.enabled = true + this.type = type + this.$element = $(element) + this.options = this.getOptions(options) + this.$viewport = this.options.viewport && $($.isFunction(this.options.viewport) ? this.options.viewport.call(this, this.$element) : (this.options.viewport.selector || this.options.viewport)) + this.inState = { click: false, hover: false, focus: false } + + if (this.$element[0] instanceof document.constructor && !this.options.selector) { + throw new Error('`selector` option must be specified when initializing ' + this.type + ' on the window.document object!') + } + + var triggers = this.options.trigger.split(' ') + + for (var i = triggers.length; i--;) { + var trigger = triggers[i] + + if (trigger == 'click') { + this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this)) + } else if (trigger != 'manual') { + var eventIn = trigger == 'hover' ? 'mouseenter' : 'focusin' + var eventOut = trigger == 'hover' ? 'mouseleave' : 'focusout' + + this.$element.on(eventIn + '.' + this.type, this.options.selector, $.proxy(this.enter, this)) + this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this)) + } + } + + this.options.selector ? + (this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) : + this.fixTitle() + } + + Tooltip.prototype.getDefaults = function () { + return Tooltip.DEFAULTS + } + + Tooltip.prototype.getOptions = function (options) { + options = $.extend({}, this.getDefaults(), this.$element.data(), options) + + if (options.delay && typeof options.delay == 'number') { + options.delay = { + show: options.delay, + hide: options.delay + } + } + + return options + } + + Tooltip.prototype.getDelegateOptions = function () { + var options = {} + var defaults = this.getDefaults() + + this._options && $.each(this._options, function (key, value) { + if (defaults[key] != value) options[key] = value + }) + + return options + } + + Tooltip.prototype.enter = function (obj) { + var self = obj instanceof this.constructor ? + obj : $(obj.currentTarget).data('bs.' + this.type) + + if (!self) { + self = new this.constructor(obj.currentTarget, this.getDelegateOptions()) + $(obj.currentTarget).data('bs.' + this.type, self) + } + + if (obj instanceof $.Event) { + self.inState[obj.type == 'focusin' ? 'focus' : 'hover'] = true + } + + if (self.tip().hasClass('in') || self.hoverState == 'in') { + self.hoverState = 'in' + return + } + + clearTimeout(self.timeout) + + self.hoverState = 'in' + + if (!self.options.delay || !self.options.delay.show) return self.show() + + self.timeout = setTimeout(function () { + if (self.hoverState == 'in') self.show() + }, self.options.delay.show) + } + + Tooltip.prototype.isInStateTrue = function () { + for (var key in this.inState) { + if (this.inState[key]) return true + } + + return false + } + + Tooltip.prototype.leave = function (obj) { + var self = obj instanceof this.constructor ? + obj : $(obj.currentTarget).data('bs.' + this.type) + + if (!self) { + self = new this.constructor(obj.currentTarget, this.getDelegateOptions()) + $(obj.currentTarget).data('bs.' + this.type, self) + } + + if (obj instanceof $.Event) { + self.inState[obj.type == 'focusout' ? 'focus' : 'hover'] = false + } + + if (self.isInStateTrue()) return + + clearTimeout(self.timeout) + + self.hoverState = 'out' + + if (!self.options.delay || !self.options.delay.hide) return self.hide() + + self.timeout = setTimeout(function () { + if (self.hoverState == 'out') self.hide() + }, self.options.delay.hide) + } + + Tooltip.prototype.show = function () { + var e = $.Event('show.bs.' + this.type) + + if (this.hasContent() && this.enabled) { + this.$element.trigger(e) + + var inDom = $.contains(this.$element[0].ownerDocument.documentElement, this.$element[0]) + if (e.isDefaultPrevented() || !inDom) return + var that = this + + var $tip = this.tip() + + var tipId = this.getUID(this.type) + + this.setContent() + $tip.attr('id', tipId) + this.$element.attr('aria-describedby', tipId) + + if (this.options.animation) $tip.addClass('fade') + + var placement = typeof this.options.placement == 'function' ? + this.options.placement.call(this, $tip[0], this.$element[0]) : + this.options.placement + + var autoToken = /\s?auto?\s?/i + var autoPlace = autoToken.test(placement) + if (autoPlace) placement = placement.replace(autoToken, '') || 'top' + + $tip + .detach() + .css({ top: 0, left: 0, display: 'block' }) + .addClass(placement) + .data('bs.' + this.type, this) + + this.options.container ? $tip.appendTo(this.options.container) : $tip.insertAfter(this.$element) + this.$element.trigger('inserted.bs.' + this.type) + + var pos = this.getPosition() + var actualWidth = $tip[0].offsetWidth + var actualHeight = $tip[0].offsetHeight + + if (autoPlace) { + var orgPlacement = placement + var viewportDim = this.getPosition(this.$viewport) + + placement = placement == 'bottom' && pos.bottom + actualHeight > viewportDim.bottom ? 'top' : + placement == 'top' && pos.top - actualHeight < viewportDim.top ? 'bottom' : + placement == 'right' && pos.right + actualWidth > viewportDim.width ? 'left' : + placement == 'left' && pos.left - actualWidth < viewportDim.left ? 'right' : + placement + + $tip + .removeClass(orgPlacement) + .addClass(placement) + } + + var calculatedOffset = this.getCalculatedOffset(placement, pos, actualWidth, actualHeight) + + this.applyPlacement(calculatedOffset, placement) + + var complete = function () { + var prevHoverState = that.hoverState + that.$element.trigger('shown.bs.' + that.type) + that.hoverState = null + + if (prevHoverState == 'out') that.leave(that) + } + + $.support.transition && this.$tip.hasClass('fade') ? + $tip + .one('bsTransitionEnd', complete) + .emulateTransitionEnd(Tooltip.TRANSITION_DURATION) : + complete() + } + } + + Tooltip.prototype.applyPlacement = function (offset, placement) { + var $tip = this.tip() + var width = $tip[0].offsetWidth + var height = $tip[0].offsetHeight + + // manually read margins because getBoundingClientRect includes difference + var marginTop = parseInt($tip.css('margin-top'), 10) + var marginLeft = parseInt($tip.css('margin-left'), 10) + + // we must check for NaN for ie 8/9 + if (isNaN(marginTop)) marginTop = 0 + if (isNaN(marginLeft)) marginLeft = 0 + + offset.top += marginTop + offset.left += marginLeft + + // $.fn.offset doesn't round pixel values + // so we use setOffset directly with our own function B-0 + $.offset.setOffset($tip[0], $.extend({ + using: function (props) { + $tip.css({ + top: Math.round(props.top), + left: Math.round(props.left) + }) + } + }, offset), 0) + + $tip.addClass('in') + + // check to see if placing tip in new offset caused the tip to resize itself + var actualWidth = $tip[0].offsetWidth + var actualHeight = $tip[0].offsetHeight + + if (placement == 'top' && actualHeight != height) { + offset.top = offset.top + height - actualHeight + } + + var delta = this.getViewportAdjustedDelta(placement, offset, actualWidth, actualHeight) + + if (delta.left) offset.left += delta.left + else offset.top += delta.top + + var isVertical = /top|bottom/.test(placement) + var arrowDelta = isVertical ? delta.left * 2 - width + actualWidth : delta.top * 2 - height + actualHeight + var arrowOffsetPosition = isVertical ? 'offsetWidth' : 'offsetHeight' + + $tip.offset(offset) + this.replaceArrow(arrowDelta, $tip[0][arrowOffsetPosition], isVertical) + } + + Tooltip.prototype.replaceArrow = function (delta, dimension, isVertical) { + this.arrow() + .css(isVertical ? 'left' : 'top', 50 * (1 - delta / dimension) + '%') + .css(isVertical ? 'top' : 'left', '') + } + + Tooltip.prototype.setContent = function () { + var $tip = this.tip() + var title = this.getTitle() + + $tip.find('.tooltip-inner')[this.options.html ? 'html' : 'text'](title) + $tip.removeClass('fade in top bottom left right') + } + + Tooltip.prototype.hide = function (callback) { + var that = this + var $tip = $(this.$tip) + var e = $.Event('hide.bs.' + this.type) + + function complete() { + if (that.hoverState != 'in') $tip.detach() + if (that.$element) { // TODO: Check whether guarding this code with this `if` is really necessary. + that.$element + .removeAttr('aria-describedby') + .trigger('hidden.bs.' + that.type) + } + callback && callback() + } + + this.$element.trigger(e) + + if (e.isDefaultPrevented()) return + + $tip.removeClass('in') + + $.support.transition && $tip.hasClass('fade') ? + $tip + .one('bsTransitionEnd', complete) + .emulateTransitionEnd(Tooltip.TRANSITION_DURATION) : + complete() + + this.hoverState = null + + return this + } + + Tooltip.prototype.fixTitle = function () { + var $e = this.$element + if ($e.attr('title') || typeof $e.attr('data-original-title') != 'string') { + $e.attr('data-original-title', $e.attr('title') || '').attr('title', '') + } + } + + Tooltip.prototype.hasContent = function () { + return this.getTitle() + } + + Tooltip.prototype.getPosition = function ($element) { + $element = $element || this.$element + + var el = $element[0] + var isBody = el.tagName == 'BODY' + + var elRect = el.getBoundingClientRect() + if (elRect.width == null) { + // width and height are missing in IE8, so compute them manually; see https://github.com/twbs/bootstrap/issues/14093 + elRect = $.extend({}, elRect, { width: elRect.right - elRect.left, height: elRect.bottom - elRect.top }) + } + var isSvg = window.SVGElement && el instanceof window.SVGElement + // Avoid using $.offset() on SVGs since it gives incorrect results in jQuery 3. + // See https://github.com/twbs/bootstrap/issues/20280 + var elOffset = isBody ? { top: 0, left: 0 } : (isSvg ? null : $element.offset()) + var scroll = { scroll: isBody ? document.documentElement.scrollTop || document.body.scrollTop : $element.scrollTop() } + var outerDims = isBody ? { width: $(window).width(), height: $(window).height() } : null + + return $.extend({}, elRect, scroll, outerDims, elOffset) + } + + Tooltip.prototype.getCalculatedOffset = function (placement, pos, actualWidth, actualHeight) { + return placement == 'bottom' ? { top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2 } : + placement == 'top' ? { top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2 } : + placement == 'left' ? { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth } : + /* placement == 'right' */ { top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width } + + } + + Tooltip.prototype.getViewportAdjustedDelta = function (placement, pos, actualWidth, actualHeight) { + var delta = { top: 0, left: 0 } + if (!this.$viewport) return delta + + var viewportPadding = this.options.viewport && this.options.viewport.padding || 0 + var viewportDimensions = this.getPosition(this.$viewport) + + if (/right|left/.test(placement)) { + var topEdgeOffset = pos.top - viewportPadding - viewportDimensions.scroll + var bottomEdgeOffset = pos.top + viewportPadding - viewportDimensions.scroll + actualHeight + if (topEdgeOffset < viewportDimensions.top) { // top overflow + delta.top = viewportDimensions.top - topEdgeOffset + } else if (bottomEdgeOffset > viewportDimensions.top + viewportDimensions.height) { // bottom overflow + delta.top = viewportDimensions.top + viewportDimensions.height - bottomEdgeOffset + } + } else { + var leftEdgeOffset = pos.left - viewportPadding + var rightEdgeOffset = pos.left + viewportPadding + actualWidth + if (leftEdgeOffset < viewportDimensions.left) { // left overflow + delta.left = viewportDimensions.left - leftEdgeOffset + } else if (rightEdgeOffset > viewportDimensions.right) { // right overflow + delta.left = viewportDimensions.left + viewportDimensions.width - rightEdgeOffset + } + } + + return delta + } + + Tooltip.prototype.getTitle = function () { + var title + var $e = this.$element + var o = this.options + + title = $e.attr('data-original-title') + || (typeof o.title == 'function' ? o.title.call($e[0]) : o.title) + + return title + } + + Tooltip.prototype.getUID = function (prefix) { + do prefix += ~~(Math.random() * 1000000) + while (document.getElementById(prefix)) + return prefix + } + + Tooltip.prototype.tip = function () { + if (!this.$tip) { + this.$tip = $(this.options.template) + if (this.$tip.length != 1) { + throw new Error(this.type + ' `template` option must consist of exactly 1 top-level element!') + } + } + return this.$tip + } + + Tooltip.prototype.arrow = function () { + return (this.$arrow = this.$arrow || this.tip().find('.tooltip-arrow')) + } + + Tooltip.prototype.enable = function () { + this.enabled = true + } + + Tooltip.prototype.disable = function () { + this.enabled = false + } + + Tooltip.prototype.toggleEnabled = function () { + this.enabled = !this.enabled + } + + Tooltip.prototype.toggle = function (e) { + var self = this + if (e) { + self = $(e.currentTarget).data('bs.' + this.type) + if (!self) { + self = new this.constructor(e.currentTarget, this.getDelegateOptions()) + $(e.currentTarget).data('bs.' + this.type, self) + } + } + + if (e) { + self.inState.click = !self.inState.click + if (self.isInStateTrue()) self.enter(self) + else self.leave(self) + } else { + self.tip().hasClass('in') ? self.leave(self) : self.enter(self) + } + } + + Tooltip.prototype.destroy = function () { + var that = this + clearTimeout(this.timeout) + this.hide(function () { + that.$element.off('.' + that.type).removeData('bs.' + that.type) + if (that.$tip) { + that.$tip.detach() + } + that.$tip = null + that.$arrow = null + that.$viewport = null + that.$element = null + }) + } + + + // TOOLTIP PLUGIN DEFINITION + // ========================= + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.tooltip') + var options = typeof option == 'object' && option + + if (!data && /destroy|hide/.test(option)) return + if (!data) $this.data('bs.tooltip', (data = new Tooltip(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.tooltip + + $.fn.tooltip = Plugin + $.fn.tooltip.Constructor = Tooltip + + + // TOOLTIP NO CONFLICT + // =================== + + $.fn.tooltip.noConflict = function () { + $.fn.tooltip = old + return this + } + +}(jQuery); + +/* ======================================================================== + * Bootstrap: popover.js v3.3.7 + * http://getbootstrap.com/javascript/#popovers + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // POPOVER PUBLIC CLASS DEFINITION + // =============================== + + var Popover = function (element, options) { + this.init('popover', element, options) + } + + if (!$.fn.tooltip) throw new Error('Popover requires tooltip.js') + + Popover.VERSION = '3.3.7' + + Popover.DEFAULTS = $.extend({}, $.fn.tooltip.Constructor.DEFAULTS, { + placement: 'right', + trigger: 'click', + content: '', + template: '' + }) + + + // NOTE: POPOVER EXTENDS tooltip.js + // ================================ + + Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype) + + Popover.prototype.constructor = Popover + + Popover.prototype.getDefaults = function () { + return Popover.DEFAULTS + } + + Popover.prototype.setContent = function () { + var $tip = this.tip() + var title = this.getTitle() + var content = this.getContent() + + $tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title) + $tip.find('.popover-content').children().detach().end()[ // we use append for html objects to maintain js events + this.options.html ? (typeof content == 'string' ? 'html' : 'append') : 'text' + ](content) + + $tip.removeClass('fade top bottom left right in') + + // IE8 doesn't accept hiding via the `:empty` pseudo selector, we have to do + // this manually by checking the contents. + if (!$tip.find('.popover-title').html()) $tip.find('.popover-title').hide() + } + + Popover.prototype.hasContent = function () { + return this.getTitle() || this.getContent() + } + + Popover.prototype.getContent = function () { + var $e = this.$element + var o = this.options + + return $e.attr('data-content') + || (typeof o.content == 'function' ? + o.content.call($e[0]) : + o.content) + } + + Popover.prototype.arrow = function () { + return (this.$arrow = this.$arrow || this.tip().find('.arrow')) + } + + + // POPOVER PLUGIN DEFINITION + // ========================= + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.popover') + var options = typeof option == 'object' && option + + if (!data && /destroy|hide/.test(option)) return + if (!data) $this.data('bs.popover', (data = new Popover(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.popover + + $.fn.popover = Plugin + $.fn.popover.Constructor = Popover + + + // POPOVER NO CONFLICT + // =================== + + $.fn.popover.noConflict = function () { + $.fn.popover = old + return this + } + +}(jQuery); + +/* ======================================================================== + * Bootstrap: scrollspy.js v3.3.7 + * http://getbootstrap.com/javascript/#scrollspy + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // SCROLLSPY CLASS DEFINITION + // ========================== + + function ScrollSpy(element, options) { + this.$body = $(document.body) + this.$scrollElement = $(element).is(document.body) ? $(window) : $(element) + this.options = $.extend({}, ScrollSpy.DEFAULTS, options) + this.selector = (this.options.target || '') + ' .nav li > a' + this.offsets = [] + this.targets = [] + this.activeTarget = null + this.scrollHeight = 0 + + this.$scrollElement.on('scroll.bs.scrollspy', $.proxy(this.process, this)) + this.refresh() + this.process() + } + + ScrollSpy.VERSION = '3.3.7' + + ScrollSpy.DEFAULTS = { + offset: 10 + } + + ScrollSpy.prototype.getScrollHeight = function () { + return this.$scrollElement[0].scrollHeight || Math.max(this.$body[0].scrollHeight, document.documentElement.scrollHeight) + } + + ScrollSpy.prototype.refresh = function () { + var that = this + var offsetMethod = 'offset' + var offsetBase = 0 + + this.offsets = [] + this.targets = [] + this.scrollHeight = this.getScrollHeight() + + if (!$.isWindow(this.$scrollElement[0])) { + offsetMethod = 'position' + offsetBase = this.$scrollElement.scrollTop() + } + + this.$body + .find(this.selector) + .map(function () { + var $el = $(this) + var href = $el.data('target') || $el.attr('href') + var $href = /^#./.test(href) && $(href) + + return ($href + && $href.length + && $href.is(':visible') + && [[$href[offsetMethod]().top + offsetBase, href]]) || null + }) + .sort(function (a, b) { return a[0] - b[0] }) + .each(function () { + that.offsets.push(this[0]) + that.targets.push(this[1]) + }) + } + + ScrollSpy.prototype.process = function () { + var scrollTop = this.$scrollElement.scrollTop() + this.options.offset + var scrollHeight = this.getScrollHeight() + var maxScroll = this.options.offset + scrollHeight - this.$scrollElement.height() + var offsets = this.offsets + var targets = this.targets + var activeTarget = this.activeTarget + var i + + if (this.scrollHeight != scrollHeight) { + this.refresh() + } + + if (scrollTop >= maxScroll) { + return activeTarget != (i = targets[targets.length - 1]) && this.activate(i) + } + + if (activeTarget && scrollTop < offsets[0]) { + this.activeTarget = null + return this.clear() + } + + for (i = offsets.length; i--;) { + activeTarget != targets[i] + && scrollTop >= offsets[i] + && (offsets[i + 1] === undefined || scrollTop < offsets[i + 1]) + && this.activate(targets[i]) + } + } + + ScrollSpy.prototype.activate = function (target) { + this.activeTarget = target + + this.clear() + + var selector = this.selector + + '[data-target="' + target + '"],' + + this.selector + '[href="' + target + '"]' + + var active = $(selector) + .parents('li') + .addClass('active') + + if (active.parent('.dropdown-menu').length) { + active = active + .closest('li.dropdown') + .addClass('active') + } + + active.trigger('activate.bs.scrollspy') + } + + ScrollSpy.prototype.clear = function () { + $(this.selector) + .parentsUntil(this.options.target, '.active') + .removeClass('active') + } + + + // SCROLLSPY PLUGIN DEFINITION + // =========================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.scrollspy') + var options = typeof option == 'object' && option + + if (!data) $this.data('bs.scrollspy', (data = new ScrollSpy(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.scrollspy + + $.fn.scrollspy = Plugin + $.fn.scrollspy.Constructor = ScrollSpy + + + // SCROLLSPY NO CONFLICT + // ===================== + + $.fn.scrollspy.noConflict = function () { + $.fn.scrollspy = old + return this + } + + + // SCROLLSPY DATA-API + // ================== + + $(window).on('load.bs.scrollspy.data-api', function () { + $('[data-spy="scroll"]').each(function () { + var $spy = $(this) + Plugin.call($spy, $spy.data()) + }) + }) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: tab.js v3.3.7 + * http://getbootstrap.com/javascript/#tabs + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // TAB CLASS DEFINITION + // ==================== + + var Tab = function (element) { + // jscs:disable requireDollarBeforejQueryAssignment + this.element = $(element) + // jscs:enable requireDollarBeforejQueryAssignment + } + + Tab.VERSION = '3.3.7' + + Tab.TRANSITION_DURATION = 150 + + Tab.prototype.show = function () { + var $this = this.element + var $ul = $this.closest('ul:not(.dropdown-menu)') + var selector = $this.data('target') + + if (!selector) { + selector = $this.attr('href') + selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') // strip for ie7 + } + + if ($this.parent('li').hasClass('active')) return + + var $previous = $ul.find('.active:last a') + var hideEvent = $.Event('hide.bs.tab', { + relatedTarget: $this[0] + }) + var showEvent = $.Event('show.bs.tab', { + relatedTarget: $previous[0] + }) + + $previous.trigger(hideEvent) + $this.trigger(showEvent) + + if (showEvent.isDefaultPrevented() || hideEvent.isDefaultPrevented()) return + + var $target = $(selector) + + this.activate($this.closest('li'), $ul) + this.activate($target, $target.parent(), function () { + $previous.trigger({ + type: 'hidden.bs.tab', + relatedTarget: $this[0] + }) + $this.trigger({ + type: 'shown.bs.tab', + relatedTarget: $previous[0] + }) + }) + } + + Tab.prototype.activate = function (element, container, callback) { + var $active = container.find('> .active') + var transition = callback + && $.support.transition + && ($active.length && $active.hasClass('fade') || !!container.find('> .fade').length) + + function next() { + $active + .removeClass('active') + .find('> .dropdown-menu > .active') + .removeClass('active') + .end() + .find('[data-toggle="tab"]') + .attr('aria-expanded', false) + + element + .addClass('active') + .find('[data-toggle="tab"]') + .attr('aria-expanded', true) + + if (transition) { + element[0].offsetWidth // reflow for transition + element.addClass('in') + } else { + element.removeClass('fade') + } + + if (element.parent('.dropdown-menu').length) { + element + .closest('li.dropdown') + .addClass('active') + .end() + .find('[data-toggle="tab"]') + .attr('aria-expanded', true) + } + + callback && callback() + } + + $active.length && transition ? + $active + .one('bsTransitionEnd', next) + .emulateTransitionEnd(Tab.TRANSITION_DURATION) : + next() + + $active.removeClass('in') + } + + + // TAB PLUGIN DEFINITION + // ===================== + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.tab') + + if (!data) $this.data('bs.tab', (data = new Tab(this))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.tab + + $.fn.tab = Plugin + $.fn.tab.Constructor = Tab + + + // TAB NO CONFLICT + // =============== + + $.fn.tab.noConflict = function () { + $.fn.tab = old + return this + } + + + // TAB DATA-API + // ============ + + var clickHandler = function (e) { + e.preventDefault() + Plugin.call($(this), 'show') + } + + $(document) + .on('click.bs.tab.data-api', '[data-toggle="tab"]', clickHandler) + .on('click.bs.tab.data-api', '[data-toggle="pill"]', clickHandler) + +}(jQuery); + +/* ======================================================================== + * Bootstrap: affix.js v3.3.7 + * http://getbootstrap.com/javascript/#affix + * ======================================================================== + * Copyright 2011-2016 Twitter, Inc. + * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) + * ======================================================================== */ + + ++function ($) { + 'use strict'; + + // AFFIX CLASS DEFINITION + // ====================== + + var Affix = function (element, options) { + this.options = $.extend({}, Affix.DEFAULTS, options) + + this.$target = $(this.options.target) + .on('scroll.bs.affix.data-api', $.proxy(this.checkPosition, this)) + .on('click.bs.affix.data-api', $.proxy(this.checkPositionWithEventLoop, this)) + + this.$element = $(element) + this.affixed = null + this.unpin = null + this.pinnedOffset = null + + this.checkPosition() + } + + Affix.VERSION = '3.3.7' + + Affix.RESET = 'affix affix-top affix-bottom' + + Affix.DEFAULTS = { + offset: 0, + target: window + } + + Affix.prototype.getState = function (scrollHeight, height, offsetTop, offsetBottom) { + var scrollTop = this.$target.scrollTop() + var position = this.$element.offset() + var targetHeight = this.$target.height() + + if (offsetTop != null && this.affixed == 'top') return scrollTop < offsetTop ? 'top' : false + + if (this.affixed == 'bottom') { + if (offsetTop != null) return (scrollTop + this.unpin <= position.top) ? false : 'bottom' + return (scrollTop + targetHeight <= scrollHeight - offsetBottom) ? false : 'bottom' + } + + var initializing = this.affixed == null + var colliderTop = initializing ? scrollTop : position.top + var colliderHeight = initializing ? targetHeight : height + + if (offsetTop != null && scrollTop <= offsetTop) return 'top' + if (offsetBottom != null && (colliderTop + colliderHeight >= scrollHeight - offsetBottom)) return 'bottom' + + return false + } + + Affix.prototype.getPinnedOffset = function () { + if (this.pinnedOffset) return this.pinnedOffset + this.$element.removeClass(Affix.RESET).addClass('affix') + var scrollTop = this.$target.scrollTop() + var position = this.$element.offset() + return (this.pinnedOffset = position.top - scrollTop) + } + + Affix.prototype.checkPositionWithEventLoop = function () { + setTimeout($.proxy(this.checkPosition, this), 1) + } + + Affix.prototype.checkPosition = function () { + if (!this.$element.is(':visible')) return + + var height = this.$element.height() + var offset = this.options.offset + var offsetTop = offset.top + var offsetBottom = offset.bottom + var scrollHeight = Math.max($(document).height(), $(document.body).height()) + + if (typeof offset != 'object') offsetBottom = offsetTop = offset + if (typeof offsetTop == 'function') offsetTop = offset.top(this.$element) + if (typeof offsetBottom == 'function') offsetBottom = offset.bottom(this.$element) + + var affix = this.getState(scrollHeight, height, offsetTop, offsetBottom) + + if (this.affixed != affix) { + if (this.unpin != null) this.$element.css('top', '') + + var affixType = 'affix' + (affix ? '-' + affix : '') + var e = $.Event(affixType + '.bs.affix') + + this.$element.trigger(e) + + if (e.isDefaultPrevented()) return + + this.affixed = affix + this.unpin = affix == 'bottom' ? this.getPinnedOffset() : null + + this.$element + .removeClass(Affix.RESET) + .addClass(affixType) + .trigger(affixType.replace('affix', 'affixed') + '.bs.affix') + } + + if (affix == 'bottom') { + this.$element.offset({ + top: scrollHeight - height - offsetBottom + }) + } + } + + + // AFFIX PLUGIN DEFINITION + // ======================= + + function Plugin(option) { + return this.each(function () { + var $this = $(this) + var data = $this.data('bs.affix') + var options = typeof option == 'object' && option + + if (!data) $this.data('bs.affix', (data = new Affix(this, options))) + if (typeof option == 'string') data[option]() + }) + } + + var old = $.fn.affix + + $.fn.affix = Plugin + $.fn.affix.Constructor = Affix + + + // AFFIX NO CONFLICT + // ================= + + $.fn.affix.noConflict = function () { + $.fn.affix = old + return this + } + + + // AFFIX DATA-API + // ============== + + $(window).on('load', function () { + $('[data-spy="affix"]').each(function () { + var $spy = $(this) + var data = $spy.data() + + data.offset = data.offset || {} + + if (data.offsetBottom != null) data.offset.bottom = data.offsetBottom + if (data.offsetTop != null) data.offset.top = data.offsetTop + + Plugin.call($spy, data) + }) + }) + +}(jQuery); diff --git a/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/js/bootstrap.min.js b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/js/bootstrap.min.js new file mode 100644 index 00000000..9bcd2fcc --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/bootstrap/js/bootstrap.min.js @@ -0,0 +1,7 @@ +/*! + * Bootstrap v3.3.7 (http://getbootstrap.com) + * Copyright 2011-2016 Twitter, Inc. + * Licensed under the MIT license + */ +if("undefined"==typeof jQuery)throw new Error("Bootstrap's JavaScript requires jQuery");+function(a){"use strict";var b=a.fn.jquery.split(" ")[0].split(".");if(b[0]<2&&b[1]<9||1==b[0]&&9==b[1]&&b[2]<1||b[0]>3)throw new Error("Bootstrap's JavaScript requires jQuery version 1.9.1 or higher, but lower than version 4")}(jQuery),+function(a){"use strict";function b(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var c in b)if(void 0!==a.style[c])return{end:b[c]};return!1}a.fn.emulateTransitionEnd=function(b){var c=!1,d=this;a(this).one("bsTransitionEnd",function(){c=!0});var e=function(){c||a(d).trigger(a.support.transition.end)};return setTimeout(e,b),this},a(function(){a.support.transition=b(),a.support.transition&&(a.event.special.bsTransitionEnd={bindType:a.support.transition.end,delegateType:a.support.transition.end,handle:function(b){if(a(b.target).is(this))return b.handleObj.handler.apply(this,arguments)}})})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var c=a(this),e=c.data("bs.alert");e||c.data("bs.alert",e=new d(this)),"string"==typeof b&&e[b].call(c)})}var c='[data-dismiss="alert"]',d=function(b){a(b).on("click",c,this.close)};d.VERSION="3.3.7",d.TRANSITION_DURATION=150,d.prototype.close=function(b){function c(){g.detach().trigger("closed.bs.alert").remove()}var e=a(this),f=e.attr("data-target");f||(f=e.attr("href"),f=f&&f.replace(/.*(?=#[^\s]*$)/,""));var g=a("#"===f?[]:f);b&&b.preventDefault(),g.length||(g=e.closest(".alert")),g.trigger(b=a.Event("close.bs.alert")),b.isDefaultPrevented()||(g.removeClass("in"),a.support.transition&&g.hasClass("fade")?g.one("bsTransitionEnd",c).emulateTransitionEnd(d.TRANSITION_DURATION):c())};var e=a.fn.alert;a.fn.alert=b,a.fn.alert.Constructor=d,a.fn.alert.noConflict=function(){return a.fn.alert=e,this},a(document).on("click.bs.alert.data-api",c,d.prototype.close)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.button"),f="object"==typeof b&&b;e||d.data("bs.button",e=new c(this,f)),"toggle"==b?e.toggle():b&&e.setState(b)})}var c=function(b,d){this.$element=a(b),this.options=a.extend({},c.DEFAULTS,d),this.isLoading=!1};c.VERSION="3.3.7",c.DEFAULTS={loadingText:"loading..."},c.prototype.setState=function(b){var c="disabled",d=this.$element,e=d.is("input")?"val":"html",f=d.data();b+="Text",null==f.resetText&&d.data("resetText",d[e]()),setTimeout(a.proxy(function(){d[e](null==f[b]?this.options[b]:f[b]),"loadingText"==b?(this.isLoading=!0,d.addClass(c).attr(c,c).prop(c,!0)):this.isLoading&&(this.isLoading=!1,d.removeClass(c).removeAttr(c).prop(c,!1))},this),0)},c.prototype.toggle=function(){var a=!0,b=this.$element.closest('[data-toggle="buttons"]');if(b.length){var c=this.$element.find("input");"radio"==c.prop("type")?(c.prop("checked")&&(a=!1),b.find(".active").removeClass("active"),this.$element.addClass("active")):"checkbox"==c.prop("type")&&(c.prop("checked")!==this.$element.hasClass("active")&&(a=!1),this.$element.toggleClass("active")),c.prop("checked",this.$element.hasClass("active")),a&&c.trigger("change")}else this.$element.attr("aria-pressed",!this.$element.hasClass("active")),this.$element.toggleClass("active")};var d=a.fn.button;a.fn.button=b,a.fn.button.Constructor=c,a.fn.button.noConflict=function(){return a.fn.button=d,this},a(document).on("click.bs.button.data-api",'[data-toggle^="button"]',function(c){var d=a(c.target).closest(".btn");b.call(d,"toggle"),a(c.target).is('input[type="radio"], input[type="checkbox"]')||(c.preventDefault(),d.is("input,button")?d.trigger("focus"):d.find("input:visible,button:visible").first().trigger("focus"))}).on("focus.bs.button.data-api blur.bs.button.data-api",'[data-toggle^="button"]',function(b){a(b.target).closest(".btn").toggleClass("focus",/^focus(in)?$/.test(b.type))})}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.carousel"),f=a.extend({},c.DEFAULTS,d.data(),"object"==typeof b&&b),g="string"==typeof b?b:f.slide;e||d.data("bs.carousel",e=new c(this,f)),"number"==typeof b?e.to(b):g?e[g]():f.interval&&e.pause().cycle()})}var c=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,this.paused=null,this.sliding=null,this.interval=null,this.$active=null,this.$items=null,this.options.keyboard&&this.$element.on("keydown.bs.carousel",a.proxy(this.keydown,this)),"hover"==this.options.pause&&!("ontouchstart"in document.documentElement)&&this.$element.on("mouseenter.bs.carousel",a.proxy(this.pause,this)).on("mouseleave.bs.carousel",a.proxy(this.cycle,this))};c.VERSION="3.3.7",c.TRANSITION_DURATION=600,c.DEFAULTS={interval:5e3,pause:"hover",wrap:!0,keyboard:!0},c.prototype.keydown=function(a){if(!/input|textarea/i.test(a.target.tagName)){switch(a.which){case 37:this.prev();break;case 39:this.next();break;default:return}a.preventDefault()}},c.prototype.cycle=function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},c.prototype.getItemIndex=function(a){return this.$items=a.parent().children(".item"),this.$items.index(a||this.$active)},c.prototype.getItemForDirection=function(a,b){var c=this.getItemIndex(b),d="prev"==a&&0===c||"next"==a&&c==this.$items.length-1;if(d&&!this.options.wrap)return b;var e="prev"==a?-1:1,f=(c+e)%this.$items.length;return this.$items.eq(f)},c.prototype.to=function(a){var b=this,c=this.getItemIndex(this.$active=this.$element.find(".item.active"));if(!(a>this.$items.length-1||a<0))return this.sliding?this.$element.one("slid.bs.carousel",function(){b.to(a)}):c==a?this.pause().cycle():this.slide(a>c?"next":"prev",this.$items.eq(a))},c.prototype.pause=function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},c.prototype.next=function(){if(!this.sliding)return this.slide("next")},c.prototype.prev=function(){if(!this.sliding)return this.slide("prev")},c.prototype.slide=function(b,d){var e=this.$element.find(".item.active"),f=d||this.getItemForDirection(b,e),g=this.interval,h="next"==b?"left":"right",i=this;if(f.hasClass("active"))return this.sliding=!1;var j=f[0],k=a.Event("slide.bs.carousel",{relatedTarget:j,direction:h});if(this.$element.trigger(k),!k.isDefaultPrevented()){if(this.sliding=!0,g&&this.pause(),this.$indicators.length){this.$indicators.find(".active").removeClass("active");var l=a(this.$indicators.children()[this.getItemIndex(f)]);l&&l.addClass("active")}var m=a.Event("slid.bs.carousel",{relatedTarget:j,direction:h});return a.support.transition&&this.$element.hasClass("slide")?(f.addClass(b),f[0].offsetWidth,e.addClass(h),f.addClass(h),e.one("bsTransitionEnd",function(){f.removeClass([b,h].join(" ")).addClass("active"),e.removeClass(["active",h].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger(m)},0)}).emulateTransitionEnd(c.TRANSITION_DURATION)):(e.removeClass("active"),f.addClass("active"),this.sliding=!1,this.$element.trigger(m)),g&&this.cycle(),this}};var d=a.fn.carousel;a.fn.carousel=b,a.fn.carousel.Constructor=c,a.fn.carousel.noConflict=function(){return a.fn.carousel=d,this};var e=function(c){var d,e=a(this),f=a(e.attr("data-target")||(d=e.attr("href"))&&d.replace(/.*(?=#[^\s]+$)/,""));if(f.hasClass("carousel")){var g=a.extend({},f.data(),e.data()),h=e.attr("data-slide-to");h&&(g.interval=!1),b.call(f,g),h&&f.data("bs.carousel").to(h),c.preventDefault()}};a(document).on("click.bs.carousel.data-api","[data-slide]",e).on("click.bs.carousel.data-api","[data-slide-to]",e),a(window).on("load",function(){a('[data-ride="carousel"]').each(function(){var c=a(this);b.call(c,c.data())})})}(jQuery),+function(a){"use strict";function b(b){var c,d=b.attr("data-target")||(c=b.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,"");return a(d)}function c(b){return this.each(function(){var c=a(this),e=c.data("bs.collapse"),f=a.extend({},d.DEFAULTS,c.data(),"object"==typeof b&&b);!e&&f.toggle&&/show|hide/.test(b)&&(f.toggle=!1),e||c.data("bs.collapse",e=new d(this,f)),"string"==typeof b&&e[b]()})}var d=function(b,c){this.$element=a(b),this.options=a.extend({},d.DEFAULTS,c),this.$trigger=a('[data-toggle="collapse"][href="#'+b.id+'"],[data-toggle="collapse"][data-target="#'+b.id+'"]'),this.transitioning=null,this.options.parent?this.$parent=this.getParent():this.addAriaAndCollapsedClass(this.$element,this.$trigger),this.options.toggle&&this.toggle()};d.VERSION="3.3.7",d.TRANSITION_DURATION=350,d.DEFAULTS={toggle:!0},d.prototype.dimension=function(){var a=this.$element.hasClass("width");return a?"width":"height"},d.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var b,e=this.$parent&&this.$parent.children(".panel").children(".in, .collapsing");if(!(e&&e.length&&(b=e.data("bs.collapse"),b&&b.transitioning))){var f=a.Event("show.bs.collapse");if(this.$element.trigger(f),!f.isDefaultPrevented()){e&&e.length&&(c.call(e,"hide"),b||e.data("bs.collapse",null));var g=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[g](0).attr("aria-expanded",!0),this.$trigger.removeClass("collapsed").attr("aria-expanded",!0),this.transitioning=1;var h=function(){this.$element.removeClass("collapsing").addClass("collapse in")[g](""),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!a.support.transition)return h.call(this);var i=a.camelCase(["scroll",g].join("-"));this.$element.one("bsTransitionEnd",a.proxy(h,this)).emulateTransitionEnd(d.TRANSITION_DURATION)[g](this.$element[0][i])}}}},d.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var b=a.Event("hide.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.dimension();this.$element[c](this.$element[c]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse in").attr("aria-expanded",!1),this.$trigger.addClass("collapsed").attr("aria-expanded",!1),this.transitioning=1;var e=function(){this.transitioning=0,this.$element.removeClass("collapsing").addClass("collapse").trigger("hidden.bs.collapse")};return a.support.transition?void this.$element[c](0).one("bsTransitionEnd",a.proxy(e,this)).emulateTransitionEnd(d.TRANSITION_DURATION):e.call(this)}}},d.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()},d.prototype.getParent=function(){return a(this.options.parent).find('[data-toggle="collapse"][data-parent="'+this.options.parent+'"]').each(a.proxy(function(c,d){var e=a(d);this.addAriaAndCollapsedClass(b(e),e)},this)).end()},d.prototype.addAriaAndCollapsedClass=function(a,b){var c=a.hasClass("in");a.attr("aria-expanded",c),b.toggleClass("collapsed",!c).attr("aria-expanded",c)};var e=a.fn.collapse;a.fn.collapse=c,a.fn.collapse.Constructor=d,a.fn.collapse.noConflict=function(){return a.fn.collapse=e,this},a(document).on("click.bs.collapse.data-api",'[data-toggle="collapse"]',function(d){var e=a(this);e.attr("data-target")||d.preventDefault();var f=b(e),g=f.data("bs.collapse"),h=g?"toggle":e.data();c.call(f,h)})}(jQuery),+function(a){"use strict";function b(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#[A-Za-z]/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}function c(c){c&&3===c.which||(a(e).remove(),a(f).each(function(){var d=a(this),e=b(d),f={relatedTarget:this};e.hasClass("open")&&(c&&"click"==c.type&&/input|textarea/i.test(c.target.tagName)&&a.contains(e[0],c.target)||(e.trigger(c=a.Event("hide.bs.dropdown",f)),c.isDefaultPrevented()||(d.attr("aria-expanded","false"),e.removeClass("open").trigger(a.Event("hidden.bs.dropdown",f)))))}))}function d(b){return this.each(function(){var c=a(this),d=c.data("bs.dropdown");d||c.data("bs.dropdown",d=new g(this)),"string"==typeof b&&d[b].call(c)})}var e=".dropdown-backdrop",f='[data-toggle="dropdown"]',g=function(b){a(b).on("click.bs.dropdown",this.toggle)};g.VERSION="3.3.7",g.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=b(e),g=f.hasClass("open");if(c(),!g){"ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a(document.createElement("div")).addClass("dropdown-backdrop").insertAfter(a(this)).on("click",c);var h={relatedTarget:this};if(f.trigger(d=a.Event("show.bs.dropdown",h)),d.isDefaultPrevented())return;e.trigger("focus").attr("aria-expanded","true"),f.toggleClass("open").trigger(a.Event("shown.bs.dropdown",h))}return!1}},g.prototype.keydown=function(c){if(/(38|40|27|32)/.test(c.which)&&!/input|textarea/i.test(c.target.tagName)){var d=a(this);if(c.preventDefault(),c.stopPropagation(),!d.is(".disabled, :disabled")){var e=b(d),g=e.hasClass("open");if(!g&&27!=c.which||g&&27==c.which)return 27==c.which&&e.find(f).trigger("focus"),d.trigger("click");var h=" li:not(.disabled):visible a",i=e.find(".dropdown-menu"+h);if(i.length){var j=i.index(c.target);38==c.which&&j>0&&j--,40==c.which&&jdocument.documentElement.clientHeight;this.$element.css({paddingLeft:!this.bodyIsOverflowing&&a?this.scrollbarWidth:"",paddingRight:this.bodyIsOverflowing&&!a?this.scrollbarWidth:""})},c.prototype.resetAdjustments=function(){this.$element.css({paddingLeft:"",paddingRight:""})},c.prototype.checkScrollbar=function(){var a=window.innerWidth;if(!a){var b=document.documentElement.getBoundingClientRect();a=b.right-Math.abs(b.left)}this.bodyIsOverflowing=document.body.clientWidth
',trigger:"hover focus",title:"",delay:0,html:!1,container:!1,viewport:{selector:"body",padding:0}},c.prototype.init=function(b,c,d){if(this.enabled=!0,this.type=b,this.$element=a(c),this.options=this.getOptions(d),this.$viewport=this.options.viewport&&a(a.isFunction(this.options.viewport)?this.options.viewport.call(this,this.$element):this.options.viewport.selector||this.options.viewport),this.inState={click:!1,hover:!1,focus:!1},this.$element[0]instanceof document.constructor&&!this.options.selector)throw new Error("`selector` option must be specified when initializing "+this.type+" on the window.document object!");for(var e=this.options.trigger.split(" "),f=e.length;f--;){var g=e[f];if("click"==g)this.$element.on("click."+this.type,this.options.selector,a.proxy(this.toggle,this));else if("manual"!=g){var h="hover"==g?"mouseenter":"focusin",i="hover"==g?"mouseleave":"focusout";this.$element.on(h+"."+this.type,this.options.selector,a.proxy(this.enter,this)),this.$element.on(i+"."+this.type,this.options.selector,a.proxy(this.leave,this))}}this.options.selector?this._options=a.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.getOptions=function(b){return b=a.extend({},this.getDefaults(),this.$element.data(),b),b.delay&&"number"==typeof b.delay&&(b.delay={show:b.delay,hide:b.delay}),b},c.prototype.getDelegateOptions=function(){var b={},c=this.getDefaults();return this._options&&a.each(this._options,function(a,d){c[a]!=d&&(b[a]=d)}),b},c.prototype.enter=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);return c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),b instanceof a.Event&&(c.inState["focusin"==b.type?"focus":"hover"]=!0),c.tip().hasClass("in")||"in"==c.hoverState?void(c.hoverState="in"):(clearTimeout(c.timeout),c.hoverState="in",c.options.delay&&c.options.delay.show?void(c.timeout=setTimeout(function(){"in"==c.hoverState&&c.show()},c.options.delay.show)):c.show())},c.prototype.isInStateTrue=function(){for(var a in this.inState)if(this.inState[a])return!0;return!1},c.prototype.leave=function(b){var c=b instanceof this.constructor?b:a(b.currentTarget).data("bs."+this.type);if(c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c)),b instanceof a.Event&&(c.inState["focusout"==b.type?"focus":"hover"]=!1),!c.isInStateTrue())return clearTimeout(c.timeout),c.hoverState="out",c.options.delay&&c.options.delay.hide?void(c.timeout=setTimeout(function(){"out"==c.hoverState&&c.hide()},c.options.delay.hide)):c.hide()},c.prototype.show=function(){var b=a.Event("show.bs."+this.type);if(this.hasContent()&&this.enabled){this.$element.trigger(b);var d=a.contains(this.$element[0].ownerDocument.documentElement,this.$element[0]);if(b.isDefaultPrevented()||!d)return;var e=this,f=this.tip(),g=this.getUID(this.type);this.setContent(),f.attr("id",g),this.$element.attr("aria-describedby",g),this.options.animation&&f.addClass("fade");var h="function"==typeof this.options.placement?this.options.placement.call(this,f[0],this.$element[0]):this.options.placement,i=/\s?auto?\s?/i,j=i.test(h);j&&(h=h.replace(i,"")||"top"),f.detach().css({top:0,left:0,display:"block"}).addClass(h).data("bs."+this.type,this),this.options.container?f.appendTo(this.options.container):f.insertAfter(this.$element),this.$element.trigger("inserted.bs."+this.type);var k=this.getPosition(),l=f[0].offsetWidth,m=f[0].offsetHeight;if(j){var n=h,o=this.getPosition(this.$viewport);h="bottom"==h&&k.bottom+m>o.bottom?"top":"top"==h&&k.top-mo.width?"left":"left"==h&&k.left-lg.top+g.height&&(e.top=g.top+g.height-i)}else{var j=b.left-f,k=b.left+f+c;jg.right&&(e.left=g.left+g.width-k)}return e},c.prototype.getTitle=function(){var a,b=this.$element,c=this.options;return a=b.attr("data-original-title")||("function"==typeof c.title?c.title.call(b[0]):c.title)},c.prototype.getUID=function(a){do a+=~~(1e6*Math.random());while(document.getElementById(a));return a},c.prototype.tip=function(){if(!this.$tip&&(this.$tip=a(this.options.template),1!=this.$tip.length))throw new Error(this.type+" `template` option must consist of exactly 1 top-level element!");return this.$tip},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},c.prototype.enable=function(){this.enabled=!0},c.prototype.disable=function(){this.enabled=!1},c.prototype.toggleEnabled=function(){this.enabled=!this.enabled},c.prototype.toggle=function(b){var c=this;b&&(c=a(b.currentTarget).data("bs."+this.type),c||(c=new this.constructor(b.currentTarget,this.getDelegateOptions()),a(b.currentTarget).data("bs."+this.type,c))),b?(c.inState.click=!c.inState.click,c.isInStateTrue()?c.enter(c):c.leave(c)):c.tip().hasClass("in")?c.leave(c):c.enter(c)},c.prototype.destroy=function(){var a=this;clearTimeout(this.timeout),this.hide(function(){a.$element.off("."+a.type).removeData("bs."+a.type),a.$tip&&a.$tip.detach(),a.$tip=null,a.$arrow=null,a.$viewport=null,a.$element=null})};var d=a.fn.tooltip;a.fn.tooltip=b,a.fn.tooltip.Constructor=c,a.fn.tooltip.noConflict=function(){return a.fn.tooltip=d,this}}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.popover"),f="object"==typeof b&&b;!e&&/destroy|hide/.test(b)||(e||d.data("bs.popover",e=new c(this,f)),"string"==typeof b&&e[b]())})}var c=function(a,b){this.init("popover",a,b)};if(!a.fn.tooltip)throw new Error("Popover requires tooltip.js");c.VERSION="3.3.7",c.DEFAULTS=a.extend({},a.fn.tooltip.Constructor.DEFAULTS,{placement:"right",trigger:"click",content:"",template:''}),c.prototype=a.extend({},a.fn.tooltip.Constructor.prototype),c.prototype.constructor=c,c.prototype.getDefaults=function(){return c.DEFAULTS},c.prototype.setContent=function(){var a=this.tip(),b=this.getTitle(),c=this.getContent();a.find(".popover-title")[this.options.html?"html":"text"](b),a.find(".popover-content").children().detach().end()[this.options.html?"string"==typeof c?"html":"append":"text"](c),a.removeClass("fade top bottom left right in"),a.find(".popover-title").html()||a.find(".popover-title").hide()},c.prototype.hasContent=function(){return this.getTitle()||this.getContent()},c.prototype.getContent=function(){var a=this.$element,b=this.options;return a.attr("data-content")||("function"==typeof b.content?b.content.call(a[0]):b.content)},c.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")};var d=a.fn.popover;a.fn.popover=b,a.fn.popover.Constructor=c,a.fn.popover.noConflict=function(){return a.fn.popover=d,this}}(jQuery),+function(a){"use strict";function b(c,d){this.$body=a(document.body),this.$scrollElement=a(a(c).is(document.body)?window:c),this.options=a.extend({},b.DEFAULTS,d),this.selector=(this.options.target||"")+" .nav li > a",this.offsets=[],this.targets=[],this.activeTarget=null,this.scrollHeight=0,this.$scrollElement.on("scroll.bs.scrollspy",a.proxy(this.process,this)),this.refresh(),this.process()}function c(c){return this.each(function(){var d=a(this),e=d.data("bs.scrollspy"),f="object"==typeof c&&c;e||d.data("bs.scrollspy",e=new b(this,f)),"string"==typeof c&&e[c]()})}b.VERSION="3.3.7",b.DEFAULTS={offset:10},b.prototype.getScrollHeight=function(){return this.$scrollElement[0].scrollHeight||Math.max(this.$body[0].scrollHeight,document.documentElement.scrollHeight)},b.prototype.refresh=function(){var b=this,c="offset",d=0;this.offsets=[],this.targets=[],this.scrollHeight=this.getScrollHeight(),a.isWindow(this.$scrollElement[0])||(c="position",d=this.$scrollElement.scrollTop()),this.$body.find(this.selector).map(function(){var b=a(this),e=b.data("target")||b.attr("href"),f=/^#./.test(e)&&a(e);return f&&f.length&&f.is(":visible")&&[[f[c]().top+d,e]]||null}).sort(function(a,b){return a[0]-b[0]}).each(function(){b.offsets.push(this[0]),b.targets.push(this[1])})},b.prototype.process=function(){var a,b=this.$scrollElement.scrollTop()+this.options.offset,c=this.getScrollHeight(),d=this.options.offset+c-this.$scrollElement.height(),e=this.offsets,f=this.targets,g=this.activeTarget;if(this.scrollHeight!=c&&this.refresh(),b>=d)return g!=(a=f[f.length-1])&&this.activate(a);if(g&&b=e[a]&&(void 0===e[a+1]||b .dropdown-menu > .active").removeClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!1),b.addClass("active").find('[data-toggle="tab"]').attr("aria-expanded",!0),h?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu").length&&b.closest("li.dropdown").addClass("active").end().find('[data-toggle="tab"]').attr("aria-expanded",!0),e&&e()}var g=d.find("> .active"),h=e&&a.support.transition&&(g.length&&g.hasClass("fade")||!!d.find("> .fade").length);g.length&&h?g.one("bsTransitionEnd",f).emulateTransitionEnd(c.TRANSITION_DURATION):f(),g.removeClass("in")};var d=a.fn.tab;a.fn.tab=b,a.fn.tab.Constructor=c,a.fn.tab.noConflict=function(){return a.fn.tab=d,this};var e=function(c){c.preventDefault(),b.call(a(this),"show")};a(document).on("click.bs.tab.data-api",'[data-toggle="tab"]',e).on("click.bs.tab.data-api",'[data-toggle="pill"]',e)}(jQuery),+function(a){"use strict";function b(b){return this.each(function(){var d=a(this),e=d.data("bs.affix"),f="object"==typeof b&&b;e||d.data("bs.affix",e=new c(this,f)),"string"==typeof b&&e[b]()})}var c=function(b,d){this.options=a.extend({},c.DEFAULTS,d),this.$target=a(this.options.target).on("scroll.bs.affix.data-api",a.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",a.proxy(this.checkPositionWithEventLoop,this)),this.$element=a(b),this.affixed=null,this.unpin=null,this.pinnedOffset=null,this.checkPosition()};c.VERSION="3.3.7",c.RESET="affix affix-top affix-bottom",c.DEFAULTS={offset:0,target:window},c.prototype.getState=function(a,b,c,d){var e=this.$target.scrollTop(),f=this.$element.offset(),g=this.$target.height();if(null!=c&&"top"==this.affixed)return e=a-d&&"bottom"},c.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(c.RESET).addClass("affix");var a=this.$target.scrollTop(),b=this.$element.offset();return this.pinnedOffset=b.top-a},c.prototype.checkPositionWithEventLoop=function(){setTimeout(a.proxy(this.checkPosition,this),1)},c.prototype.checkPosition=function(){if(this.$element.is(":visible")){var b=this.$element.height(),d=this.options.offset,e=d.top,f=d.bottom,g=Math.max(a(document).height(),a(document.body).height());"object"!=typeof d&&(f=e=d),"function"==typeof e&&(e=d.top(this.$element)),"function"==typeof f&&(f=d.bottom(this.$element));var h=this.getState(g,b,e,f);if(this.affixed!=h){null!=this.unpin&&this.$element.css("top","");var i="affix"+(h?"-"+h:""),j=a.Event(i+".bs.affix");if(this.$element.trigger(j),j.isDefaultPrevented())return;this.affixed=h,this.unpin="bottom"==h?this.getPinnedOffset():null,this.$element.removeClass(c.RESET).addClass(i).trigger(i.replace("affix","affixed")+".bs.affix")}"bottom"==h&&this.$element.offset({top:g-b-f})}};var d=a.fn.affix;a.fn.affix=b,a.fn.affix.Constructor=c,a.fn.affix.noConflict=function(){return a.fn.affix=d,this},a(window).on("load",function(){a('[data-spy="affix"]').each(function(){var c=a(this),d=c.data();d.offset=d.offset||{},null!=d.offsetBottom&&(d.offset.bottom=d.offsetBottom),null!=d.offsetTop&&(d.offset.top=d.offsetTop),b.call(c,d)})})}(jQuery); \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/Readme.md b/build/lib/helpdesk/static/helpdesk/vendor/datatables/Readme.md new file mode 100644 index 00000000..09c8c8f7 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/Readme.md @@ -0,0 +1,59 @@ +# DataTables plug-in for jQuery + +DataTables is a table enhancing plug-in for the [jQuery](//jquery.com) Javascript library, adding sorting, paging and filtering abilities to plain HTML tables with minimal effort. The stated goal of DataTables is: + +> To enhance the accessibility of data in HTML tables. + +To meet this goal, DataTables is developed with two distinct groups of users in mind: + +* You the developers using DataTables. For developers DataTables provides a wide array of options for how data should be obtained, displayed and acted upon, along with an extensive API for accessing and manipulating the table. + +* End users. For those using the interface DataTables presents, actions to get the most from the information contained in tables, such as sorting and filtering, along with paging and scrolling of the data in table, are easy to use, intuitive and fast. + + +## Installing DataTables + +To use DataTables, the primary way to obtain the software is to use the [DataTables downloader](//datatables.net/download). You can also include the individual files from the [DataTables CDN](//cdn.datatables.net). See the [documentation](//datatables.net/manual/installation) for full details. + +### NPM and Bower + +If you prefer to use a package manager such as NPM or Bower, distribution repositories are available with software built from this repository under the name `datatables.net`. Styling packages for Bootstrap, Foundation and other styling libraries are also available by adding a suffix to the package name. + +Please see the DataTables [NPM](//datatables.net/download/npm) and [Bower](//datatables.net/download/bower) installation pages for further information. The [DataTables installation manual](//datatables.net/manual/installation) also has details on how to use package managers with DataTables. + + +## Usage + +In its simplest case, DataTables can be initialised with a single line of Javascript: + +```js +$('table').dataTable(); +``` + +where the jQuery selector is used to obtain a reference to the table you want to enhance with DataTables. Optional configuration parameters can be passed in to DataTables to have it perform certain actions by using a configuration object as the parameter passed in to the DataTables constructor. For example: + +```js +$('table').dataTable( { + paginate: false, + scrollY: 300 +} ); +``` + +will disable paging and enable scrolling. + +A full list of the options available for DataTables are available in the [documentation](//datatables.net). + + +## Documentation + +Full documentation of the DataTables options, API and plug-in interface are available on the [DataTables web-site](//datatables.net). The site also contains information on the wide variety of plug-ins that are available for DataTables, which can be used to enhance and customise your table even further. + + +## Support + +Support for DataTables is available through the [DataTables forums](//datatables.net/forums) and [commercial support options](//datatables.net/support) are available. + + +## License + +DataTables is release under the [MIT license](//datatables.net/license). You are free to use, modify and distribute this software, as long as the copyright header is left intact (specifically the comment block which starts with `/*!`. diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.bootstrap.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.bootstrap.css new file mode 100644 index 00000000..2bbb3ef2 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.bootstrap.css @@ -0,0 +1,184 @@ +table.dataTable { + clear: both; + margin-top: 6px !important; + margin-bottom: 6px !important; + max-width: none !important; + border-collapse: separate !important; +} +table.dataTable td, +table.dataTable th { + -webkit-box-sizing: content-box; + box-sizing: content-box; +} +table.dataTable td.dataTables_empty, +table.dataTable th.dataTables_empty { + text-align: center; +} +table.dataTable.nowrap th, +table.dataTable.nowrap td { + white-space: nowrap; +} + +div.dataTables_wrapper div.dataTables_length label { + font-weight: normal; + text-align: left; + white-space: nowrap; +} +div.dataTables_wrapper div.dataTables_length select { + width: 75px; + display: inline-block; +} +div.dataTables_wrapper div.dataTables_filter { + text-align: right; +} +div.dataTables_wrapper div.dataTables_filter label { + font-weight: normal; + white-space: nowrap; + text-align: left; +} +div.dataTables_wrapper div.dataTables_filter input { + margin-left: 0.5em; + display: inline-block; + width: auto; +} +div.dataTables_wrapper div.dataTables_info { + padding-top: 8px; + white-space: nowrap; +} +div.dataTables_wrapper div.dataTables_paginate { + margin: 0; + white-space: nowrap; + text-align: right; +} +div.dataTables_wrapper div.dataTables_paginate ul.pagination { + margin: 2px 0; + white-space: nowrap; +} +div.dataTables_wrapper div.dataTables_processing { + position: absolute; + top: 50%; + left: 50%; + width: 200px; + margin-left: -100px; + margin-top: -26px; + text-align: center; + padding: 1em 0; +} + +table.dataTable thead > tr > th.sorting_asc, table.dataTable thead > tr > th.sorting_desc, table.dataTable thead > tr > th.sorting, +table.dataTable thead > tr > td.sorting_asc, +table.dataTable thead > tr > td.sorting_desc, +table.dataTable thead > tr > td.sorting { + padding-right: 30px; +} +table.dataTable thead > tr > th:active, +table.dataTable thead > tr > td:active { + outline: none; +} +table.dataTable thead .sorting, +table.dataTable thead .sorting_asc, +table.dataTable thead .sorting_desc, +table.dataTable thead .sorting_asc_disabled, +table.dataTable thead .sorting_desc_disabled { + cursor: pointer; + position: relative; +} +table.dataTable thead .sorting:after, +table.dataTable thead .sorting_asc:after, +table.dataTable thead .sorting_desc:after, +table.dataTable thead .sorting_asc_disabled:after, +table.dataTable thead .sorting_desc_disabled:after { + position: absolute; + bottom: 8px; + right: 8px; + display: block; + font-family: 'Glyphicons Halflings'; + opacity: 0.5; +} +table.dataTable thead .sorting:after { + opacity: 0.2; + content: "\e150"; + /* sort */ +} +table.dataTable thead .sorting_asc:after { + content: "\e155"; + /* sort-by-attributes */ +} +table.dataTable thead .sorting_desc:after { + content: "\e156"; + /* sort-by-attributes-alt */ +} +table.dataTable thead .sorting_asc_disabled:after, +table.dataTable thead .sorting_desc_disabled:after { + color: #eee; +} + +div.dataTables_scrollHead table.dataTable { + margin-bottom: 0 !important; +} + +div.dataTables_scrollBody > table { + border-top: none; + margin-top: 0 !important; + margin-bottom: 0 !important; +} +div.dataTables_scrollBody > table > thead .sorting:after, +div.dataTables_scrollBody > table > thead .sorting_asc:after, +div.dataTables_scrollBody > table > thead .sorting_desc:after { + display: none; +} +div.dataTables_scrollBody > table > tbody > tr:first-child > th, +div.dataTables_scrollBody > table > tbody > tr:first-child > td { + border-top: none; +} + +div.dataTables_scrollFoot > table { + margin-top: 0 !important; + border-top: none; +} + +@media screen and (max-width: 767px) { + div.dataTables_wrapper div.dataTables_length, + div.dataTables_wrapper div.dataTables_filter, + div.dataTables_wrapper div.dataTables_info, + div.dataTables_wrapper div.dataTables_paginate { + text-align: center; + } +} +table.dataTable.table-condensed > thead > tr > th { + padding-right: 20px; +} +table.dataTable.table-condensed .sorting:after, +table.dataTable.table-condensed .sorting_asc:after, +table.dataTable.table-condensed .sorting_desc:after { + top: 6px; + right: 6px; +} + +table.table-bordered.dataTable th, +table.table-bordered.dataTable td { + border-left-width: 0; +} +table.table-bordered.dataTable th:last-child, table.table-bordered.dataTable th:last-child, +table.table-bordered.dataTable td:last-child, +table.table-bordered.dataTable td:last-child { + border-right-width: 0; +} +table.table-bordered.dataTable tbody th, +table.table-bordered.dataTable tbody td { + border-bottom-width: 0; +} + +div.dataTables_scrollHead table.table-bordered { + border-bottom-width: 0; +} + +div.table-responsive > div.dataTables_wrapper > div.row { + margin: 0; +} +div.table-responsive > div.dataTables_wrapper > div.row > div[class^="col-"]:first-child { + padding-left: 0; +} +div.table-responsive > div.dataTables_wrapper > div.row > div[class^="col-"]:last-child { + padding-right: 0; +} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.bootstrap.min.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.bootstrap.min.css new file mode 100644 index 00000000..66a70ab2 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.bootstrap.min.css @@ -0,0 +1 @@ +table.dataTable{clear:both;margin-top:6px !important;margin-bottom:6px !important;max-width:none !important;border-collapse:separate !important}table.dataTable td,table.dataTable th{-webkit-box-sizing:content-box;box-sizing:content-box}table.dataTable td.dataTables_empty,table.dataTable th.dataTables_empty{text-align:center}table.dataTable.nowrap th,table.dataTable.nowrap td{white-space:nowrap}div.dataTables_wrapper div.dataTables_length label{font-weight:normal;text-align:left;white-space:nowrap}div.dataTables_wrapper div.dataTables_length select{width:75px;display:inline-block}div.dataTables_wrapper div.dataTables_filter{text-align:right}div.dataTables_wrapper div.dataTables_filter label{font-weight:normal;white-space:nowrap;text-align:left}div.dataTables_wrapper div.dataTables_filter input{margin-left:0.5em;display:inline-block;width:auto}div.dataTables_wrapper div.dataTables_info{padding-top:8px;white-space:nowrap}div.dataTables_wrapper div.dataTables_paginate{margin:0;white-space:nowrap;text-align:right}div.dataTables_wrapper div.dataTables_paginate ul.pagination{margin:2px 0;white-space:nowrap}div.dataTables_wrapper div.dataTables_processing{position:absolute;top:50%;left:50%;width:200px;margin-left:-100px;margin-top:-26px;text-align:center;padding:1em 0}table.dataTable thead>tr>th.sorting_asc,table.dataTable thead>tr>th.sorting_desc,table.dataTable thead>tr>th.sorting,table.dataTable thead>tr>td.sorting_asc,table.dataTable thead>tr>td.sorting_desc,table.dataTable thead>tr>td.sorting{padding-right:30px}table.dataTable thead>tr>th:active,table.dataTable thead>tr>td:active{outline:none}table.dataTable thead .sorting,table.dataTable thead .sorting_asc,table.dataTable thead .sorting_desc,table.dataTable thead .sorting_asc_disabled,table.dataTable thead .sorting_desc_disabled{cursor:pointer;position:relative}table.dataTable thead .sorting:after,table.dataTable thead .sorting_asc:after,table.dataTable thead .sorting_desc:after,table.dataTable thead .sorting_asc_disabled:after,table.dataTable thead .sorting_desc_disabled:after{position:absolute;bottom:8px;right:8px;display:block;font-family:'Glyphicons Halflings';opacity:0.5}table.dataTable thead .sorting:after{opacity:0.2;content:"\e150"}table.dataTable thead .sorting_asc:after{content:"\e155"}table.dataTable thead .sorting_desc:after{content:"\e156"}table.dataTable thead .sorting_asc_disabled:after,table.dataTable thead .sorting_desc_disabled:after{color:#eee}div.dataTables_scrollHead table.dataTable{margin-bottom:0 !important}div.dataTables_scrollBody>table{border-top:none;margin-top:0 !important;margin-bottom:0 !important}div.dataTables_scrollBody>table>thead .sorting:after,div.dataTables_scrollBody>table>thead .sorting_asc:after,div.dataTables_scrollBody>table>thead .sorting_desc:after{display:none}div.dataTables_scrollBody>table>tbody>tr:first-child>th,div.dataTables_scrollBody>table>tbody>tr:first-child>td{border-top:none}div.dataTables_scrollFoot>table{margin-top:0 !important;border-top:none}@media screen and (max-width: 767px){div.dataTables_wrapper div.dataTables_length,div.dataTables_wrapper div.dataTables_filter,div.dataTables_wrapper div.dataTables_info,div.dataTables_wrapper div.dataTables_paginate{text-align:center}}table.dataTable.table-condensed>thead>tr>th{padding-right:20px}table.dataTable.table-condensed .sorting:after,table.dataTable.table-condensed .sorting_asc:after,table.dataTable.table-condensed .sorting_desc:after{top:6px;right:6px}table.table-bordered.dataTable th,table.table-bordered.dataTable td{border-left-width:0}table.table-bordered.dataTable th:last-child,table.table-bordered.dataTable th:last-child,table.table-bordered.dataTable td:last-child,table.table-bordered.dataTable td:last-child{border-right-width:0}table.table-bordered.dataTable tbody th,table.table-bordered.dataTable tbody td{border-bottom-width:0}div.dataTables_scrollHead table.table-bordered{border-bottom-width:0}div.table-responsive>div.dataTables_wrapper>div.row{margin:0}div.table-responsive>div.dataTables_wrapper>div.row>div[class^="col-"]:first-child{padding-left:0}div.table-responsive>div.dataTables_wrapper>div.row>div[class^="col-"]:last-child{padding-right:0} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.bootstrap4.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.bootstrap4.css new file mode 100644 index 00000000..07c97597 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.bootstrap4.css @@ -0,0 +1,194 @@ +table.dataTable { + clear: both; + margin-top: 6px !important; + margin-bottom: 6px !important; + max-width: none !important; + border-collapse: separate !important; +} +table.dataTable td, +table.dataTable th { + -webkit-box-sizing: content-box; + box-sizing: content-box; +} +table.dataTable td.dataTables_empty, +table.dataTable th.dataTables_empty { + text-align: center; +} +table.dataTable.nowrap th, +table.dataTable.nowrap td { + white-space: nowrap; +} + +div.dataTables_wrapper div.dataTables_length label { + font-weight: normal; + text-align: left; + white-space: nowrap; +} +div.dataTables_wrapper div.dataTables_length select { + width: 75px; + display: inline-block; +} +div.dataTables_wrapper div.dataTables_filter { + text-align: right; +} +div.dataTables_wrapper div.dataTables_filter label { + font-weight: normal; + white-space: nowrap; + text-align: left; +} +div.dataTables_wrapper div.dataTables_filter input { + margin-left: 0.5em; + display: inline-block; + width: auto; +} +div.dataTables_wrapper div.dataTables_info { + padding-top: 0.85em; + white-space: nowrap; +} +div.dataTables_wrapper div.dataTables_paginate { + margin: 0; + white-space: nowrap; + text-align: right; +} +div.dataTables_wrapper div.dataTables_paginate ul.pagination { + margin: 2px 0; + white-space: nowrap; + justify-content: flex-end; +} +div.dataTables_wrapper div.dataTables_processing { + position: absolute; + top: 50%; + left: 50%; + width: 200px; + margin-left: -100px; + margin-top: -26px; + text-align: center; + padding: 1em 0; +} + +table.dataTable thead > tr > th.sorting_asc, table.dataTable thead > tr > th.sorting_desc, table.dataTable thead > tr > th.sorting, +table.dataTable thead > tr > td.sorting_asc, +table.dataTable thead > tr > td.sorting_desc, +table.dataTable thead > tr > td.sorting { + padding-right: 30px; +} +table.dataTable thead > tr > th:active, +table.dataTable thead > tr > td:active { + outline: none; +} +table.dataTable thead .sorting, +table.dataTable thead .sorting_asc, +table.dataTable thead .sorting_desc, +table.dataTable thead .sorting_asc_disabled, +table.dataTable thead .sorting_desc_disabled { + cursor: pointer; + position: relative; +} +table.dataTable thead .sorting:before, table.dataTable thead .sorting:after, +table.dataTable thead .sorting_asc:before, +table.dataTable thead .sorting_asc:after, +table.dataTable thead .sorting_desc:before, +table.dataTable thead .sorting_desc:after, +table.dataTable thead .sorting_asc_disabled:before, +table.dataTable thead .sorting_asc_disabled:after, +table.dataTable thead .sorting_desc_disabled:before, +table.dataTable thead .sorting_desc_disabled:after { + position: absolute; + bottom: 0.9em; + display: block; + opacity: 0.3; +} +table.dataTable thead .sorting:before, +table.dataTable thead .sorting_asc:before, +table.dataTable thead .sorting_desc:before, +table.dataTable thead .sorting_asc_disabled:before, +table.dataTable thead .sorting_desc_disabled:before { + right: 1em; + content: "\2191"; +} +table.dataTable thead .sorting:after, +table.dataTable thead .sorting_asc:after, +table.dataTable thead .sorting_desc:after, +table.dataTable thead .sorting_asc_disabled:after, +table.dataTable thead .sorting_desc_disabled:after { + right: 0.5em; + content: "\2193"; +} +table.dataTable thead .sorting_asc:before, +table.dataTable thead .sorting_desc:after { + opacity: 1; +} +table.dataTable thead .sorting_asc_disabled:before, +table.dataTable thead .sorting_desc_disabled:after { + opacity: 0; +} + +div.dataTables_scrollHead table.dataTable { + margin-bottom: 0 !important; +} + +div.dataTables_scrollBody table { + border-top: none; + margin-top: 0 !important; + margin-bottom: 0 !important; +} +div.dataTables_scrollBody table thead .sorting:after, +div.dataTables_scrollBody table thead .sorting_asc:after, +div.dataTables_scrollBody table thead .sorting_desc:after { + display: none; +} +div.dataTables_scrollBody table tbody tr:first-child th, +div.dataTables_scrollBody table tbody tr:first-child td { + border-top: none; +} + +div.dataTables_scrollFoot table { + margin-top: 0 !important; + border-top: none; +} + +@media screen and (max-width: 767px) { + div.dataTables_wrapper div.dataTables_length, + div.dataTables_wrapper div.dataTables_filter, + div.dataTables_wrapper div.dataTables_info, + div.dataTables_wrapper div.dataTables_paginate { + text-align: center; + } +} +table.dataTable.table-condensed > thead > tr > th { + padding-right: 20px; +} +table.dataTable.table-condensed .sorting:after, +table.dataTable.table-condensed .sorting_asc:after, +table.dataTable.table-condensed .sorting_desc:after { + top: 6px; + right: 6px; +} + +table.table-bordered.dataTable th, +table.table-bordered.dataTable td { + border-left-width: 0; +} +table.table-bordered.dataTable th:last-child, table.table-bordered.dataTable th:last-child, +table.table-bordered.dataTable td:last-child, +table.table-bordered.dataTable td:last-child { + border-right-width: 0; +} +table.table-bordered.dataTable tbody th, +table.table-bordered.dataTable tbody td { + border-bottom-width: 0; +} + +div.dataTables_scrollHead table.table-bordered { + border-bottom-width: 0; +} + +div.table-responsive > div.dataTables_wrapper > div.row { + margin: 0; +} +div.table-responsive > div.dataTables_wrapper > div.row > div[class^="col-"]:first-child { + padding-left: 0; +} +div.table-responsive > div.dataTables_wrapper > div.row > div[class^="col-"]:last-child { + padding-right: 0; +} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.bootstrap4.min.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.bootstrap4.min.css new file mode 100644 index 00000000..5ec0a8b7 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.bootstrap4.min.css @@ -0,0 +1 @@ +table.dataTable{clear:both;margin-top:6px !important;margin-bottom:6px !important;max-width:none !important;border-collapse:separate !important}table.dataTable td,table.dataTable th{-webkit-box-sizing:content-box;box-sizing:content-box}table.dataTable td.dataTables_empty,table.dataTable th.dataTables_empty{text-align:center}table.dataTable.nowrap th,table.dataTable.nowrap td{white-space:nowrap}div.dataTables_wrapper div.dataTables_length label{font-weight:normal;text-align:left;white-space:nowrap}div.dataTables_wrapper div.dataTables_length select{width:75px;display:inline-block}div.dataTables_wrapper div.dataTables_filter{text-align:right}div.dataTables_wrapper div.dataTables_filter label{font-weight:normal;white-space:nowrap;text-align:left}div.dataTables_wrapper div.dataTables_filter input{margin-left:0.5em;display:inline-block;width:auto}div.dataTables_wrapper div.dataTables_info{padding-top:0.85em;white-space:nowrap}div.dataTables_wrapper div.dataTables_paginate{margin:0;white-space:nowrap;text-align:right}div.dataTables_wrapper div.dataTables_paginate ul.pagination{margin:2px 0;white-space:nowrap;justify-content:flex-end}div.dataTables_wrapper div.dataTables_processing{position:absolute;top:50%;left:50%;width:200px;margin-left:-100px;margin-top:-26px;text-align:center;padding:1em 0}table.dataTable thead>tr>th.sorting_asc,table.dataTable thead>tr>th.sorting_desc,table.dataTable thead>tr>th.sorting,table.dataTable thead>tr>td.sorting_asc,table.dataTable thead>tr>td.sorting_desc,table.dataTable thead>tr>td.sorting{padding-right:30px}table.dataTable thead>tr>th:active,table.dataTable thead>tr>td:active{outline:none}table.dataTable thead .sorting,table.dataTable thead .sorting_asc,table.dataTable thead .sorting_desc,table.dataTable thead .sorting_asc_disabled,table.dataTable thead .sorting_desc_disabled{cursor:pointer;position:relative}table.dataTable thead .sorting:before,table.dataTable thead .sorting:after,table.dataTable thead .sorting_asc:before,table.dataTable thead .sorting_asc:after,table.dataTable thead .sorting_desc:before,table.dataTable thead .sorting_desc:after,table.dataTable thead .sorting_asc_disabled:before,table.dataTable thead .sorting_asc_disabled:after,table.dataTable thead .sorting_desc_disabled:before,table.dataTable thead .sorting_desc_disabled:after{position:absolute;bottom:0.9em;display:block;opacity:0.3}table.dataTable thead .sorting:before,table.dataTable thead .sorting_asc:before,table.dataTable thead .sorting_desc:before,table.dataTable thead .sorting_asc_disabled:before,table.dataTable thead .sorting_desc_disabled:before{right:1em;content:"\2191"}table.dataTable thead .sorting:after,table.dataTable thead .sorting_asc:after,table.dataTable thead .sorting_desc:after,table.dataTable thead .sorting_asc_disabled:after,table.dataTable thead .sorting_desc_disabled:after{right:0.5em;content:"\2193"}table.dataTable thead .sorting_asc:before,table.dataTable thead .sorting_desc:after{opacity:1}table.dataTable thead .sorting_asc_disabled:before,table.dataTable thead .sorting_desc_disabled:after{opacity:0}div.dataTables_scrollHead table.dataTable{margin-bottom:0 !important}div.dataTables_scrollBody table{border-top:none;margin-top:0 !important;margin-bottom:0 !important}div.dataTables_scrollBody table thead .sorting:after,div.dataTables_scrollBody table thead .sorting_asc:after,div.dataTables_scrollBody table thead .sorting_desc:after{display:none}div.dataTables_scrollBody table tbody tr:first-child th,div.dataTables_scrollBody table tbody tr:first-child td{border-top:none}div.dataTables_scrollFoot table{margin-top:0 !important;border-top:none}@media screen and (max-width: 767px){div.dataTables_wrapper div.dataTables_length,div.dataTables_wrapper div.dataTables_filter,div.dataTables_wrapper div.dataTables_info,div.dataTables_wrapper div.dataTables_paginate{text-align:center}}table.dataTable.table-condensed>thead>tr>th{padding-right:20px}table.dataTable.table-condensed .sorting:after,table.dataTable.table-condensed .sorting_asc:after,table.dataTable.table-condensed .sorting_desc:after{top:6px;right:6px}table.table-bordered.dataTable th,table.table-bordered.dataTable td{border-left-width:0}table.table-bordered.dataTable th:last-child,table.table-bordered.dataTable th:last-child,table.table-bordered.dataTable td:last-child,table.table-bordered.dataTable td:last-child{border-right-width:0}table.table-bordered.dataTable tbody th,table.table-bordered.dataTable tbody td{border-bottom-width:0}div.dataTables_scrollHead table.table-bordered{border-bottom-width:0}div.table-responsive>div.dataTables_wrapper>div.row{margin:0}div.table-responsive>div.dataTables_wrapper>div.row>div[class^="col-"]:first-child{padding-left:0}div.table-responsive>div.dataTables_wrapper>div.row>div[class^="col-"]:last-child{padding-right:0} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.foundation.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.foundation.css new file mode 100644 index 00000000..79848c95 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.foundation.css @@ -0,0 +1,118 @@ +table.dataTable { + clear: both; + margin: 0.5em 0 !important; + max-width: none !important; + width: 100%; +} +table.dataTable td, +table.dataTable th { + -webkit-box-sizing: content-box; + box-sizing: content-box; +} +table.dataTable td.dataTables_empty, +table.dataTable th.dataTables_empty { + text-align: center; +} +table.dataTable.nowrap th, table.dataTable.nowrap td { + white-space: nowrap; +} + +div.dataTables_wrapper { + position: relative; +} +div.dataTables_wrapper div.dataTables_length label { + float: left; + text-align: left; + margin-bottom: 0; +} +div.dataTables_wrapper div.dataTables_length select { + width: 75px; + margin-bottom: 0; +} +div.dataTables_wrapper div.dataTables_filter label { + float: right; + margin-bottom: 0; +} +div.dataTables_wrapper div.dataTables_filter input { + display: inline-block !important; + width: auto !important; + margin-bottom: 0; + margin-left: 0.5em; +} +div.dataTables_wrapper div.dataTables_info { + padding-top: 2px; +} +div.dataTables_wrapper div.dataTables_paginate { + float: right; + margin: 0; +} +div.dataTables_wrapper div.dataTables_processing { + position: absolute; + top: 50%; + left: 50%; + width: 200px; + margin-left: -100px; + margin-top: -26px; + text-align: center; + padding: 1rem 0; +} + +table.dataTable thead > tr > th.sorting_asc, table.dataTable thead > tr > th.sorting_desc, table.dataTable thead > tr > th.sorting, +table.dataTable thead > tr > td.sorting_asc, +table.dataTable thead > tr > td.sorting_desc, +table.dataTable thead > tr > td.sorting { + padding-right: 1.5rem; +} +table.dataTable thead > tr > th:active, +table.dataTable thead > tr > td:active { + outline: none; +} +table.dataTable thead .sorting, +table.dataTable thead .sorting_asc, +table.dataTable thead .sorting_desc, +table.dataTable thead .sorting_asc_disabled, +table.dataTable thead .sorting_desc_disabled { + cursor: pointer; +} +table.dataTable thead .sorting, +table.dataTable thead .sorting_asc, +table.dataTable thead .sorting_desc, +table.dataTable thead .sorting_asc_disabled, +table.dataTable thead .sorting_desc_disabled { + background-repeat: no-repeat; + background-position: center right; +} +table.dataTable thead .sorting { + background-image: url("../images/sort_both.png"); +} +table.dataTable thead .sorting_asc { + background-image: url("../images/sort_asc.png"); +} +table.dataTable thead .sorting_desc { + background-image: url("../images/sort_desc.png"); +} +table.dataTable thead .sorting_asc_disabled { + background-image: url("../images/sort_asc_disabled.png"); +} +table.dataTable thead .sorting_desc_disabled { + background-image: url("../images/sort_desc_disabled.png"); +} + +div.dataTables_scrollHead table { + margin-bottom: 0 !important; +} + +div.dataTables_scrollBody table { + border-top: none; + margin-top: 0 !important; + margin-bottom: 0 !important; +} +div.dataTables_scrollBody table tbody tr:first-child th, +div.dataTables_scrollBody table tbody tr:first-child td { + border-top: none; +} + +div.dataTables_scrollFoot table { + margin-top: 0 !important; + border-top: none; +} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.foundation.min.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.foundation.min.css new file mode 100644 index 00000000..73af41ef --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.foundation.min.css @@ -0,0 +1 @@ +table.dataTable{clear:both;margin:0.5em 0 !important;max-width:none !important;width:100%}table.dataTable td,table.dataTable th{-webkit-box-sizing:content-box;box-sizing:content-box}table.dataTable td.dataTables_empty,table.dataTable th.dataTables_empty{text-align:center}table.dataTable.nowrap th,table.dataTable.nowrap td{white-space:nowrap}div.dataTables_wrapper{position:relative}div.dataTables_wrapper div.dataTables_length label{float:left;text-align:left;margin-bottom:0}div.dataTables_wrapper div.dataTables_length select{width:75px;margin-bottom:0}div.dataTables_wrapper div.dataTables_filter label{float:right;margin-bottom:0}div.dataTables_wrapper div.dataTables_filter input{display:inline-block !important;width:auto !important;margin-bottom:0;margin-left:0.5em}div.dataTables_wrapper div.dataTables_info{padding-top:2px}div.dataTables_wrapper div.dataTables_paginate{float:right;margin:0}div.dataTables_wrapper div.dataTables_processing{position:absolute;top:50%;left:50%;width:200px;margin-left:-100px;margin-top:-26px;text-align:center;padding:1rem 0}table.dataTable thead>tr>th.sorting_asc,table.dataTable thead>tr>th.sorting_desc,table.dataTable thead>tr>th.sorting,table.dataTable thead>tr>td.sorting_asc,table.dataTable thead>tr>td.sorting_desc,table.dataTable thead>tr>td.sorting{padding-right:1.5rem}table.dataTable thead>tr>th:active,table.dataTable thead>tr>td:active{outline:none}table.dataTable thead .sorting,table.dataTable thead .sorting_asc,table.dataTable thead .sorting_desc,table.dataTable thead .sorting_asc_disabled,table.dataTable thead .sorting_desc_disabled{cursor:pointer}table.dataTable thead .sorting,table.dataTable thead .sorting_asc,table.dataTable thead .sorting_desc,table.dataTable thead .sorting_asc_disabled,table.dataTable thead .sorting_desc_disabled{background-repeat:no-repeat;background-position:center right}table.dataTable thead .sorting{background-image:url("../images/sort_both.png")}table.dataTable thead .sorting_asc{background-image:url("../images/sort_asc.png")}table.dataTable thead .sorting_desc{background-image:url("../images/sort_desc.png")}table.dataTable thead .sorting_asc_disabled{background-image:url("../images/sort_asc_disabled.png")}table.dataTable thead .sorting_desc_disabled{background-image:url("../images/sort_desc_disabled.png")}div.dataTables_scrollHead table{margin-bottom:0 !important}div.dataTables_scrollBody table{border-top:none;margin-top:0 !important;margin-bottom:0 !important}div.dataTables_scrollBody table tbody tr:first-child th,div.dataTables_scrollBody table tbody tr:first-child td{border-top:none}div.dataTables_scrollFoot table{margin-top:0 !important;border-top:none} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.jqueryui.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.jqueryui.css new file mode 100644 index 00000000..dcc8f82f --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.jqueryui.css @@ -0,0 +1,482 @@ +/* + * Table styles + */ +table.dataTable { + width: 100%; + margin: 0 auto; + clear: both; + border-collapse: separate; + border-spacing: 0; + /* + * Header and footer styles + */ + /* + * Body styles + */ +} +table.dataTable thead th, +table.dataTable tfoot th { + font-weight: bold; +} +table.dataTable thead th, +table.dataTable thead td { + padding: 10px 18px; +} +table.dataTable thead th:active, +table.dataTable thead td:active { + outline: none; +} +table.dataTable tfoot th, +table.dataTable tfoot td { + padding: 10px 18px 6px 18px; +} +table.dataTable tbody tr { + background-color: #ffffff; +} +table.dataTable tbody tr.selected { + background-color: #B0BED9; +} +table.dataTable tbody th, +table.dataTable tbody td { + padding: 8px 10px; +} +table.dataTable.row-border tbody th, table.dataTable.row-border tbody td, table.dataTable.display tbody th, table.dataTable.display tbody td { + border-top: 1px solid #ddd; +} +table.dataTable.row-border tbody tr:first-child th, +table.dataTable.row-border tbody tr:first-child td, table.dataTable.display tbody tr:first-child th, +table.dataTable.display tbody tr:first-child td { + border-top: none; +} +table.dataTable.cell-border tbody th, table.dataTable.cell-border tbody td { + border-top: 1px solid #ddd; + border-right: 1px solid #ddd; +} +table.dataTable.cell-border tbody tr th:first-child, +table.dataTable.cell-border tbody tr td:first-child { + border-left: 1px solid #ddd; +} +table.dataTable.cell-border tbody tr:first-child th, +table.dataTable.cell-border tbody tr:first-child td { + border-top: none; +} +table.dataTable.stripe tbody tr.odd, table.dataTable.display tbody tr.odd { + background-color: #f9f9f9; +} +table.dataTable.stripe tbody tr.odd.selected, table.dataTable.display tbody tr.odd.selected { + background-color: #acbad4; +} +table.dataTable.hover tbody tr:hover, table.dataTable.display tbody tr:hover { + background-color: #f6f6f6; +} +table.dataTable.hover tbody tr:hover.selected, table.dataTable.display tbody tr:hover.selected { + background-color: #aab7d1; +} +table.dataTable.order-column tbody tr > .sorting_1, +table.dataTable.order-column tbody tr > .sorting_2, +table.dataTable.order-column tbody tr > .sorting_3, table.dataTable.display tbody tr > .sorting_1, +table.dataTable.display tbody tr > .sorting_2, +table.dataTable.display tbody tr > .sorting_3 { + background-color: #fafafa; +} +table.dataTable.order-column tbody tr.selected > .sorting_1, +table.dataTable.order-column tbody tr.selected > .sorting_2, +table.dataTable.order-column tbody tr.selected > .sorting_3, table.dataTable.display tbody tr.selected > .sorting_1, +table.dataTable.display tbody tr.selected > .sorting_2, +table.dataTable.display tbody tr.selected > .sorting_3 { + background-color: #acbad5; +} +table.dataTable.display tbody tr.odd > .sorting_1, table.dataTable.order-column.stripe tbody tr.odd > .sorting_1 { + background-color: #f1f1f1; +} +table.dataTable.display tbody tr.odd > .sorting_2, table.dataTable.order-column.stripe tbody tr.odd > .sorting_2 { + background-color: #f3f3f3; +} +table.dataTable.display tbody tr.odd > .sorting_3, table.dataTable.order-column.stripe tbody tr.odd > .sorting_3 { + background-color: whitesmoke; +} +table.dataTable.display tbody tr.odd.selected > .sorting_1, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_1 { + background-color: #a6b4cd; +} +table.dataTable.display tbody tr.odd.selected > .sorting_2, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_2 { + background-color: #a8b5cf; +} +table.dataTable.display tbody tr.odd.selected > .sorting_3, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_3 { + background-color: #a9b7d1; +} +table.dataTable.display tbody tr.even > .sorting_1, table.dataTable.order-column.stripe tbody tr.even > .sorting_1 { + background-color: #fafafa; +} +table.dataTable.display tbody tr.even > .sorting_2, table.dataTable.order-column.stripe tbody tr.even > .sorting_2 { + background-color: #fcfcfc; +} +table.dataTable.display tbody tr.even > .sorting_3, table.dataTable.order-column.stripe tbody tr.even > .sorting_3 { + background-color: #fefefe; +} +table.dataTable.display tbody tr.even.selected > .sorting_1, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_1 { + background-color: #acbad5; +} +table.dataTable.display tbody tr.even.selected > .sorting_2, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_2 { + background-color: #aebcd6; +} +table.dataTable.display tbody tr.even.selected > .sorting_3, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_3 { + background-color: #afbdd8; +} +table.dataTable.display tbody tr:hover > .sorting_1, table.dataTable.order-column.hover tbody tr:hover > .sorting_1 { + background-color: #eaeaea; +} +table.dataTable.display tbody tr:hover > .sorting_2, table.dataTable.order-column.hover tbody tr:hover > .sorting_2 { + background-color: #ececec; +} +table.dataTable.display tbody tr:hover > .sorting_3, table.dataTable.order-column.hover tbody tr:hover > .sorting_3 { + background-color: #efefef; +} +table.dataTable.display tbody tr:hover.selected > .sorting_1, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_1 { + background-color: #a2aec7; +} +table.dataTable.display tbody tr:hover.selected > .sorting_2, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_2 { + background-color: #a3b0c9; +} +table.dataTable.display tbody tr:hover.selected > .sorting_3, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_3 { + background-color: #a5b2cb; +} +table.dataTable.no-footer { + border-bottom: 1px solid #111; +} +table.dataTable.nowrap th, table.dataTable.nowrap td { + white-space: nowrap; +} +table.dataTable.compact thead th, +table.dataTable.compact thead td { + padding: 4px 17px 4px 4px; +} +table.dataTable.compact tfoot th, +table.dataTable.compact tfoot td { + padding: 4px; +} +table.dataTable.compact tbody th, +table.dataTable.compact tbody td { + padding: 4px; +} +table.dataTable th.dt-left, +table.dataTable td.dt-left { + text-align: left; +} +table.dataTable th.dt-center, +table.dataTable td.dt-center, +table.dataTable td.dataTables_empty { + text-align: center; +} +table.dataTable th.dt-right, +table.dataTable td.dt-right { + text-align: right; +} +table.dataTable th.dt-justify, +table.dataTable td.dt-justify { + text-align: justify; +} +table.dataTable th.dt-nowrap, +table.dataTable td.dt-nowrap { + white-space: nowrap; +} +table.dataTable thead th.dt-head-left, +table.dataTable thead td.dt-head-left, +table.dataTable tfoot th.dt-head-left, +table.dataTable tfoot td.dt-head-left { + text-align: left; +} +table.dataTable thead th.dt-head-center, +table.dataTable thead td.dt-head-center, +table.dataTable tfoot th.dt-head-center, +table.dataTable tfoot td.dt-head-center { + text-align: center; +} +table.dataTable thead th.dt-head-right, +table.dataTable thead td.dt-head-right, +table.dataTable tfoot th.dt-head-right, +table.dataTable tfoot td.dt-head-right { + text-align: right; +} +table.dataTable thead th.dt-head-justify, +table.dataTable thead td.dt-head-justify, +table.dataTable tfoot th.dt-head-justify, +table.dataTable tfoot td.dt-head-justify { + text-align: justify; +} +table.dataTable thead th.dt-head-nowrap, +table.dataTable thead td.dt-head-nowrap, +table.dataTable tfoot th.dt-head-nowrap, +table.dataTable tfoot td.dt-head-nowrap { + white-space: nowrap; +} +table.dataTable tbody th.dt-body-left, +table.dataTable tbody td.dt-body-left { + text-align: left; +} +table.dataTable tbody th.dt-body-center, +table.dataTable tbody td.dt-body-center { + text-align: center; +} +table.dataTable tbody th.dt-body-right, +table.dataTable tbody td.dt-body-right { + text-align: right; +} +table.dataTable tbody th.dt-body-justify, +table.dataTable tbody td.dt-body-justify { + text-align: justify; +} +table.dataTable tbody th.dt-body-nowrap, +table.dataTable tbody td.dt-body-nowrap { + white-space: nowrap; +} + +table.dataTable, +table.dataTable th, +table.dataTable td { + -webkit-box-sizing: content-box; + box-sizing: content-box; +} + +/* + * Control feature layout + */ +.dataTables_wrapper { + position: relative; + clear: both; + *zoom: 1; + zoom: 1; +} +.dataTables_wrapper .dataTables_length { + float: left; +} +.dataTables_wrapper .dataTables_filter { + float: right; + text-align: right; +} +.dataTables_wrapper .dataTables_filter input { + margin-left: 0.5em; +} +.dataTables_wrapper .dataTables_info { + clear: both; + float: left; + padding-top: 0.755em; +} +.dataTables_wrapper .dataTables_paginate { + float: right; + text-align: right; + padding-top: 0.25em; +} +.dataTables_wrapper .dataTables_paginate .paginate_button { + box-sizing: border-box; + display: inline-block; + min-width: 1.5em; + padding: 0.5em 1em; + margin-left: 2px; + text-align: center; + text-decoration: none !important; + cursor: pointer; + *cursor: hand; + color: #333 !important; + border: 1px solid transparent; + border-radius: 2px; +} +.dataTables_wrapper .dataTables_paginate .paginate_button.current, .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover { + color: #333 !important; + border: 1px solid #979797; + background-color: white; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, white), color-stop(100%, #dcdcdc)); + /* Chrome,Safari4+ */ + background: -webkit-linear-gradient(top, white 0%, #dcdcdc 100%); + /* Chrome10+,Safari5.1+ */ + background: -moz-linear-gradient(top, white 0%, #dcdcdc 100%); + /* FF3.6+ */ + background: -ms-linear-gradient(top, white 0%, #dcdcdc 100%); + /* IE10+ */ + background: -o-linear-gradient(top, white 0%, #dcdcdc 100%); + /* Opera 11.10+ */ + background: linear-gradient(to bottom, white 0%, #dcdcdc 100%); + /* W3C */ +} +.dataTables_wrapper .dataTables_paginate .paginate_button.disabled, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active { + cursor: default; + color: #666 !important; + border: 1px solid transparent; + background: transparent; + box-shadow: none; +} +.dataTables_wrapper .dataTables_paginate .paginate_button:hover { + color: white !important; + border: 1px solid #111; + background-color: #585858; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #585858), color-stop(100%, #111)); + /* Chrome,Safari4+ */ + background: -webkit-linear-gradient(top, #585858 0%, #111 100%); + /* Chrome10+,Safari5.1+ */ + background: -moz-linear-gradient(top, #585858 0%, #111 100%); + /* FF3.6+ */ + background: -ms-linear-gradient(top, #585858 0%, #111 100%); + /* IE10+ */ + background: -o-linear-gradient(top, #585858 0%, #111 100%); + /* Opera 11.10+ */ + background: linear-gradient(to bottom, #585858 0%, #111 100%); + /* W3C */ +} +.dataTables_wrapper .dataTables_paginate .paginate_button:active { + outline: none; + background-color: #2b2b2b; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #2b2b2b), color-stop(100%, #0c0c0c)); + /* Chrome,Safari4+ */ + background: -webkit-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%); + /* Chrome10+,Safari5.1+ */ + background: -moz-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%); + /* FF3.6+ */ + background: -ms-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%); + /* IE10+ */ + background: -o-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%); + /* Opera 11.10+ */ + background: linear-gradient(to bottom, #2b2b2b 0%, #0c0c0c 100%); + /* W3C */ + box-shadow: inset 0 0 3px #111; +} +.dataTables_wrapper .dataTables_paginate .ellipsis { + padding: 0 1em; +} +.dataTables_wrapper .dataTables_processing { + position: absolute; + top: 50%; + left: 50%; + width: 100%; + height: 40px; + margin-left: -50%; + margin-top: -25px; + padding-top: 20px; + text-align: center; + font-size: 1.2em; + background-color: white; + background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(25%, rgba(255, 255, 255, 0.9)), color-stop(75%, rgba(255, 255, 255, 0.9)), color-stop(100%, rgba(255, 255, 255, 0))); + background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%); + background: -moz-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%); + background: -ms-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%); + background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%); + background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%); +} +.dataTables_wrapper .dataTables_length, +.dataTables_wrapper .dataTables_filter, +.dataTables_wrapper .dataTables_info, +.dataTables_wrapper .dataTables_processing, +.dataTables_wrapper .dataTables_paginate { + color: #333; +} +.dataTables_wrapper .dataTables_scroll { + clear: both; +} +.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody { + *margin-top: -1px; + -webkit-overflow-scrolling: touch; +} +.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > th, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > td, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > th, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > td { + vertical-align: middle; +} +.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > th > div.dataTables_sizing, +.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > td > div.dataTables_sizing, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > th > div.dataTables_sizing, +.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > td > div.dataTables_sizing { + height: 0; + overflow: hidden; + margin: 0 !important; + padding: 0 !important; +} +.dataTables_wrapper.no-footer .dataTables_scrollBody { + border-bottom: 1px solid #111; +} +.dataTables_wrapper.no-footer div.dataTables_scrollHead > table, +.dataTables_wrapper.no-footer div.dataTables_scrollBody > table { + border-bottom: none; +} +.dataTables_wrapper:after { + visibility: hidden; + display: block; + content: ""; + clear: both; + height: 0; +} + +@media screen and (max-width: 767px) { + .dataTables_wrapper .dataTables_info, + .dataTables_wrapper .dataTables_paginate { + float: none; + text-align: center; + } + .dataTables_wrapper .dataTables_paginate { + margin-top: 0.5em; + } +} +@media screen and (max-width: 640px) { + .dataTables_wrapper .dataTables_length, + .dataTables_wrapper .dataTables_filter { + float: none; + text-align: center; + } + .dataTables_wrapper .dataTables_filter { + margin-top: 0.5em; + } +} +table.dataTable thead th div.DataTables_sort_wrapper { + position: relative; +} +table.dataTable thead th div.DataTables_sort_wrapper span { + position: absolute; + top: 50%; + margin-top: -8px; + right: -18px; +} +table.dataTable thead th.ui-state-default, +table.dataTable tfoot th.ui-state-default { + border-left-width: 0; +} +table.dataTable thead th.ui-state-default:first-child, +table.dataTable tfoot th.ui-state-default:first-child { + border-left-width: 1px; +} + +/* + * Control feature layout + */ +.dataTables_wrapper .dataTables_paginate .fg-button { + box-sizing: border-box; + display: inline-block; + min-width: 1.5em; + padding: 0.5em; + margin-left: 2px; + text-align: center; + text-decoration: none !important; + cursor: pointer; + *cursor: hand; + border: 1px solid transparent; +} +.dataTables_wrapper .dataTables_paginate .fg-button:active { + outline: none; +} +.dataTables_wrapper .dataTables_paginate .fg-button:first-child { + border-top-left-radius: 3px; + border-bottom-left-radius: 3px; +} +.dataTables_wrapper .dataTables_paginate .fg-button:last-child { + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; +} +.dataTables_wrapper .ui-widget-header { + font-weight: normal; +} +.dataTables_wrapper .ui-toolbar { + padding: 8px; +} +.dataTables_wrapper.no-footer .dataTables_scrollBody { + border-bottom: none; +} +.dataTables_wrapper .dataTables_length, +.dataTables_wrapper .dataTables_filter, +.dataTables_wrapper .dataTables_info, +.dataTables_wrapper .dataTables_processing, +.dataTables_wrapper .dataTables_paginate { + color: inherit; +} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.jqueryui.min.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.jqueryui.min.css new file mode 100644 index 00000000..fe64abca --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.jqueryui.min.css @@ -0,0 +1 @@ +table.dataTable{width:100%;margin:0 auto;clear:both;border-collapse:separate;border-spacing:0}table.dataTable thead th,table.dataTable tfoot th{font-weight:bold}table.dataTable thead th,table.dataTable thead td{padding:10px 18px}table.dataTable thead th:active,table.dataTable thead td:active{outline:none}table.dataTable tfoot th,table.dataTable tfoot td{padding:10px 18px 6px 18px}table.dataTable tbody tr{background-color:#ffffff}table.dataTable tbody tr.selected{background-color:#B0BED9}table.dataTable tbody th,table.dataTable tbody td{padding:8px 10px}table.dataTable.row-border tbody th,table.dataTable.row-border tbody td,table.dataTable.display tbody th,table.dataTable.display tbody td{border-top:1px solid #ddd}table.dataTable.row-border tbody tr:first-child th,table.dataTable.row-border tbody tr:first-child td,table.dataTable.display tbody tr:first-child th,table.dataTable.display tbody tr:first-child td{border-top:none}table.dataTable.cell-border tbody th,table.dataTable.cell-border tbody td{border-top:1px solid #ddd;border-right:1px solid #ddd}table.dataTable.cell-border tbody tr th:first-child,table.dataTable.cell-border tbody tr td:first-child{border-left:1px solid #ddd}table.dataTable.cell-border tbody tr:first-child th,table.dataTable.cell-border tbody tr:first-child td{border-top:none}table.dataTable.stripe tbody tr.odd,table.dataTable.display tbody tr.odd{background-color:#f9f9f9}table.dataTable.stripe tbody tr.odd.selected,table.dataTable.display tbody tr.odd.selected{background-color:#acbad4}table.dataTable.hover tbody tr:hover,table.dataTable.display tbody tr:hover{background-color:#f6f6f6}table.dataTable.hover tbody tr:hover.selected,table.dataTable.display tbody tr:hover.selected{background-color:#aab7d1}table.dataTable.order-column tbody tr>.sorting_1,table.dataTable.order-column tbody tr>.sorting_2,table.dataTable.order-column tbody tr>.sorting_3,table.dataTable.display tbody tr>.sorting_1,table.dataTable.display tbody tr>.sorting_2,table.dataTable.display tbody tr>.sorting_3{background-color:#fafafa}table.dataTable.order-column tbody tr.selected>.sorting_1,table.dataTable.order-column tbody tr.selected>.sorting_2,table.dataTable.order-column tbody tr.selected>.sorting_3,table.dataTable.display tbody tr.selected>.sorting_1,table.dataTable.display tbody tr.selected>.sorting_2,table.dataTable.display tbody tr.selected>.sorting_3{background-color:#acbad5}table.dataTable.display tbody tr.odd>.sorting_1,table.dataTable.order-column.stripe tbody tr.odd>.sorting_1{background-color:#f1f1f1}table.dataTable.display tbody tr.odd>.sorting_2,table.dataTable.order-column.stripe tbody tr.odd>.sorting_2{background-color:#f3f3f3}table.dataTable.display tbody tr.odd>.sorting_3,table.dataTable.order-column.stripe tbody tr.odd>.sorting_3{background-color:whitesmoke}table.dataTable.display tbody tr.odd.selected>.sorting_1,table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_1{background-color:#a6b4cd}table.dataTable.display tbody tr.odd.selected>.sorting_2,table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_2{background-color:#a8b5cf}table.dataTable.display tbody tr.odd.selected>.sorting_3,table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_3{background-color:#a9b7d1}table.dataTable.display tbody tr.even>.sorting_1,table.dataTable.order-column.stripe tbody tr.even>.sorting_1{background-color:#fafafa}table.dataTable.display tbody tr.even>.sorting_2,table.dataTable.order-column.stripe tbody tr.even>.sorting_2{background-color:#fcfcfc}table.dataTable.display tbody tr.even>.sorting_3,table.dataTable.order-column.stripe tbody tr.even>.sorting_3{background-color:#fefefe}table.dataTable.display tbody tr.even.selected>.sorting_1,table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_1{background-color:#acbad5}table.dataTable.display tbody tr.even.selected>.sorting_2,table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_2{background-color:#aebcd6}table.dataTable.display tbody tr.even.selected>.sorting_3,table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_3{background-color:#afbdd8}table.dataTable.display tbody tr:hover>.sorting_1,table.dataTable.order-column.hover tbody tr:hover>.sorting_1{background-color:#eaeaea}table.dataTable.display tbody tr:hover>.sorting_2,table.dataTable.order-column.hover tbody tr:hover>.sorting_2{background-color:#ececec}table.dataTable.display tbody tr:hover>.sorting_3,table.dataTable.order-column.hover tbody tr:hover>.sorting_3{background-color:#efefef}table.dataTable.display tbody tr:hover.selected>.sorting_1,table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_1{background-color:#a2aec7}table.dataTable.display tbody tr:hover.selected>.sorting_2,table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_2{background-color:#a3b0c9}table.dataTable.display tbody tr:hover.selected>.sorting_3,table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_3{background-color:#a5b2cb}table.dataTable.no-footer{border-bottom:1px solid #111}table.dataTable.nowrap th,table.dataTable.nowrap td{white-space:nowrap}table.dataTable.compact thead th,table.dataTable.compact thead td{padding:4px 17px 4px 4px}table.dataTable.compact tfoot th,table.dataTable.compact tfoot td{padding:4px}table.dataTable.compact tbody th,table.dataTable.compact tbody td{padding:4px}table.dataTable th.dt-left,table.dataTable td.dt-left{text-align:left}table.dataTable th.dt-center,table.dataTable td.dt-center,table.dataTable td.dataTables_empty{text-align:center}table.dataTable th.dt-right,table.dataTable td.dt-right{text-align:right}table.dataTable th.dt-justify,table.dataTable td.dt-justify{text-align:justify}table.dataTable th.dt-nowrap,table.dataTable td.dt-nowrap{white-space:nowrap}table.dataTable thead th.dt-head-left,table.dataTable thead td.dt-head-left,table.dataTable tfoot th.dt-head-left,table.dataTable tfoot td.dt-head-left{text-align:left}table.dataTable thead th.dt-head-center,table.dataTable thead td.dt-head-center,table.dataTable tfoot th.dt-head-center,table.dataTable tfoot td.dt-head-center{text-align:center}table.dataTable thead th.dt-head-right,table.dataTable thead td.dt-head-right,table.dataTable tfoot th.dt-head-right,table.dataTable tfoot td.dt-head-right{text-align:right}table.dataTable thead th.dt-head-justify,table.dataTable thead td.dt-head-justify,table.dataTable tfoot th.dt-head-justify,table.dataTable tfoot td.dt-head-justify{text-align:justify}table.dataTable thead th.dt-head-nowrap,table.dataTable thead td.dt-head-nowrap,table.dataTable tfoot th.dt-head-nowrap,table.dataTable tfoot td.dt-head-nowrap{white-space:nowrap}table.dataTable tbody th.dt-body-left,table.dataTable tbody td.dt-body-left{text-align:left}table.dataTable tbody th.dt-body-center,table.dataTable tbody td.dt-body-center{text-align:center}table.dataTable tbody th.dt-body-right,table.dataTable tbody td.dt-body-right{text-align:right}table.dataTable tbody th.dt-body-justify,table.dataTable tbody td.dt-body-justify{text-align:justify}table.dataTable tbody th.dt-body-nowrap,table.dataTable tbody td.dt-body-nowrap{white-space:nowrap}table.dataTable,table.dataTable th,table.dataTable td{-webkit-box-sizing:content-box;box-sizing:content-box}.dataTables_wrapper{position:relative;clear:both;*zoom:1;zoom:1}.dataTables_wrapper .dataTables_length{float:left}.dataTables_wrapper .dataTables_filter{float:right;text-align:right}.dataTables_wrapper .dataTables_filter input{margin-left:0.5em}.dataTables_wrapper .dataTables_info{clear:both;float:left;padding-top:0.755em}.dataTables_wrapper .dataTables_paginate{float:right;text-align:right;padding-top:0.25em}.dataTables_wrapper .dataTables_paginate .paginate_button{box-sizing:border-box;display:inline-block;min-width:1.5em;padding:0.5em 1em;margin-left:2px;text-align:center;text-decoration:none !important;cursor:pointer;*cursor:hand;color:#333 !important;border:1px solid transparent;border-radius:2px}.dataTables_wrapper .dataTables_paginate .paginate_button.current,.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover{color:#333 !important;border:1px solid #979797;background-color:white;background:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #fff), color-stop(100%, #dcdcdc));background:-webkit-linear-gradient(top, #fff 0%, #dcdcdc 100%);background:-moz-linear-gradient(top, #fff 0%, #dcdcdc 100%);background:-ms-linear-gradient(top, #fff 0%, #dcdcdc 100%);background:-o-linear-gradient(top, #fff 0%, #dcdcdc 100%);background:linear-gradient(to bottom, #fff 0%, #dcdcdc 100%)}.dataTables_wrapper .dataTables_paginate .paginate_button.disabled,.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover,.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active{cursor:default;color:#666 !important;border:1px solid transparent;background:transparent;box-shadow:none}.dataTables_wrapper .dataTables_paginate .paginate_button:hover{color:white !important;border:1px solid #111;background-color:#585858;background:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #585858), color-stop(100%, #111));background:-webkit-linear-gradient(top, #585858 0%, #111 100%);background:-moz-linear-gradient(top, #585858 0%, #111 100%);background:-ms-linear-gradient(top, #585858 0%, #111 100%);background:-o-linear-gradient(top, #585858 0%, #111 100%);background:linear-gradient(to bottom, #585858 0%, #111 100%)}.dataTables_wrapper .dataTables_paginate .paginate_button:active{outline:none;background-color:#2b2b2b;background:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #2b2b2b), color-stop(100%, #0c0c0c));background:-webkit-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);background:-moz-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);background:-ms-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);background:-o-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);background:linear-gradient(to bottom, #2b2b2b 0%, #0c0c0c 100%);box-shadow:inset 0 0 3px #111}.dataTables_wrapper .dataTables_paginate .ellipsis{padding:0 1em}.dataTables_wrapper .dataTables_processing{position:absolute;top:50%;left:50%;width:100%;height:40px;margin-left:-50%;margin-top:-25px;padding-top:20px;text-align:center;font-size:1.2em;background-color:white;background:-webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255,255,255,0)), color-stop(25%, rgba(255,255,255,0.9)), color-stop(75%, rgba(255,255,255,0.9)), color-stop(100%, rgba(255,255,255,0)));background:-webkit-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 25%, rgba(255,255,255,0.9) 75%, rgba(255,255,255,0) 100%);background:-moz-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 25%, rgba(255,255,255,0.9) 75%, rgba(255,255,255,0) 100%);background:-ms-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 25%, rgba(255,255,255,0.9) 75%, rgba(255,255,255,0) 100%);background:-o-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 25%, rgba(255,255,255,0.9) 75%, rgba(255,255,255,0) 100%);background:linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 25%, rgba(255,255,255,0.9) 75%, rgba(255,255,255,0) 100%)}.dataTables_wrapper .dataTables_length,.dataTables_wrapper .dataTables_filter,.dataTables_wrapper .dataTables_info,.dataTables_wrapper .dataTables_processing,.dataTables_wrapper .dataTables_paginate{color:#333}.dataTables_wrapper .dataTables_scroll{clear:both}.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody{*margin-top:-1px;-webkit-overflow-scrolling:touch}.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>thead>tr>th,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>thead>tr>td,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>tbody>tr>th,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>tbody>tr>td{vertical-align:middle}.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>thead>tr>th>div.dataTables_sizing,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>thead>tr>td>div.dataTables_sizing,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>tbody>tr>th>div.dataTables_sizing,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>tbody>tr>td>div.dataTables_sizing{height:0;overflow:hidden;margin:0 !important;padding:0 !important}.dataTables_wrapper.no-footer .dataTables_scrollBody{border-bottom:1px solid #111}.dataTables_wrapper.no-footer div.dataTables_scrollHead>table,.dataTables_wrapper.no-footer div.dataTables_scrollBody>table{border-bottom:none}.dataTables_wrapper:after{visibility:hidden;display:block;content:"";clear:both;height:0}@media screen and (max-width: 767px){.dataTables_wrapper .dataTables_info,.dataTables_wrapper .dataTables_paginate{float:none;text-align:center}.dataTables_wrapper .dataTables_paginate{margin-top:0.5em}}@media screen and (max-width: 640px){.dataTables_wrapper .dataTables_length,.dataTables_wrapper .dataTables_filter{float:none;text-align:center}.dataTables_wrapper .dataTables_filter{margin-top:0.5em}}table.dataTable thead th div.DataTables_sort_wrapper{position:relative}table.dataTable thead th div.DataTables_sort_wrapper span{position:absolute;top:50%;margin-top:-8px;right:-18px}table.dataTable thead th.ui-state-default,table.dataTable tfoot th.ui-state-default{border-left-width:0}table.dataTable thead th.ui-state-default:first-child,table.dataTable tfoot th.ui-state-default:first-child{border-left-width:1px}.dataTables_wrapper .dataTables_paginate .fg-button{box-sizing:border-box;display:inline-block;min-width:1.5em;padding:0.5em;margin-left:2px;text-align:center;text-decoration:none !important;cursor:pointer;*cursor:hand;border:1px solid transparent}.dataTables_wrapper .dataTables_paginate .fg-button:active{outline:none}.dataTables_wrapper .dataTables_paginate .fg-button:first-child{border-top-left-radius:3px;border-bottom-left-radius:3px}.dataTables_wrapper .dataTables_paginate .fg-button:last-child{border-top-right-radius:3px;border-bottom-right-radius:3px}.dataTables_wrapper .ui-widget-header{font-weight:normal}.dataTables_wrapper .ui-toolbar{padding:8px}.dataTables_wrapper.no-footer .dataTables_scrollBody{border-bottom:none}.dataTables_wrapper .dataTables_length,.dataTables_wrapper .dataTables_filter,.dataTables_wrapper .dataTables_info,.dataTables_wrapper .dataTables_processing,.dataTables_wrapper .dataTables_paginate{color:inherit} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.material.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.material.css new file mode 100644 index 00000000..c00f2e90 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.material.css @@ -0,0 +1,87 @@ +div.dataTables_wrapper div.dataTables_filter { + text-align: right; +} +div.dataTables_wrapper div.dataTables_filter input { + margin-left: 0.5em; +} +div.dataTables_wrapper div.dataTables_info { + padding-top: 10px; + white-space: nowrap; +} +div.dataTables_wrapper div.dataTables_processing { + position: absolute; + top: 50%; + left: 50%; + width: 200px; + margin-left: -100px; + text-align: center; +} +div.dataTables_wrapper div.dataTables_paginate { + text-align: right; +} +div.dataTables_wrapper div.mdl-grid.dt-table { + padding-top: 0; + padding-bottom: 0; +} +div.dataTables_wrapper div.mdl-grid.dt-table > div.mdl-cell { + margin-top: 0; + margin-bottom: 0; +} + +table.dataTable thead > tr > th.sorting_asc, table.dataTable thead > tr > th.sorting_desc, table.dataTable thead > tr > th.sorting, +table.dataTable thead > tr > td.sorting_asc, +table.dataTable thead > tr > td.sorting_desc, +table.dataTable thead > tr > td.sorting { + padding-right: 30px; +} +table.dataTable thead > tr > th:active, +table.dataTable thead > tr > td:active { + outline: none; +} +table.dataTable thead .sorting, +table.dataTable thead .sorting_asc, +table.dataTable thead .sorting_desc, +table.dataTable thead .sorting_asc_disabled, +table.dataTable thead .sorting_desc_disabled { + cursor: pointer; + position: relative; +} +table.dataTable thead .sorting:before, table.dataTable thead .sorting:after, +table.dataTable thead .sorting_asc:before, +table.dataTable thead .sorting_asc:after, +table.dataTable thead .sorting_desc:before, +table.dataTable thead .sorting_desc:after, +table.dataTable thead .sorting_asc_disabled:before, +table.dataTable thead .sorting_asc_disabled:after, +table.dataTable thead .sorting_desc_disabled:before, +table.dataTable thead .sorting_desc_disabled:after { + position: absolute; + bottom: 11px; + display: block; + opacity: 0.3; + font-size: 1.3em; +} +table.dataTable thead .sorting:before, +table.dataTable thead .sorting_asc:before, +table.dataTable thead .sorting_desc:before, +table.dataTable thead .sorting_asc_disabled:before, +table.dataTable thead .sorting_desc_disabled:before { + right: 1em; + content: "\2191"; +} +table.dataTable thead .sorting:after, +table.dataTable thead .sorting_asc:after, +table.dataTable thead .sorting_desc:after, +table.dataTable thead .sorting_asc_disabled:after, +table.dataTable thead .sorting_desc_disabled:after { + right: 0.5em; + content: "\2193"; +} +table.dataTable thead .sorting_asc:before, +table.dataTable thead .sorting_desc:after { + opacity: 1; +} +table.dataTable thead .sorting_asc_disabled:before, +table.dataTable thead .sorting_desc_disabled:after { + opacity: 0; +} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.material.min.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.material.min.css new file mode 100644 index 00000000..5935ac4d --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.material.min.css @@ -0,0 +1 @@ +div.dataTables_wrapper div.dataTables_filter{text-align:right}div.dataTables_wrapper div.dataTables_filter input{margin-left:0.5em}div.dataTables_wrapper div.dataTables_info{padding-top:10px;white-space:nowrap}div.dataTables_wrapper div.dataTables_processing{position:absolute;top:50%;left:50%;width:200px;margin-left:-100px;text-align:center}div.dataTables_wrapper div.dataTables_paginate{text-align:right}div.dataTables_wrapper div.mdl-grid.dt-table{padding-top:0;padding-bottom:0}div.dataTables_wrapper div.mdl-grid.dt-table>div.mdl-cell{margin-top:0;margin-bottom:0}table.dataTable thead>tr>th.sorting_asc,table.dataTable thead>tr>th.sorting_desc,table.dataTable thead>tr>th.sorting,table.dataTable thead>tr>td.sorting_asc,table.dataTable thead>tr>td.sorting_desc,table.dataTable thead>tr>td.sorting{padding-right:30px}table.dataTable thead>tr>th:active,table.dataTable thead>tr>td:active{outline:none}table.dataTable thead .sorting,table.dataTable thead .sorting_asc,table.dataTable thead .sorting_desc,table.dataTable thead .sorting_asc_disabled,table.dataTable thead .sorting_desc_disabled{cursor:pointer;position:relative}table.dataTable thead .sorting:before,table.dataTable thead .sorting:after,table.dataTable thead .sorting_asc:before,table.dataTable thead .sorting_asc:after,table.dataTable thead .sorting_desc:before,table.dataTable thead .sorting_desc:after,table.dataTable thead .sorting_asc_disabled:before,table.dataTable thead .sorting_asc_disabled:after,table.dataTable thead .sorting_desc_disabled:before,table.dataTable thead .sorting_desc_disabled:after{position:absolute;bottom:11px;display:block;opacity:0.3;font-size:1.3em}table.dataTable thead .sorting:before,table.dataTable thead .sorting_asc:before,table.dataTable thead .sorting_desc:before,table.dataTable thead .sorting_asc_disabled:before,table.dataTable thead .sorting_desc_disabled:before{right:1em;content:"\2191"}table.dataTable thead .sorting:after,table.dataTable thead .sorting_asc:after,table.dataTable thead .sorting_desc:after,table.dataTable thead .sorting_asc_disabled:after,table.dataTable thead .sorting_desc_disabled:after{right:0.5em;content:"\2193"}table.dataTable thead .sorting_asc:before,table.dataTable thead .sorting_desc:after{opacity:1}table.dataTable thead .sorting_asc_disabled:before,table.dataTable thead .sorting_desc_disabled:after{opacity:0} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.semanticui.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.semanticui.css new file mode 100644 index 00000000..25838426 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.semanticui.css @@ -0,0 +1,102 @@ +/* + * Styling for DataTables with Semantic UI + */ +table.dataTable.table { + margin: 0; +} +table.dataTable.table thead th, +table.dataTable.table thead td { + position: relative; +} +table.dataTable.table thead th.sorting, table.dataTable.table thead th.sorting_asc, table.dataTable.table thead th.sorting_desc, +table.dataTable.table thead td.sorting, +table.dataTable.table thead td.sorting_asc, +table.dataTable.table thead td.sorting_desc { + padding-right: 20px; +} +table.dataTable.table thead th.sorting:after, table.dataTable.table thead th.sorting_asc:after, table.dataTable.table thead th.sorting_desc:after, +table.dataTable.table thead td.sorting:after, +table.dataTable.table thead td.sorting_asc:after, +table.dataTable.table thead td.sorting_desc:after { + position: absolute; + top: 12px; + right: 8px; + display: block; + font-family: Icons; +} +table.dataTable.table thead th.sorting:after, +table.dataTable.table thead td.sorting:after { + content: "\f0dc"; + color: #ddd; + font-size: 0.8em; +} +table.dataTable.table thead th.sorting_asc:after, +table.dataTable.table thead td.sorting_asc:after { + content: "\f0de"; +} +table.dataTable.table thead th.sorting_desc:after, +table.dataTable.table thead td.sorting_desc:after { + content: "\f0dd"; +} +table.dataTable.table td, +table.dataTable.table th { + -webkit-box-sizing: content-box; + box-sizing: content-box; +} +table.dataTable.table td.dataTables_empty, +table.dataTable.table th.dataTables_empty { + text-align: center; +} +table.dataTable.table.nowrap th, +table.dataTable.table.nowrap td { + white-space: nowrap; +} + +div.dataTables_wrapper div.dataTables_length select { + vertical-align: middle; + min-height: 2.7142em; +} +div.dataTables_wrapper div.dataTables_length .ui.selection.dropdown { + min-width: 0; +} +div.dataTables_wrapper div.dataTables_filter input { + margin-left: 0.5em; +} +div.dataTables_wrapper div.dataTables_info { + padding-top: 13px; + white-space: nowrap; +} +div.dataTables_wrapper div.dataTables_processing { + position: absolute; + top: 50%; + left: 50%; + width: 200px; + margin-left: -100px; + text-align: center; +} +div.dataTables_wrapper div.row.dt-table { + padding: 0; +} +div.dataTables_wrapper div.dataTables_scrollHead table.dataTable { + border-bottom-right-radius: 0; + border-bottom-left-radius: 0; + border-bottom: none; +} +div.dataTables_wrapper div.dataTables_scrollBody thead .sorting:after, +div.dataTables_wrapper div.dataTables_scrollBody thead .sorting_asc:after, +div.dataTables_wrapper div.dataTables_scrollBody thead .sorting_desc:after { + display: none; +} +div.dataTables_wrapper div.dataTables_scrollBody table.dataTable { + border-radius: 0; + border-top: none; + border-bottom-width: 0; +} +div.dataTables_wrapper div.dataTables_scrollBody table.dataTable.no-footer { + border-bottom-width: 1px; +} +div.dataTables_wrapper div.dataTables_scrollFoot table.dataTable { + border-top-right-radius: 0; + border-top-left-radius: 0; + border-top: none; +} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.semanticui.min.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.semanticui.min.css new file mode 100644 index 00000000..c192a342 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.semanticui.min.css @@ -0,0 +1 @@ +table.dataTable.table{margin:0}table.dataTable.table thead th,table.dataTable.table thead td{position:relative}table.dataTable.table thead th.sorting,table.dataTable.table thead th.sorting_asc,table.dataTable.table thead th.sorting_desc,table.dataTable.table thead td.sorting,table.dataTable.table thead td.sorting_asc,table.dataTable.table thead td.sorting_desc{padding-right:20px}table.dataTable.table thead th.sorting:after,table.dataTable.table thead th.sorting_asc:after,table.dataTable.table thead th.sorting_desc:after,table.dataTable.table thead td.sorting:after,table.dataTable.table thead td.sorting_asc:after,table.dataTable.table thead td.sorting_desc:after{position:absolute;top:12px;right:8px;display:block;font-family:Icons}table.dataTable.table thead th.sorting:after,table.dataTable.table thead td.sorting:after{content:"\f0dc";color:#ddd;font-size:0.8em}table.dataTable.table thead th.sorting_asc:after,table.dataTable.table thead td.sorting_asc:after{content:"\f0de"}table.dataTable.table thead th.sorting_desc:after,table.dataTable.table thead td.sorting_desc:after{content:"\f0dd"}table.dataTable.table td,table.dataTable.table th{-webkit-box-sizing:content-box;box-sizing:content-box}table.dataTable.table td.dataTables_empty,table.dataTable.table th.dataTables_empty{text-align:center}table.dataTable.table.nowrap th,table.dataTable.table.nowrap td{white-space:nowrap}div.dataTables_wrapper div.dataTables_length select{vertical-align:middle;min-height:2.7142em}div.dataTables_wrapper div.dataTables_length .ui.selection.dropdown{min-width:0}div.dataTables_wrapper div.dataTables_filter input{margin-left:0.5em}div.dataTables_wrapper div.dataTables_info{padding-top:13px;white-space:nowrap}div.dataTables_wrapper div.dataTables_processing{position:absolute;top:50%;left:50%;width:200px;margin-left:-100px;text-align:center}div.dataTables_wrapper div.row.dt-table{padding:0}div.dataTables_wrapper div.dataTables_scrollHead table.dataTable{border-bottom-right-radius:0;border-bottom-left-radius:0;border-bottom:none}div.dataTables_wrapper div.dataTables_scrollBody thead .sorting:after,div.dataTables_wrapper div.dataTables_scrollBody thead .sorting_asc:after,div.dataTables_wrapper div.dataTables_scrollBody thead .sorting_desc:after{display:none}div.dataTables_wrapper div.dataTables_scrollBody table.dataTable{border-radius:0;border-top:none;border-bottom-width:0}div.dataTables_wrapper div.dataTables_scrollBody table.dataTable.no-footer{border-bottom-width:1px}div.dataTables_wrapper div.dataTables_scrollFoot table.dataTable{border-top-right-radius:0;border-top-left-radius:0;border-top:none} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.uikit.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.uikit.css new file mode 100644 index 00000000..8e1e21ee --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.uikit.css @@ -0,0 +1,146 @@ +table.dataTable { + clear: both; + margin-top: 6px !important; + margin-bottom: 6px !important; + max-width: none !important; +} +table.dataTable td, +table.dataTable th { + -webkit-box-sizing: content-box; + box-sizing: content-box; +} +table.dataTable td.dataTables_empty, +table.dataTable th.dataTables_empty { + text-align: center; +} +table.dataTable.nowrap th, +table.dataTable.nowrap td { + white-space: nowrap; +} + +div.dataTables_wrapper div.row.uk-grid.dt-merge-grid { + margin-top: 5px; +} +div.dataTables_wrapper div.dataTables_length label { + font-weight: normal; + text-align: left; + white-space: nowrap; +} +div.dataTables_wrapper div.dataTables_length select { + width: 75px; + display: inline-block; +} +div.dataTables_wrapper div.dataTables_filter { + text-align: right; +} +div.dataTables_wrapper div.dataTables_filter label { + font-weight: normal; + white-space: nowrap; + text-align: left; +} +div.dataTables_wrapper div.dataTables_filter input { + margin-left: 0.5em; + display: inline-block; + width: auto; +} +div.dataTables_wrapper div.dataTables_info { + padding-top: 8px; + white-space: nowrap; +} +div.dataTables_wrapper div.dataTables_paginate { + margin: 0; + white-space: nowrap; + text-align: right; +} +div.dataTables_wrapper div.dataTables_paginate ul.pagination { + margin: 2px 0; + white-space: nowrap; +} +div.dataTables_wrapper div.dataTables_processing { + position: absolute; + top: 50%; + left: 50%; + width: 200px; + margin-left: -100px; + margin-top: -26px; + text-align: center; + padding: 1em 0; +} + +table.dataTable thead > tr > th, +table.dataTable thead > tr > td { + position: relative; +} +table.dataTable thead > tr > th.sorting_asc, table.dataTable thead > tr > th.sorting_desc, table.dataTable thead > tr > th.sorting, +table.dataTable thead > tr > td.sorting_asc, +table.dataTable thead > tr > td.sorting_desc, +table.dataTable thead > tr > td.sorting { + padding-right: 30px; +} +table.dataTable thead > tr > th.sorting:after, table.dataTable thead > tr > th.sorting_asc:after, table.dataTable thead > tr > th.sorting_desc:after, +table.dataTable thead > tr > td.sorting:after, +table.dataTable thead > tr > td.sorting_asc:after, +table.dataTable thead > tr > td.sorting_desc:after { + position: absolute; + top: 7px; + right: 8px; + display: block; + font-family: 'FontAwesome'; +} +table.dataTable thead > tr > th.sorting:after, +table.dataTable thead > tr > td.sorting:after { + content: "\f0dc"; + color: #ddd; + font-size: 0.8em; + padding-top: 0.12em; +} +table.dataTable thead > tr > th.sorting_asc:after, +table.dataTable thead > tr > td.sorting_asc:after { + content: "\f0de"; +} +table.dataTable thead > tr > th.sorting_desc:after, +table.dataTable thead > tr > td.sorting_desc:after { + content: "\f0dd"; +} + +div.dataTables_scrollHead table.dataTable { + margin-bottom: 0 !important; +} + +div.dataTables_scrollBody table { + border-top: none; + margin-top: 0 !important; + margin-bottom: 0 !important; +} +div.dataTables_scrollBody table thead .sorting:after, +div.dataTables_scrollBody table thead .sorting_asc:after, +div.dataTables_scrollBody table thead .sorting_desc:after { + display: none; +} +div.dataTables_scrollBody table tbody tr:first-child th, +div.dataTables_scrollBody table tbody tr:first-child td { + border-top: none; +} + +div.dataTables_scrollFoot table { + margin-top: 0 !important; + border-top: none; +} + +@media screen and (max-width: 767px) { + div.dataTables_wrapper div.dataTables_length, + div.dataTables_wrapper div.dataTables_filter, + div.dataTables_wrapper div.dataTables_info, + div.dataTables_wrapper div.dataTables_paginate { + text-align: center; + } +} +table.dataTable.uk-table-condensed > thead > tr > th { + padding-right: 20px; +} +table.dataTable.uk-table-condensed .sorting:after, +table.dataTable.uk-table-condensed .sorting_asc:after, +table.dataTable.uk-table-condensed .sorting_desc:after { + top: 6px; + right: 6px; +} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.uikit.min.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.uikit.min.css new file mode 100644 index 00000000..0818eed3 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/dataTables.uikit.min.css @@ -0,0 +1 @@ +table.dataTable{clear:both;margin-top:6px !important;margin-bottom:6px !important;max-width:none !important}table.dataTable td,table.dataTable th{-webkit-box-sizing:content-box;box-sizing:content-box}table.dataTable td.dataTables_empty,table.dataTable th.dataTables_empty{text-align:center}table.dataTable.nowrap th,table.dataTable.nowrap td{white-space:nowrap}div.dataTables_wrapper div.row.uk-grid.dt-merge-grid{margin-top:5px}div.dataTables_wrapper div.dataTables_length label{font-weight:normal;text-align:left;white-space:nowrap}div.dataTables_wrapper div.dataTables_length select{width:75px;display:inline-block}div.dataTables_wrapper div.dataTables_filter{text-align:right}div.dataTables_wrapper div.dataTables_filter label{font-weight:normal;white-space:nowrap;text-align:left}div.dataTables_wrapper div.dataTables_filter input{margin-left:0.5em;display:inline-block;width:auto}div.dataTables_wrapper div.dataTables_info{padding-top:8px;white-space:nowrap}div.dataTables_wrapper div.dataTables_paginate{margin:0;white-space:nowrap;text-align:right}div.dataTables_wrapper div.dataTables_paginate ul.pagination{margin:2px 0;white-space:nowrap}div.dataTables_wrapper div.dataTables_processing{position:absolute;top:50%;left:50%;width:200px;margin-left:-100px;margin-top:-26px;text-align:center;padding:1em 0}table.dataTable thead>tr>th,table.dataTable thead>tr>td{position:relative}table.dataTable thead>tr>th.sorting_asc,table.dataTable thead>tr>th.sorting_desc,table.dataTable thead>tr>th.sorting,table.dataTable thead>tr>td.sorting_asc,table.dataTable thead>tr>td.sorting_desc,table.dataTable thead>tr>td.sorting{padding-right:30px}table.dataTable thead>tr>th.sorting:after,table.dataTable thead>tr>th.sorting_asc:after,table.dataTable thead>tr>th.sorting_desc:after,table.dataTable thead>tr>td.sorting:after,table.dataTable thead>tr>td.sorting_asc:after,table.dataTable thead>tr>td.sorting_desc:after{position:absolute;top:7px;right:8px;display:block;font-family:'FontAwesome'}table.dataTable thead>tr>th.sorting:after,table.dataTable thead>tr>td.sorting:after{content:"\f0dc";color:#ddd;font-size:0.8em;padding-top:0.12em}table.dataTable thead>tr>th.sorting_asc:after,table.dataTable thead>tr>td.sorting_asc:after{content:"\f0de"}table.dataTable thead>tr>th.sorting_desc:after,table.dataTable thead>tr>td.sorting_desc:after{content:"\f0dd"}div.dataTables_scrollHead table.dataTable{margin-bottom:0 !important}div.dataTables_scrollBody table{border-top:none;margin-top:0 !important;margin-bottom:0 !important}div.dataTables_scrollBody table thead .sorting:after,div.dataTables_scrollBody table thead .sorting_asc:after,div.dataTables_scrollBody table thead .sorting_desc:after{display:none}div.dataTables_scrollBody table tbody tr:first-child th,div.dataTables_scrollBody table tbody tr:first-child td{border-top:none}div.dataTables_scrollFoot table{margin-top:0 !important;border-top:none}@media screen and (max-width: 767px){div.dataTables_wrapper div.dataTables_length,div.dataTables_wrapper div.dataTables_filter,div.dataTables_wrapper div.dataTables_info,div.dataTables_wrapper div.dataTables_paginate{text-align:center}}table.dataTable.uk-table-condensed>thead>tr>th{padding-right:20px}table.dataTable.uk-table-condensed .sorting:after,table.dataTable.uk-table-condensed .sorting_asc:after,table.dataTable.uk-table-condensed .sorting_desc:after{top:6px;right:6px} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/jquery.dataTables.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/jquery.dataTables.css new file mode 100644 index 00000000..6c55f8b6 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/jquery.dataTables.css @@ -0,0 +1,455 @@ +/* + * Table styles + */ +table.dataTable { + width: 100%; + margin: 0 auto; + clear: both; + border-collapse: separate; + border-spacing: 0; + /* + * Header and footer styles + */ + /* + * Body styles + */ +} +table.dataTable thead th, +table.dataTable tfoot th { + font-weight: bold; +} +table.dataTable thead th, +table.dataTable thead td { + padding: 10px 18px; + border-bottom: 1px solid #111; +} +table.dataTable thead th:active, +table.dataTable thead td:active { + outline: none; +} +table.dataTable tfoot th, +table.dataTable tfoot td { + padding: 10px 18px 6px 18px; + border-top: 1px solid #111; +} +table.dataTable thead .sorting, +table.dataTable thead .sorting_asc, +table.dataTable thead .sorting_desc, +table.dataTable thead .sorting_asc_disabled, +table.dataTable thead .sorting_desc_disabled { + cursor: pointer; + *cursor: hand; +} +table.dataTable thead .sorting, +table.dataTable thead .sorting_asc, +table.dataTable thead .sorting_desc, +table.dataTable thead .sorting_asc_disabled, +table.dataTable thead .sorting_desc_disabled { + background-repeat: no-repeat; + background-position: center right; +} +table.dataTable thead .sorting { + background-image: url("../images/sort_both.png"); +} +table.dataTable thead .sorting_asc { + background-image: url("../images/sort_asc.png"); +} +table.dataTable thead .sorting_desc { + background-image: url("../images/sort_desc.png"); +} +table.dataTable thead .sorting_asc_disabled { + background-image: url("../images/sort_asc_disabled.png"); +} +table.dataTable thead .sorting_desc_disabled { + background-image: url("../images/sort_desc_disabled.png"); +} +table.dataTable tbody tr { + background-color: #ffffff; +} +table.dataTable tbody tr.selected { + background-color: #B0BED9; +} +table.dataTable tbody th, +table.dataTable tbody td { + padding: 8px 10px; +} +table.dataTable.row-border tbody th, table.dataTable.row-border tbody td, table.dataTable.display tbody th, table.dataTable.display tbody td { + border-top: 1px solid #ddd; +} +table.dataTable.row-border tbody tr:first-child th, +table.dataTable.row-border tbody tr:first-child td, table.dataTable.display tbody tr:first-child th, +table.dataTable.display tbody tr:first-child td { + border-top: none; +} +table.dataTable.cell-border tbody th, table.dataTable.cell-border tbody td { + border-top: 1px solid #ddd; + border-right: 1px solid #ddd; +} +table.dataTable.cell-border tbody tr th:first-child, +table.dataTable.cell-border tbody tr td:first-child { + border-left: 1px solid #ddd; +} +table.dataTable.cell-border tbody tr:first-child th, +table.dataTable.cell-border tbody tr:first-child td { + border-top: none; +} +table.dataTable.stripe tbody tr.odd, table.dataTable.display tbody tr.odd { + background-color: #f9f9f9; +} +table.dataTable.stripe tbody tr.odd.selected, table.dataTable.display tbody tr.odd.selected { + background-color: #acbad4; +} +table.dataTable.hover tbody tr:hover, table.dataTable.display tbody tr:hover { + background-color: #f6f6f6; +} +table.dataTable.hover tbody tr:hover.selected, table.dataTable.display tbody tr:hover.selected { + background-color: #aab7d1; +} +table.dataTable.order-column tbody tr > .sorting_1, +table.dataTable.order-column tbody tr > .sorting_2, +table.dataTable.order-column tbody tr > .sorting_3, table.dataTable.display tbody tr > .sorting_1, +table.dataTable.display tbody tr > .sorting_2, +table.dataTable.display tbody tr > .sorting_3 { + background-color: #fafafa; +} +table.dataTable.order-column tbody tr.selected > .sorting_1, +table.dataTable.order-column tbody tr.selected > .sorting_2, +table.dataTable.order-column tbody tr.selected > .sorting_3, table.dataTable.display tbody tr.selected > .sorting_1, +table.dataTable.display tbody tr.selected > .sorting_2, +table.dataTable.display tbody tr.selected > .sorting_3 { + background-color: #acbad5; +} +table.dataTable.display tbody tr.odd > .sorting_1, table.dataTable.order-column.stripe tbody tr.odd > .sorting_1 { + background-color: #f1f1f1; +} +table.dataTable.display tbody tr.odd > .sorting_2, table.dataTable.order-column.stripe tbody tr.odd > .sorting_2 { + background-color: #f3f3f3; +} +table.dataTable.display tbody tr.odd > .sorting_3, table.dataTable.order-column.stripe tbody tr.odd > .sorting_3 { + background-color: whitesmoke; +} +table.dataTable.display tbody tr.odd.selected > .sorting_1, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_1 { + background-color: #a6b4cd; +} +table.dataTable.display tbody tr.odd.selected > .sorting_2, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_2 { + background-color: #a8b5cf; +} +table.dataTable.display tbody tr.odd.selected > .sorting_3, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_3 { + background-color: #a9b7d1; +} +table.dataTable.display tbody tr.even > .sorting_1, table.dataTable.order-column.stripe tbody tr.even > .sorting_1 { + background-color: #fafafa; +} +table.dataTable.display tbody tr.even > .sorting_2, table.dataTable.order-column.stripe tbody tr.even > .sorting_2 { + background-color: #fcfcfc; +} +table.dataTable.display tbody tr.even > .sorting_3, table.dataTable.order-column.stripe tbody tr.even > .sorting_3 { + background-color: #fefefe; +} +table.dataTable.display tbody tr.even.selected > .sorting_1, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_1 { + background-color: #acbad5; +} +table.dataTable.display tbody tr.even.selected > .sorting_2, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_2 { + background-color: #aebcd6; +} +table.dataTable.display tbody tr.even.selected > .sorting_3, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_3 { + background-color: #afbdd8; +} +table.dataTable.display tbody tr:hover > .sorting_1, table.dataTable.order-column.hover tbody tr:hover > .sorting_1 { + background-color: #eaeaea; +} +table.dataTable.display tbody tr:hover > .sorting_2, table.dataTable.order-column.hover tbody tr:hover > .sorting_2 { + background-color: #ececec; +} +table.dataTable.display tbody tr:hover > .sorting_3, table.dataTable.order-column.hover tbody tr:hover > .sorting_3 { + background-color: #efefef; +} +table.dataTable.display tbody tr:hover.selected > .sorting_1, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_1 { + background-color: #a2aec7; +} +table.dataTable.display tbody tr:hover.selected > .sorting_2, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_2 { + background-color: #a3b0c9; +} +table.dataTable.display tbody tr:hover.selected > .sorting_3, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_3 { + background-color: #a5b2cb; +} +table.dataTable.no-footer { + border-bottom: 1px solid #111; +} +table.dataTable.nowrap th, table.dataTable.nowrap td { + white-space: nowrap; +} +table.dataTable.compact thead th, +table.dataTable.compact thead td { + padding: 4px 17px 4px 4px; +} +table.dataTable.compact tfoot th, +table.dataTable.compact tfoot td { + padding: 4px; +} +table.dataTable.compact tbody th, +table.dataTable.compact tbody td { + padding: 4px; +} +table.dataTable th.dt-left, +table.dataTable td.dt-left { + text-align: left; +} +table.dataTable th.dt-center, +table.dataTable td.dt-center, +table.dataTable td.dataTables_empty { + text-align: center; +} +table.dataTable th.dt-right, +table.dataTable td.dt-right { + text-align: right; +} +table.dataTable th.dt-justify, +table.dataTable td.dt-justify { + text-align: justify; +} +table.dataTable th.dt-nowrap, +table.dataTable td.dt-nowrap { + white-space: nowrap; +} +table.dataTable thead th.dt-head-left, +table.dataTable thead td.dt-head-left, +table.dataTable tfoot th.dt-head-left, +table.dataTable tfoot td.dt-head-left { + text-align: left; +} +table.dataTable thead th.dt-head-center, +table.dataTable thead td.dt-head-center, +table.dataTable tfoot th.dt-head-center, +table.dataTable tfoot td.dt-head-center { + text-align: center; +} +table.dataTable thead th.dt-head-right, +table.dataTable thead td.dt-head-right, +table.dataTable tfoot th.dt-head-right, +table.dataTable tfoot td.dt-head-right { + text-align: right; +} +table.dataTable thead th.dt-head-justify, +table.dataTable thead td.dt-head-justify, +table.dataTable tfoot th.dt-head-justify, +table.dataTable tfoot td.dt-head-justify { + text-align: justify; +} +table.dataTable thead th.dt-head-nowrap, +table.dataTable thead td.dt-head-nowrap, +table.dataTable tfoot th.dt-head-nowrap, +table.dataTable tfoot td.dt-head-nowrap { + white-space: nowrap; +} +table.dataTable tbody th.dt-body-left, +table.dataTable tbody td.dt-body-left { + text-align: left; +} +table.dataTable tbody th.dt-body-center, +table.dataTable tbody td.dt-body-center { + text-align: center; +} +table.dataTable tbody th.dt-body-right, +table.dataTable tbody td.dt-body-right { + text-align: right; +} +table.dataTable tbody th.dt-body-justify, +table.dataTable tbody td.dt-body-justify { + text-align: justify; +} +table.dataTable tbody th.dt-body-nowrap, +table.dataTable tbody td.dt-body-nowrap { + white-space: nowrap; +} + +table.dataTable, +table.dataTable th, +table.dataTable td { + -webkit-box-sizing: content-box; + box-sizing: content-box; +} + +/* + * Control feature layout + */ +.dataTables_wrapper { + position: relative; + clear: both; + *zoom: 1; + zoom: 1; +} +.dataTables_wrapper .dataTables_length { + float: left; +} +.dataTables_wrapper .dataTables_filter { + float: right; + text-align: right; +} +.dataTables_wrapper .dataTables_filter input { + margin-left: 0.5em; +} +.dataTables_wrapper .dataTables_info { + clear: both; + float: left; + padding-top: 0.755em; +} +.dataTables_wrapper .dataTables_paginate { + float: right; + text-align: right; + padding-top: 0.25em; +} +.dataTables_wrapper .dataTables_paginate .paginate_button { + box-sizing: border-box; + display: inline-block; + min-width: 1.5em; + padding: 0.5em 1em; + margin-left: 2px; + text-align: center; + text-decoration: none !important; + cursor: pointer; + *cursor: hand; + color: #333 !important; + border: 1px solid transparent; + border-radius: 2px; +} +.dataTables_wrapper .dataTables_paginate .paginate_button.current, .dataTables_wrapper .dataTables_paginate .paginate_button.current:hover { + color: #333 !important; + border: 1px solid #979797; + background-color: white; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, white), color-stop(100%, #dcdcdc)); + /* Chrome,Safari4+ */ + background: -webkit-linear-gradient(top, white 0%, #dcdcdc 100%); + /* Chrome10+,Safari5.1+ */ + background: -moz-linear-gradient(top, white 0%, #dcdcdc 100%); + /* FF3.6+ */ + background: -ms-linear-gradient(top, white 0%, #dcdcdc 100%); + /* IE10+ */ + background: -o-linear-gradient(top, white 0%, #dcdcdc 100%); + /* Opera 11.10+ */ + background: linear-gradient(to bottom, white 0%, #dcdcdc 100%); + /* W3C */ +} +.dataTables_wrapper .dataTables_paginate .paginate_button.disabled, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover, .dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active { + cursor: default; + color: #666 !important; + border: 1px solid transparent; + background: transparent; + box-shadow: none; +} +.dataTables_wrapper .dataTables_paginate .paginate_button:hover { + color: white !important; + border: 1px solid #111; + background-color: #585858; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #585858), color-stop(100%, #111)); + /* Chrome,Safari4+ */ + background: -webkit-linear-gradient(top, #585858 0%, #111 100%); + /* Chrome10+,Safari5.1+ */ + background: -moz-linear-gradient(top, #585858 0%, #111 100%); + /* FF3.6+ */ + background: -ms-linear-gradient(top, #585858 0%, #111 100%); + /* IE10+ */ + background: -o-linear-gradient(top, #585858 0%, #111 100%); + /* Opera 11.10+ */ + background: linear-gradient(to bottom, #585858 0%, #111 100%); + /* W3C */ +} +.dataTables_wrapper .dataTables_paginate .paginate_button:active { + outline: none; + background-color: #2b2b2b; + background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #2b2b2b), color-stop(100%, #0c0c0c)); + /* Chrome,Safari4+ */ + background: -webkit-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%); + /* Chrome10+,Safari5.1+ */ + background: -moz-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%); + /* FF3.6+ */ + background: -ms-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%); + /* IE10+ */ + background: -o-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%); + /* Opera 11.10+ */ + background: linear-gradient(to bottom, #2b2b2b 0%, #0c0c0c 100%); + /* W3C */ + box-shadow: inset 0 0 3px #111; +} +.dataTables_wrapper .dataTables_paginate .ellipsis { + padding: 0 1em; +} +.dataTables_wrapper .dataTables_processing { + position: absolute; + top: 50%; + left: 50%; + width: 100%; + height: 40px; + margin-left: -50%; + margin-top: -25px; + padding-top: 20px; + text-align: center; + font-size: 1.2em; + background-color: white; + background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(25%, rgba(255, 255, 255, 0.9)), color-stop(75%, rgba(255, 255, 255, 0.9)), color-stop(100%, rgba(255, 255, 255, 0))); + background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%); + background: -moz-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%); + background: -ms-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%); + background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%); + background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%); +} +.dataTables_wrapper .dataTables_length, +.dataTables_wrapper .dataTables_filter, +.dataTables_wrapper .dataTables_info, +.dataTables_wrapper .dataTables_processing, +.dataTables_wrapper .dataTables_paginate { + color: #333; +} +.dataTables_wrapper .dataTables_scroll { + clear: both; +} +.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody { + *margin-top: -1px; + -webkit-overflow-scrolling: touch; +} +.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > th, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > td, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > th, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > td { + vertical-align: middle; +} +.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > th > div.dataTables_sizing, +.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > thead > tr > td > div.dataTables_sizing, .dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > th > div.dataTables_sizing, +.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody > table > tbody > tr > td > div.dataTables_sizing { + height: 0; + overflow: hidden; + margin: 0 !important; + padding: 0 !important; +} +.dataTables_wrapper.no-footer .dataTables_scrollBody { + border-bottom: 1px solid #111; +} +.dataTables_wrapper.no-footer div.dataTables_scrollHead > table, +.dataTables_wrapper.no-footer div.dataTables_scrollBody > table { + border-bottom: none; +} +.dataTables_wrapper:after { + visibility: hidden; + display: block; + content: ""; + clear: both; + height: 0; +} + +@media screen and (max-width: 767px) { + .dataTables_wrapper .dataTables_info, + .dataTables_wrapper .dataTables_paginate { + float: none; + text-align: center; + } + .dataTables_wrapper .dataTables_paginate { + margin-top: 0.5em; + } +} +@media screen and (max-width: 640px) { + .dataTables_wrapper .dataTables_length, + .dataTables_wrapper .dataTables_filter { + float: none; + text-align: center; + } + .dataTables_wrapper .dataTables_filter { + margin-top: 0.5em; + } +} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/jquery.dataTables.min.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/jquery.dataTables.min.css new file mode 100644 index 00000000..471c2932 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/jquery.dataTables.min.css @@ -0,0 +1 @@ +table.dataTable{width:100%;margin:0 auto;clear:both;border-collapse:separate;border-spacing:0}table.dataTable thead th,table.dataTable tfoot th{font-weight:bold}table.dataTable thead th,table.dataTable thead td{padding:10px 18px;border-bottom:1px solid #111}table.dataTable thead th:active,table.dataTable thead td:active{outline:none}table.dataTable tfoot th,table.dataTable tfoot td{padding:10px 18px 6px 18px;border-top:1px solid #111}table.dataTable thead .sorting,table.dataTable thead .sorting_asc,table.dataTable thead .sorting_desc,table.dataTable thead .sorting_asc_disabled,table.dataTable thead .sorting_desc_disabled{cursor:pointer;*cursor:hand}table.dataTable thead .sorting,table.dataTable thead .sorting_asc,table.dataTable thead .sorting_desc,table.dataTable thead .sorting_asc_disabled,table.dataTable thead .sorting_desc_disabled{background-repeat:no-repeat;background-position:center right}table.dataTable thead .sorting{background-image:url("../images/sort_both.png")}table.dataTable thead .sorting_asc{background-image:url("../images/sort_asc.png")}table.dataTable thead .sorting_desc{background-image:url("../images/sort_desc.png")}table.dataTable thead .sorting_asc_disabled{background-image:url("../images/sort_asc_disabled.png")}table.dataTable thead .sorting_desc_disabled{background-image:url("../images/sort_desc_disabled.png")}table.dataTable tbody tr{background-color:#ffffff}table.dataTable tbody tr.selected{background-color:#B0BED9}table.dataTable tbody th,table.dataTable tbody td{padding:8px 10px}table.dataTable.row-border tbody th,table.dataTable.row-border tbody td,table.dataTable.display tbody th,table.dataTable.display tbody td{border-top:1px solid #ddd}table.dataTable.row-border tbody tr:first-child th,table.dataTable.row-border tbody tr:first-child td,table.dataTable.display tbody tr:first-child th,table.dataTable.display tbody tr:first-child td{border-top:none}table.dataTable.cell-border tbody th,table.dataTable.cell-border tbody td{border-top:1px solid #ddd;border-right:1px solid #ddd}table.dataTable.cell-border tbody tr th:first-child,table.dataTable.cell-border tbody tr td:first-child{border-left:1px solid #ddd}table.dataTable.cell-border tbody tr:first-child th,table.dataTable.cell-border tbody tr:first-child td{border-top:none}table.dataTable.stripe tbody tr.odd,table.dataTable.display tbody tr.odd{background-color:#f9f9f9}table.dataTable.stripe tbody tr.odd.selected,table.dataTable.display tbody tr.odd.selected{background-color:#acbad4}table.dataTable.hover tbody tr:hover,table.dataTable.display tbody tr:hover{background-color:#f6f6f6}table.dataTable.hover tbody tr:hover.selected,table.dataTable.display tbody tr:hover.selected{background-color:#aab7d1}table.dataTable.order-column tbody tr>.sorting_1,table.dataTable.order-column tbody tr>.sorting_2,table.dataTable.order-column tbody tr>.sorting_3,table.dataTable.display tbody tr>.sorting_1,table.dataTable.display tbody tr>.sorting_2,table.dataTable.display tbody tr>.sorting_3{background-color:#fafafa}table.dataTable.order-column tbody tr.selected>.sorting_1,table.dataTable.order-column tbody tr.selected>.sorting_2,table.dataTable.order-column tbody tr.selected>.sorting_3,table.dataTable.display tbody tr.selected>.sorting_1,table.dataTable.display tbody tr.selected>.sorting_2,table.dataTable.display tbody tr.selected>.sorting_3{background-color:#acbad5}table.dataTable.display tbody tr.odd>.sorting_1,table.dataTable.order-column.stripe tbody tr.odd>.sorting_1{background-color:#f1f1f1}table.dataTable.display tbody tr.odd>.sorting_2,table.dataTable.order-column.stripe tbody tr.odd>.sorting_2{background-color:#f3f3f3}table.dataTable.display tbody tr.odd>.sorting_3,table.dataTable.order-column.stripe tbody tr.odd>.sorting_3{background-color:whitesmoke}table.dataTable.display tbody tr.odd.selected>.sorting_1,table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_1{background-color:#a6b4cd}table.dataTable.display tbody tr.odd.selected>.sorting_2,table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_2{background-color:#a8b5cf}table.dataTable.display tbody tr.odd.selected>.sorting_3,table.dataTable.order-column.stripe tbody tr.odd.selected>.sorting_3{background-color:#a9b7d1}table.dataTable.display tbody tr.even>.sorting_1,table.dataTable.order-column.stripe tbody tr.even>.sorting_1{background-color:#fafafa}table.dataTable.display tbody tr.even>.sorting_2,table.dataTable.order-column.stripe tbody tr.even>.sorting_2{background-color:#fcfcfc}table.dataTable.display tbody tr.even>.sorting_3,table.dataTable.order-column.stripe tbody tr.even>.sorting_3{background-color:#fefefe}table.dataTable.display tbody tr.even.selected>.sorting_1,table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_1{background-color:#acbad5}table.dataTable.display tbody tr.even.selected>.sorting_2,table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_2{background-color:#aebcd6}table.dataTable.display tbody tr.even.selected>.sorting_3,table.dataTable.order-column.stripe tbody tr.even.selected>.sorting_3{background-color:#afbdd8}table.dataTable.display tbody tr:hover>.sorting_1,table.dataTable.order-column.hover tbody tr:hover>.sorting_1{background-color:#eaeaea}table.dataTable.display tbody tr:hover>.sorting_2,table.dataTable.order-column.hover tbody tr:hover>.sorting_2{background-color:#ececec}table.dataTable.display tbody tr:hover>.sorting_3,table.dataTable.order-column.hover tbody tr:hover>.sorting_3{background-color:#efefef}table.dataTable.display tbody tr:hover.selected>.sorting_1,table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_1{background-color:#a2aec7}table.dataTable.display tbody tr:hover.selected>.sorting_2,table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_2{background-color:#a3b0c9}table.dataTable.display tbody tr:hover.selected>.sorting_3,table.dataTable.order-column.hover tbody tr:hover.selected>.sorting_3{background-color:#a5b2cb}table.dataTable.no-footer{border-bottom:1px solid #111}table.dataTable.nowrap th,table.dataTable.nowrap td{white-space:nowrap}table.dataTable.compact thead th,table.dataTable.compact thead td{padding:4px 17px 4px 4px}table.dataTable.compact tfoot th,table.dataTable.compact tfoot td{padding:4px}table.dataTable.compact tbody th,table.dataTable.compact tbody td{padding:4px}table.dataTable th.dt-left,table.dataTable td.dt-left{text-align:left}table.dataTable th.dt-center,table.dataTable td.dt-center,table.dataTable td.dataTables_empty{text-align:center}table.dataTable th.dt-right,table.dataTable td.dt-right{text-align:right}table.dataTable th.dt-justify,table.dataTable td.dt-justify{text-align:justify}table.dataTable th.dt-nowrap,table.dataTable td.dt-nowrap{white-space:nowrap}table.dataTable thead th.dt-head-left,table.dataTable thead td.dt-head-left,table.dataTable tfoot th.dt-head-left,table.dataTable tfoot td.dt-head-left{text-align:left}table.dataTable thead th.dt-head-center,table.dataTable thead td.dt-head-center,table.dataTable tfoot th.dt-head-center,table.dataTable tfoot td.dt-head-center{text-align:center}table.dataTable thead th.dt-head-right,table.dataTable thead td.dt-head-right,table.dataTable tfoot th.dt-head-right,table.dataTable tfoot td.dt-head-right{text-align:right}table.dataTable thead th.dt-head-justify,table.dataTable thead td.dt-head-justify,table.dataTable tfoot th.dt-head-justify,table.dataTable tfoot td.dt-head-justify{text-align:justify}table.dataTable thead th.dt-head-nowrap,table.dataTable thead td.dt-head-nowrap,table.dataTable tfoot th.dt-head-nowrap,table.dataTable tfoot td.dt-head-nowrap{white-space:nowrap}table.dataTable tbody th.dt-body-left,table.dataTable tbody td.dt-body-left{text-align:left}table.dataTable tbody th.dt-body-center,table.dataTable tbody td.dt-body-center{text-align:center}table.dataTable tbody th.dt-body-right,table.dataTable tbody td.dt-body-right{text-align:right}table.dataTable tbody th.dt-body-justify,table.dataTable tbody td.dt-body-justify{text-align:justify}table.dataTable tbody th.dt-body-nowrap,table.dataTable tbody td.dt-body-nowrap{white-space:nowrap}table.dataTable,table.dataTable th,table.dataTable td{-webkit-box-sizing:content-box;box-sizing:content-box}.dataTables_wrapper{position:relative;clear:both;*zoom:1;zoom:1}.dataTables_wrapper .dataTables_length{float:left}.dataTables_wrapper .dataTables_filter{float:right;text-align:right}.dataTables_wrapper .dataTables_filter input{margin-left:0.5em}.dataTables_wrapper .dataTables_info{clear:both;float:left;padding-top:0.755em}.dataTables_wrapper .dataTables_paginate{float:right;text-align:right;padding-top:0.25em}.dataTables_wrapper .dataTables_paginate .paginate_button{box-sizing:border-box;display:inline-block;min-width:1.5em;padding:0.5em 1em;margin-left:2px;text-align:center;text-decoration:none !important;cursor:pointer;*cursor:hand;color:#333 !important;border:1px solid transparent;border-radius:2px}.dataTables_wrapper .dataTables_paginate .paginate_button.current,.dataTables_wrapper .dataTables_paginate .paginate_button.current:hover{color:#333 !important;border:1px solid #979797;background-color:white;background:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #fff), color-stop(100%, #dcdcdc));background:-webkit-linear-gradient(top, #fff 0%, #dcdcdc 100%);background:-moz-linear-gradient(top, #fff 0%, #dcdcdc 100%);background:-ms-linear-gradient(top, #fff 0%, #dcdcdc 100%);background:-o-linear-gradient(top, #fff 0%, #dcdcdc 100%);background:linear-gradient(to bottom, #fff 0%, #dcdcdc 100%)}.dataTables_wrapper .dataTables_paginate .paginate_button.disabled,.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:hover,.dataTables_wrapper .dataTables_paginate .paginate_button.disabled:active{cursor:default;color:#666 !important;border:1px solid transparent;background:transparent;box-shadow:none}.dataTables_wrapper .dataTables_paginate .paginate_button:hover{color:white !important;border:1px solid #111;background-color:#585858;background:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #585858), color-stop(100%, #111));background:-webkit-linear-gradient(top, #585858 0%, #111 100%);background:-moz-linear-gradient(top, #585858 0%, #111 100%);background:-ms-linear-gradient(top, #585858 0%, #111 100%);background:-o-linear-gradient(top, #585858 0%, #111 100%);background:linear-gradient(to bottom, #585858 0%, #111 100%)}.dataTables_wrapper .dataTables_paginate .paginate_button:active{outline:none;background-color:#2b2b2b;background:-webkit-gradient(linear, left top, left bottom, color-stop(0%, #2b2b2b), color-stop(100%, #0c0c0c));background:-webkit-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);background:-moz-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);background:-ms-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);background:-o-linear-gradient(top, #2b2b2b 0%, #0c0c0c 100%);background:linear-gradient(to bottom, #2b2b2b 0%, #0c0c0c 100%);box-shadow:inset 0 0 3px #111}.dataTables_wrapper .dataTables_paginate .ellipsis{padding:0 1em}.dataTables_wrapper .dataTables_processing{position:absolute;top:50%;left:50%;width:100%;height:40px;margin-left:-50%;margin-top:-25px;padding-top:20px;text-align:center;font-size:1.2em;background-color:white;background:-webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255,255,255,0)), color-stop(25%, rgba(255,255,255,0.9)), color-stop(75%, rgba(255,255,255,0.9)), color-stop(100%, rgba(255,255,255,0)));background:-webkit-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 25%, rgba(255,255,255,0.9) 75%, rgba(255,255,255,0) 100%);background:-moz-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 25%, rgba(255,255,255,0.9) 75%, rgba(255,255,255,0) 100%);background:-ms-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 25%, rgba(255,255,255,0.9) 75%, rgba(255,255,255,0) 100%);background:-o-linear-gradient(left, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 25%, rgba(255,255,255,0.9) 75%, rgba(255,255,255,0) 100%);background:linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 25%, rgba(255,255,255,0.9) 75%, rgba(255,255,255,0) 100%)}.dataTables_wrapper .dataTables_length,.dataTables_wrapper .dataTables_filter,.dataTables_wrapper .dataTables_info,.dataTables_wrapper .dataTables_processing,.dataTables_wrapper .dataTables_paginate{color:#333}.dataTables_wrapper .dataTables_scroll{clear:both}.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody{*margin-top:-1px;-webkit-overflow-scrolling:touch}.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>thead>tr>th,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>thead>tr>td,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>tbody>tr>th,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>tbody>tr>td{vertical-align:middle}.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>thead>tr>th>div.dataTables_sizing,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>thead>tr>td>div.dataTables_sizing,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>tbody>tr>th>div.dataTables_sizing,.dataTables_wrapper .dataTables_scroll div.dataTables_scrollBody>table>tbody>tr>td>div.dataTables_sizing{height:0;overflow:hidden;margin:0 !important;padding:0 !important}.dataTables_wrapper.no-footer .dataTables_scrollBody{border-bottom:1px solid #111}.dataTables_wrapper.no-footer div.dataTables_scrollHead>table,.dataTables_wrapper.no-footer div.dataTables_scrollBody>table{border-bottom:none}.dataTables_wrapper:after{visibility:hidden;display:block;content:"";clear:both;height:0}@media screen and (max-width: 767px){.dataTables_wrapper .dataTables_info,.dataTables_wrapper .dataTables_paginate{float:none;text-align:center}.dataTables_wrapper .dataTables_paginate{margin-top:0.5em}}@media screen and (max-width: 640px){.dataTables_wrapper .dataTables_length,.dataTables_wrapper .dataTables_filter{float:none;text-align:center}.dataTables_wrapper .dataTables_filter{margin-top:0.5em}} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/jquery.dataTables_themeroller.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/jquery.dataTables_themeroller.css new file mode 100644 index 00000000..1426a44a --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/css/jquery.dataTables_themeroller.css @@ -0,0 +1,416 @@ +/* + * Table styles + */ +table.dataTable { + width: 100%; + margin: 0 auto; + clear: both; + border-collapse: separate; + border-spacing: 0; + /* + * Header and footer styles + */ + /* + * Body styles + */ +} +table.dataTable thead th, +table.dataTable thead td, +table.dataTable tfoot th, +table.dataTable tfoot td { + padding: 4px 10px; +} +table.dataTable thead th, +table.dataTable tfoot th { + font-weight: bold; +} +table.dataTable thead th:active, +table.dataTable thead td:active { + outline: none; +} +table.dataTable thead .sorting_asc, +table.dataTable thead .sorting_desc, +table.dataTable thead .sorting { + cursor: pointer; + *cursor: hand; +} +table.dataTable thead th div.DataTables_sort_wrapper { + position: relative; + padding-right: 10px; +} +table.dataTable thead th div.DataTables_sort_wrapper span { + position: absolute; + top: 50%; + margin-top: -8px; + right: -5px; +} +table.dataTable thead th.ui-state-default { + border-right-width: 0; +} +table.dataTable thead th.ui-state-default:last-child { + border-right-width: 1px; +} +table.dataTable tbody tr { + background-color: #ffffff; +} +table.dataTable tbody tr.selected { + background-color: #B0BED9; +} +table.dataTable tbody th, +table.dataTable tbody td { + padding: 8px 10px; +} +table.dataTable th.center, +table.dataTable td.center, +table.dataTable td.dataTables_empty { + text-align: center; +} +table.dataTable th.right, +table.dataTable td.right { + text-align: right; +} +table.dataTable.row-border tbody th, table.dataTable.row-border tbody td, table.dataTable.display tbody th, table.dataTable.display tbody td { + border-top: 1px solid #ddd; +} +table.dataTable.row-border tbody tr:first-child th, +table.dataTable.row-border tbody tr:first-child td, table.dataTable.display tbody tr:first-child th, +table.dataTable.display tbody tr:first-child td { + border-top: none; +} +table.dataTable.cell-border tbody th, table.dataTable.cell-border tbody td { + border-top: 1px solid #ddd; + border-right: 1px solid #ddd; +} +table.dataTable.cell-border tbody tr th:first-child, +table.dataTable.cell-border tbody tr td:first-child { + border-left: 1px solid #ddd; +} +table.dataTable.cell-border tbody tr:first-child th, +table.dataTable.cell-border tbody tr:first-child td { + border-top: none; +} +table.dataTable.stripe tbody tr.odd, table.dataTable.display tbody tr.odd { + background-color: #f9f9f9; +} +table.dataTable.stripe tbody tr.odd.selected, table.dataTable.display tbody tr.odd.selected { + background-color: #abb9d3; +} +table.dataTable.hover tbody tr:hover, +table.dataTable.hover tbody tr.odd:hover, +table.dataTable.hover tbody tr.even:hover, table.dataTable.display tbody tr:hover, +table.dataTable.display tbody tr.odd:hover, +table.dataTable.display tbody tr.even:hover { + background-color: whitesmoke; +} +table.dataTable.hover tbody tr:hover.selected, +table.dataTable.hover tbody tr.odd:hover.selected, +table.dataTable.hover tbody tr.even:hover.selected, table.dataTable.display tbody tr:hover.selected, +table.dataTable.display tbody tr.odd:hover.selected, +table.dataTable.display tbody tr.even:hover.selected { + background-color: #a9b7d1; +} +table.dataTable.order-column tbody tr > .sorting_1, +table.dataTable.order-column tbody tr > .sorting_2, +table.dataTable.order-column tbody tr > .sorting_3, table.dataTable.display tbody tr > .sorting_1, +table.dataTable.display tbody tr > .sorting_2, +table.dataTable.display tbody tr > .sorting_3 { + background-color: #f9f9f9; +} +table.dataTable.order-column tbody tr.selected > .sorting_1, +table.dataTable.order-column tbody tr.selected > .sorting_2, +table.dataTable.order-column tbody tr.selected > .sorting_3, table.dataTable.display tbody tr.selected > .sorting_1, +table.dataTable.display tbody tr.selected > .sorting_2, +table.dataTable.display tbody tr.selected > .sorting_3 { + background-color: #acbad4; +} +table.dataTable.display tbody tr.odd > .sorting_1, table.dataTable.order-column.stripe tbody tr.odd > .sorting_1 { + background-color: #f1f1f1; +} +table.dataTable.display tbody tr.odd > .sorting_2, table.dataTable.order-column.stripe tbody tr.odd > .sorting_2 { + background-color: #f3f3f3; +} +table.dataTable.display tbody tr.odd > .sorting_3, table.dataTable.order-column.stripe tbody tr.odd > .sorting_3 { + background-color: whitesmoke; +} +table.dataTable.display tbody tr.odd.selected > .sorting_1, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_1 { + background-color: #a6b3cd; +} +table.dataTable.display tbody tr.odd.selected > .sorting_2, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_2 { + background-color: #a7b5ce; +} +table.dataTable.display tbody tr.odd.selected > .sorting_3, table.dataTable.order-column.stripe tbody tr.odd.selected > .sorting_3 { + background-color: #a9b6d0; +} +table.dataTable.display tbody tr.even > .sorting_1, table.dataTable.order-column.stripe tbody tr.even > .sorting_1 { + background-color: #f9f9f9; +} +table.dataTable.display tbody tr.even > .sorting_2, table.dataTable.order-column.stripe tbody tr.even > .sorting_2 { + background-color: #fbfbfb; +} +table.dataTable.display tbody tr.even > .sorting_3, table.dataTable.order-column.stripe tbody tr.even > .sorting_3 { + background-color: #fdfdfd; +} +table.dataTable.display tbody tr.even.selected > .sorting_1, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_1 { + background-color: #acbad4; +} +table.dataTable.display tbody tr.even.selected > .sorting_2, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_2 { + background-color: #adbbd6; +} +table.dataTable.display tbody tr.even.selected > .sorting_3, table.dataTable.order-column.stripe tbody tr.even.selected > .sorting_3 { + background-color: #afbdd8; +} +table.dataTable.display tbody tr:hover > .sorting_1, +table.dataTable.display tbody tr.odd:hover > .sorting_1, +table.dataTable.display tbody tr.even:hover > .sorting_1, table.dataTable.order-column.hover tbody tr:hover > .sorting_1, +table.dataTable.order-column.hover tbody tr.odd:hover > .sorting_1, +table.dataTable.order-column.hover tbody tr.even:hover > .sorting_1 { + background-color: #eaeaea; +} +table.dataTable.display tbody tr:hover > .sorting_2, +table.dataTable.display tbody tr.odd:hover > .sorting_2, +table.dataTable.display tbody tr.even:hover > .sorting_2, table.dataTable.order-column.hover tbody tr:hover > .sorting_2, +table.dataTable.order-column.hover tbody tr.odd:hover > .sorting_2, +table.dataTable.order-column.hover tbody tr.even:hover > .sorting_2 { + background-color: #ebebeb; +} +table.dataTable.display tbody tr:hover > .sorting_3, +table.dataTable.display tbody tr.odd:hover > .sorting_3, +table.dataTable.display tbody tr.even:hover > .sorting_3, table.dataTable.order-column.hover tbody tr:hover > .sorting_3, +table.dataTable.order-column.hover tbody tr.odd:hover > .sorting_3, +table.dataTable.order-column.hover tbody tr.even:hover > .sorting_3 { + background-color: #eeeeee; +} +table.dataTable.display tbody tr:hover.selected > .sorting_1, +table.dataTable.display tbody tr.odd:hover.selected > .sorting_1, +table.dataTable.display tbody tr.even:hover.selected > .sorting_1, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_1, +table.dataTable.order-column.hover tbody tr.odd:hover.selected > .sorting_1, +table.dataTable.order-column.hover tbody tr.even:hover.selected > .sorting_1 { + background-color: #a1aec7; +} +table.dataTable.display tbody tr:hover.selected > .sorting_2, +table.dataTable.display tbody tr.odd:hover.selected > .sorting_2, +table.dataTable.display tbody tr.even:hover.selected > .sorting_2, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_2, +table.dataTable.order-column.hover tbody tr.odd:hover.selected > .sorting_2, +table.dataTable.order-column.hover tbody tr.even:hover.selected > .sorting_2 { + background-color: #a2afc8; +} +table.dataTable.display tbody tr:hover.selected > .sorting_3, +table.dataTable.display tbody tr.odd:hover.selected > .sorting_3, +table.dataTable.display tbody tr.even:hover.selected > .sorting_3, table.dataTable.order-column.hover tbody tr:hover.selected > .sorting_3, +table.dataTable.order-column.hover tbody tr.odd:hover.selected > .sorting_3, +table.dataTable.order-column.hover tbody tr.even:hover.selected > .sorting_3 { + background-color: #a4b2cb; +} +table.dataTable.nowrap th, table.dataTable.nowrap td { + white-space: nowrap; +} +table.dataTable.compact thead th, +table.dataTable.compact thead td { + padding: 5px 9px; +} +table.dataTable.compact tfoot th, +table.dataTable.compact tfoot td { + padding: 5px 9px 3px 9px; +} +table.dataTable.compact tbody th, +table.dataTable.compact tbody td { + padding: 4px 5px; +} +table.dataTable th.dt-left, +table.dataTable td.dt-left { + text-align: left; +} +table.dataTable th.dt-center, +table.dataTable td.dt-center, +table.dataTable td.dataTables_empty { + text-align: center; +} +table.dataTable th.dt-right, +table.dataTable td.dt-right { + text-align: right; +} +table.dataTable th.dt-justify, +table.dataTable td.dt-justify { + text-align: justify; +} +table.dataTable th.dt-nowrap, +table.dataTable td.dt-nowrap { + white-space: nowrap; +} +table.dataTable thead th.dt-head-left, +table.dataTable thead td.dt-head-left, +table.dataTable tfoot th.dt-head-left, +table.dataTable tfoot td.dt-head-left { + text-align: left; +} +table.dataTable thead th.dt-head-center, +table.dataTable thead td.dt-head-center, +table.dataTable tfoot th.dt-head-center, +table.dataTable tfoot td.dt-head-center { + text-align: center; +} +table.dataTable thead th.dt-head-right, +table.dataTable thead td.dt-head-right, +table.dataTable tfoot th.dt-head-right, +table.dataTable tfoot td.dt-head-right { + text-align: right; +} +table.dataTable thead th.dt-head-justify, +table.dataTable thead td.dt-head-justify, +table.dataTable tfoot th.dt-head-justify, +table.dataTable tfoot td.dt-head-justify { + text-align: justify; +} +table.dataTable thead th.dt-head-nowrap, +table.dataTable thead td.dt-head-nowrap, +table.dataTable tfoot th.dt-head-nowrap, +table.dataTable tfoot td.dt-head-nowrap { + white-space: nowrap; +} +table.dataTable tbody th.dt-body-left, +table.dataTable tbody td.dt-body-left { + text-align: left; +} +table.dataTable tbody th.dt-body-center, +table.dataTable tbody td.dt-body-center { + text-align: center; +} +table.dataTable tbody th.dt-body-right, +table.dataTable tbody td.dt-body-right { + text-align: right; +} +table.dataTable tbody th.dt-body-justify, +table.dataTable tbody td.dt-body-justify { + text-align: justify; +} +table.dataTable tbody th.dt-body-nowrap, +table.dataTable tbody td.dt-body-nowrap { + white-space: nowrap; +} + +table.dataTable, +table.dataTable th, +table.dataTable td { + -webkit-box-sizing: content-box; + -moz-box-sizing: content-box; + box-sizing: content-box; +} + +/* + * Control feature layout + */ +.dataTables_wrapper { + position: relative; + clear: both; + *zoom: 1; + zoom: 1; +} +.dataTables_wrapper .dataTables_length { + float: left; +} +.dataTables_wrapper .dataTables_filter { + float: right; + text-align: right; +} +.dataTables_wrapper .dataTables_filter input { + margin-left: 0.5em; +} +.dataTables_wrapper .dataTables_info { + clear: both; + float: left; + padding-top: 0.55em; +} +.dataTables_wrapper .dataTables_paginate { + float: right; + text-align: right; +} +.dataTables_wrapper .dataTables_paginate .fg-button { + box-sizing: border-box; + display: inline-block; + min-width: 1.5em; + padding: 0.5em; + margin-left: 2px; + text-align: center; + text-decoration: none !important; + cursor: pointer; + *cursor: hand; + color: #333 !important; + border: 1px solid transparent; +} +.dataTables_wrapper .dataTables_paginate .fg-button:active { + outline: none; +} +.dataTables_wrapper .dataTables_paginate .fg-button:first-child { + border-top-left-radius: 3px; + border-bottom-left-radius: 3px; +} +.dataTables_wrapper .dataTables_paginate .fg-button:last-child { + border-top-right-radius: 3px; + border-bottom-right-radius: 3px; +} +.dataTables_wrapper .dataTables_processing { + position: absolute; + top: 50%; + left: 50%; + width: 100%; + height: 40px; + margin-left: -50%; + margin-top: -25px; + padding-top: 20px; + text-align: center; + font-size: 1.2em; + background-color: white; + background: -webkit-gradient(linear, left top, right top, color-stop(0%, rgba(255, 255, 255, 0)), color-stop(25%, rgba(255, 255, 255, 0.9)), color-stop(75%, rgba(255, 255, 255, 0.9)), color-stop(100%, rgba(255, 255, 255, 0))); + /* Chrome,Safari4+ */ + background: -webkit-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%); + /* Chrome10+,Safari5.1+ */ + background: -moz-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%); + /* FF3.6+ */ + background: -ms-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%); + /* IE10+ */ + background: -o-linear-gradient(left, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%); + /* Opera 11.10+ */ + background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.9) 25%, rgba(255, 255, 255, 0.9) 75%, rgba(255, 255, 255, 0) 100%); + /* W3C */ +} +.dataTables_wrapper .dataTables_length, +.dataTables_wrapper .dataTables_filter, +.dataTables_wrapper .dataTables_info, +.dataTables_wrapper .dataTables_processing, +.dataTables_wrapper .dataTables_paginate { + color: #333; +} +.dataTables_wrapper .dataTables_scroll { + clear: both; +} +.dataTables_wrapper .dataTables_scrollBody { + *margin-top: -1px; + -webkit-overflow-scrolling: touch; +} +.dataTables_wrapper .ui-widget-header { + font-weight: normal; +} +.dataTables_wrapper .ui-toolbar { + padding: 8px; +} +.dataTables_wrapper:after { + visibility: hidden; + display: block; + content: ""; + clear: both; + height: 0; +} + +@media screen and (max-width: 767px) { + .dataTables_wrapper .dataTables_length, + .dataTables_wrapper .dataTables_filter, + .dataTables_wrapper .dataTables_info, + .dataTables_wrapper .dataTables_paginate { + float: none; + text-align: center; + } + .dataTables_wrapper .dataTables_filter, + .dataTables_wrapper .dataTables_paginate { + margin-top: 0.5em; + } +} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/License.txt b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/License.txt new file mode 100644 index 00000000..ac88d831 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/License.txt @@ -0,0 +1,22 @@ +MIT license + +Copyright (c) 2008-2015 SpryMedia Limited +http://datatables.net + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/Readme.md b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/Readme.md new file mode 100644 index 00000000..d5f8110a --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/Readme.md @@ -0,0 +1,39 @@ +# AutoFill + +AutoFill adds an Excel data fill like option to a DataTable to click and drag over multiple cells, filling in information over the selected cells and incrementing numbers as needed. + + +# Installation + +To use AutoFill the best way to obtain the software is to use the [DataTables downloader](//datatables.net/download). You can also include the individual files from the [DataTables CDN](//cdn.datatables.net). See the [documentation](http://datatables.net/extensions/autofill/) for full details. + +## NPM and Bower + +If you prefer to use a package manager such as NPM or Bower, distribution repositories are available with software built from this repository under the name `datatables.net-autofill`. Styling packages for Bootstrap, Foundation and other styling libraries are also available by adding a suffix to the package name. + +Please see the DataTables [NPM](//datatables.net/download/npm) and [Bower](//datatables.net/download/bower) installation pages for further information. The [DataTables installation manual](//datatables.net/manual/installation) also has details on how to use package managers with DataTables. + + +# Basic usage + +AutoFill is initialised using the `autoFill` option in the DataTables constructor. Further options can be specified using this option as an object - see the documentation for details. For example: + +```js +$(document).ready( function () { + $('#example').DataTable( { + autoFill: true + } ); +} ); +``` + + +# Documentation / support + +* [Documentation](https://datatables.net/extensions/autofill/) +* [DataTables support forums](http://datatables.net/forums) + + +# GitHub + +If you fancy getting involved with the development of AutoFill and help make it better, please refer to its [GitHub repo](https://github.com/DataTables/AutoFill) + diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.bootstrap.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.bootstrap.css new file mode 100644 index 00000000..2f926236 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.bootstrap.css @@ -0,0 +1,81 @@ +div.dt-autofill-handle { + position: absolute; + height: 8px; + width: 8px; + z-index: 102; + box-sizing: border-box; + border: 1px solid #337ab7; + background: #337ab7; +} + +div.dt-autofill-select { + position: absolute; + z-index: 1001; + background-color: #337ab7; + background-image: repeating-linear-gradient(45deg, transparent, transparent 5px, rgba(255, 255, 255, 0.5) 5px, rgba(255, 255, 255, 0.5) 10px); +} +div.dt-autofill-select.top, div.dt-autofill-select.bottom { + height: 3px; + margin-top: -1px; +} +div.dt-autofill-select.left, div.dt-autofill-select.right { + width: 3px; + margin-left: -1px; +} + +div.dt-autofill-list { + position: fixed; + top: 50%; + left: 50%; + width: 500px; + margin-left: -250px; + background-color: white; + border-radius: 6px; + box-shadow: 0 0 5px #555; + border: 2px solid #444; + z-index: 11; + box-sizing: border-box; + padding: 1.5em 2em; +} +div.dt-autofill-list ul { + display: table; + margin: 0; + padding: 0; + list-style: none; + width: 100%; +} +div.dt-autofill-list ul li { + display: table-row; +} +div.dt-autofill-list ul li:last-child div.dt-autofill-question, div.dt-autofill-list ul li:last-child div.dt-autofill-button { + border-bottom: none; +} +div.dt-autofill-list ul li:hover { + background-color: #f6f6f6; +} +div.dt-autofill-list div.dt-autofill-question { + display: table-cell; + padding: 0.5em 0; + border-bottom: 1px solid #ccc; +} +div.dt-autofill-list div.dt-autofill-question input[type=number] { + padding: 6px; + width: 30px; + margin: -2px 0; +} +div.dt-autofill-list div.dt-autofill-button { + display: table-cell; + padding: 0.5em 0; + border-bottom: 1px solid #ccc; +} + +div.dt-autofill-background { + position: fixed; + top: 0; + left: 0; + width: 100%; + height: 100%; + background: rgba(0, 0, 0, 0.7); + background: radial-gradient(ellipse farthest-corner at center, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%); + z-index: 10; +} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.bootstrap.min.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.bootstrap.min.css new file mode 100644 index 00000000..bbd2a111 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.bootstrap.min.css @@ -0,0 +1 @@ +div.dt-autofill-handle{position:absolute;height:8px;width:8px;z-index:102;box-sizing:border-box;border:1px solid #337ab7;background:#337ab7}div.dt-autofill-select{position:absolute;z-index:1001;background-color:#337ab7;background-image:repeating-linear-gradient(45deg, transparent, transparent 5px, rgba(255,255,255,0.5) 5px, rgba(255,255,255,0.5) 10px)}div.dt-autofill-select.top,div.dt-autofill-select.bottom{height:3px;margin-top:-1px}div.dt-autofill-select.left,div.dt-autofill-select.right{width:3px;margin-left:-1px}div.dt-autofill-list{position:fixed;top:50%;left:50%;width:500px;margin-left:-250px;background-color:white;border-radius:6px;box-shadow:0 0 5px #555;border:2px solid #444;z-index:11;box-sizing:border-box;padding:1.5em 2em}div.dt-autofill-list ul{display:table;margin:0;padding:0;list-style:none;width:100%}div.dt-autofill-list ul li{display:table-row}div.dt-autofill-list ul li:last-child div.dt-autofill-question,div.dt-autofill-list ul li:last-child div.dt-autofill-button{border-bottom:none}div.dt-autofill-list ul li:hover{background-color:#f6f6f6}div.dt-autofill-list div.dt-autofill-question{display:table-cell;padding:0.5em 0;border-bottom:1px solid #ccc}div.dt-autofill-list div.dt-autofill-question input[type=number]{padding:6px;width:30px;margin:-2px 0}div.dt-autofill-list div.dt-autofill-button{display:table-cell;padding:0.5em 0;border-bottom:1px solid #ccc}div.dt-autofill-background{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.7);background:radial-gradient(ellipse farthest-corner at center, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.7) 100%);z-index:10} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.bootstrap4.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.bootstrap4.css new file mode 100644 index 00000000..fef79ac7 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.bootstrap4.css @@ -0,0 +1,81 @@ +div.dt-autofill-handle { + position: absolute; + height: 8px; + width: 8px; + z-index: 102; + box-sizing: border-box; + border: 1px solid #0275d8; + background: #0275d8; +} + +div.dt-autofill-select { + position: absolute; + z-index: 1001; + background-color: #0275d8; + background-image: repeating-linear-gradient(45deg, transparent, transparent 5px, rgba(255, 255, 255, 0.5) 5px, rgba(255, 255, 255, 0.5) 10px); +} +div.dt-autofill-select.top, div.dt-autofill-select.bottom { + height: 3px; + margin-top: -1px; +} +div.dt-autofill-select.left, div.dt-autofill-select.right { + width: 3px; + margin-left: -1px; +} + +div.dt-autofill-list { + position: fixed; + top: 50%; + left: 50%; + width: 500px; + margin-left: -250px; + background-color: white; + border-radius: 6px; + box-shadow: 0 0 5px #555; + border: 2px solid #444; + z-index: 11; + box-sizing: border-box; + padding: 1.5em 2em; +} +div.dt-autofill-list ul { + display: table; + margin: 0; + padding: 0; + list-style: none; + width: 100%; +} +div.dt-autofill-list ul li { + display: table-row; +} +div.dt-autofill-list ul li:last-child div.dt-autofill-question, div.dt-autofill-list ul li:last-child div.dt-autofill-button { + border-bottom: none; +} +div.dt-autofill-list ul li:hover { + background-color: #f6f6f6; +} +div.dt-autofill-list div.dt-autofill-question { + display: table-cell; + padding: 0.5em 0; + border-bottom: 1px solid #ccc; +} +div.dt-autofill-list div.dt-autofill-question input[type=number] { + padding: 6px; + width: 30px; + margin: -2px 0; +} +div.dt-autofill-list div.dt-autofill-button { + display: table-cell; + padding: 0.5em 0; + border-bottom: 1px solid #ccc; +} + +div.dt-autofill-background { + position: fixed; + top: 0; + left: 0; + width: 100%; + height: 100%; + background: rgba(0, 0, 0, 0.7); + background: radial-gradient(ellipse farthest-corner at center, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%); + z-index: 10; +} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.bootstrap4.min.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.bootstrap4.min.css new file mode 100644 index 00000000..58a210ee --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.bootstrap4.min.css @@ -0,0 +1 @@ +div.dt-autofill-handle{position:absolute;height:8px;width:8px;z-index:102;box-sizing:border-box;border:1px solid #0275d8;background:#0275d8}div.dt-autofill-select{position:absolute;z-index:1001;background-color:#0275d8;background-image:repeating-linear-gradient(45deg, transparent, transparent 5px, rgba(255,255,255,0.5) 5px, rgba(255,255,255,0.5) 10px)}div.dt-autofill-select.top,div.dt-autofill-select.bottom{height:3px;margin-top:-1px}div.dt-autofill-select.left,div.dt-autofill-select.right{width:3px;margin-left:-1px}div.dt-autofill-list{position:fixed;top:50%;left:50%;width:500px;margin-left:-250px;background-color:white;border-radius:6px;box-shadow:0 0 5px #555;border:2px solid #444;z-index:11;box-sizing:border-box;padding:1.5em 2em}div.dt-autofill-list ul{display:table;margin:0;padding:0;list-style:none;width:100%}div.dt-autofill-list ul li{display:table-row}div.dt-autofill-list ul li:last-child div.dt-autofill-question,div.dt-autofill-list ul li:last-child div.dt-autofill-button{border-bottom:none}div.dt-autofill-list ul li:hover{background-color:#f6f6f6}div.dt-autofill-list div.dt-autofill-question{display:table-cell;padding:0.5em 0;border-bottom:1px solid #ccc}div.dt-autofill-list div.dt-autofill-question input[type=number]{padding:6px;width:30px;margin:-2px 0}div.dt-autofill-list div.dt-autofill-button{display:table-cell;padding:0.5em 0;border-bottom:1px solid #ccc}div.dt-autofill-background{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.7);background:radial-gradient(ellipse farthest-corner at center, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.7) 100%);z-index:10} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.dataTables.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.dataTables.css new file mode 100644 index 00000000..e6a27b5c --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.dataTables.css @@ -0,0 +1,92 @@ +div.dt-autofill-handle { + position: absolute; + height: 8px; + width: 8px; + z-index: 102; + box-sizing: border-box; + border: 1px solid #316ad1; + background: linear-gradient(to bottom, #abcffb 0%, #4989de 100%); +} + +div.dt-autofill-select { + position: absolute; + z-index: 1001; + background-color: #4989de; + background-image: repeating-linear-gradient(45deg, transparent, transparent 5px, rgba(255, 255, 255, 0.5) 5px, rgba(255, 255, 255, 0.5) 10px); +} +div.dt-autofill-select.top, div.dt-autofill-select.bottom { + height: 3px; + margin-top: -1px; +} +div.dt-autofill-select.left, div.dt-autofill-select.right { + width: 3px; + margin-left: -1px; +} + +div.dt-autofill-list { + position: fixed; + top: 50%; + left: 50%; + width: 500px; + margin-left: -250px; + background-color: white; + border-radius: 6px; + box-shadow: 0 0 5px #555; + border: 2px solid #444; + z-index: 11; + box-sizing: border-box; + padding: 1.5em 2em; +} +div.dt-autofill-list ul { + display: table; + margin: 0; + padding: 0; + list-style: none; + width: 100%; +} +div.dt-autofill-list ul li { + display: table-row; +} +div.dt-autofill-list ul li:last-child div.dt-autofill-question, div.dt-autofill-list ul li:last-child div.dt-autofill-button { + border-bottom: none; +} +div.dt-autofill-list ul li:hover { + background-color: #f6f6f6; +} +div.dt-autofill-list div.dt-autofill-question { + display: table-cell; + padding: 0.5em 0; + border-bottom: 1px solid #ccc; +} +div.dt-autofill-list div.dt-autofill-question input[type=number] { + padding: 6px; + width: 30px; + margin: -2px 0; +} +div.dt-autofill-list div.dt-autofill-button { + display: table-cell; + padding: 0.5em 0; + border-bottom: 1px solid #ccc; +} +div.dt-autofill-list div.dt-autofill-button button { + color: white; + margin: 0; + padding: 6px 12px; + text-align: center; + border: 1px solid #2e6da4; + background-color: #337ab7; + border-radius: 4px; + cursor: pointer; + vertical-align: middle; +} + +div.dt-autofill-background { + position: fixed; + top: 0; + left: 0; + width: 100%; + height: 100%; + background: rgba(0, 0, 0, 0.7); + background: radial-gradient(ellipse farthest-corner at center, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%); + z-index: 10; +} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.dataTables.min.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.dataTables.min.css new file mode 100644 index 00000000..57238a83 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.dataTables.min.css @@ -0,0 +1 @@ +div.dt-autofill-handle{position:absolute;height:8px;width:8px;z-index:102;box-sizing:border-box;border:1px solid #316ad1;background:linear-gradient(to bottom, #abcffb 0%, #4989de 100%)}div.dt-autofill-select{position:absolute;z-index:1001;background-color:#4989de;background-image:repeating-linear-gradient(45deg, transparent, transparent 5px, rgba(255,255,255,0.5) 5px, rgba(255,255,255,0.5) 10px)}div.dt-autofill-select.top,div.dt-autofill-select.bottom{height:3px;margin-top:-1px}div.dt-autofill-select.left,div.dt-autofill-select.right{width:3px;margin-left:-1px}div.dt-autofill-list{position:fixed;top:50%;left:50%;width:500px;margin-left:-250px;background-color:white;border-radius:6px;box-shadow:0 0 5px #555;border:2px solid #444;z-index:11;box-sizing:border-box;padding:1.5em 2em}div.dt-autofill-list ul{display:table;margin:0;padding:0;list-style:none;width:100%}div.dt-autofill-list ul li{display:table-row}div.dt-autofill-list ul li:last-child div.dt-autofill-question,div.dt-autofill-list ul li:last-child div.dt-autofill-button{border-bottom:none}div.dt-autofill-list ul li:hover{background-color:#f6f6f6}div.dt-autofill-list div.dt-autofill-question{display:table-cell;padding:0.5em 0;border-bottom:1px solid #ccc}div.dt-autofill-list div.dt-autofill-question input[type=number]{padding:6px;width:30px;margin:-2px 0}div.dt-autofill-list div.dt-autofill-button{display:table-cell;padding:0.5em 0;border-bottom:1px solid #ccc}div.dt-autofill-list div.dt-autofill-button button{color:white;margin:0;padding:6px 12px;text-align:center;border:1px solid #2e6da4;background-color:#337ab7;border-radius:4px;cursor:pointer;vertical-align:middle}div.dt-autofill-background{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.7);background:radial-gradient(ellipse farthest-corner at center, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.7) 100%);z-index:10} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.foundation.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.foundation.css new file mode 100644 index 00000000..14693db7 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.foundation.css @@ -0,0 +1,85 @@ +div.dt-autofill-handle { + position: absolute; + height: 8px; + width: 8px; + z-index: 102; + box-sizing: border-box; + border: 1px solid #008CBA; + background: #008CBA; +} + +div.dt-autofill-select { + position: absolute; + z-index: 1001; + background-color: #008CBA; + background-image: repeating-linear-gradient(45deg, transparent, transparent 5px, rgba(255, 255, 255, 0.5) 5px, rgba(255, 255, 255, 0.5) 10px); +} +div.dt-autofill-select.top, div.dt-autofill-select.bottom { + height: 3px; + margin-top: -1px; +} +div.dt-autofill-select.left, div.dt-autofill-select.right { + width: 3px; + margin-left: -1px; +} + +div.dt-autofill-list { + position: fixed; + top: 50%; + left: 50%; + width: 500px; + margin-left: -250px; + background-color: white; + border-radius: 6px; + box-shadow: 0 0 5px #555; + border: 2px solid #444; + z-index: 11; + box-sizing: border-box; + padding: 1.5em 2em; +} +div.dt-autofill-list ul { + display: table; + margin: 0; + padding: 0; + list-style: none; + width: 100%; +} +div.dt-autofill-list ul li { + display: table-row; +} +div.dt-autofill-list ul li:last-child div.dt-autofill-question, div.dt-autofill-list ul li:last-child div.dt-autofill-button { + border-bottom: none; +} +div.dt-autofill-list ul li:hover { + background-color: #f6f6f6; +} +div.dt-autofill-list div.dt-autofill-question { + display: table-cell; + padding: 0.5em 0; + border-bottom: 1px solid #ccc; +} +div.dt-autofill-list div.dt-autofill-question input[type=number] { + padding: 6px; + width: 30px; + margin: -2px 0; +} +div.dt-autofill-list div.dt-autofill-button { + display: table-cell; + padding: 0.5em 0; + border-bottom: 1px solid #ccc; +} + +div.dt-autofill-background { + position: fixed; + top: 0; + left: 0; + width: 100%; + height: 100%; + background: rgba(0, 0, 0, 0.7); + background: radial-gradient(ellipse farthest-corner at center, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%); + z-index: 10; +} + +div.dt-autofill-list button { + margin: 0; +} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.foundation.min.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.foundation.min.css new file mode 100644 index 00000000..74f02a70 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.foundation.min.css @@ -0,0 +1 @@ +div.dt-autofill-handle{position:absolute;height:8px;width:8px;z-index:102;box-sizing:border-box;border:1px solid #008CBA;background:#008CBA}div.dt-autofill-select{position:absolute;z-index:1001;background-color:#008CBA;background-image:repeating-linear-gradient(45deg, transparent, transparent 5px, rgba(255,255,255,0.5) 5px, rgba(255,255,255,0.5) 10px)}div.dt-autofill-select.top,div.dt-autofill-select.bottom{height:3px;margin-top:-1px}div.dt-autofill-select.left,div.dt-autofill-select.right{width:3px;margin-left:-1px}div.dt-autofill-list{position:fixed;top:50%;left:50%;width:500px;margin-left:-250px;background-color:white;border-radius:6px;box-shadow:0 0 5px #555;border:2px solid #444;z-index:11;box-sizing:border-box;padding:1.5em 2em}div.dt-autofill-list ul{display:table;margin:0;padding:0;list-style:none;width:100%}div.dt-autofill-list ul li{display:table-row}div.dt-autofill-list ul li:last-child div.dt-autofill-question,div.dt-autofill-list ul li:last-child div.dt-autofill-button{border-bottom:none}div.dt-autofill-list ul li:hover{background-color:#f6f6f6}div.dt-autofill-list div.dt-autofill-question{display:table-cell;padding:0.5em 0;border-bottom:1px solid #ccc}div.dt-autofill-list div.dt-autofill-question input[type=number]{padding:6px;width:30px;margin:-2px 0}div.dt-autofill-list div.dt-autofill-button{display:table-cell;padding:0.5em 0;border-bottom:1px solid #ccc}div.dt-autofill-background{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.7);background:radial-gradient(ellipse farthest-corner at center, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.7) 100%);z-index:10}div.dt-autofill-list button{margin:0} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.jqueryui.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.jqueryui.css new file mode 100644 index 00000000..0fb0f109 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.jqueryui.css @@ -0,0 +1,85 @@ +div.dt-autofill-handle { + position: absolute; + height: 8px; + width: 8px; + z-index: 102; + box-sizing: border-box; + border: 1px solid #316ad1; + background: linear-gradient(to bottom, #abcffb 0%, #4989de 100%); +} + +div.dt-autofill-select { + position: absolute; + z-index: 1001; + background-color: #4989de; + background-image: repeating-linear-gradient(45deg, transparent, transparent 5px, rgba(255, 255, 255, 0.5) 5px, rgba(255, 255, 255, 0.5) 10px); +} +div.dt-autofill-select.top, div.dt-autofill-select.bottom { + height: 3px; + margin-top: -1px; +} +div.dt-autofill-select.left, div.dt-autofill-select.right { + width: 3px; + margin-left: -1px; +} + +div.dt-autofill-list { + position: fixed; + top: 50%; + left: 50%; + width: 500px; + margin-left: -250px; + background-color: white; + border-radius: 6px; + box-shadow: 0 0 5px #555; + border: 2px solid #444; + z-index: 11; + box-sizing: border-box; + padding: 1.5em 2em; +} +div.dt-autofill-list ul { + display: table; + margin: 0; + padding: 0; + list-style: none; + width: 100%; +} +div.dt-autofill-list ul li { + display: table-row; +} +div.dt-autofill-list ul li:last-child div.dt-autofill-question, div.dt-autofill-list ul li:last-child div.dt-autofill-button { + border-bottom: none; +} +div.dt-autofill-list ul li:hover { + background-color: #f6f6f6; +} +div.dt-autofill-list div.dt-autofill-question { + display: table-cell; + padding: 0.5em 0; + border-bottom: 1px solid #ccc; +} +div.dt-autofill-list div.dt-autofill-question input[type=number] { + padding: 6px; + width: 30px; + margin: -2px 0; +} +div.dt-autofill-list div.dt-autofill-button { + display: table-cell; + padding: 0.5em 0; + border-bottom: 1px solid #ccc; +} + +div.dt-autofill-background { + position: fixed; + top: 0; + left: 0; + width: 100%; + height: 100%; + background: rgba(0, 0, 0, 0.7); + background: radial-gradient(ellipse farthest-corner at center, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%); + z-index: 10; +} + +div.dt-autofill-list button { + padding: 0.35em 1em; +} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.jqueryui.min.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.jqueryui.min.css new file mode 100644 index 00000000..28b15d62 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.jqueryui.min.css @@ -0,0 +1 @@ +div.dt-autofill-handle{position:absolute;height:8px;width:8px;z-index:102;box-sizing:border-box;border:1px solid #316ad1;background:linear-gradient(to bottom, #abcffb 0%, #4989de 100%)}div.dt-autofill-select{position:absolute;z-index:1001;background-color:#4989de;background-image:repeating-linear-gradient(45deg, transparent, transparent 5px, rgba(255,255,255,0.5) 5px, rgba(255,255,255,0.5) 10px)}div.dt-autofill-select.top,div.dt-autofill-select.bottom{height:3px;margin-top:-1px}div.dt-autofill-select.left,div.dt-autofill-select.right{width:3px;margin-left:-1px}div.dt-autofill-list{position:fixed;top:50%;left:50%;width:500px;margin-left:-250px;background-color:white;border-radius:6px;box-shadow:0 0 5px #555;border:2px solid #444;z-index:11;box-sizing:border-box;padding:1.5em 2em}div.dt-autofill-list ul{display:table;margin:0;padding:0;list-style:none;width:100%}div.dt-autofill-list ul li{display:table-row}div.dt-autofill-list ul li:last-child div.dt-autofill-question,div.dt-autofill-list ul li:last-child div.dt-autofill-button{border-bottom:none}div.dt-autofill-list ul li:hover{background-color:#f6f6f6}div.dt-autofill-list div.dt-autofill-question{display:table-cell;padding:0.5em 0;border-bottom:1px solid #ccc}div.dt-autofill-list div.dt-autofill-question input[type=number]{padding:6px;width:30px;margin:-2px 0}div.dt-autofill-list div.dt-autofill-button{display:table-cell;padding:0.5em 0;border-bottom:1px solid #ccc}div.dt-autofill-background{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.7);background:radial-gradient(ellipse farthest-corner at center, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.7) 100%);z-index:10}div.dt-autofill-list button{padding:0.35em 1em} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.semanticui.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.semanticui.css new file mode 100644 index 00000000..e0cca042 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.semanticui.css @@ -0,0 +1,81 @@ +div.dt-autofill-handle { + position: absolute; + height: 8px; + width: 8px; + z-index: 102; + box-sizing: border-box; + border: 1px solid #888; + background: #888; +} + +div.dt-autofill-select { + position: absolute; + z-index: 1001; + background-color: #888; + background-image: repeating-linear-gradient(45deg, transparent, transparent 5px, rgba(255, 255, 255, 0.5) 5px, rgba(255, 255, 255, 0.5) 10px); +} +div.dt-autofill-select.top, div.dt-autofill-select.bottom { + height: 3px; + margin-top: -1px; +} +div.dt-autofill-select.left, div.dt-autofill-select.right { + width: 3px; + margin-left: -1px; +} + +div.dt-autofill-list { + position: fixed; + top: 50%; + left: 50%; + width: 500px; + margin-left: -250px; + background-color: white; + border-radius: 6px; + box-shadow: 0 0 5px #555; + border: 2px solid #444; + z-index: 11; + box-sizing: border-box; + padding: 1.5em 2em; +} +div.dt-autofill-list ul { + display: table; + margin: 0; + padding: 0; + list-style: none; + width: 100%; +} +div.dt-autofill-list ul li { + display: table-row; +} +div.dt-autofill-list ul li:last-child div.dt-autofill-question, div.dt-autofill-list ul li:last-child div.dt-autofill-button { + border-bottom: none; +} +div.dt-autofill-list ul li:hover { + background-color: #f6f6f6; +} +div.dt-autofill-list div.dt-autofill-question { + display: table-cell; + padding: 0.5em 0; + border-bottom: 1px solid #ccc; +} +div.dt-autofill-list div.dt-autofill-question input[type=number] { + padding: 6px; + width: 30px; + margin: -2px 0; +} +div.dt-autofill-list div.dt-autofill-button { + display: table-cell; + padding: 0.5em 0; + border-bottom: 1px solid #ccc; +} + +div.dt-autofill-background { + position: fixed; + top: 0; + left: 0; + width: 100%; + height: 100%; + background: rgba(0, 0, 0, 0.7); + background: radial-gradient(ellipse farthest-corner at center, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%); + z-index: 10; +} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.semanticui.min.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.semanticui.min.css new file mode 100644 index 00000000..33b4824d --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/css/autoFill.semanticui.min.css @@ -0,0 +1 @@ +div.dt-autofill-handle{position:absolute;height:8px;width:8px;z-index:102;box-sizing:border-box;border:1px solid #888;background:#888}div.dt-autofill-select{position:absolute;z-index:1001;background-color:#888;background-image:repeating-linear-gradient(45deg, transparent, transparent 5px, rgba(255,255,255,0.5) 5px, rgba(255,255,255,0.5) 10px)}div.dt-autofill-select.top,div.dt-autofill-select.bottom{height:3px;margin-top:-1px}div.dt-autofill-select.left,div.dt-autofill-select.right{width:3px;margin-left:-1px}div.dt-autofill-list{position:fixed;top:50%;left:50%;width:500px;margin-left:-250px;background-color:white;border-radius:6px;box-shadow:0 0 5px #555;border:2px solid #444;z-index:11;box-sizing:border-box;padding:1.5em 2em}div.dt-autofill-list ul{display:table;margin:0;padding:0;list-style:none;width:100%}div.dt-autofill-list ul li{display:table-row}div.dt-autofill-list ul li:last-child div.dt-autofill-question,div.dt-autofill-list ul li:last-child div.dt-autofill-button{border-bottom:none}div.dt-autofill-list ul li:hover{background-color:#f6f6f6}div.dt-autofill-list div.dt-autofill-question{display:table-cell;padding:0.5em 0;border-bottom:1px solid #ccc}div.dt-autofill-list div.dt-autofill-question input[type=number]{padding:6px;width:30px;margin:-2px 0}div.dt-autofill-list div.dt-autofill-button{display:table-cell;padding:0.5em 0;border-bottom:1px solid #ccc}div.dt-autofill-background{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.7);background:radial-gradient(ellipse farthest-corner at center, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.7) 100%);z-index:10} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/index.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/index.html new file mode 100644 index 00000000..ba68233f --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/index.html @@ -0,0 +1,100 @@ + + + + + + + + + + + + AutoFill examples - Examples + + +
+
+

AutoFill example Examples

+
+

Spreadsheets such as Excel and Google Docs have a very handy rapid data duplication auto fill UI method. The AutoFill library for DataTables provides a similar + interface for DataTables (even extending upon it to provide complex data interaction options). AutoFill also provides full support for Editor allowing end users to update data very quickly.

+
+
+
+
+ +
+ + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/alwaysAsk.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/alwaysAsk.html new file mode 100644 index 00000000..e1c8b72c --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/alwaysAsk.html @@ -0,0 +1,667 @@ + + + + + + + AutoFill example - Always confirm action + + + + + + + + + + + + + +
+
+

AutoFill example Always confirm action

+
+

When an auto fill is completed by the end user, AutoFill will determine how many data fill plug-ins can be used for the data that has been dragged over. If + there are multiple options it will display a list of those options to the end user allowing them to select the action to perform - a cancel button is also + shown.

+

By default, if there is only a single data fill plug-in that can operate on the data, it will be immediately acted upon, no confirmation required by the end + user and no option to cancel the action.

+

The autoFill.alwaysAsk + option can be used to force AutoFill to confirm the action to take, even if there is only one option. This provides the end user with the ability to cancel the + action if they made a mistake during the drag. This example shows autoFill.alwaysAsk set to true - to demonstrate, try auto filling a single row or column.

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NamePositionOfficeAgeStart dateSalary
NamePositionOfficeAgeStart dateSalary
Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
Garrett WintersAccountantTokyo632011/07/25$170,750
Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
Airi SatouAccountantTokyo332008/11/28$162,700
Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
Jena GainesOffice ManagerLondon302008/12/19$90,560
Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
Michael SilvaMarketing DesignerLondon662012/11/27$198,500
Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
Gloria LittleSystems AdministratorNew York592009/04/10$237,500
Bradley GreerSoftware EngineerLondon412012/10/13$132,000
Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
Caesar VancePre-Sales SupportNew York212011/12/12$106,450
Doris WilderSales AssistantSidney232010/09/20$85,600
Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
Shou ItouRegional MarketingTokyo202011/08/14$163,000
Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
Suki BurksDeveloperLondon532009/10/22$114,500
Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
Hope FuentesSecretarySan Francisco412010/02/12$109,850
Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
Timothy MooneyOffice ManagerLondon372008/12/11$136,200
Jackson BradshawDirectorNew York652008/09/26$645,750
Olivia LiangSupport EngineerSingapore642011/02/03$234,500
Bruno NashSoftware EngineerLondon382011/05/03$163,500
Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
Thor WaltonDeveloperNew York612013/08/11$98,540
Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
Cara StevensSales AssistantNew York462011/12/06$145,600
Hermione ButlerRegional DirectorLondon472011/03/21$356,250
Lael GreerSystems AdministratorLondon212009/02/27$103,500
Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
Donna SniderCustomer SupportNew York272011/01/25$112,000
+
    +
  • Javascript
  • +
  • HTML
  • +
  • CSS
  • +
  • Ajax
  • +
  • Server-side script
  • +
+
+
+

The Javascript shown below is used to initialise the table shown in this example:

$(document).ready(function() { + $('#example').DataTable( { + autoFill: { + alwaysAsk: true + } + } ); +} ); +

In addition to the above code, the following Javascript library files are loaded for use in this example:

+ +
+
+

The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

+
+
+
+

This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

+
+

The following CSS library files are loaded for use in this example to provide the styling of the table:

+ +
+
+

This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

+
+
+

The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

+
+
+
+
+
+ +
+ + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/columns.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/columns.html new file mode 100644 index 00000000..57c4c876 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/columns.html @@ -0,0 +1,699 @@ + + + + + + + AutoFill example - Column selector + + + + + + + + + + + + + + + +
+
+

AutoFill example Column selector

+
+

AutoFill provides the ability to determine what columns it should be enabled upon through the autoFill.columns option. This will + accept any value allowed by the column-selector data type, such as an array of column indexes, class names, or as shown in this case a jQuery selector.

+

This ability to exclude columns from the AutoFill action can be particularly useful if the table contains non-data columns. This example uses the Select extension for DataTables to allow row selection through the select option, with row selection restricted to + the first column. Thus we do not wish to have AutoFill on that column and the selector :not(:first-child) for autoFill.columns enacts that.

+

Combining AutoFill with Editor (and other extensions such as RowReorder and KeyTable) can make for a powerful data + editing environment for end users.

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NamePositionOfficeAgeSalary
NamePositionOfficeAgeSalary
Tiger NixonSystem ArchitectEdinburgh61$320,800
Garrett WintersAccountantTokyo63$170,750
Ashton CoxJunior Technical AuthorSan Francisco66$86,000
Cedric KellySenior Javascript DeveloperEdinburgh22$433,060
Airi SatouAccountantTokyo33$162,700
Brielle WilliamsonIntegration SpecialistNew York61$372,000
Herrod ChandlerSales AssistantSan Francisco59$137,500
Rhona DavidsonIntegration SpecialistTokyo55$327,900
Colleen HurstJavascript DeveloperSan Francisco39$205,500
Sonya FrostSoftware EngineerEdinburgh23$103,600
Jena GainesOffice ManagerLondon30$90,560
Quinn FlynnSupport LeadEdinburgh22$342,000
Charde MarshallRegional DirectorSan Francisco36$470,600
Haley KennedySenior Marketing DesignerLondon43$313,500
Tatyana FitzpatrickRegional DirectorLondon19$385,750
Michael SilvaMarketing DesignerLondon66$198,500
Paul ByrdChief Financial Officer (CFO)New York64$725,000
Gloria LittleSystems AdministratorNew York59$237,500
Bradley GreerSoftware EngineerLondon41$132,000
Dai RiosPersonnel LeadEdinburgh35$217,500
Jenette CaldwellDevelopment LeadNew York30$345,000
Yuri BerryChief Marketing Officer (CMO)New York40$675,000
Caesar VancePre-Sales SupportNew York21$106,450
Doris WilderSales AssistantSidney23$85,600
Angelica RamosChief Executive Officer (CEO)London47$1,200,000
Gavin JoyceDeveloperEdinburgh42$92,575
Jennifer ChangRegional DirectorSingapore28$357,650
Brenden WagnerSoftware EngineerSan Francisco28$206,850
Fiona GreenChief Operating Officer (COO)San Francisco48$850,000
Shou ItouRegional MarketingTokyo20$163,000
Michelle HouseIntegration SpecialistSidney37$95,400
Suki BurksDeveloperLondon53$114,500
Prescott BartlettTechnical AuthorLondon27$145,000
Gavin CortezTeam LeaderSan Francisco22$235,500
Martena MccrayPost-Sales supportEdinburgh46$324,050
Unity ButlerMarketing DesignerSan Francisco47$85,675
Howard HatfieldOffice ManagerSan Francisco51$164,500
Hope FuentesSecretarySan Francisco41$109,850
Vivian HarrellFinancial ControllerSan Francisco62$452,500
Timothy MooneyOffice ManagerLondon37$136,200
Jackson BradshawDirectorNew York65$645,750
Olivia LiangSupport EngineerSingapore64$234,500
Bruno NashSoftware EngineerLondon38$163,500
Sakura YamamotoSupport EngineerTokyo37$139,575
Thor WaltonDeveloperNew York61$98,540
Finn CamachoSupport EngineerSan Francisco47$87,500
Serge BaldwinData CoordinatorSingapore64$138,575
Zenaida FrankSoftware EngineerNew York63$125,250
Zorita SerranoSoftware EngineerSan Francisco56$115,000
Jennifer AcostaJunior Javascript DeveloperEdinburgh43$75,650
Cara StevensSales AssistantNew York46$145,600
Hermione ButlerRegional DirectorLondon47$356,250
Lael GreerSystems AdministratorLondon21$103,500
Jonas AlexanderDeveloperSan Francisco30$86,500
Shad DeckerRegional DirectorEdinburgh51$183,000
Michael BruceJavascript DeveloperSingapore29$183,000
Donna SniderCustomer SupportNew York27$112,000
+
    +
  • Javascript
  • +
  • HTML
  • +
  • CSS
  • +
  • Ajax
  • +
  • Server-side script
  • +
+
+
+

The Javascript shown below is used to initialise the table shown in this example:

$(document).ready(function() { + $('#example').DataTable( { + columnDefs: [ { + orderable: false, + className: 'select-checkbox', + targets: 0 + } ], + select: { + style: 'os', + selector: 'td:first-child' + }, + order: [[ 1, 'asc' ]], + autoFill: { + columns: ':not(:first-child)' + } + } ); +} ); +

In addition to the above code, the following Javascript library files are loaded for use in this example:

+ +
+
+

The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

+
+
+
+

This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

+
+

The following CSS library files are loaded for use in this example to provide the styling of the table:

+ +
+
+

This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

+
+
+

The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

+
+
+
+
+
+ +
+ + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/enableDisable.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/enableDisable.html new file mode 100644 index 00000000..91b5a148 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/enableDisable.html @@ -0,0 +1,708 @@ + + + + + + + AutoFill example - Enable / disable API + + + + + + + + + + + + + + + +
+
+

AutoFill example Enable / disable API

+
+

AutoFill has the option of being enabled and disabled, either allowing or disallowing user interaction with the autofill interactions as the state of your + application requires. The default state can be set using the autoFill.enable option (which is enabled by default when the autoFill parameter is specified), and can + later be modified using autoFill().enable() + and autoFill().disable().

+

This example shows AutoFill disabled when the page is loaded and a custom Button that will let you toggle the + enabled state of AutoFill. Clicking the button the first time will enable AutoFill, and also change the text of the button, allowing the state to be continually + toggled.

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NamePositionOfficeAgeStart dateSalary
NamePositionOfficeAgeStart dateSalary
Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
Garrett WintersAccountantTokyo632011/07/25$170,750
Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
Airi SatouAccountantTokyo332008/11/28$162,700
Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
Jena GainesOffice ManagerLondon302008/12/19$90,560
Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
Michael SilvaMarketing DesignerLondon662012/11/27$198,500
Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
Gloria LittleSystems AdministratorNew York592009/04/10$237,500
Bradley GreerSoftware EngineerLondon412012/10/13$132,000
Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
Caesar VancePre-Sales SupportNew York212011/12/12$106,450
Doris WilderSales AssistantSidney232010/09/20$85,600
Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
Shou ItouRegional MarketingTokyo202011/08/14$163,000
Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
Suki BurksDeveloperLondon532009/10/22$114,500
Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
Hope FuentesSecretarySan Francisco412010/02/12$109,850
Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
Timothy MooneyOffice ManagerLondon372008/12/11$136,200
Jackson BradshawDirectorNew York652008/09/26$645,750
Olivia LiangSupport EngineerSingapore642011/02/03$234,500
Bruno NashSoftware EngineerLondon382011/05/03$163,500
Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
Thor WaltonDeveloperNew York612013/08/11$98,540
Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
Cara StevensSales AssistantNew York462011/12/06$145,600
Hermione ButlerRegional DirectorLondon472011/03/21$356,250
Lael GreerSystems AdministratorLondon212009/02/27$103,500
Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
Donna SniderCustomer SupportNew York272011/01/25$112,000
+
    +
  • Javascript
  • +
  • HTML
  • +
  • CSS
  • +
  • Ajax
  • +
  • Server-side script
  • +
+
+
+

The Javascript shown below is used to initialise the table shown in this example:

$(document).ready(function() { + $('#example').DataTable( { + autoFill: { + enable: false + }, + dom: 'Bfrtip', + buttons: [ + { + text: "Enable AutoFill", + action: function (e, dt) { + if ( dt.autoFill().enabled() ) { + this.autoFill().disable(); + this.text( 'Enable AutoFill' ); + } + else { + this.autoFill().enable(); + this.text( 'Disable AutoFill' ); + } + } + } + ] + } ); +} ); +

In addition to the above code, the following Javascript library files are loaded for use in this example:

+ +
+
+

The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

+
+
+
+

This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

+
+

The following CSS library files are loaded for use in this example to provide the styling of the table:

+ +
+
+

This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

+
+
+

The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

+
+
+
+
+
+ +
+ + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/events.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/events.html new file mode 100644 index 00000000..450b92a0 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/events.html @@ -0,0 +1,676 @@ + + + + + + + AutoFill example - Events + + + + + + + + + + + + + +
+
+

AutoFill example Events

+
+

AutoFill will emit events that can be listened for to take action when the user has completed an fill action. The events emitted by AutoFill are:

+
    +
  • + preAutoFill - Emitted prior to the data + update, but after the drag has been completed +
  • +
  • + autoFill - Emitted immediately after the table + has been updated with the new data. +
  • +
+

This example shows the autoFill event being listened + for to adjust the table's column sizes to suit the new data. Although this is a trivial example, this listener can be used to perform other updates such as writing + the filled data to a database.

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NamePositionOfficeAgeStart dateSalary
NamePositionOfficeAgeStart dateSalary
Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
Garrett WintersAccountantTokyo632011/07/25$170,750
Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
Airi SatouAccountantTokyo332008/11/28$162,700
Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
Jena GainesOffice ManagerLondon302008/12/19$90,560
Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
Michael SilvaMarketing DesignerLondon662012/11/27$198,500
Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
Gloria LittleSystems AdministratorNew York592009/04/10$237,500
Bradley GreerSoftware EngineerLondon412012/10/13$132,000
Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
Caesar VancePre-Sales SupportNew York212011/12/12$106,450
Doris WilderSales AssistantSidney232010/09/20$85,600
Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
Shou ItouRegional MarketingTokyo202011/08/14$163,000
Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
Suki BurksDeveloperLondon532009/10/22$114,500
Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
Hope FuentesSecretarySan Francisco412010/02/12$109,850
Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
Timothy MooneyOffice ManagerLondon372008/12/11$136,200
Jackson BradshawDirectorNew York652008/09/26$645,750
Olivia LiangSupport EngineerSingapore642011/02/03$234,500
Bruno NashSoftware EngineerLondon382011/05/03$163,500
Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
Thor WaltonDeveloperNew York612013/08/11$98,540
Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
Cara StevensSales AssistantNew York462011/12/06$145,600
Hermione ButlerRegional DirectorLondon472011/03/21$356,250
Lael GreerSystems AdministratorLondon212009/02/27$103,500
Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
Donna SniderCustomer SupportNew York272011/01/25$112,000
+
    +
  • Javascript
  • +
  • HTML
  • +
  • CSS
  • +
  • Ajax
  • +
  • Server-side script
  • +
+
+
+

The Javascript shown below is used to initialise the table shown in this example:

$(document).ready(function() { + var table = $('#example').DataTable( { + autoFill: true + } ); + + table.on( 'autoFill', function () { + table.columns.adjust(); + } ); +} ); +

In addition to the above code, the following Javascript library files are loaded for use in this example:

+ +
+
+

The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

+
+
+
+

This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

+
+

The following CSS library files are loaded for use in this example to provide the styling of the table:

+ +
+
+

This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

+
+
+

The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

+
+
+
+
+
+ +
+ + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/fills.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/fills.html new file mode 100644 index 00000000..eddccb59 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/fills.html @@ -0,0 +1,667 @@ + + + + + + + AutoFill example - Fill types + + + + + + + + + + + + + +
+
+

AutoFill example Fill types

+
+

Spreadsheets will typically only copy a value from one cell to another (although this is made particularly powerful if a formula is used), but AutoFill provides + different options for how the data can be filled - presenting the options available to the end user for them to select from.

+

AutoFill has four built in fill types:

+
    +
  • Increment: For numeric data AutoFill will give the user the option of incrementing the value as it is filled. The amount it is incremented by can be + entered by the user, and also provides the option to use a negative value to perform a decrement. As an example, fill over the Age column below.
  • +
  • Fill: The data from the original cell is used for all other cells
  • +
  • Fill vertical: The data from the first row in the selected cells is copied vertically. As an example, fill over multiple rows and columns + below and select the Fill cells vertically option.
  • +
  • Fill horizontal: The data from the first column in the selected cells is copied horizontally. As an example, fill over multiple rows and + columns below and select the Fill cells horizontally option.
  • +
+

Additional fills can also be added using plug-ins if you require further options.

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NamePositionOfficeAgeStart dateSalary
NamePositionOfficeAgeStart dateSalary
Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
Garrett WintersAccountantTokyo632011/07/25$170,750
Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
Airi SatouAccountantTokyo332008/11/28$162,700
Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
Jena GainesOffice ManagerLondon302008/12/19$90,560
Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
Michael SilvaMarketing DesignerLondon662012/11/27$198,500
Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
Gloria LittleSystems AdministratorNew York592009/04/10$237,500
Bradley GreerSoftware EngineerLondon412012/10/13$132,000
Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
Caesar VancePre-Sales SupportNew York212011/12/12$106,450
Doris WilderSales AssistantSidney232010/09/20$85,600
Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
Shou ItouRegional MarketingTokyo202011/08/14$163,000
Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
Suki BurksDeveloperLondon532009/10/22$114,500
Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
Hope FuentesSecretarySan Francisco412010/02/12$109,850
Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
Timothy MooneyOffice ManagerLondon372008/12/11$136,200
Jackson BradshawDirectorNew York652008/09/26$645,750
Olivia LiangSupport EngineerSingapore642011/02/03$234,500
Bruno NashSoftware EngineerLondon382011/05/03$163,500
Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
Thor WaltonDeveloperNew York612013/08/11$98,540
Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
Cara StevensSales AssistantNew York462011/12/06$145,600
Hermione ButlerRegional DirectorLondon472011/03/21$356,250
Lael GreerSystems AdministratorLondon212009/02/27$103,500
Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
Donna SniderCustomer SupportNew York272011/01/25$112,000
+
    +
  • Javascript
  • +
  • HTML
  • +
  • CSS
  • +
  • Ajax
  • +
  • Server-side script
  • +
+
+
+

The Javascript shown below is used to initialise the table shown in this example:

$(document).ready(function() { + $('#example').DataTable( { + autoFill: true + } ); +} ); +

In addition to the above code, the following Javascript library files are loaded for use in this example:

+ +
+
+

The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

+
+
+
+

This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

+
+

The following CSS library files are loaded for use in this example to provide the styling of the table:

+ +
+
+

This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

+
+
+

The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

+
+
+
+
+
+ +
+ + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/focus.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/focus.html new file mode 100644 index 00000000..961cbc63 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/focus.html @@ -0,0 +1,672 @@ + + + + + + + AutoFill example - Click focus + + + + + + + + + + + + + +
+
+

AutoFill example Click focus

+
+

The click-to-drag auto fill handle can be attached to the table using a number of different triggers. This is set by the autoFill.focus option:

+
    +
  • click - Display when a cell is clicked upon
  • +
  • + focus - Display when a cell gains focus - for integration with KeyTable +
  • +
  • hover - Display when a cell is hovered over
  • +
+

The default behaviour is hover, unless KeyTable is also initialised on the same table, in which case focus is used.

+

This example shows the click behaviour. Click a cell to show the auto fill handle. Note that a click outside of the + table will cause the handle to be removed.

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NamePositionOfficeAgeStart dateSalary
NamePositionOfficeAgeStart dateSalary
Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
Garrett WintersAccountantTokyo632011/07/25$170,750
Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
Airi SatouAccountantTokyo332008/11/28$162,700
Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
Jena GainesOffice ManagerLondon302008/12/19$90,560
Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
Michael SilvaMarketing DesignerLondon662012/11/27$198,500
Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
Gloria LittleSystems AdministratorNew York592009/04/10$237,500
Bradley GreerSoftware EngineerLondon412012/10/13$132,000
Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
Caesar VancePre-Sales SupportNew York212011/12/12$106,450
Doris WilderSales AssistantSidney232010/09/20$85,600
Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
Shou ItouRegional MarketingTokyo202011/08/14$163,000
Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
Suki BurksDeveloperLondon532009/10/22$114,500
Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
Hope FuentesSecretarySan Francisco412010/02/12$109,850
Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
Timothy MooneyOffice ManagerLondon372008/12/11$136,200
Jackson BradshawDirectorNew York652008/09/26$645,750
Olivia LiangSupport EngineerSingapore642011/02/03$234,500
Bruno NashSoftware EngineerLondon382011/05/03$163,500
Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
Thor WaltonDeveloperNew York612013/08/11$98,540
Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
Cara StevensSales AssistantNew York462011/12/06$145,600
Hermione ButlerRegional DirectorLondon472011/03/21$356,250
Lael GreerSystems AdministratorLondon212009/02/27$103,500
Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
Donna SniderCustomer SupportNew York272011/01/25$112,000
+
    +
  • Javascript
  • +
  • HTML
  • +
  • CSS
  • +
  • Ajax
  • +
  • Server-side script
  • +
+
+
+

The Javascript shown below is used to initialise the table shown in this example:

$(document).ready(function() { + $('#example').DataTable( { + autoFill: { + focus: 'click' + } + } ); +} ); +

In addition to the above code, the following Javascript library files are loaded for use in this example:

+ +
+
+

The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

+
+
+
+

This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

+
+

The following CSS library files are loaded for use in this example to provide the styling of the table:

+ +
+
+

This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

+
+
+

The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

+
+
+
+
+
+ +
+ + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/index.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/index.html new file mode 100644 index 00000000..ef49bfaa --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/index.html @@ -0,0 +1,81 @@ + + + + + + + + + + + + AutoFill examples - Initialisation examples + + +
+
+

AutoFill example Initialisation examples

+
+

Spreadsheets such as Excel and Google Docs have a very handy data duplication option of an auto fill tool. The AutoFill library for DataTables provides a + similar interface for DataTables (even extending upon it to provide complex data interaction options). AutoFill also provides full support for Editor allowing end users to update data very quickly.

+

The examples in this section show how AutoFill can be used with DataTables.

+
+
+
+
+ +
+ + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/keyTable.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/keyTable.html new file mode 100644 index 00000000..bcef9156 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/keyTable.html @@ -0,0 +1,672 @@ + + + + + + + AutoFill example - KeyTable integration + + + + + + + + + + + + + + + +
+
+

AutoFill example KeyTable integration

+
+

If you are looking to emulate the UI of spreadsheet programs such as Excel with DataTables, the combination of KeyTable and AutoFill will take you a long way there!

+

AutoFill will automatically detect when KeyTable is used on the same table and alter its focus option (autoFill.focus) so the focused cell will + show the auto fill handle. Thus all that needs to be done is to initialise both AutoFill and KeyTable with autoFill and keys respectively).

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NamePositionOfficeAgeStart dateSalary
NamePositionOfficeAgeStart dateSalary
Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
Garrett WintersAccountantTokyo632011/07/25$170,750
Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
Airi SatouAccountantTokyo332008/11/28$162,700
Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
Jena GainesOffice ManagerLondon302008/12/19$90,560
Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
Michael SilvaMarketing DesignerLondon662012/11/27$198,500
Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
Gloria LittleSystems AdministratorNew York592009/04/10$237,500
Bradley GreerSoftware EngineerLondon412012/10/13$132,000
Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
Caesar VancePre-Sales SupportNew York212011/12/12$106,450
Doris WilderSales AssistantSidney232010/09/20$85,600
Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
Shou ItouRegional MarketingTokyo202011/08/14$163,000
Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
Suki BurksDeveloperLondon532009/10/22$114,500
Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
Hope FuentesSecretarySan Francisco412010/02/12$109,850
Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
Timothy MooneyOffice ManagerLondon372008/12/11$136,200
Jackson BradshawDirectorNew York652008/09/26$645,750
Olivia LiangSupport EngineerSingapore642011/02/03$234,500
Bruno NashSoftware EngineerLondon382011/05/03$163,500
Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
Thor WaltonDeveloperNew York612013/08/11$98,540
Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
Cara StevensSales AssistantNew York462011/12/06$145,600
Hermione ButlerRegional DirectorLondon472011/03/21$356,250
Lael GreerSystems AdministratorLondon212009/02/27$103,500
Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
Donna SniderCustomer SupportNew York272011/01/25$112,000
+
    +
  • Javascript
  • +
  • HTML
  • +
  • CSS
  • +
  • Ajax
  • +
  • Server-side script
  • +
+
+
+

The Javascript shown below is used to initialise the table shown in this example:

$(document).ready(function() { + $('#example').DataTable( { + keys: true, + autoFill: true + } ); +} ); +

In addition to the above code, the following Javascript library files are loaded for use in this example:

+ +
+
+

The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

+
+
+
+

This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

+
+

The following CSS library files are loaded for use in this example to provide the styling of the table:

+ +
+
+

This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

+
+
+

The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

+
+
+
+
+
+ +
+ + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/plugins.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/plugins.html new file mode 100644 index 00000000..a2893e17 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/plugins.html @@ -0,0 +1,716 @@ + + + + + + + AutoFill example - Fill plug-ins + + + + + + + + + + + + + +
+
+

AutoFill example Fill plug-ins

+
+

AutoFill provides a number of built in fill types, but these built in options can be augmented with additional options using + plug-ins.

+

The fill options are provided by plug-ins which are attached to the $.fn.dataTable.AutoFill.actions object. Each property in this object must be an + object that provides three functions:

+
    +
  • available - Determine if the data that the user dragged the fill over is suitable for this fill type
  • +
  • option - Returns a question the user will be asked for if they want to use this fill type
  • +
  • execute - Modifies the data if this fill type is selected
  • +
+

The example shows a plug-in that will operate only on the first column in the table and will change only the surname - retaining the forename from the original + cell. While slightly contrived as an example, it demonstrates how plug-ins can perform potentially complex operations.

+

For full details about creating fill plug-ins for AutoFill, please refer to the online + documentation.

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NamePositionOfficeAgeStart dateSalary
NamePositionOfficeAgeStart dateSalary
Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
Garrett WintersAccountantTokyo632011/07/25$170,750
Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
Airi SatouAccountantTokyo332008/11/28$162,700
Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
Jena GainesOffice ManagerLondon302008/12/19$90,560
Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
Michael SilvaMarketing DesignerLondon662012/11/27$198,500
Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
Gloria LittleSystems AdministratorNew York592009/04/10$237,500
Bradley GreerSoftware EngineerLondon412012/10/13$132,000
Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
Caesar VancePre-Sales SupportNew York212011/12/12$106,450
Doris WilderSales AssistantSidney232010/09/20$85,600
Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
Shou ItouRegional MarketingTokyo202011/08/14$163,000
Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
Suki BurksDeveloperLondon532009/10/22$114,500
Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
Hope FuentesSecretarySan Francisco412010/02/12$109,850
Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
Timothy MooneyOffice ManagerLondon372008/12/11$136,200
Jackson BradshawDirectorNew York652008/09/26$645,750
Olivia LiangSupport EngineerSingapore642011/02/03$234,500
Bruno NashSoftware EngineerLondon382011/05/03$163,500
Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
Thor WaltonDeveloperNew York612013/08/11$98,540
Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
Cara StevensSales AssistantNew York462011/12/06$145,600
Hermione ButlerRegional DirectorLondon472011/03/21$356,250
Lael GreerSystems AdministratorLondon212009/02/27$103,500
Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
Donna SniderCustomer SupportNew York272011/01/25$112,000
+
    +
  • Javascript
  • +
  • HTML
  • +
  • CSS
  • +
  • Ajax
  • +
  • Server-side script
  • +
+
+
+

The Javascript shown below is used to initialise the table shown in this example:

$.fn.dataTable.AutoFill.actions.names = { + available: function ( dt, cells ) { + // Only available if a single column is being + // filled and it is the first column + return cells[0].length === 1 && cells[0][0].index.column === 0; + }, + + option: function ( dt, cells ) { + // Ask the user if they want to change the surname only + return 'Fill only surname - retain first name'; + }, + + execute: function ( dt, cells, node ) { + // Modify the name and set the new values + var surname = cells[0][0].data.split(' ')[1]; + + for ( var i=0, ien=cells.length ; i<ien ; i++ ) { + var name = cells[i][0].data.split(' '); + + cells[i][0].set = name[0]+' '+surname; + } + } +} + +$(document).ready(function() { + $('#example').DataTable( { + autoFill: true + } ); +} ); +

In addition to the above code, the following Javascript library files are loaded for use in this example:

+ +
+
+

The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

+
+
+
+

This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

+
+

The following CSS library files are loaded for use in this example to provide the styling of the table:

+ +
+
+

This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

+
+
+

The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

+
+
+
+
+
+ +
+ + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/scrolling.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/scrolling.html new file mode 100644 index 00000000..ef9c4ef3 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/scrolling.html @@ -0,0 +1,664 @@ + + + + + + + AutoFill example - Scrolling DataTable + + + + + + + + + + + + + +
+
+

AutoFill example Scrolling DataTable

+
+

When dragging an AutoFill handle, the table (if DataTables scrolling is enabled) or the window will be automatically scrolled, as you approach the edge of the + scrolling component. The example below shows the effect with DataTables scrolling (and also window if needed).

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NamePositionOfficeAgeStart dateSalary
NamePositionOfficeAgeStart dateSalary
Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
Garrett WintersAccountantTokyo632011/07/25$170,750
Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
Airi SatouAccountantTokyo332008/11/28$162,700
Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
Jena GainesOffice ManagerLondon302008/12/19$90,560
Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
Michael SilvaMarketing DesignerLondon662012/11/27$198,500
Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
Gloria LittleSystems AdministratorNew York592009/04/10$237,500
Bradley GreerSoftware EngineerLondon412012/10/13$132,000
Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
Caesar VancePre-Sales SupportNew York212011/12/12$106,450
Doris WilderSales AssistantSidney232010/09/20$85,600
Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
Shou ItouRegional MarketingTokyo202011/08/14$163,000
Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
Suki BurksDeveloperLondon532009/10/22$114,500
Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
Hope FuentesSecretarySan Francisco412010/02/12$109,850
Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
Timothy MooneyOffice ManagerLondon372008/12/11$136,200
Jackson BradshawDirectorNew York652008/09/26$645,750
Olivia LiangSupport EngineerSingapore642011/02/03$234,500
Bruno NashSoftware EngineerLondon382011/05/03$163,500
Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
Thor WaltonDeveloperNew York612013/08/11$98,540
Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
Cara StevensSales AssistantNew York462011/12/06$145,600
Hermione ButlerRegional DirectorLondon472011/03/21$356,250
Lael GreerSystems AdministratorLondon212009/02/27$103,500
Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
Donna SniderCustomer SupportNew York272011/01/25$112,000
+
    +
  • Javascript
  • +
  • HTML
  • +
  • CSS
  • +
  • Ajax
  • +
  • Server-side script
  • +
+
+
+

The Javascript shown below is used to initialise the table shown in this example:

$(document).ready(function() { + var table = $('#example').dataTable( { + scrollY: 400, + scrollX: true, + scrollCollapse: true, + paging: false, + autoFill: true + } ); +} ); +

In addition to the above code, the following Javascript library files are loaded for use in this example:

+ +
+
+

The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

+
+
+
+

This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

+
+

The following CSS library files are loaded for use in this example to provide the styling of the table:

+ +
+
+

This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

+
+
+

The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

+
+
+
+
+
+ +
+ + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/simple.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/simple.html new file mode 100644 index 00000000..00f65dc8 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/initialisation/simple.html @@ -0,0 +1,659 @@ + + + + + + + AutoFill example - Basic initialisation + + + + + + + + + + + + + +
+
+

AutoFill example Basic initialisation

+
+

AutoFill gives an Excel like option to a DataTable to click and drag over multiple cells, filling in information over the selected cells and incrementing + numbers as needed.

+

AutoFill is initialised using the autoFill option as shown in the example below. This can be set to be true to use the AutoFill + configuration defaults, or used as an object to specify options.

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NamePositionOfficeAgeStart dateSalary
NamePositionOfficeAgeStart dateSalary
Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
Garrett WintersAccountantTokyo632011/07/25$170,750
Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
Airi SatouAccountantTokyo332008/11/28$162,700
Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
Jena GainesOffice ManagerLondon302008/12/19$90,560
Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
Michael SilvaMarketing DesignerLondon662012/11/27$198,500
Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
Gloria LittleSystems AdministratorNew York592009/04/10$237,500
Bradley GreerSoftware EngineerLondon412012/10/13$132,000
Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
Caesar VancePre-Sales SupportNew York212011/12/12$106,450
Doris WilderSales AssistantSidney232010/09/20$85,600
Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
Shou ItouRegional MarketingTokyo202011/08/14$163,000
Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
Suki BurksDeveloperLondon532009/10/22$114,500
Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
Hope FuentesSecretarySan Francisco412010/02/12$109,850
Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
Timothy MooneyOffice ManagerLondon372008/12/11$136,200
Jackson BradshawDirectorNew York652008/09/26$645,750
Olivia LiangSupport EngineerSingapore642011/02/03$234,500
Bruno NashSoftware EngineerLondon382011/05/03$163,500
Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
Thor WaltonDeveloperNew York612013/08/11$98,540
Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
Cara StevensSales AssistantNew York462011/12/06$145,600
Hermione ButlerRegional DirectorLondon472011/03/21$356,250
Lael GreerSystems AdministratorLondon212009/02/27$103,500
Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
Donna SniderCustomer SupportNew York272011/01/25$112,000
+
    +
  • Javascript
  • +
  • HTML
  • +
  • CSS
  • +
  • Ajax
  • +
  • Server-side script
  • +
+
+
+

The Javascript shown below is used to initialise the table shown in this example:

$(document).ready(function() { + $('#example').DataTable( { + autoFill: true + } ); +} ); +

In addition to the above code, the following Javascript library files are loaded for use in this example:

+ +
+
+

The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

+
+
+
+

This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

+
+

The following CSS library files are loaded for use in this example to provide the styling of the table:

+ +
+
+

This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

+
+
+

The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

+
+
+
+
+
+ +
+ + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/styling/bootstrap.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/styling/bootstrap.html new file mode 100644 index 00000000..da9448d1 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/styling/bootstrap.html @@ -0,0 +1,673 @@ + + + + + + + AutoFill example - Bootstrap styling + + + + + + + + + + + + + + + + +
+
+

AutoFill example Bootstrap styling

+
+

This example shows DataTables and the AutoFill extension being used with the Bootstrap framework providing the styling. + The DataTables / Bootstrap integration provides seamless integration for DataTables to be used in a + Bootstrap page.

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NamePositionOfficeAgeStart dateSalary
NamePositionOfficeAgeStart dateSalary
Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
Garrett WintersAccountantTokyo632011/07/25$170,750
Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
Airi SatouAccountantTokyo332008/11/28$162,700
Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
Jena GainesOffice ManagerLondon302008/12/19$90,560
Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
Michael SilvaMarketing DesignerLondon662012/11/27$198,500
Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
Gloria LittleSystems AdministratorNew York592009/04/10$237,500
Bradley GreerSoftware EngineerLondon412012/10/13$132,000
Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
Caesar VancePre-Sales SupportNew York212011/12/12$106,450
Doris WilderSales AssistantSidney232010/09/20$85,600
Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
Shou ItouRegional MarketingTokyo202011/08/14$163,000
Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
Suki BurksDeveloperLondon532009/10/22$114,500
Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
Hope FuentesSecretarySan Francisco412010/02/12$109,850
Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
Timothy MooneyOffice ManagerLondon372008/12/11$136,200
Jackson BradshawDirectorNew York652008/09/26$645,750
Olivia LiangSupport EngineerSingapore642011/02/03$234,500
Bruno NashSoftware EngineerLondon382011/05/03$163,500
Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
Thor WaltonDeveloperNew York612013/08/11$98,540
Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
Cara StevensSales AssistantNew York462011/12/06$145,600
Hermione ButlerRegional DirectorLondon472011/03/21$356,250
Lael GreerSystems AdministratorLondon212009/02/27$103,500
Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
Donna SniderCustomer SupportNew York272011/01/25$112,000
+
    +
  • Javascript
  • +
  • HTML
  • +
  • CSS
  • +
  • Ajax
  • +
  • Server-side script
  • +
+
+
+

The Javascript shown below is used to initialise the table shown in this example:

$(document).ready(function() { + $('#example').DataTable( { + autoFill: true + } ); +} ); +

In addition to the above code, the following Javascript library files are loaded for use in this example:

+ +
+
+

The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

+
+
+
+

This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

+
+

The following CSS library files are loaded for use in this example to provide the styling of the table:

+ +
+
+

This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

+
+
+

The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

+
+
+
+
+
+ +
+ + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/styling/bootstrap4.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/styling/bootstrap4.html new file mode 100644 index 00000000..53b38b6d --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/styling/bootstrap4.html @@ -0,0 +1,673 @@ + + + + + + + AutoFill example - Bootstrap 4 styling + + + + + + + + + + + + + + + + +
+
+

AutoFill example Bootstrap 4 styling

+
+

This example shows DataTables and the AutoFill extension being used with Bootstrap 4 providing the styling. The DataTables + / Bootstrap integration provides seamless integration for DataTables to be used in a Bootstrap 4 page.

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NamePositionOfficeAgeStart dateSalary
NamePositionOfficeAgeStart dateSalary
Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
Garrett WintersAccountantTokyo632011/07/25$170,750
Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
Airi SatouAccountantTokyo332008/11/28$162,700
Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
Jena GainesOffice ManagerLondon302008/12/19$90,560
Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
Michael SilvaMarketing DesignerLondon662012/11/27$198,500
Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
Gloria LittleSystems AdministratorNew York592009/04/10$237,500
Bradley GreerSoftware EngineerLondon412012/10/13$132,000
Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
Caesar VancePre-Sales SupportNew York212011/12/12$106,450
Doris WilderSales AssistantSidney232010/09/20$85,600
Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
Shou ItouRegional MarketingTokyo202011/08/14$163,000
Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
Suki BurksDeveloperLondon532009/10/22$114,500
Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
Hope FuentesSecretarySan Francisco412010/02/12$109,850
Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
Timothy MooneyOffice ManagerLondon372008/12/11$136,200
Jackson BradshawDirectorNew York652008/09/26$645,750
Olivia LiangSupport EngineerSingapore642011/02/03$234,500
Bruno NashSoftware EngineerLondon382011/05/03$163,500
Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
Thor WaltonDeveloperNew York612013/08/11$98,540
Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
Cara StevensSales AssistantNew York462011/12/06$145,600
Hermione ButlerRegional DirectorLondon472011/03/21$356,250
Lael GreerSystems AdministratorLondon212009/02/27$103,500
Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
Donna SniderCustomer SupportNew York272011/01/25$112,000
+
    +
  • Javascript
  • +
  • HTML
  • +
  • CSS
  • +
  • Ajax
  • +
  • Server-side script
  • +
+
+
+

The Javascript shown below is used to initialise the table shown in this example:

$(document).ready(function() { + $('#example').DataTable( { + autoFill: true + } ); +} ); +

In addition to the above code, the following Javascript library files are loaded for use in this example:

+ +
+
+

The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

+
+
+
+

This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

+
+

The following CSS library files are loaded for use in this example to provide the styling of the table:

+ +
+
+

This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

+
+
+

The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

+
+
+
+
+
+ +
+ + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/styling/foundation.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/styling/foundation.html new file mode 100644 index 00000000..becb48b8 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/styling/foundation.html @@ -0,0 +1,674 @@ + + + + + + + AutoFill example - Foundation styling + + + + + + + + + + + + + + + + +
+
+

AutoFill example Foundation styling

+
+

This example shows DataTables and the AutoFill extension being used with the Foundation framework providing the + styling. The DataTables / Foundation integration prove seamless integration for DataTables to be used in a + Foundation page.

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NamePositionOfficeAgeStart dateSalary
NamePositionOfficeAgeStart dateSalary
Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
Garrett WintersAccountantTokyo632011/07/25$170,750
Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
Airi SatouAccountantTokyo332008/11/28$162,700
Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
Jena GainesOffice ManagerLondon302008/12/19$90,560
Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
Michael SilvaMarketing DesignerLondon662012/11/27$198,500
Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
Gloria LittleSystems AdministratorNew York592009/04/10$237,500
Bradley GreerSoftware EngineerLondon412012/10/13$132,000
Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
Caesar VancePre-Sales SupportNew York212011/12/12$106,450
Doris WilderSales AssistantSidney232010/09/20$85,600
Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
Shou ItouRegional MarketingTokyo202011/08/14$163,000
Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
Suki BurksDeveloperLondon532009/10/22$114,500
Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
Hope FuentesSecretarySan Francisco412010/02/12$109,850
Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
Timothy MooneyOffice ManagerLondon372008/12/11$136,200
Jackson BradshawDirectorNew York652008/09/26$645,750
Olivia LiangSupport EngineerSingapore642011/02/03$234,500
Bruno NashSoftware EngineerLondon382011/05/03$163,500
Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
Thor WaltonDeveloperNew York612013/08/11$98,540
Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
Cara StevensSales AssistantNew York462011/12/06$145,600
Hermione ButlerRegional DirectorLondon472011/03/21$356,250
Lael GreerSystems AdministratorLondon212009/02/27$103,500
Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
Donna SniderCustomer SupportNew York272011/01/25$112,000
+
    +
  • Javascript
  • +
  • HTML
  • +
  • CSS
  • +
  • Ajax
  • +
  • Server-side script
  • +
+
+
+

The Javascript shown below is used to initialise the table shown in this example:

$(document).ready(function() { + $('#example').DataTable( { + autoFill: true + } ); +} ); +

In addition to the above code, the following Javascript library files are loaded for use in this example:

+ +
+
+

The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

+
+
+
+

This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

+
+

The following CSS library files are loaded for use in this example to provide the styling of the table:

+ +
+
+

This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

+
+
+

The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

+
+
+
+
+
+ +
+ + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/styling/index.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/styling/index.html new file mode 100644 index 00000000..6afd37b1 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/styling/index.html @@ -0,0 +1,65 @@ + + + + + + + + + + + + AutoFill examples - Styling + + +
+
+

AutoFill example Styling

+
+

AutoFill, like all other DataTables extensions, can be styled by various styling frameworks (such as Bootstrap) allowing seamless integration of AutoFill into + the look and feel of your site / app.

+

The examples in this section demonstrate this styling integration.

+
+
+
+
+ +
+ + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/styling/jqueryui.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/styling/jqueryui.html new file mode 100644 index 00000000..2eeb28cb --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/styling/jqueryui.html @@ -0,0 +1,671 @@ + + + + + + + AutoFill example - jQuery UI styling + + + + + + + + + + + + + + + + +
+
+

AutoFill example jQuery UI styling

+
+

This example shows DataTables and AutoFill being used with jQuery UI providing the base styling information.

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NamePositionOfficeAgeStart dateSalary
NamePositionOfficeAgeStart dateSalary
Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
Garrett WintersAccountantTokyo632011/07/25$170,750
Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
Airi SatouAccountantTokyo332008/11/28$162,700
Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
Jena GainesOffice ManagerLondon302008/12/19$90,560
Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
Michael SilvaMarketing DesignerLondon662012/11/27$198,500
Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
Gloria LittleSystems AdministratorNew York592009/04/10$237,500
Bradley GreerSoftware EngineerLondon412012/10/13$132,000
Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
Caesar VancePre-Sales SupportNew York212011/12/12$106,450
Doris WilderSales AssistantSidney232010/09/20$85,600
Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
Shou ItouRegional MarketingTokyo202011/08/14$163,000
Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
Suki BurksDeveloperLondon532009/10/22$114,500
Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
Hope FuentesSecretarySan Francisco412010/02/12$109,850
Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
Timothy MooneyOffice ManagerLondon372008/12/11$136,200
Jackson BradshawDirectorNew York652008/09/26$645,750
Olivia LiangSupport EngineerSingapore642011/02/03$234,500
Bruno NashSoftware EngineerLondon382011/05/03$163,500
Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
Thor WaltonDeveloperNew York612013/08/11$98,540
Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
Cara StevensSales AssistantNew York462011/12/06$145,600
Hermione ButlerRegional DirectorLondon472011/03/21$356,250
Lael GreerSystems AdministratorLondon212009/02/27$103,500
Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
Donna SniderCustomer SupportNew York272011/01/25$112,000
+
    +
  • Javascript
  • +
  • HTML
  • +
  • CSS
  • +
  • Ajax
  • +
  • Server-side script
  • +
+
+
+

The Javascript shown below is used to initialise the table shown in this example:

$(document).ready(function() { + $('#example').DataTable( { + autoFill: true + } ); +} ); +

In addition to the above code, the following Javascript library files are loaded for use in this example:

+ +
+
+

The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

+
+
+
+

This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

+
+

The following CSS library files are loaded for use in this example to provide the styling of the table:

+ +
+
+

This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

+
+
+

The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

+
+
+
+
+
+ +
+ + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/styling/semanticui.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/styling/semanticui.html new file mode 100644 index 00000000..b4adf13b --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/examples/styling/semanticui.html @@ -0,0 +1,672 @@ + + + + + + + AutoFill example - Semantic UI styling + + + + + + + + + + + + + + + + +
+
+

AutoFill example Semantic UI styling

+
+

This example shows DataTables and the AutoFill extension being used with Semantic UI providing the styling. The DataTables + / Semantic UI integration provides seamless integration for DataTables to be used in a Semantic UI page.

+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
NamePositionOfficeAgeStart dateSalary
NamePositionOfficeAgeStart dateSalary
Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
Garrett WintersAccountantTokyo632011/07/25$170,750
Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
Airi SatouAccountantTokyo332008/11/28$162,700
Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
Jena GainesOffice ManagerLondon302008/12/19$90,560
Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
Michael SilvaMarketing DesignerLondon662012/11/27$198,500
Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
Gloria LittleSystems AdministratorNew York592009/04/10$237,500
Bradley GreerSoftware EngineerLondon412012/10/13$132,000
Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
Caesar VancePre-Sales SupportNew York212011/12/12$106,450
Doris WilderSales AssistantSidney232010/09/20$85,600
Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
Shou ItouRegional MarketingTokyo202011/08/14$163,000
Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
Suki BurksDeveloperLondon532009/10/22$114,500
Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
Hope FuentesSecretarySan Francisco412010/02/12$109,850
Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
Timothy MooneyOffice ManagerLondon372008/12/11$136,200
Jackson BradshawDirectorNew York652008/09/26$645,750
Olivia LiangSupport EngineerSingapore642011/02/03$234,500
Bruno NashSoftware EngineerLondon382011/05/03$163,500
Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
Thor WaltonDeveloperNew York612013/08/11$98,540
Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
Cara StevensSales AssistantNew York462011/12/06$145,600
Hermione ButlerRegional DirectorLondon472011/03/21$356,250
Lael GreerSystems AdministratorLondon212009/02/27$103,500
Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
Donna SniderCustomer SupportNew York272011/01/25$112,000
+
    +
  • Javascript
  • +
  • HTML
  • +
  • CSS
  • +
  • Ajax
  • +
  • Server-side script
  • +
+
+
+

The Javascript shown below is used to initialise the table shown in this example:

$(document).ready(function() { + $('#example').DataTable( { + autoFill: true + } ); +} ); +

In addition to the above code, the following Javascript library files are loaded for use in this example:

+ +
+
+

The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

+
+
+
+

This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

+
+

The following CSS library files are loaded for use in this example to provide the styling of the table:

+ +
+
+

This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

+
+
+

The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

+
+
+
+
+
+ +
+ + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.bootstrap.js b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.bootstrap.js new file mode 100644 index 00000000..48e4d495 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.bootstrap.js @@ -0,0 +1,43 @@ +/*! Bootstrap integration for DataTables' AutoFill + * ©2015 SpryMedia Ltd - datatables.net/license + */ + +(function( factory ){ + if ( typeof define === 'function' && define.amd ) { + // AMD + define( ['jquery', 'datatables.net-bs', 'datatables.net-autofill'], function ( $ ) { + return factory( $, window, document ); + } ); + } + else if ( typeof exports === 'object' ) { + // CommonJS + module.exports = function (root, $) { + if ( ! root ) { + root = window; + } + + if ( ! $ || ! $.fn.dataTable ) { + $ = require('datatables.net-bs')(root, $).$; + } + + if ( ! $.fn.dataTable.AutoFill ) { + require('datatables.net-autofill')(root, $); + } + + return factory( $, root, root.document ); + }; + } + else { + // Browser + factory( jQuery, window, document ); + } +}(function( $, window, document, undefined ) { +'use strict'; +var DataTable = $.fn.dataTable; + + +DataTable.AutoFill.classes.btn = 'btn btn-primary'; + + +return DataTable; +})); \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.bootstrap.min.js b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.bootstrap.min.js new file mode 100644 index 00000000..7a8d071d --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.bootstrap.min.js @@ -0,0 +1,5 @@ +/*! + Bootstrap integration for DataTables' AutoFill + ©2015 SpryMedia Ltd - datatables.net/license +*/ +(function(a){"function"===typeof define&&define.amd?define(["jquery","datatables.net-bs","datatables.net-autofill"],function(b){return a(b,window,document)}):"object"===typeof exports?module.exports=function(b,c){b||(b=window);if(!c||!c.fn.dataTable)c=require("datatables.net-bs")(b,c).$;c.fn.dataTable.AutoFill||require("datatables.net-autofill")(b,c);return a(c,b,b.document)}:a(jQuery,window,document)})(function(a){a=a.fn.dataTable;a.AutoFill.classes.btn="btn btn-primary";return a}); diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.bootstrap4.js b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.bootstrap4.js new file mode 100644 index 00000000..40037e4f --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.bootstrap4.js @@ -0,0 +1,43 @@ +/*! Bootstrap integration for DataTables' AutoFill + * ©2015 SpryMedia Ltd - datatables.net/license + */ + +(function( factory ){ + if ( typeof define === 'function' && define.amd ) { + // AMD + define( ['jquery', 'datatables.net-bs4', 'datatables.net-autofill'], function ( $ ) { + return factory( $, window, document ); + } ); + } + else if ( typeof exports === 'object' ) { + // CommonJS + module.exports = function (root, $) { + if ( ! root ) { + root = window; + } + + if ( ! $ || ! $.fn.dataTable ) { + $ = require('datatables.net-bs4')(root, $).$; + } + + if ( ! $.fn.dataTable.AutoFill ) { + require('datatables.net-autofill')(root, $); + } + + return factory( $, root, root.document ); + }; + } + else { + // Browser + factory( jQuery, window, document ); + } +}(function( $, window, document, undefined ) { +'use strict'; +var DataTable = $.fn.dataTable; + + +DataTable.AutoFill.classes.btn = 'btn btn-primary'; + + +return DataTable; +})); \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.bootstrap4.min.js b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.bootstrap4.min.js new file mode 100644 index 00000000..87ea58cd --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.bootstrap4.min.js @@ -0,0 +1,5 @@ +/*! + Bootstrap integration for DataTables' AutoFill + ©2015 SpryMedia Ltd - datatables.net/license +*/ +(function(a){"function"===typeof define&&define.amd?define(["jquery","datatables.net-bs4","datatables.net-autofill"],function(b){return a(b,window,document)}):"object"===typeof exports?module.exports=function(b,c){b||(b=window);if(!c||!c.fn.dataTable)c=require("datatables.net-bs4")(b,c).$;c.fn.dataTable.AutoFill||require("datatables.net-autofill")(b,c);return a(c,b,b.document)}:a(jQuery,window,document)})(function(a){a=a.fn.dataTable;a.AutoFill.classes.btn="btn btn-primary";return a}); diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.foundation.js b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.foundation.js new file mode 100644 index 00000000..7f46e9af --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.foundation.js @@ -0,0 +1,43 @@ +/*! Foundation integration for DataTables' AutoFill + * ©2015 SpryMedia Ltd - datatables.net/license + */ + +(function( factory ){ + if ( typeof define === 'function' && define.amd ) { + // AMD + define( ['jquery', 'datatables.net-zf', 'datatables.net-autofill'], function ( $ ) { + return factory( $, window, document ); + } ); + } + else if ( typeof exports === 'object' ) { + // CommonJS + module.exports = function (root, $) { + if ( ! root ) { + root = window; + } + + if ( ! $ || ! $.fn.dataTable ) { + $ = require('datatables.net-zf')(root, $).$; + } + + if ( ! $.fn.dataTable.AutoFill ) { + require('datatables.net-autofill')(root, $); + } + + return factory( $, root, root.document ); + }; + } + else { + // Browser + factory( jQuery, window, document ); + } +}(function( $, window, document, undefined ) { +'use strict'; +var DataTable = $.fn.dataTable; + + +DataTable.AutoFill.classes.btn = 'button tiny'; + + +return DataTable; +})); \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.foundation.min.js b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.foundation.min.js new file mode 100644 index 00000000..df655a53 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.foundation.min.js @@ -0,0 +1,5 @@ +/*! + Foundation integration for DataTables' AutoFill + ©2015 SpryMedia Ltd - datatables.net/license +*/ +(function(a){"function"===typeof define&&define.amd?define(["jquery","datatables.net-zf","datatables.net-autofill"],function(b){return a(b,window,document)}):"object"===typeof exports?module.exports=function(b,c){b||(b=window);if(!c||!c.fn.dataTable)c=require("datatables.net-zf")(b,c).$;c.fn.dataTable.AutoFill||require("datatables.net-autofill")(b,c);return a(c,b,b.document)}:a(jQuery,window,document)})(function(a){a=a.fn.dataTable;a.AutoFill.classes.btn="button tiny";return a}); diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.jqueryui.js b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.jqueryui.js new file mode 100644 index 00000000..b645433e --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.jqueryui.js @@ -0,0 +1,43 @@ +/*! jQuery UI integration for DataTables' AutoFill + * ©2015 SpryMedia Ltd - datatables.net/license + */ + +(function( factory ){ + if ( typeof define === 'function' && define.amd ) { + // AMD + define( ['jquery', 'datatables.net-jqui', 'datatables.net-autofill'], function ( $ ) { + return factory( $, window, document ); + } ); + } + else if ( typeof exports === 'object' ) { + // CommonJS + module.exports = function (root, $) { + if ( ! root ) { + root = window; + } + + if ( ! $ || ! $.fn.dataTable ) { + $ = require('datatables.net-jqui')(root, $).$; + } + + if ( ! $.fn.dataTable.AutoFill ) { + require('datatables.net-autofill')(root, $); + } + + return factory( $, root, root.document ); + }; + } + else { + // Browser + factory( jQuery, window, document ); + } +}(function( $, window, document, undefined ) { +'use strict'; +var DataTable = $.fn.dataTable; + + +DataTable.AutoFill.classes.btn = 'ui-button ui-state-default ui-corner-all'; + + +return DataTable; +})); diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.jqueryui.min.js b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.jqueryui.min.js new file mode 100644 index 00000000..4bb198fc --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.jqueryui.min.js @@ -0,0 +1,6 @@ +/*! + jQuery UI integration for DataTables' AutoFill + ©2015 SpryMedia Ltd - datatables.net/license +*/ +(function(a){"function"===typeof define&&define.amd?define(["jquery","datatables.net-jqui","datatables.net-autofill"],function(b){return a(b,window,document)}):"object"===typeof exports?module.exports=function(b,c){b||(b=window);if(!c||!c.fn.dataTable)c=require("datatables.net-jqui")(b,c).$;c.fn.dataTable.AutoFill||require("datatables.net-autofill")(b,c);return a(c,b,b.document)}:a(jQuery,window,document)})(function(a){a=a.fn.dataTable;a.AutoFill.classes.btn="ui-button ui-state-default ui-corner-all"; +return a}); diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.semanticui.js b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.semanticui.js new file mode 100644 index 00000000..88f53bec --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.semanticui.js @@ -0,0 +1,43 @@ +/*! Bootstrap integration for DataTables' AutoFill + * ©2015 SpryMedia Ltd - datatables.net/license + */ + +(function( factory ){ + if ( typeof define === 'function' && define.amd ) { + // AMD + define( ['jquery', 'datatables.net-se', 'datatables.net-autofill'], function ( $ ) { + return factory( $, window, document ); + } ); + } + else if ( typeof exports === 'object' ) { + // CommonJS + module.exports = function (root, $) { + if ( ! root ) { + root = window; + } + + if ( ! $ || ! $.fn.dataTable ) { + $ = require('datatables.net-se')(root, $).$; + } + + if ( ! $.fn.dataTable.AutoFill ) { + require('datatables.net-autofill')(root, $); + } + + return factory( $, root, root.document ); + }; + } + else { + // Browser + factory( jQuery, window, document ); + } +}(function( $, window, document, undefined ) { +'use strict'; +var DataTable = $.fn.dataTable; + + +DataTable.AutoFill.classes.btn = 'ui button'; + + +return DataTable; +})); \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.semanticui.min.js b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.semanticui.min.js new file mode 100644 index 00000000..b67185b5 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/autoFill.semanticui.min.js @@ -0,0 +1,5 @@ +/*! + Bootstrap integration for DataTables' AutoFill + ©2015 SpryMedia Ltd - datatables.net/license +*/ +(function(a){"function"===typeof define&&define.amd?define(["jquery","datatables.net-se","datatables.net-autofill"],function(b){return a(b,window,document)}):"object"===typeof exports?module.exports=function(b,c){b||(b=window);if(!c||!c.fn.dataTable)c=require("datatables.net-se")(b,c).$;c.fn.dataTable.AutoFill||require("datatables.net-autofill")(b,c);return a(c,b,b.document)}:a(jQuery,window,document)})(function(a){a=a.fn.dataTable;a.AutoFill.classes.btn="ui button";return a}); diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/dataTables.autoFill.js b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/dataTables.autoFill.js new file mode 100644 index 00000000..4e460cdc --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/AutoFill/js/dataTables.autoFill.js @@ -0,0 +1,1159 @@ +/*! AutoFill 2.2.0 + * ©2008-2016 SpryMedia Ltd - datatables.net/license + */ + +/** + * @summary AutoFill + * @description Add Excel like click and drag auto-fill options to DataTables + * @version 2.2.0 + * @file dataTables.autoFill.js + * @author SpryMedia Ltd (www.sprymedia.co.uk) + * @contact www.sprymedia.co.uk/contact + * @copyright Copyright 2010-2016 SpryMedia Ltd. + * + * This source file is free software, available under the following license: + * MIT license - http://datatables.net/license/mit + * + * This source file is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY + * or FITNESS FOR A PARTICULAR PURPOSE. See the license files for details. + * + * For details please refer to: http://www.datatables.net + */ +(function( factory ){ + if ( typeof define === 'function' && define.amd ) { + // AMD + define( ['jquery', 'datatables.net'], function ( $ ) { + return factory( $, window, document ); + } ); + } + else if ( typeof exports === 'object' ) { + // CommonJS + module.exports = function (root, $) { + if ( ! root ) { + root = window; + } + + if ( ! $ || ! $.fn.dataTable ) { + $ = require('datatables.net')(root, $).$; + } + + return factory( $, root, root.document ); + }; + } + else { + // Browser + factory( jQuery, window, document ); + } +}(function( $, window, document, undefined ) { +'use strict'; +var DataTable = $.fn.dataTable; + + +var _instance = 0; + +/** + * AutoFill provides Excel like auto-fill features for a DataTable + * + * @class AutoFill + * @constructor + * @param {object} oTD DataTables settings object + * @param {object} oConfig Configuration object for AutoFill + */ +var AutoFill = function( dt, opts ) +{ + if ( ! DataTable.versionCheck || ! DataTable.versionCheck( '1.10.8' ) ) { + throw( "Warning: AutoFill requires DataTables 1.10.8 or greater"); + } + + // User and defaults configuration object + this.c = $.extend( true, {}, + DataTable.defaults.autoFill, + AutoFill.defaults, + opts + ); + + /** + * @namespace Settings object which contains customisable information for AutoFill instance + */ + this.s = { + /** @type {DataTable.Api} DataTables' API instance */ + dt: new DataTable.Api( dt ), + + /** @type {String} Unique namespace for events attached to the document */ + namespace: '.autoFill'+(_instance++), + + /** @type {Object} Cached dimension information for use in the mouse move event handler */ + scroll: {}, + + /** @type {integer} Interval object used for smooth scrolling */ + scrollInterval: null, + + handle: { + height: 0, + width: 0 + }, + + /** + * Enabled setting + * @type {Boolean} + */ + enabled: false + }; + + + /** + * @namespace Common and useful DOM elements for the class instance + */ + this.dom = { + /** @type {jQuery} AutoFill handle */ + handle: $('
'), + + /** + * @type {Object} Selected cells outline - Need to use 4 elements, + * otherwise the mouse over if you back into the selected rectangle + * will be over that element, rather than the cells! + */ + select: { + top: $('
'), + right: $('
'), + bottom: $('
'), + left: $('
') + }, + + /** @type {jQuery} Fill type chooser background */ + background: $('
'), + + /** @type {jQuery} Fill type chooser */ + list: $('
'+this.s.dt.i18n('autoFill.info', '')+'
    '), + + /** @type {jQuery} DataTables scrolling container */ + dtScroll: null, + + /** @type {jQuery} Offset parent element */ + offsetParent: null + }; + + + /* Constructor logic */ + this._constructor(); +}; + + + +$.extend( AutoFill.prototype, { + /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * Public methods (exposed via the DataTables API below) + */ + enabled: function () + { + return this.s.enabled; + }, + + + enable: function ( flag ) + { + var that = this; + + if ( flag === false ) { + return this.disable(); + } + + this.s.enabled = true; + + this._focusListener(); + + this.dom.handle.on( 'mousedown', function (e) { + that._mousedown( e ); + return false; + } ); + + return this; + }, + + disable: function () + { + this.s.enabled = false; + + this._focusListenerRemove(); + + return this; + }, + + + /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * Constructor + */ + + /** + * Initialise the RowReorder instance + * + * @private + */ + _constructor: function () + { + var that = this; + var dt = this.s.dt; + var dtScroll = $('div.dataTables_scrollBody', this.s.dt.table().container()); + + // Make the instance accessible to the API + dt.settings()[0].autoFill = this; + + if ( dtScroll.length ) { + this.dom.dtScroll = dtScroll; + + // Need to scroll container to be the offset parent + if ( dtScroll.css('position') === 'static' ) { + dtScroll.css( 'position', 'relative' ); + } + } + + if ( this.c.enable !== false ) { + this.enable(); + } + + dt.on( 'destroy.autoFill', function () { + that._focusListenerRemove(); + } ); + }, + + + /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * Private methods + */ + + /** + * Display the AutoFill drag handle by appending it to a table cell. This + * is the opposite of the _detach method. + * + * @param {node} node TD/TH cell to insert the handle into + * @private + */ + _attach: function ( node ) + { + var dt = this.s.dt; + var idx = dt.cell( node ).index(); + var handle = this.dom.handle; + var handleDim = this.s.handle; + + if ( ! idx || dt.columns( this.c.columns ).indexes().indexOf( idx.column ) === -1 ) { + this._detach(); + return; + } + + if ( ! this.dom.offsetParent ) { + // We attach to the table's offset parent + this.dom.offsetParent = $( dt.table().node() ).offsetParent(); + } + + if ( ! handleDim.height || ! handleDim.width ) { + // Append to document so we can get its size. Not expecting it to + // change during the life time of the page + handle.appendTo( 'body' ); + handleDim.height = handle.outerHeight(); + handleDim.width = handle.outerWidth(); + } + + // Might need to go through multiple offset parents + var offset = this._getPosition( node, this.dom.offsetParent ); + + this.dom.attachedTo = node; + handle + .css( { + top: offset.top + node.offsetHeight - handleDim.height, + left: offset.left + node.offsetWidth - handleDim.width + } ) + .appendTo( this.dom.offsetParent ); + }, + + + /** + * Determine can the fill type should be. This can be automatic, or ask the + * end user. + * + * @param {array} cells Information about the selected cells from the key + * up function + * @private + */ + _actionSelector: function ( cells ) + { + var that = this; + var dt = this.s.dt; + var actions = AutoFill.actions; + var available = []; + + // "Ask" each plug-in if it wants to handle this data + $.each( actions, function ( key, action ) { + if ( action.available( dt, cells ) ) { + available.push( key ); + } + } ); + + if ( available.length === 1 && this.c.alwaysAsk === false ) { + // Only one action available - enact it immediately + var result = actions[ available[0] ].execute( dt, cells ); + this._update( result, cells ); + } + else { + // Multiple actions available - ask the end user what they want to do + var list = this.dom.list.children('ul').empty(); + + // Add a cancel option + available.push( 'cancel' ); + + $.each( available, function ( i, name ) { + list.append( $('
  • ') + .append( + '
    '+ + actions[ name ].option( dt, cells )+ + '
    ' + ) + .append( $('
    ' ) + .append( $('') + .on( 'click', function () { + var result = actions[ name ].execute( + dt, cells, $(this).closest('li') + ); + that._update( result, cells ); + + that.dom.background.remove(); + that.dom.list.remove(); + } ) + ) + ) + ); + } ); + + this.dom.background.appendTo( 'body' ); + this.dom.list.appendTo( 'body' ); + + this.dom.list.css( 'margin-top', this.dom.list.outerHeight()/2 * -1 ); + } + }, + + + /** + * Remove the AutoFill handle from the document + * + * @private + */ + _detach: function () + { + this.dom.attachedTo = null; + this.dom.handle.detach(); + }, + + + /** + * Draw the selection outline by calculating the range between the start + * and end cells, then placing the highlighting elements to draw a rectangle + * + * @param {node} target End cell + * @param {object} e Originating event + * @private + */ + _drawSelection: function ( target, e ) + { + // Calculate boundary for start cell to this one + var dt = this.s.dt; + var start = this.s.start; + var startCell = $(this.dom.start); + var endCell = $(target); + var end = { + row: dt.rows( { page: 'current' } ).nodes().indexOf( endCell.parent()[0] ), + column: endCell.index() + }; + var colIndx = dt.column.index( 'toData', end.column ); + + // Be sure that is a DataTables controlled cell + if ( ! dt.cell( endCell ).any() ) { + return; + } + + // if target is not in the columns available - do nothing + if ( dt.columns( this.c.columns ).indexes().indexOf( colIndx ) === -1 ) { + return; + } + + this.s.end = end; + + var top, bottom, left, right, height, width; + + top = start.row < end.row ? startCell : endCell; + bottom = start.row < end.row ? endCell : startCell; + left = start.column < end.column ? startCell : endCell; + right = start.column < end.column ? endCell : startCell; + + top = this._getPosition( top ).top; + left = this._getPosition( left ).left; + height = this._getPosition( bottom ).top + bottom.outerHeight() - top; + width = this._getPosition( right ).left + right.outerWidth() - left; + + var select = this.dom.select; + select.top.css( { + top: top, + left: left, + width: width + } ); + + select.left.css( { + top: top, + left: left, + height: height + } ); + + select.bottom.css( { + top: top + height, + left: left, + width: width + } ); + + select.right.css( { + top: top, + left: left + width, + height: height + } ); + }, + + + /** + * Use the Editor API to perform an update based on the new data for the + * cells + * + * @param {array} cells Information about the selected cells from the key + * up function + * @private + */ + _editor: function ( cells ) + { + var dt = this.s.dt; + var editor = this.c.editor; + + if ( ! editor ) { + return; + } + + // Build the object structure for Editor's multi-row editing + var idValues = {}; + var nodes = []; + var fields = editor.fields(); + + for ( var i=0, ien=cells.length ; i=end ; i-- ) { + out.push( i ); + } + } + + return out; + }, + + + /** + * Move the window and DataTables scrolling during a drag to scroll new + * content into view. This is done by proximity to the edge of the scrolling + * container of the mouse - for example near the top edge of the window + * should scroll up. This is a little complicated as there are two elements + * that can be scrolled - the window and the DataTables scrolling view port + * (if scrollX and / or scrollY is enabled). + * + * @param {object} e Mouse move event object + * @private + */ + _shiftScroll: function ( e ) + { + var that = this; + var dt = this.s.dt; + var scroll = this.s.scroll; + var runInterval = false; + var scrollSpeed = 5; + var buffer = 65; + var + windowY = e.pageY - document.body.scrollTop, + windowX = e.pageX - document.body.scrollLeft, + windowVert, windowHoriz, + dtVert, dtHoriz; + + // Window calculations - based on the mouse position in the window, + // regardless of scrolling + if ( windowY < buffer ) { + windowVert = scrollSpeed * -1; + } + else if ( windowY > scroll.windowHeight - buffer ) { + windowVert = scrollSpeed; + } + + if ( windowX < buffer ) { + windowHoriz = scrollSpeed * -1; + } + else if ( windowX > scroll.windowWidth - buffer ) { + windowHoriz = scrollSpeed; + } + + // DataTables scrolling calculations - based on the table's position in + // the document and the mouse position on the page + if ( scroll.dtTop !== null && e.pageY < scroll.dtTop + buffer ) { + dtVert = scrollSpeed * -1; + } + else if ( scroll.dtTop !== null && e.pageY > scroll.dtTop + scroll.dtHeight - buffer ) { + dtVert = scrollSpeed; + } + + if ( scroll.dtLeft !== null && e.pageX < scroll.dtLeft + buffer ) { + dtHoriz = scrollSpeed * -1; + } + else if ( scroll.dtLeft !== null && e.pageX > scroll.dtLeft + scroll.dtWidth - buffer ) { + dtHoriz = scrollSpeed; + } + + // This is where it gets interesting. We want to continue scrolling + // without requiring a mouse move, so we need an interval to be + // triggered. The interval should continue until it is no longer needed, + // but it must also use the latest scroll commands (for example consider + // that the mouse might move from scrolling up to scrolling left, all + // with the same interval running. We use the `scroll` object to "pass" + // this information to the interval. Can't use local variables as they + // wouldn't be the ones that are used by an already existing interval! + if ( windowVert || windowHoriz || dtVert || dtHoriz ) { + scroll.windowVert = windowVert; + scroll.windowHoriz = windowHoriz; + scroll.dtVert = dtVert; + scroll.dtHoriz = dtHoriz; + runInterval = true; + } + else if ( this.s.scrollInterval ) { + // Don't need to scroll - remove any existing timer + clearInterval( this.s.scrollInterval ); + this.s.scrollInterval = null; + } + + // If we need to run the interval to scroll and there is no existing + // interval (if there is an existing one, it will continue to run) + if ( ! this.s.scrollInterval && runInterval ) { + this.s.scrollInterval = setInterval( function () { + // Don't need to worry about setting scroll <0 or beyond the + // scroll bound as the browser will just reject that. + if ( scroll.windowVert ) { + document.body.scrollTop += scroll.windowVert; + } + if ( scroll.windowHoriz ) { + document.body.scrollLeft += scroll.windowHoriz; + } + + // DataTables scrolling + if ( scroll.dtVert || scroll.dtHoriz ) { + var scroller = that.dom.dtScroll[0]; + + if ( scroll.dtVert ) { + scroller.scrollTop += scroll.dtVert; + } + if ( scroll.dtHoriz ) { + scroller.scrollLeft += scroll.dtHoriz; + } + } + }, 20 ); + } + }, + + + /** + * Update the DataTable after the user has selected what they want to do + * + * @param {false|undefined} result Return from the `execute` method - can + * be false internally to do nothing. This is not documented for plug-ins + * and is used only by the cancel option. + * @param {array} cells Information about the selected cells from the key + * up function, argumented with the set values + * @private + */ + _update: function ( result, cells ) + { + // Do nothing on `false` return from an execute function + if ( result === false ) { + return; + } + + var dt = this.s.dt; + var cell; + + // Potentially allow modifications to the cells matrix + this._emitEvent( 'preAutoFill', [ dt, cells ] ); + + this._editor( cells ); + + // Automatic updates are not performed if `update` is null and the + // `editor` parameter is passed in - the reason being that Editor will + // update the data once submitted + var update = this.c.update !== null ? + this.c.update : + this.c.editor ? + false : + true; + + if ( update ) { + for ( var i=0, ien=cells.length ; i' + ); + }, + + execute: function ( dt, cells, node ) { + var value = cells[0][0].data * 1; + var increment = $('input', node).val() * 1; + + for ( var i=0, ien=cells.length ; i'+cells[0][0].label+'' ); + }, + + execute: function ( dt, cells, node ) { + var value = cells[0][0].data; + + for ( var i=0, ien=cells.length ; i 1 && cells[0].length > 1; + }, + + option: function ( dt, cells ) { + return dt.i18n('autoFill.fillHorizontal', 'Fill cells horizontally' ); + }, + + execute: function ( dt, cells, node ) { + for ( var i=0, ien=cells.length ; i 1 && cells[0].length > 1; + }, + + option: function ( dt, cells ) { + return dt.i18n('autoFill.fillVertical', 'Fill cells vertically' ); + }, + + execute: function ( dt, cells, node ) { + for ( var i=0, ien=cells.length ; i'),select:{top:e('
    '),right:e('
    '),bottom:e('
    '),left:e('
    ')},background:e('
    '),list:e('
    '+this.s.dt.i18n("autoFill.info", +"")+"
      "),dtScroll:null,offsetParent:null};this._constructor()};e.extend(j.prototype,{enabled:function(){return this.s.enabled},enable:function(c){var b=this;if(!1===c)return this.disable();this.s.enabled=!0;this._focusListener();this.dom.handle.on("mousedown",function(a){b._mousedown(a);return!1});return this},disable:function(){this.s.enabled=!1;this._focusListenerRemove();return this},_constructor:function(){var c=this,b=this.s.dt,a=e("div.dataTables_scrollBody",this.s.dt.table().container()); +b.settings()[0].autoFill=this;a.length&&(this.dom.dtScroll=a,"static"===a.css("position")&&a.css("position","relative"));!1!==this.c.enable&&this.enable();b.on("destroy.autoFill",function(){c._focusListenerRemove()})},_attach:function(c){var b=this.s.dt,a=b.cell(c).index(),d=this.dom.handle,f=this.s.handle;if(!a||-1===b.columns(this.c.columns).indexes().indexOf(a.column))this._detach();else{this.dom.offsetParent||(this.dom.offsetParent=e(b.table().node()).offsetParent());if(!f.height||!f.width)d.appendTo("body"), +f.height=d.outerHeight(),f.width=d.outerWidth();b=this._getPosition(c,this.dom.offsetParent);this.dom.attachedTo=c;d.css({top:b.top+c.offsetHeight-f.height,left:b.left+c.offsetWidth-f.width}).appendTo(this.dom.offsetParent)}},_actionSelector:function(c){var b=this,a=this.s.dt,d=j.actions,f=[];e.each(d,function(b,d){d.available(a,c)&&f.push(b)});if(1===f.length&&!1===this.c.alwaysAsk){var h=d[f[0]].execute(a,c);this._update(h,c)}else{var g=this.dom.list.children("ul").empty();f.push("cancel");e.each(f, +function(f,h){g.append(e("
    • ").append('
      '+d[h].option(a,c)+"
      ").append(e('
      ').append(e('").on("click",function(){var f=d[h].execute(a,c,e(this).closest("li"));b._update(f,c);b.dom.background.remove();b.dom.list.remove()}))))});this.dom.background.appendTo("body");this.dom.list.appendTo("body");this.dom.list.css("margin-top",-1*(this.dom.list.outerHeight()/ +2))}},_detach:function(){this.dom.attachedTo=null;this.dom.handle.detach()},_drawSelection:function(c){var b=this.s.dt,a=this.s.start,d=e(this.dom.start),f=e(c),h={row:b.rows({page:"current"}).nodes().indexOf(f.parent()[0]),column:f.index()},c=b.column.index("toData",h.column);if(b.cell(f).any()&&-1!==b.columns(this.c.columns).indexes().indexOf(c)){this.s.end=h;var g,b=a.row=b;d--)a.push(d);return a},_shiftScroll:function(c){var b=this,a=this.s.scroll,d=!1,f=c.pageY-i.body.scrollTop,e=c.pageX-i.body.scrollLeft,g,j,k,l;65>f?g=-5:f>a.windowHeight-65&&(g=5);65>e?j=-5:e>a.windowWidth-65&&(j=5);null!==a.dtTop&&c.pageYa.dtTop+a.dtHeight-65&&(k=5);null!==a.dtLeft&&c.pageXa.dtLeft+a.dtWidth-65&&(l=5);g|| +j||k||l?(a.windowVert=g,a.windowHoriz=j,a.dtVert=k,a.dtHoriz=l,d=!0):this.s.scrollInterval&&(clearInterval(this.s.scrollInterval),this.s.scrollInterval=null);!this.s.scrollInterval&&d&&(this.s.scrollInterval=setInterval(function(){if(a.windowVert)i.body.scrollTop=i.body.scrollTop+a.windowVert;if(a.windowHoriz)i.body.scrollLeft=i.body.scrollLeft+a.windowHoriz;if(a.dtVert||a.dtHoriz){var c=b.dom.dtScroll[0];if(a.dtVert)c.scrollTop=c.scrollTop+a.dtVert;if(a.dtHoriz)c.scrollLeft=c.scrollLeft+a.dtHoriz}}, +20))},_update:function(c,b){if(!1!==c){var a=this.s.dt,d;this._emitEvent("preAutoFill",[a,b]);this._editor(b);if(null!==this.c.update?this.c.update:!this.c.editor){for(var f=0,e=b.length;f')}, +execute:function(c,b,a){for(var c=1*b[0][0].data,a=1*e("input",a).val(),d=0,f=b.length;d"+b[0][0].label+"")},execute:function(c,b){for(var a=b[0][0].data,d=0,e=b.length;d div { + padding: 1em; +} + +ul.dt-button-collection.dropdown-menu { + display: block; + z-index: 2002; + -webkit-column-gap: 8px; + -moz-column-gap: 8px; + -ms-column-gap: 8px; + -o-column-gap: 8px; + column-gap: 8px; +} +ul.dt-button-collection.dropdown-menu.fixed { + position: fixed; + top: 50%; + left: 50%; + margin-left: -75px; + border-radius: 0; +} +ul.dt-button-collection.dropdown-menu.fixed.two-column { + margin-left: -150px; +} +ul.dt-button-collection.dropdown-menu.fixed.three-column { + margin-left: -225px; +} +ul.dt-button-collection.dropdown-menu.fixed.four-column { + margin-left: -300px; +} +ul.dt-button-collection.dropdown-menu > * { + -webkit-column-break-inside: avoid; + break-inside: avoid; +} +ul.dt-button-collection.dropdown-menu.two-column { + width: 300px; + padding-bottom: 1px; + -webkit-column-count: 2; + -moz-column-count: 2; + -ms-column-count: 2; + -o-column-count: 2; + column-count: 2; +} +ul.dt-button-collection.dropdown-menu.three-column { + width: 450px; + padding-bottom: 1px; + -webkit-column-count: 3; + -moz-column-count: 3; + -ms-column-count: 3; + -o-column-count: 3; + column-count: 3; +} +ul.dt-button-collection.dropdown-menu.four-column { + width: 600px; + padding-bottom: 1px; + -webkit-column-count: 4; + -moz-column-count: 4; + -ms-column-count: 4; + -o-column-count: 4; + column-count: 4; +} + +div.dt-button-background { + position: fixed; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 2001; +} + +@media screen and (max-width: 767px) { + div.dt-buttons { + float: none; + width: 100%; + text-align: center; + margin-bottom: 0.5em; + } + div.dt-buttons a.btn { + float: none; + } +} +div.dt-buttons button.btn.processing, +div.dt-buttons div.btn.processing, +div.dt-buttons a.btn.processing { + color: rgba(0, 0, 0, 0.2); +} +div.dt-buttons button.btn.processing:after, +div.dt-buttons div.btn.processing:after, +div.dt-buttons a.btn.processing:after { + position: absolute; + top: 50%; + left: 50%; + width: 16px; + height: 16px; + margin: -8px 0 0 -8px; + box-sizing: border-box; + display: block; + content: ' '; + border: 2px solid #282828; + border-radius: 50%; + border-left-color: transparent; + border-right-color: transparent; + animation: dtb-spinner 1500ms infinite linear; + -o-animation: dtb-spinner 1500ms infinite linear; + -ms-animation: dtb-spinner 1500ms infinite linear; + -webkit-animation: dtb-spinner 1500ms infinite linear; + -moz-animation: dtb-spinner 1500ms infinite linear; +} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.bootstrap.min.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.bootstrap.min.css new file mode 100644 index 00000000..1ff4119f --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.bootstrap.min.css @@ -0,0 +1 @@ +@keyframes dtb-spinner{100%{transform:rotate(360deg)}}@-o-keyframes dtb-spinner{100%{-o-transform:rotate(360deg);transform:rotate(360deg)}}@-ms-keyframes dtb-spinner{100%{-ms-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes dtb-spinner{100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-moz-keyframes dtb-spinner{100%{-moz-transform:rotate(360deg);transform:rotate(360deg)}}div.dt-button-info{position:fixed;top:50%;left:50%;width:400px;margin-top:-100px;margin-left:-200px;background-color:white;border:2px solid #111;box-shadow:3px 3px 8px rgba(0,0,0,0.3);border-radius:3px;text-align:center;z-index:21}div.dt-button-info h2{padding:0.5em;margin:0;font-weight:normal;border-bottom:1px solid #ddd;background-color:#f3f3f3}div.dt-button-info>div{padding:1em}ul.dt-button-collection.dropdown-menu{display:block;z-index:2002;-webkit-column-gap:8px;-moz-column-gap:8px;-ms-column-gap:8px;-o-column-gap:8px;column-gap:8px}ul.dt-button-collection.dropdown-menu.fixed{position:fixed;top:50%;left:50%;margin-left:-75px;border-radius:0}ul.dt-button-collection.dropdown-menu.fixed.two-column{margin-left:-150px}ul.dt-button-collection.dropdown-menu.fixed.three-column{margin-left:-225px}ul.dt-button-collection.dropdown-menu.fixed.four-column{margin-left:-300px}ul.dt-button-collection.dropdown-menu>*{-webkit-column-break-inside:avoid;break-inside:avoid}ul.dt-button-collection.dropdown-menu.two-column{width:300px;padding-bottom:1px;-webkit-column-count:2;-moz-column-count:2;-ms-column-count:2;-o-column-count:2;column-count:2}ul.dt-button-collection.dropdown-menu.three-column{width:450px;padding-bottom:1px;-webkit-column-count:3;-moz-column-count:3;-ms-column-count:3;-o-column-count:3;column-count:3}ul.dt-button-collection.dropdown-menu.four-column{width:600px;padding-bottom:1px;-webkit-column-count:4;-moz-column-count:4;-ms-column-count:4;-o-column-count:4;column-count:4}div.dt-button-background{position:fixed;top:0;left:0;width:100%;height:100%;z-index:2001}@media screen and (max-width: 767px){div.dt-buttons{float:none;width:100%;text-align:center;margin-bottom:0.5em}div.dt-buttons a.btn{float:none}}div.dt-buttons button.btn.processing,div.dt-buttons div.btn.processing,div.dt-buttons a.btn.processing{color:rgba(0,0,0,0.2)}div.dt-buttons button.btn.processing:after,div.dt-buttons div.btn.processing:after,div.dt-buttons a.btn.processing:after{position:absolute;top:50%;left:50%;width:16px;height:16px;margin:-8px 0 0 -8px;box-sizing:border-box;display:block;content:' ';border:2px solid #282828;border-radius:50%;border-left-color:transparent;border-right-color:transparent;animation:dtb-spinner 1500ms infinite linear;-o-animation:dtb-spinner 1500ms infinite linear;-ms-animation:dtb-spinner 1500ms infinite linear;-webkit-animation:dtb-spinner 1500ms infinite linear;-moz-animation:dtb-spinner 1500ms infinite linear} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.bootstrap4.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.bootstrap4.css new file mode 100644 index 00000000..74b4925c --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.bootstrap4.css @@ -0,0 +1,219 @@ +@keyframes dtb-spinner { + 100% { + transform: rotate(360deg); + } +} +@-o-keyframes dtb-spinner { + 100% { + -o-transform: rotate(360deg); + transform: rotate(360deg); + } +} +@-ms-keyframes dtb-spinner { + 100% { + -ms-transform: rotate(360deg); + transform: rotate(360deg); + } +} +@-webkit-keyframes dtb-spinner { + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} +@-moz-keyframes dtb-spinner { + 100% { + -moz-transform: rotate(360deg); + transform: rotate(360deg); + } +} +div.dt-button-info { + position: fixed; + top: 50%; + left: 50%; + width: 400px; + margin-top: -100px; + margin-left: -200px; + background-color: white; + border: 2px solid #111; + box-shadow: 3px 3px 8px rgba(0, 0, 0, 0.3); + border-radius: 3px; + text-align: center; + z-index: 21; +} +div.dt-button-info h2 { + padding: 0.5em; + margin: 0; + font-weight: normal; + border-bottom: 1px solid #ddd; + background-color: #f3f3f3; +} +div.dt-button-info > div { + padding: 1em; +} + +ul.dt-button-collection.dropdown-menu { + display: block; + z-index: 2002; + -webkit-column-gap: 8px; + -moz-column-gap: 8px; + -ms-column-gap: 8px; + -o-column-gap: 8px; + column-gap: 8px; +} +ul.dt-button-collection.dropdown-menu.fixed { + position: fixed; + top: 50%; + left: 50%; + margin-left: -75px; + border-radius: 0; +} +ul.dt-button-collection.dropdown-menu.fixed.two-column { + margin-left: -150px; +} +ul.dt-button-collection.dropdown-menu.fixed.three-column { + margin-left: -225px; +} +ul.dt-button-collection.dropdown-menu.fixed.four-column { + margin-left: -300px; +} +ul.dt-button-collection.dropdown-menu > * { + -webkit-column-break-inside: avoid; + break-inside: avoid; +} +ul.dt-button-collection.dropdown-menu.two-column { + width: 300px; + padding-bottom: 1px; + -webkit-column-count: 2; + -moz-column-count: 2; + -ms-column-count: 2; + -o-column-count: 2; + column-count: 2; +} +ul.dt-button-collection.dropdown-menu.three-column { + width: 450px; + padding-bottom: 1px; + -webkit-column-count: 3; + -moz-column-count: 3; + -ms-column-count: 3; + -o-column-count: 3; + column-count: 3; +} +ul.dt-button-collection.dropdown-menu.four-column { + width: 600px; + padding-bottom: 1px; + -webkit-column-count: 4; + -moz-column-count: 4; + -ms-column-count: 4; + -o-column-count: 4; + column-count: 4; +} + +ul.dt-button-collection { + -webkit-column-gap: 8px; + -moz-column-gap: 8px; + -ms-column-gap: 8px; + -o-column-gap: 8px; + column-gap: 8px; +} +ul.dt-button-collection.fixed { + position: fixed; + top: 50%; + left: 50%; + margin-left: -75px; + border-radius: 0; +} +ul.dt-button-collection.fixed.two-column { + margin-left: -150px; +} +ul.dt-button-collection.fixed.three-column { + margin-left: -225px; +} +ul.dt-button-collection.fixed.four-column { + margin-left: -300px; +} +ul.dt-button-collection > * { + -webkit-column-break-inside: avoid; + break-inside: avoid; +} +ul.dt-button-collection.two-column { + width: 300px; + padding-bottom: 1px; + -webkit-column-count: 2; + -moz-column-count: 2; + -ms-column-count: 2; + -o-column-count: 2; + column-count: 2; +} +ul.dt-button-collection.three-column { + width: 450px; + padding-bottom: 1px; + -webkit-column-count: 3; + -moz-column-count: 3; + -ms-column-count: 3; + -o-column-count: 3; + column-count: 3; +} +ul.dt-button-collection.four-column { + width: 600px; + padding-bottom: 1px; + -webkit-column-count: 4; + -moz-column-count: 4; + -ms-column-count: 4; + -o-column-count: 4; + column-count: 4; +} +ul.dt-button-collection.fixed { + max-width: none; +} +ul.dt-button-collection.fixed:before, ul.dt-button-collection.fixed:after { + display: none; +} + +div.dt-button-background { + position: fixed; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 999; +} + +@media screen and (max-width: 767px) { + div.dt-buttons { + float: none; + width: 100%; + text-align: center; + margin-bottom: 0.5em; + } + div.dt-buttons a.btn { + float: none; + } +} +div.dt-buttons button.btn.processing, +div.dt-buttons div.btn.processing, +div.dt-buttons a.btn.processing { + color: rgba(0, 0, 0, 0.2); +} +div.dt-buttons button.btn.processing:after, +div.dt-buttons div.btn.processing:after, +div.dt-buttons a.btn.processing:after { + position: absolute; + top: 50%; + left: 50%; + width: 16px; + height: 16px; + margin: -8px 0 0 -8px; + box-sizing: border-box; + display: block; + content: ' '; + border: 2px solid #282828; + border-radius: 50%; + border-left-color: transparent; + border-right-color: transparent; + animation: dtb-spinner 1500ms infinite linear; + -o-animation: dtb-spinner 1500ms infinite linear; + -ms-animation: dtb-spinner 1500ms infinite linear; + -webkit-animation: dtb-spinner 1500ms infinite linear; + -moz-animation: dtb-spinner 1500ms infinite linear; +} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.bootstrap4.min.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.bootstrap4.min.css new file mode 100644 index 00000000..d75bcc68 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.bootstrap4.min.css @@ -0,0 +1 @@ +@keyframes dtb-spinner{100%{transform:rotate(360deg)}}@-o-keyframes dtb-spinner{100%{-o-transform:rotate(360deg);transform:rotate(360deg)}}@-ms-keyframes dtb-spinner{100%{-ms-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes dtb-spinner{100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-moz-keyframes dtb-spinner{100%{-moz-transform:rotate(360deg);transform:rotate(360deg)}}div.dt-button-info{position:fixed;top:50%;left:50%;width:400px;margin-top:-100px;margin-left:-200px;background-color:white;border:2px solid #111;box-shadow:3px 3px 8px rgba(0,0,0,0.3);border-radius:3px;text-align:center;z-index:21}div.dt-button-info h2{padding:0.5em;margin:0;font-weight:normal;border-bottom:1px solid #ddd;background-color:#f3f3f3}div.dt-button-info>div{padding:1em}ul.dt-button-collection.dropdown-menu{display:block;z-index:2002;-webkit-column-gap:8px;-moz-column-gap:8px;-ms-column-gap:8px;-o-column-gap:8px;column-gap:8px}ul.dt-button-collection.dropdown-menu.fixed{position:fixed;top:50%;left:50%;margin-left:-75px;border-radius:0}ul.dt-button-collection.dropdown-menu.fixed.two-column{margin-left:-150px}ul.dt-button-collection.dropdown-menu.fixed.three-column{margin-left:-225px}ul.dt-button-collection.dropdown-menu.fixed.four-column{margin-left:-300px}ul.dt-button-collection.dropdown-menu>*{-webkit-column-break-inside:avoid;break-inside:avoid}ul.dt-button-collection.dropdown-menu.two-column{width:300px;padding-bottom:1px;-webkit-column-count:2;-moz-column-count:2;-ms-column-count:2;-o-column-count:2;column-count:2}ul.dt-button-collection.dropdown-menu.three-column{width:450px;padding-bottom:1px;-webkit-column-count:3;-moz-column-count:3;-ms-column-count:3;-o-column-count:3;column-count:3}ul.dt-button-collection.dropdown-menu.four-column{width:600px;padding-bottom:1px;-webkit-column-count:4;-moz-column-count:4;-ms-column-count:4;-o-column-count:4;column-count:4}ul.dt-button-collection{-webkit-column-gap:8px;-moz-column-gap:8px;-ms-column-gap:8px;-o-column-gap:8px;column-gap:8px}ul.dt-button-collection.fixed{position:fixed;top:50%;left:50%;margin-left:-75px;border-radius:0}ul.dt-button-collection.fixed.two-column{margin-left:-150px}ul.dt-button-collection.fixed.three-column{margin-left:-225px}ul.dt-button-collection.fixed.four-column{margin-left:-300px}ul.dt-button-collection>*{-webkit-column-break-inside:avoid;break-inside:avoid}ul.dt-button-collection.two-column{width:300px;padding-bottom:1px;-webkit-column-count:2;-moz-column-count:2;-ms-column-count:2;-o-column-count:2;column-count:2}ul.dt-button-collection.three-column{width:450px;padding-bottom:1px;-webkit-column-count:3;-moz-column-count:3;-ms-column-count:3;-o-column-count:3;column-count:3}ul.dt-button-collection.four-column{width:600px;padding-bottom:1px;-webkit-column-count:4;-moz-column-count:4;-ms-column-count:4;-o-column-count:4;column-count:4}ul.dt-button-collection.fixed{max-width:none}ul.dt-button-collection.fixed:before,ul.dt-button-collection.fixed:after{display:none}div.dt-button-background{position:fixed;top:0;left:0;width:100%;height:100%;z-index:999}@media screen and (max-width: 767px){div.dt-buttons{float:none;width:100%;text-align:center;margin-bottom:0.5em}div.dt-buttons a.btn{float:none}}div.dt-buttons button.btn.processing,div.dt-buttons div.btn.processing,div.dt-buttons a.btn.processing{color:rgba(0,0,0,0.2)}div.dt-buttons button.btn.processing:after,div.dt-buttons div.btn.processing:after,div.dt-buttons a.btn.processing:after{position:absolute;top:50%;left:50%;width:16px;height:16px;margin:-8px 0 0 -8px;box-sizing:border-box;display:block;content:' ';border:2px solid #282828;border-radius:50%;border-left-color:transparent;border-right-color:transparent;animation:dtb-spinner 1500ms infinite linear;-o-animation:dtb-spinner 1500ms infinite linear;-ms-animation:dtb-spinner 1500ms infinite linear;-webkit-animation:dtb-spinner 1500ms infinite linear;-moz-animation:dtb-spinner 1500ms infinite linear} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.dataTables.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.dataTables.css new file mode 100644 index 00000000..33c75d11 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.dataTables.css @@ -0,0 +1,354 @@ +@keyframes dtb-spinner { + 100% { + transform: rotate(360deg); + } +} +@-o-keyframes dtb-spinner { + 100% { + -o-transform: rotate(360deg); + transform: rotate(360deg); + } +} +@-ms-keyframes dtb-spinner { + 100% { + -ms-transform: rotate(360deg); + transform: rotate(360deg); + } +} +@-webkit-keyframes dtb-spinner { + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} +@-moz-keyframes dtb-spinner { + 100% { + -moz-transform: rotate(360deg); + transform: rotate(360deg); + } +} +div.dt-button-info { + position: fixed; + top: 50%; + left: 50%; + width: 400px; + margin-top: -100px; + margin-left: -200px; + background-color: white; + border: 2px solid #111; + box-shadow: 3px 3px 8px rgba(0, 0, 0, 0.3); + border-radius: 3px; + text-align: center; + z-index: 21; +} +div.dt-button-info h2 { + padding: 0.5em; + margin: 0; + font-weight: normal; + border-bottom: 1px solid #ddd; + background-color: #f3f3f3; +} +div.dt-button-info > div { + padding: 1em; +} + +button.dt-button, +div.dt-button, +a.dt-button { + position: relative; + display: inline-block; + box-sizing: border-box; + margin-right: 0.333em; + padding: 0.5em 1em; + border: 1px solid #999; + border-radius: 2px; + cursor: pointer; + font-size: 0.88em; + color: black; + white-space: nowrap; + overflow: hidden; + background-color: #e9e9e9; + /* Fallback */ + background-image: -webkit-linear-gradient(top, white 0%, #e9e9e9 100%); + /* Chrome 10+, Saf5.1+, iOS 5+ */ + background-image: -moz-linear-gradient(top, white 0%, #e9e9e9 100%); + /* FF3.6 */ + background-image: -ms-linear-gradient(top, white 0%, #e9e9e9 100%); + /* IE10 */ + background-image: -o-linear-gradient(top, white 0%, #e9e9e9 100%); + /* Opera 11.10+ */ + background-image: linear-gradient(to bottom, white 0%, #e9e9e9 100%); + filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='white', EndColorStr='#e9e9e9'); + -webkit-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + text-decoration: none; + outline: none; +} +button.dt-button.disabled, +div.dt-button.disabled, +a.dt-button.disabled { + color: #999; + border: 1px solid #d0d0d0; + cursor: default; + background-color: #f9f9f9; + /* Fallback */ + background-image: -webkit-linear-gradient(top, #ffffff 0%, #f9f9f9 100%); + /* Chrome 10+, Saf5.1+, iOS 5+ */ + background-image: -moz-linear-gradient(top, #ffffff 0%, #f9f9f9 100%); + /* FF3.6 */ + background-image: -ms-linear-gradient(top, #ffffff 0%, #f9f9f9 100%); + /* IE10 */ + background-image: -o-linear-gradient(top, #ffffff 0%, #f9f9f9 100%); + /* Opera 11.10+ */ + background-image: linear-gradient(to bottom, #ffffff 0%, #f9f9f9 100%); + filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#ffffff', EndColorStr='#f9f9f9'); +} +button.dt-button:active:not(.disabled), button.dt-button.active:not(.disabled), +div.dt-button:active:not(.disabled), +div.dt-button.active:not(.disabled), +a.dt-button:active:not(.disabled), +a.dt-button.active:not(.disabled) { + background-color: #e2e2e2; + /* Fallback */ + background-image: -webkit-linear-gradient(top, #f3f3f3 0%, #e2e2e2 100%); + /* Chrome 10+, Saf5.1+, iOS 5+ */ + background-image: -moz-linear-gradient(top, #f3f3f3 0%, #e2e2e2 100%); + /* FF3.6 */ + background-image: -ms-linear-gradient(top, #f3f3f3 0%, #e2e2e2 100%); + /* IE10 */ + background-image: -o-linear-gradient(top, #f3f3f3 0%, #e2e2e2 100%); + /* Opera 11.10+ */ + background-image: linear-gradient(to bottom, #f3f3f3 0%, #e2e2e2 100%); + filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#f3f3f3', EndColorStr='#e2e2e2'); + box-shadow: inset 1px 1px 3px #999999; +} +button.dt-button:active:not(.disabled):hover:not(.disabled), button.dt-button.active:not(.disabled):hover:not(.disabled), +div.dt-button:active:not(.disabled):hover:not(.disabled), +div.dt-button.active:not(.disabled):hover:not(.disabled), +a.dt-button:active:not(.disabled):hover:not(.disabled), +a.dt-button.active:not(.disabled):hover:not(.disabled) { + box-shadow: inset 1px 1px 3px #999999; + background-color: #cccccc; + /* Fallback */ + background-image: -webkit-linear-gradient(top, #eaeaea 0%, #cccccc 100%); + /* Chrome 10+, Saf5.1+, iOS 5+ */ + background-image: -moz-linear-gradient(top, #eaeaea 0%, #cccccc 100%); + /* FF3.6 */ + background-image: -ms-linear-gradient(top, #eaeaea 0%, #cccccc 100%); + /* IE10 */ + background-image: -o-linear-gradient(top, #eaeaea 0%, #cccccc 100%); + /* Opera 11.10+ */ + background-image: linear-gradient(to bottom, #eaeaea 0%, #cccccc 100%); + filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#eaeaea', EndColorStr='#cccccc'); +} +button.dt-button:hover, +div.dt-button:hover, +a.dt-button:hover { + text-decoration: none; +} +button.dt-button:hover:not(.disabled), +div.dt-button:hover:not(.disabled), +a.dt-button:hover:not(.disabled) { + border: 1px solid #666; + background-color: #e0e0e0; + /* Fallback */ + background-image: -webkit-linear-gradient(top, #f9f9f9 0%, #e0e0e0 100%); + /* Chrome 10+, Saf5.1+, iOS 5+ */ + background-image: -moz-linear-gradient(top, #f9f9f9 0%, #e0e0e0 100%); + /* FF3.6 */ + background-image: -ms-linear-gradient(top, #f9f9f9 0%, #e0e0e0 100%); + /* IE10 */ + background-image: -o-linear-gradient(top, #f9f9f9 0%, #e0e0e0 100%); + /* Opera 11.10+ */ + background-image: linear-gradient(to bottom, #f9f9f9 0%, #e0e0e0 100%); + filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#f9f9f9', EndColorStr='#e0e0e0'); +} +button.dt-button:focus:not(.disabled), +div.dt-button:focus:not(.disabled), +a.dt-button:focus:not(.disabled) { + border: 1px solid #426c9e; + text-shadow: 0 1px 0 #c4def1; + outline: none; + background-color: #79ace9; + /* Fallback */ + background-image: -webkit-linear-gradient(top, #bddef4 0%, #79ace9 100%); + /* Chrome 10+, Saf5.1+, iOS 5+ */ + background-image: -moz-linear-gradient(top, #bddef4 0%, #79ace9 100%); + /* FF3.6 */ + background-image: -ms-linear-gradient(top, #bddef4 0%, #79ace9 100%); + /* IE10 */ + background-image: -o-linear-gradient(top, #bddef4 0%, #79ace9 100%); + /* Opera 11.10+ */ + background-image: linear-gradient(to bottom, #bddef4 0%, #79ace9 100%); + filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#bddef4', EndColorStr='#79ace9'); +} + +.dt-button embed { + outline: none; +} + +div.dt-buttons { + position: relative; + float: left; +} +div.dt-buttons.buttons-right { + float: right; +} + +div.dt-button-collection { + position: absolute; + top: 0; + left: 0; + width: 150px; + margin-top: 3px; + padding: 8px 8px 4px 8px; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.4); + background-color: white; + overflow: hidden; + z-index: 2002; + border-radius: 5px; + box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.3); + z-index: 2002; + -webkit-column-gap: 8px; + -moz-column-gap: 8px; + -ms-column-gap: 8px; + -o-column-gap: 8px; + column-gap: 8px; +} +div.dt-button-collection button.dt-button, +div.dt-button-collection div.dt-button, +div.dt-button-collection a.dt-button { + position: relative; + left: 0; + right: 0; + display: block; + float: none; + margin-bottom: 4px; + margin-right: 0; +} +div.dt-button-collection button.dt-button:active:not(.disabled), div.dt-button-collection button.dt-button.active:not(.disabled), +div.dt-button-collection div.dt-button:active:not(.disabled), +div.dt-button-collection div.dt-button.active:not(.disabled), +div.dt-button-collection a.dt-button:active:not(.disabled), +div.dt-button-collection a.dt-button.active:not(.disabled) { + background-color: #dadada; + /* Fallback */ + background-image: -webkit-linear-gradient(top, #f0f0f0 0%, #dadada 100%); + /* Chrome 10+, Saf5.1+, iOS 5+ */ + background-image: -moz-linear-gradient(top, #f0f0f0 0%, #dadada 100%); + /* FF3.6 */ + background-image: -ms-linear-gradient(top, #f0f0f0 0%, #dadada 100%); + /* IE10 */ + background-image: -o-linear-gradient(top, #f0f0f0 0%, #dadada 100%); + /* Opera 11.10+ */ + background-image: linear-gradient(to bottom, #f0f0f0 0%, #dadada 100%); + filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#f0f0f0', EndColorStr='#dadada'); + box-shadow: inset 1px 1px 3px #666; +} +div.dt-button-collection.fixed { + position: fixed; + top: 50%; + left: 50%; + margin-left: -75px; + border-radius: 0; +} +div.dt-button-collection.fixed.two-column { + margin-left: -150px; +} +div.dt-button-collection.fixed.three-column { + margin-left: -225px; +} +div.dt-button-collection.fixed.four-column { + margin-left: -300px; +} +div.dt-button-collection > * { + -webkit-column-break-inside: avoid; + break-inside: avoid; +} +div.dt-button-collection.two-column { + width: 300px; + padding-bottom: 1px; + -webkit-column-count: 2; + -moz-column-count: 2; + -ms-column-count: 2; + -o-column-count: 2; + column-count: 2; +} +div.dt-button-collection.three-column { + width: 450px; + padding-bottom: 1px; + -webkit-column-count: 3; + -moz-column-count: 3; + -ms-column-count: 3; + -o-column-count: 3; + column-count: 3; +} +div.dt-button-collection.four-column { + width: 600px; + padding-bottom: 1px; + -webkit-column-count: 4; + -moz-column-count: 4; + -ms-column-count: 4; + -o-column-count: 4; + column-count: 4; +} + +div.dt-button-background { + position: fixed; + top: 0; + left: 0; + width: 100%; + height: 100%; + background: rgba(0, 0, 0, 0.7); + /* Fallback */ + background: -ms-radial-gradient(center, ellipse farthest-corner, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%); + /* IE10 Consumer Preview */ + background: -moz-radial-gradient(center, ellipse farthest-corner, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%); + /* Firefox */ + background: -o-radial-gradient(center, ellipse farthest-corner, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%); + /* Opera */ + background: -webkit-gradient(radial, center center, 0, center center, 497, color-stop(0, rgba(0, 0, 0, 0.3)), color-stop(1, rgba(0, 0, 0, 0.7))); + /* Webkit (Safari/Chrome 10) */ + background: -webkit-radial-gradient(center, ellipse farthest-corner, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%); + /* Webkit (Chrome 11+) */ + background: radial-gradient(ellipse farthest-corner at center, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%); + /* W3C Markup, IE10 Release Preview */ + z-index: 2001; +} + +@media screen and (max-width: 640px) { + div.dt-buttons { + float: none !important; + text-align: center; + } +} +button.dt-button.processing, +div.dt-button.processing, +a.dt-button.processing { + color: rgba(0, 0, 0, 0.2); +} +button.dt-button.processing:after, +div.dt-button.processing:after, +a.dt-button.processing:after { + position: absolute; + top: 50%; + left: 50%; + width: 16px; + height: 16px; + margin: -8px 0 0 -8px; + box-sizing: border-box; + display: block; + content: ' '; + border: 2px solid #282828; + border-radius: 50%; + border-left-color: transparent; + border-right-color: transparent; + animation: dtb-spinner 1500ms infinite linear; + -o-animation: dtb-spinner 1500ms infinite linear; + -ms-animation: dtb-spinner 1500ms infinite linear; + -webkit-animation: dtb-spinner 1500ms infinite linear; + -moz-animation: dtb-spinner 1500ms infinite linear; +} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.dataTables.min.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.dataTables.min.css new file mode 100644 index 00000000..112078b3 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.dataTables.min.css @@ -0,0 +1 @@ +@keyframes dtb-spinner{100%{transform:rotate(360deg)}}@-o-keyframes dtb-spinner{100%{-o-transform:rotate(360deg);transform:rotate(360deg)}}@-ms-keyframes dtb-spinner{100%{-ms-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes dtb-spinner{100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-moz-keyframes dtb-spinner{100%{-moz-transform:rotate(360deg);transform:rotate(360deg)}}div.dt-button-info{position:fixed;top:50%;left:50%;width:400px;margin-top:-100px;margin-left:-200px;background-color:white;border:2px solid #111;box-shadow:3px 3px 8px rgba(0,0,0,0.3);border-radius:3px;text-align:center;z-index:21}div.dt-button-info h2{padding:0.5em;margin:0;font-weight:normal;border-bottom:1px solid #ddd;background-color:#f3f3f3}div.dt-button-info>div{padding:1em}button.dt-button,div.dt-button,a.dt-button{position:relative;display:inline-block;box-sizing:border-box;margin-right:0.333em;padding:0.5em 1em;border:1px solid #999;border-radius:2px;cursor:pointer;font-size:0.88em;color:black;white-space:nowrap;overflow:hidden;background-color:#e9e9e9;background-image:-webkit-linear-gradient(top, #fff 0%, #e9e9e9 100%);background-image:-moz-linear-gradient(top, #fff 0%, #e9e9e9 100%);background-image:-ms-linear-gradient(top, #fff 0%, #e9e9e9 100%);background-image:-o-linear-gradient(top, #fff 0%, #e9e9e9 100%);background-image:linear-gradient(to bottom, #fff 0%, #e9e9e9 100%);filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='white', EndColorStr='#e9e9e9');-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-decoration:none;outline:none}button.dt-button.disabled,div.dt-button.disabled,a.dt-button.disabled{color:#999;border:1px solid #d0d0d0;cursor:default;background-color:#f9f9f9;background-image:-webkit-linear-gradient(top, #fff 0%, #f9f9f9 100%);background-image:-moz-linear-gradient(top, #fff 0%, #f9f9f9 100%);background-image:-ms-linear-gradient(top, #fff 0%, #f9f9f9 100%);background-image:-o-linear-gradient(top, #fff 0%, #f9f9f9 100%);background-image:linear-gradient(to bottom, #fff 0%, #f9f9f9 100%);filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#ffffff', EndColorStr='#f9f9f9')}button.dt-button:active:not(.disabled),button.dt-button.active:not(.disabled),div.dt-button:active:not(.disabled),div.dt-button.active:not(.disabled),a.dt-button:active:not(.disabled),a.dt-button.active:not(.disabled){background-color:#e2e2e2;background-image:-webkit-linear-gradient(top, #f3f3f3 0%, #e2e2e2 100%);background-image:-moz-linear-gradient(top, #f3f3f3 0%, #e2e2e2 100%);background-image:-ms-linear-gradient(top, #f3f3f3 0%, #e2e2e2 100%);background-image:-o-linear-gradient(top, #f3f3f3 0%, #e2e2e2 100%);background-image:linear-gradient(to bottom, #f3f3f3 0%, #e2e2e2 100%);filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#f3f3f3', EndColorStr='#e2e2e2');box-shadow:inset 1px 1px 3px #999999}button.dt-button:active:not(.disabled):hover:not(.disabled),button.dt-button.active:not(.disabled):hover:not(.disabled),div.dt-button:active:not(.disabled):hover:not(.disabled),div.dt-button.active:not(.disabled):hover:not(.disabled),a.dt-button:active:not(.disabled):hover:not(.disabled),a.dt-button.active:not(.disabled):hover:not(.disabled){box-shadow:inset 1px 1px 3px #999999;background-color:#cccccc;background-image:-webkit-linear-gradient(top, #eaeaea 0%, #ccc 100%);background-image:-moz-linear-gradient(top, #eaeaea 0%, #ccc 100%);background-image:-ms-linear-gradient(top, #eaeaea 0%, #ccc 100%);background-image:-o-linear-gradient(top, #eaeaea 0%, #ccc 100%);background-image:linear-gradient(to bottom, #eaeaea 0%, #ccc 100%);filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#eaeaea', EndColorStr='#cccccc')}button.dt-button:hover,div.dt-button:hover,a.dt-button:hover{text-decoration:none}button.dt-button:hover:not(.disabled),div.dt-button:hover:not(.disabled),a.dt-button:hover:not(.disabled){border:1px solid #666;background-color:#e0e0e0;background-image:-webkit-linear-gradient(top, #f9f9f9 0%, #e0e0e0 100%);background-image:-moz-linear-gradient(top, #f9f9f9 0%, #e0e0e0 100%);background-image:-ms-linear-gradient(top, #f9f9f9 0%, #e0e0e0 100%);background-image:-o-linear-gradient(top, #f9f9f9 0%, #e0e0e0 100%);background-image:linear-gradient(to bottom, #f9f9f9 0%, #e0e0e0 100%);filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#f9f9f9', EndColorStr='#e0e0e0')}button.dt-button:focus:not(.disabled),div.dt-button:focus:not(.disabled),a.dt-button:focus:not(.disabled){border:1px solid #426c9e;text-shadow:0 1px 0 #c4def1;outline:none;background-color:#79ace9;background-image:-webkit-linear-gradient(top, #bddef4 0%, #79ace9 100%);background-image:-moz-linear-gradient(top, #bddef4 0%, #79ace9 100%);background-image:-ms-linear-gradient(top, #bddef4 0%, #79ace9 100%);background-image:-o-linear-gradient(top, #bddef4 0%, #79ace9 100%);background-image:linear-gradient(to bottom, #bddef4 0%, #79ace9 100%);filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#bddef4', EndColorStr='#79ace9')}.dt-button embed{outline:none}div.dt-buttons{position:relative;float:left}div.dt-buttons.buttons-right{float:right}div.dt-button-collection{position:absolute;top:0;left:0;width:150px;margin-top:3px;padding:8px 8px 4px 8px;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.4);background-color:white;overflow:hidden;z-index:2002;border-radius:5px;box-shadow:3px 3px 5px rgba(0,0,0,0.3);z-index:2002;-webkit-column-gap:8px;-moz-column-gap:8px;-ms-column-gap:8px;-o-column-gap:8px;column-gap:8px}div.dt-button-collection button.dt-button,div.dt-button-collection div.dt-button,div.dt-button-collection a.dt-button{position:relative;left:0;right:0;display:block;float:none;margin-bottom:4px;margin-right:0}div.dt-button-collection button.dt-button:active:not(.disabled),div.dt-button-collection button.dt-button.active:not(.disabled),div.dt-button-collection div.dt-button:active:not(.disabled),div.dt-button-collection div.dt-button.active:not(.disabled),div.dt-button-collection a.dt-button:active:not(.disabled),div.dt-button-collection a.dt-button.active:not(.disabled){background-color:#dadada;background-image:-webkit-linear-gradient(top, #f0f0f0 0%, #dadada 100%);background-image:-moz-linear-gradient(top, #f0f0f0 0%, #dadada 100%);background-image:-ms-linear-gradient(top, #f0f0f0 0%, #dadada 100%);background-image:-o-linear-gradient(top, #f0f0f0 0%, #dadada 100%);background-image:linear-gradient(to bottom, #f0f0f0 0%, #dadada 100%);filter:progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#f0f0f0', EndColorStr='#dadada');box-shadow:inset 1px 1px 3px #666}div.dt-button-collection.fixed{position:fixed;top:50%;left:50%;margin-left:-75px;border-radius:0}div.dt-button-collection.fixed.two-column{margin-left:-150px}div.dt-button-collection.fixed.three-column{margin-left:-225px}div.dt-button-collection.fixed.four-column{margin-left:-300px}div.dt-button-collection>*{-webkit-column-break-inside:avoid;break-inside:avoid}div.dt-button-collection.two-column{width:300px;padding-bottom:1px;-webkit-column-count:2;-moz-column-count:2;-ms-column-count:2;-o-column-count:2;column-count:2}div.dt-button-collection.three-column{width:450px;padding-bottom:1px;-webkit-column-count:3;-moz-column-count:3;-ms-column-count:3;-o-column-count:3;column-count:3}div.dt-button-collection.four-column{width:600px;padding-bottom:1px;-webkit-column-count:4;-moz-column-count:4;-ms-column-count:4;-o-column-count:4;column-count:4}div.dt-button-background{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.7);background:-ms-radial-gradient(center, ellipse farthest-corner, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.7) 100%);background:-moz-radial-gradient(center, ellipse farthest-corner, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.7) 100%);background:-o-radial-gradient(center, ellipse farthest-corner, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.7) 100%);background:-webkit-gradient(radial, center center, 0, center center, 497, color-stop(0, rgba(0,0,0,0.3)), color-stop(1, rgba(0,0,0,0.7)));background:-webkit-radial-gradient(center, ellipse farthest-corner, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.7) 100%);background:radial-gradient(ellipse farthest-corner at center, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.7) 100%);z-index:2001}@media screen and (max-width: 640px){div.dt-buttons{float:none !important;text-align:center}}button.dt-button.processing,div.dt-button.processing,a.dt-button.processing{color:rgba(0,0,0,0.2)}button.dt-button.processing:after,div.dt-button.processing:after,a.dt-button.processing:after{position:absolute;top:50%;left:50%;width:16px;height:16px;margin:-8px 0 0 -8px;box-sizing:border-box;display:block;content:' ';border:2px solid #282828;border-radius:50%;border-left-color:transparent;border-right-color:transparent;animation:dtb-spinner 1500ms infinite linear;-o-animation:dtb-spinner 1500ms infinite linear;-ms-animation:dtb-spinner 1500ms infinite linear;-webkit-animation:dtb-spinner 1500ms infinite linear;-moz-animation:dtb-spinner 1500ms infinite linear} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.foundation.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.foundation.css new file mode 100644 index 00000000..3ef51c2c --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.foundation.css @@ -0,0 +1,189 @@ +@keyframes dtb-spinner { + 100% { + transform: rotate(360deg); + } +} +@-o-keyframes dtb-spinner { + 100% { + -o-transform: rotate(360deg); + transform: rotate(360deg); + } +} +@-ms-keyframes dtb-spinner { + 100% { + -ms-transform: rotate(360deg); + transform: rotate(360deg); + } +} +@-webkit-keyframes dtb-spinner { + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} +@-moz-keyframes dtb-spinner { + 100% { + -moz-transform: rotate(360deg); + transform: rotate(360deg); + } +} +div.dt-button-info { + position: fixed; + top: 50%; + left: 50%; + width: 400px; + margin-top: -100px; + margin-left: -200px; + background-color: white; + border: 2px solid #111; + box-shadow: 3px 3px 8px rgba(0, 0, 0, 0.3); + border-radius: 3px; + text-align: center; + z-index: 21; +} +div.dt-button-info h2 { + padding: 0.5em; + margin: 0; + font-weight: normal; + border-bottom: 1px solid #ddd; + background-color: #f3f3f3; +} +div.dt-button-info > div { + padding: 1em; +} + +ul.dt-buttons li { + margin: 0; +} +ul.dt-buttons li.active a { + box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.6); +} + +ul.dt-buttons.button-group a { + margin-bottom: 0; +} + +ul.dt-button-collection.f-dropdown { + -webkit-column-gap: 8px; + -moz-column-gap: 8px; + -ms-column-gap: 8px; + -o-column-gap: 8px; + column-gap: 8px; +} +ul.dt-button-collection.f-dropdown.fixed { + position: fixed; + top: 50%; + left: 50%; + margin-left: -75px; + border-radius: 0; +} +ul.dt-button-collection.f-dropdown.fixed.two-column { + margin-left: -150px; +} +ul.dt-button-collection.f-dropdown.fixed.three-column { + margin-left: -225px; +} +ul.dt-button-collection.f-dropdown.fixed.four-column { + margin-left: -300px; +} +ul.dt-button-collection.f-dropdown > * { + -webkit-column-break-inside: avoid; + break-inside: avoid; +} +ul.dt-button-collection.f-dropdown.two-column { + width: 300px; + padding-bottom: 1px; + -webkit-column-count: 2; + -moz-column-count: 2; + -ms-column-count: 2; + -o-column-count: 2; + column-count: 2; +} +ul.dt-button-collection.f-dropdown.three-column { + width: 450px; + padding-bottom: 1px; + -webkit-column-count: 3; + -moz-column-count: 3; + -ms-column-count: 3; + -o-column-count: 3; + column-count: 3; +} +ul.dt-button-collection.f-dropdown.four-column { + width: 600px; + padding-bottom: 1px; + -webkit-column-count: 4; + -moz-column-count: 4; + -ms-column-count: 4; + -o-column-count: 4; + column-count: 4; +} +ul.dt-button-collection.f-dropdown.fixed { + max-width: none; +} +ul.dt-button-collection.f-dropdown.fixed:before, ul.dt-button-collection.f-dropdown.fixed:after { + display: none; +} + +div.dt-button-background { + position: fixed; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 88; +} + +@media screen and (max-width: 767px) { + ul.dt-buttons { + float: none; + width: 100%; + text-align: center; + margin-bottom: 0.5rem; + } + ul.dt-buttons li { + float: none; + } +} +div.button-group.stacked.dropdown-pane { + margin-top: 2px; + padding: 1px; + z-index: 89; +} +div.button-group.stacked.dropdown-pane a.button { + margin-bottom: 1px; + border-right: none; +} +div.button-group.stacked.dropdown-pane a.button:last-child { + margin-bottom: 0; +} + +div.dt-buttons button.button.processing, +div.dt-buttons div.button.processing, +div.dt-buttons a.button.processing { + color: rgba(0, 0, 0, 0.2); + color: rgba(255, 255, 255, 0.2); + border-top-color: white; + border-bottom-color: white; +} +div.dt-buttons button.button.processing:after, +div.dt-buttons div.button.processing:after, +div.dt-buttons a.button.processing:after { + position: absolute; + top: 50%; + left: 50%; + width: 16px; + height: 16px; + margin: -8px 0 0 -8px; + box-sizing: border-box; + display: block; + content: ' '; + border: 2px solid #282828; + border-radius: 50%; + border-left-color: transparent; + border-right-color: transparent; + animation: dtb-spinner 1500ms infinite linear; + -o-animation: dtb-spinner 1500ms infinite linear; + -ms-animation: dtb-spinner 1500ms infinite linear; + -webkit-animation: dtb-spinner 1500ms infinite linear; + -moz-animation: dtb-spinner 1500ms infinite linear; +} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.foundation.min.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.foundation.min.css new file mode 100644 index 00000000..ddd86162 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.foundation.min.css @@ -0,0 +1 @@ +@keyframes dtb-spinner{100%{transform:rotate(360deg)}}@-o-keyframes dtb-spinner{100%{-o-transform:rotate(360deg);transform:rotate(360deg)}}@-ms-keyframes dtb-spinner{100%{-ms-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes dtb-spinner{100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-moz-keyframes dtb-spinner{100%{-moz-transform:rotate(360deg);transform:rotate(360deg)}}div.dt-button-info{position:fixed;top:50%;left:50%;width:400px;margin-top:-100px;margin-left:-200px;background-color:white;border:2px solid #111;box-shadow:3px 3px 8px rgba(0,0,0,0.3);border-radius:3px;text-align:center;z-index:21}div.dt-button-info h2{padding:0.5em;margin:0;font-weight:normal;border-bottom:1px solid #ddd;background-color:#f3f3f3}div.dt-button-info>div{padding:1em}ul.dt-buttons li{margin:0}ul.dt-buttons li.active a{box-shadow:inset 0 0 10px rgba(0,0,0,0.6)}ul.dt-buttons.button-group a{margin-bottom:0}ul.dt-button-collection.f-dropdown{-webkit-column-gap:8px;-moz-column-gap:8px;-ms-column-gap:8px;-o-column-gap:8px;column-gap:8px}ul.dt-button-collection.f-dropdown.fixed{position:fixed;top:50%;left:50%;margin-left:-75px;border-radius:0}ul.dt-button-collection.f-dropdown.fixed.two-column{margin-left:-150px}ul.dt-button-collection.f-dropdown.fixed.three-column{margin-left:-225px}ul.dt-button-collection.f-dropdown.fixed.four-column{margin-left:-300px}ul.dt-button-collection.f-dropdown>*{-webkit-column-break-inside:avoid;break-inside:avoid}ul.dt-button-collection.f-dropdown.two-column{width:300px;padding-bottom:1px;-webkit-column-count:2;-moz-column-count:2;-ms-column-count:2;-o-column-count:2;column-count:2}ul.dt-button-collection.f-dropdown.three-column{width:450px;padding-bottom:1px;-webkit-column-count:3;-moz-column-count:3;-ms-column-count:3;-o-column-count:3;column-count:3}ul.dt-button-collection.f-dropdown.four-column{width:600px;padding-bottom:1px;-webkit-column-count:4;-moz-column-count:4;-ms-column-count:4;-o-column-count:4;column-count:4}ul.dt-button-collection.f-dropdown.fixed{max-width:none}ul.dt-button-collection.f-dropdown.fixed:before,ul.dt-button-collection.f-dropdown.fixed:after{display:none}div.dt-button-background{position:fixed;top:0;left:0;width:100%;height:100%;z-index:88}@media screen and (max-width: 767px){ul.dt-buttons{float:none;width:100%;text-align:center;margin-bottom:0.5rem}ul.dt-buttons li{float:none}}div.button-group.stacked.dropdown-pane{margin-top:2px;padding:1px;z-index:89}div.button-group.stacked.dropdown-pane a.button{margin-bottom:1px;border-right:none}div.button-group.stacked.dropdown-pane a.button:last-child{margin-bottom:0}div.dt-buttons button.button.processing,div.dt-buttons div.button.processing,div.dt-buttons a.button.processing{color:rgba(0,0,0,0.2);color:rgba(255,255,255,0.2);border-top-color:white;border-bottom-color:white}div.dt-buttons button.button.processing:after,div.dt-buttons div.button.processing:after,div.dt-buttons a.button.processing:after{position:absolute;top:50%;left:50%;width:16px;height:16px;margin:-8px 0 0 -8px;box-sizing:border-box;display:block;content:' ';border:2px solid #282828;border-radius:50%;border-left-color:transparent;border-right-color:transparent;animation:dtb-spinner 1500ms infinite linear;-o-animation:dtb-spinner 1500ms infinite linear;-ms-animation:dtb-spinner 1500ms infinite linear;-webkit-animation:dtb-spinner 1500ms infinite linear;-moz-animation:dtb-spinner 1500ms infinite linear} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.jqueryui.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.jqueryui.css new file mode 100644 index 00000000..dfb5d0d9 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.jqueryui.css @@ -0,0 +1,218 @@ +@keyframes dtb-spinner { + 100% { + transform: rotate(360deg); + } +} +@-o-keyframes dtb-spinner { + 100% { + -o-transform: rotate(360deg); + transform: rotate(360deg); + } +} +@-ms-keyframes dtb-spinner { + 100% { + -ms-transform: rotate(360deg); + transform: rotate(360deg); + } +} +@-webkit-keyframes dtb-spinner { + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} +@-moz-keyframes dtb-spinner { + 100% { + -moz-transform: rotate(360deg); + transform: rotate(360deg); + } +} +div.dt-button-info { + position: fixed; + top: 50%; + left: 50%; + width: 400px; + margin-top: -100px; + margin-left: -200px; + background-color: white; + border: 2px solid #111; + box-shadow: 3px 3px 8px rgba(0, 0, 0, 0.3); + border-radius: 3px; + text-align: center; + z-index: 21; +} +div.dt-button-info h2 { + padding: 0.5em; + margin: 0; + font-weight: normal; + border-bottom: 1px solid #ddd; + background-color: #f3f3f3; +} +div.dt-button-info > div { + padding: 1em; +} + +div.dt-buttons { + position: relative; + float: left; +} +div.dt-buttons .dt-button { + margin-right: 0; +} +div.dt-buttons .dt-button span.ui-icon { + display: inline-block; + vertical-align: middle; + margin-top: -2px; +} +div.dt-buttons .dt-button:active { + outline: none; +} +div.dt-buttons .dt-button:hover > span { + background-color: rgba(0, 0, 0, 0.05); +} + +div.dt-button-collection { + position: absolute; + top: 0; + left: 0; + width: 150px; + margin-top: 3px; + padding: 8px 8px 4px 8px; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.4); + background-color: #f3f3f3; + background-color: rgba(255, 255, 255, 0.3); + overflow: hidden; + z-index: 2002; + border-radius: 5px; + box-shadow: 3px 3px 5px rgba(0, 0, 0, 0.3); + z-index: 2002; + -webkit-column-gap: 8px; + -moz-column-gap: 8px; + -ms-column-gap: 8px; + -o-column-gap: 8px; + column-gap: 8px; + -webkit-column-gap: 0; + -moz-column-gap: 0; + -ms-column-gap: 0; + -o-column-gap: 0; + column-gap: 0; +} +div.dt-button-collection .dt-button { + position: relative; + left: 0; + right: 0; + display: block; + float: none; + margin-right: 0; +} +div.dt-button-collection .dt-button:last-child { + margin-bottom: 4px; +} +div.dt-button-collection .dt-button:hover > span { + background-color: rgba(0, 0, 0, 0.05); +} +div.dt-button-collection.fixed { + position: fixed; + top: 50%; + left: 50%; + margin-left: -75px; + border-radius: 0; +} +div.dt-button-collection.fixed.two-column { + margin-left: -150px; +} +div.dt-button-collection.fixed.three-column { + margin-left: -225px; +} +div.dt-button-collection.fixed.four-column { + margin-left: -300px; +} +div.dt-button-collection > * { + -webkit-column-break-inside: avoid; + break-inside: avoid; +} +div.dt-button-collection.two-column { + width: 300px; + padding-bottom: 1px; + -webkit-column-count: 2; + -moz-column-count: 2; + -ms-column-count: 2; + -o-column-count: 2; + column-count: 2; +} +div.dt-button-collection.three-column { + width: 450px; + padding-bottom: 1px; + -webkit-column-count: 3; + -moz-column-count: 3; + -ms-column-count: 3; + -o-column-count: 3; + column-count: 3; +} +div.dt-button-collection.four-column { + width: 600px; + padding-bottom: 1px; + -webkit-column-count: 4; + -moz-column-count: 4; + -ms-column-count: 4; + -o-column-count: 4; + column-count: 4; +} + +div.dt-button-background { + position: fixed; + top: 0; + left: 0; + width: 100%; + height: 100%; + background: rgba(0, 0, 0, 0.7); + /* Fallback */ + background: -ms-radial-gradient(center, ellipse farthest-corner, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%); + /* IE10 Consumer Preview */ + background: -moz-radial-gradient(center, ellipse farthest-corner, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%); + /* Firefox */ + background: -o-radial-gradient(center, ellipse farthest-corner, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%); + /* Opera */ + background: -webkit-gradient(radial, center center, 0, center center, 497, color-stop(0, rgba(0, 0, 0, 0.3)), color-stop(1, rgba(0, 0, 0, 0.7))); + /* Webkit (Safari/Chrome 10) */ + background: -webkit-radial-gradient(center, ellipse farthest-corner, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%); + /* Webkit (Chrome 11+) */ + background: radial-gradient(ellipse farthest-corner at center, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0.7) 100%); + /* W3C Markup, IE10 Release Preview */ + z-index: 2001; +} + +@media screen and (max-width: 640px) { + div.dt-buttons { + float: none !important; + text-align: center; + } +} +button.dt-button.processing, +div.dt-button.processing, +a.dt-button.processing { + color: rgba(0, 0, 0, 0.2); +} +button.dt-button.processing:after, +div.dt-button.processing:after, +a.dt-button.processing:after { + position: absolute; + top: 50%; + left: 50%; + width: 16px; + height: 16px; + margin: -8px 0 0 -8px; + box-sizing: border-box; + display: block; + content: ' '; + border: 2px solid #282828; + border-radius: 50%; + border-left-color: transparent; + border-right-color: transparent; + animation: dtb-spinner 1500ms infinite linear; + -o-animation: dtb-spinner 1500ms infinite linear; + -ms-animation: dtb-spinner 1500ms infinite linear; + -webkit-animation: dtb-spinner 1500ms infinite linear; + -moz-animation: dtb-spinner 1500ms infinite linear; +} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.jqueryui.min.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.jqueryui.min.css new file mode 100644 index 00000000..1dfb437a --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.jqueryui.min.css @@ -0,0 +1 @@ +@keyframes dtb-spinner{100%{transform:rotate(360deg)}}@-o-keyframes dtb-spinner{100%{-o-transform:rotate(360deg);transform:rotate(360deg)}}@-ms-keyframes dtb-spinner{100%{-ms-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes dtb-spinner{100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-moz-keyframes dtb-spinner{100%{-moz-transform:rotate(360deg);transform:rotate(360deg)}}div.dt-button-info{position:fixed;top:50%;left:50%;width:400px;margin-top:-100px;margin-left:-200px;background-color:white;border:2px solid #111;box-shadow:3px 3px 8px rgba(0,0,0,0.3);border-radius:3px;text-align:center;z-index:21}div.dt-button-info h2{padding:0.5em;margin:0;font-weight:normal;border-bottom:1px solid #ddd;background-color:#f3f3f3}div.dt-button-info>div{padding:1em}div.dt-buttons{position:relative;float:left}div.dt-buttons .dt-button{margin-right:0}div.dt-buttons .dt-button span.ui-icon{display:inline-block;vertical-align:middle;margin-top:-2px}div.dt-buttons .dt-button:active{outline:none}div.dt-buttons .dt-button:hover>span{background-color:rgba(0,0,0,0.05)}div.dt-button-collection{position:absolute;top:0;left:0;width:150px;margin-top:3px;padding:8px 8px 4px 8px;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.4);background-color:#f3f3f3;background-color:rgba(255,255,255,0.3);overflow:hidden;z-index:2002;border-radius:5px;box-shadow:3px 3px 5px rgba(0,0,0,0.3);z-index:2002;-webkit-column-gap:8px;-moz-column-gap:8px;-ms-column-gap:8px;-o-column-gap:8px;column-gap:8px;-webkit-column-gap:0;-moz-column-gap:0;-ms-column-gap:0;-o-column-gap:0;column-gap:0}div.dt-button-collection .dt-button{position:relative;left:0;right:0;display:block;float:none;margin-right:0}div.dt-button-collection .dt-button:last-child{margin-bottom:4px}div.dt-button-collection .dt-button:hover>span{background-color:rgba(0,0,0,0.05)}div.dt-button-collection.fixed{position:fixed;top:50%;left:50%;margin-left:-75px;border-radius:0}div.dt-button-collection.fixed.two-column{margin-left:-150px}div.dt-button-collection.fixed.three-column{margin-left:-225px}div.dt-button-collection.fixed.four-column{margin-left:-300px}div.dt-button-collection>*{-webkit-column-break-inside:avoid;break-inside:avoid}div.dt-button-collection.two-column{width:300px;padding-bottom:1px;-webkit-column-count:2;-moz-column-count:2;-ms-column-count:2;-o-column-count:2;column-count:2}div.dt-button-collection.three-column{width:450px;padding-bottom:1px;-webkit-column-count:3;-moz-column-count:3;-ms-column-count:3;-o-column-count:3;column-count:3}div.dt-button-collection.four-column{width:600px;padding-bottom:1px;-webkit-column-count:4;-moz-column-count:4;-ms-column-count:4;-o-column-count:4;column-count:4}div.dt-button-background{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.7);background:-ms-radial-gradient(center, ellipse farthest-corner, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.7) 100%);background:-moz-radial-gradient(center, ellipse farthest-corner, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.7) 100%);background:-o-radial-gradient(center, ellipse farthest-corner, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.7) 100%);background:-webkit-gradient(radial, center center, 0, center center, 497, color-stop(0, rgba(0,0,0,0.3)), color-stop(1, rgba(0,0,0,0.7)));background:-webkit-radial-gradient(center, ellipse farthest-corner, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.7) 100%);background:radial-gradient(ellipse farthest-corner at center, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.7) 100%);z-index:2001}@media screen and (max-width: 640px){div.dt-buttons{float:none !important;text-align:center}}button.dt-button.processing,div.dt-button.processing,a.dt-button.processing{color:rgba(0,0,0,0.2)}button.dt-button.processing:after,div.dt-button.processing:after,a.dt-button.processing:after{position:absolute;top:50%;left:50%;width:16px;height:16px;margin:-8px 0 0 -8px;box-sizing:border-box;display:block;content:' ';border:2px solid #282828;border-radius:50%;border-left-color:transparent;border-right-color:transparent;animation:dtb-spinner 1500ms infinite linear;-o-animation:dtb-spinner 1500ms infinite linear;-ms-animation:dtb-spinner 1500ms infinite linear;-webkit-animation:dtb-spinner 1500ms infinite linear;-moz-animation:dtb-spinner 1500ms infinite linear} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.semanticui.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.semanticui.css new file mode 100644 index 00000000..1b1c0102 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.semanticui.css @@ -0,0 +1,171 @@ +@charset "UTF-8"; +@keyframes dtb-spinner { + 100% { + transform: rotate(360deg); + } +} +@-o-keyframes dtb-spinner { + 100% { + -o-transform: rotate(360deg); + transform: rotate(360deg); + } +} +@-ms-keyframes dtb-spinner { + 100% { + -ms-transform: rotate(360deg); + transform: rotate(360deg); + } +} +@-webkit-keyframes dtb-spinner { + 100% { + -webkit-transform: rotate(360deg); + transform: rotate(360deg); + } +} +@-moz-keyframes dtb-spinner { + 100% { + -moz-transform: rotate(360deg); + transform: rotate(360deg); + } +} +div.dt-button-info { + position: fixed; + top: 50%; + left: 50%; + width: 400px; + margin-top: -100px; + margin-left: -200px; + background-color: white; + border: 2px solid #111; + box-shadow: 3px 3px 8px rgba(0, 0, 0, 0.3); + border-radius: 3px; + text-align: center; + z-index: 21; +} +div.dt-button-info h2 { + padding: 0.5em; + margin: 0; + font-weight: normal; + border-bottom: 1px solid #ddd; + background-color: #f3f3f3; +} +div.dt-button-info > div { + padding: 1em; +} + +div.dt-button-collection { + position: absolute; + top: 0; + left: 0; + width: 150px; + margin-top: 3px !important; + z-index: 2002; + background: white; + -webkit-column-gap: 8px; + -moz-column-gap: 8px; + -ms-column-gap: 8px; + -o-column-gap: 8px; + column-gap: 8px; +} +div.dt-button-collection.fixed { + position: fixed; + top: 50%; + left: 50%; + margin-left: -75px; + border-radius: 0; +} +div.dt-button-collection.fixed.two-column { + margin-left: -150px; +} +div.dt-button-collection.fixed.three-column { + margin-left: -225px; +} +div.dt-button-collection.fixed.four-column { + margin-left: -300px; +} +div.dt-button-collection > * { + -webkit-column-break-inside: avoid; + break-inside: avoid; +} +div.dt-button-collection.two-column { + width: 300px; + padding-bottom: 1px; + -webkit-column-count: 2; + -moz-column-count: 2; + -ms-column-count: 2; + -o-column-count: 2; + column-count: 2; +} +div.dt-button-collection.three-column { + width: 450px; + padding-bottom: 1px; + -webkit-column-count: 3; + -moz-column-count: 3; + -ms-column-count: 3; + -o-column-count: 3; + column-count: 3; +} +div.dt-button-collection.four-column { + width: 600px; + padding-bottom: 1px; + -webkit-column-count: 4; + -moz-column-count: 4; + -ms-column-count: 4; + -o-column-count: 4; + column-count: 4; +} + +button.buttons-collection.ui.button span:after { + display: inline-block; + content: "▾"; + padding-left: 0.5em; +} + +div.dt-button-background { + position: fixed; + top: 0; + left: 0; + width: 100%; + height: 100%; + z-index: 2001; +} + +@media screen and (max-width: 767px) { + div.dt-buttons { + float: none; + width: 100%; + text-align: center; + margin-bottom: 0.5em; + } + div.dt-buttons a.btn { + float: none; + } +} +div.dt-buttons button.button.processing, +div.dt-buttons div.button.processing, +div.dt-buttons a.button.processing { + position: relative; + color: rgba(0, 0, 0, 0.2); +} +div.dt-buttons button.button.processing:after, +div.dt-buttons div.button.processing:after, +div.dt-buttons a.button.processing:after { + position: absolute; + top: 50%; + left: 50%; + width: 16px; + height: 16px; + margin: -8px 0 0 -8px; + box-sizing: border-box; + display: block; + content: ' '; + border: 2px solid #282828; + border-radius: 50%; + border-left-color: transparent; + border-right-color: transparent; + animation: dtb-spinner 1500ms infinite linear; + -o-animation: dtb-spinner 1500ms infinite linear; + -ms-animation: dtb-spinner 1500ms infinite linear; + -webkit-animation: dtb-spinner 1500ms infinite linear; + -moz-animation: dtb-spinner 1500ms infinite linear; +} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.semanticui.min.css b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.semanticui.min.css new file mode 100644 index 00000000..28c1287a --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/buttons.semanticui.min.css @@ -0,0 +1 @@ +@keyframes dtb-spinner{100%{transform:rotate(360deg)}}@-o-keyframes dtb-spinner{100%{-o-transform:rotate(360deg);transform:rotate(360deg)}}@-ms-keyframes dtb-spinner{100%{-ms-transform:rotate(360deg);transform:rotate(360deg)}}@-webkit-keyframes dtb-spinner{100%{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@-moz-keyframes dtb-spinner{100%{-moz-transform:rotate(360deg);transform:rotate(360deg)}}div.dt-button-info{position:fixed;top:50%;left:50%;width:400px;margin-top:-100px;margin-left:-200px;background-color:white;border:2px solid #111;box-shadow:3px 3px 8px rgba(0,0,0,0.3);border-radius:3px;text-align:center;z-index:21}div.dt-button-info h2{padding:0.5em;margin:0;font-weight:normal;border-bottom:1px solid #ddd;background-color:#f3f3f3}div.dt-button-info>div{padding:1em}div.dt-button-collection{position:absolute;top:0;left:0;width:150px;margin-top:3px !important;z-index:2002;background:white;-webkit-column-gap:8px;-moz-column-gap:8px;-ms-column-gap:8px;-o-column-gap:8px;column-gap:8px}div.dt-button-collection.fixed{position:fixed;top:50%;left:50%;margin-left:-75px;border-radius:0}div.dt-button-collection.fixed.two-column{margin-left:-150px}div.dt-button-collection.fixed.three-column{margin-left:-225px}div.dt-button-collection.fixed.four-column{margin-left:-300px}div.dt-button-collection>*{-webkit-column-break-inside:avoid;break-inside:avoid}div.dt-button-collection.two-column{width:300px;padding-bottom:1px;-webkit-column-count:2;-moz-column-count:2;-ms-column-count:2;-o-column-count:2;column-count:2}div.dt-button-collection.three-column{width:450px;padding-bottom:1px;-webkit-column-count:3;-moz-column-count:3;-ms-column-count:3;-o-column-count:3;column-count:3}div.dt-button-collection.four-column{width:600px;padding-bottom:1px;-webkit-column-count:4;-moz-column-count:4;-ms-column-count:4;-o-column-count:4;column-count:4}button.buttons-collection.ui.button span:after{display:inline-block;content:"▾";padding-left:0.5em}div.dt-button-background{position:fixed;top:0;left:0;width:100%;height:100%;z-index:2001}@media screen and (max-width: 767px){div.dt-buttons{float:none;width:100%;text-align:center;margin-bottom:0.5em}div.dt-buttons a.btn{float:none}}div.dt-buttons button.button.processing,div.dt-buttons div.button.processing,div.dt-buttons a.button.processing{position:relative;color:rgba(0,0,0,0.2)}div.dt-buttons button.button.processing:after,div.dt-buttons div.button.processing:after,div.dt-buttons a.button.processing:after{position:absolute;top:50%;left:50%;width:16px;height:16px;margin:-8px 0 0 -8px;box-sizing:border-box;display:block;content:' ';border:2px solid #282828;border-radius:50%;border-left-color:transparent;border-right-color:transparent;animation:dtb-spinner 1500ms infinite linear;-o-animation:dtb-spinner 1500ms infinite linear;-ms-animation:dtb-spinner 1500ms infinite linear;-webkit-animation:dtb-spinner 1500ms infinite linear;-moz-animation:dtb-spinner 1500ms infinite linear} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/common.scss b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/common.scss new file mode 100644 index 00000000..8312ccd8 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/common.scss @@ -0,0 +1,27 @@ + +div.dt-button-info { + position: fixed; + top: 50%; + left: 50%; + width: 400px; + margin-top: -100px; + margin-left: -200px; + background-color: white; + border: 2px solid #111; + box-shadow: 3px 3px 8px rgba( 0, 0, 0, 0.3); + border-radius: 3px; + text-align: center; + z-index: 21; + + h2 { + padding: 0.5em; + margin: 0; + font-weight: normal; + border-bottom: 1px solid #ddd; + background-color: #f3f3f3; + } + + > div { + padding: 1em; + } +} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/mixins.scss b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/mixins.scss new file mode 100644 index 00000000..26c8a0fd --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/css/mixins.scss @@ -0,0 +1,136 @@ + +@mixin dtb-two-stop-gradient($fromColor, $toColor) { + background-color: $toColor; /* Fallback */ + background-image: -webkit-linear-gradient(top, $fromColor 0%, $toColor 100%); /* Chrome 10+, Saf5.1+, iOS 5+ */ + background-image: -moz-linear-gradient(top, $fromColor 0%, $toColor 100%); /* FF3.6 */ + background-image: -ms-linear-gradient(top, $fromColor 0%, $toColor 100%); /* IE10 */ + background-image: -o-linear-gradient(top, $fromColor 0%, $toColor 100%); /* Opera 11.10+ */ + background-image: linear-gradient(to bottom, $fromColor 0%, $toColor 100%); + filter: progid:DXImageTransform.Microsoft.gradient(GradientType=0,StartColorStr='#{nth( $fromColor, 1 )}', EndColorStr='#{nth( $toColor, 1 )}'); +} + +@mixin dtb-radial-gradient ($fromColor, $toColor ) { + background: $toColor; /* Fallback */ + background: -ms-radial-gradient(center, ellipse farthest-corner, $fromColor 0%, $toColor 100%); /* IE10 Consumer Preview */ + background: -moz-radial-gradient(center, ellipse farthest-corner, $fromColor 0%, $toColor 100%); /* Firefox */ + background: -o-radial-gradient(center, ellipse farthest-corner, $fromColor 0%, $toColor 100%); /* Opera */ + background: -webkit-gradient(radial, center center, 0, center center, 497, color-stop(0, $fromColor), color-stop(1, $toColor)); /* Webkit (Safari/Chrome 10) */ + background: -webkit-radial-gradient(center, ellipse farthest-corner, $fromColor 0%, $toColor 100%); /* Webkit (Chrome 11+) */ + background: radial-gradient(ellipse farthest-corner at center, $fromColor 0%, $toColor 100%); /* W3C Markup, IE10 Release Preview */ +} + + +@mixin dtb-fixed-collection { + // Fixed positioning feature + &.fixed { + position: fixed; + top: 50%; + left: 50%; + margin-left: -75px; + border-radius: 0; + + &.two-column { + margin-left: -150px; + } + + &.three-column { + margin-left: -225px; + } + + &.four-column { + margin-left: -300px; + } + } + + // Multi-column layout feature + -webkit-column-gap: 8px; + -moz-column-gap: 8px; + -ms-column-gap: 8px; + -o-column-gap: 8px; + column-gap: 8px; + + > * { + -webkit-column-break-inside: avoid; + break-inside: avoid; + } + + &.two-column { + width: 300px; + padding-bottom: 1px; + + -webkit-column-count: 2; + -moz-column-count: 2; + -ms-column-count: 2; + -o-column-count: 2; + column-count: 2; + } + + &.three-column { + width: 450px; + padding-bottom: 1px; + + -webkit-column-count: 3; + -moz-column-count: 3; + -ms-column-count: 3; + -o-column-count: 3; + column-count: 3; + } + + &.four-column { + width: 600px; + padding-bottom: 1px; + + -webkit-column-count: 4; + -moz-column-count: 4; + -ms-column-count: 4; + -o-column-count: 4; + column-count: 4; + } +} + + +@mixin dtb-processing { + color: rgba(0, 0, 0, 0.2); + + &:after { + position: absolute; + top: 50%; + left: 50%; + width: 16px; + height: 16px; + margin: -8px 0 0 -8px; + box-sizing: border-box; + + display: block; + content: ' '; + border: 2px solid rgb(40,40,40); + border-radius: 50%; + border-left-color: transparent; + border-right-color: transparent; + animation: dtb-spinner 1500ms infinite linear; + -o-animation: dtb-spinner 1500ms infinite linear; + -ms-animation: dtb-spinner 1500ms infinite linear; + -webkit-animation: dtb-spinner 1500ms infinite linear; + -moz-animation: dtb-spinner 1500ms infinite linear; + } +} + +@keyframes dtb-spinner { + 100%{ transform: rotate(360deg); } +} + +@-o-keyframes dtb-spinner { + 100%{ -o-transform: rotate(360deg); transform: rotate(360deg); } +} + +@-ms-keyframes dtb-spinner { + 100%{ -ms-transform: rotate(360deg); transform: rotate(360deg); } +} + +@-webkit-keyframes dtb-spinner { + 100%{ -webkit-transform: rotate(360deg); transform: rotate(360deg); } +} + +@-moz-keyframes dtb-spinner { + 100%{ -moz-transform: rotate(360deg); transform: rotate(360deg); } +} diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/api/addRemove.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/api/addRemove.html new file mode 100644 index 00000000..d4c18ad3 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/api/addRemove.html @@ -0,0 +1,853 @@ + + + + + + + Buttons example - Adding and removing buttons dynamically + + + + + + + + + + + + + +
      +
      +

      Buttons example Adding and removing buttons dynamically

      +
      +

      The button().add() and button().remove() methods provide the ability to + dynamically add and remove buttons from the list. The button().add() method takes two parameters: firstly the insertion point for where the new button should appear, and secondly a + button definition (which can be an object, a string or a function) and displays that button.

      +

      This example shows a button that when activated will add new buttons to the list. These buttons, when activated, will then be removed. Although this example + lacks practical utility, it does demonstrate the API methods.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + var counter = 1; + + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + text: 'Add new button', + action: function ( e, dt, node, config ) { + dt.button().add( 1, { + text: 'Button '+(counter++), + action: function () { + this.remove(); + } + } ); + } + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/api/enable.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/api/enable.html new file mode 100644 index 00000000..84434920 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/api/enable.html @@ -0,0 +1,896 @@ + + + + + + + Buttons example - Enable / disable + + + + + + + + + + + + + + + +
      +
      +

      Buttons example Enable / disable

      +
      +

      It can often be useful to be able to dynamically enable and disable buttons based on the document state and other components in the table. A typical example of + this is to enable a button that will take action on a selected row in the table, only when there is a row selected! If there is no row selected, the button should + not take any action when clicked upon (i.e. it is disabled).

      +

      This example makes use of the Select extension for DataTables to provide row selection. The select event it listened for to know when the row selection has + changed and then update the button's enabled / disabled state through the button().enable() method.

      +

      The button() method is a selector method that will use + the information given to it to select the buttons that the subsequent methods will take action on. There is also a buttons() method that can be used to select multiple buttons + (the DataTables API makes significant use of this plural / singular distinction).

      +

      The button-selector used in this + example is a simple index selector - button 1 and button 2. Based on the number of rows selected the enablement state is adjusted. The first button is enabled when + there is only one row selected, the second when one or more rows are selected.

      +

      Note that the Select library provides a number of button types such as selected and selectedSingle that provide this enable / disabled option without the additional code shown in this example.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + var table = $('#example').DataTable( { + dom: 'Bfrtip', + select: true, + buttons: [ + { + text: 'Row selected data', + action: function ( e, dt, node, config ) { + alert( + 'Row data: '+ + JSON.stringify( dt.row( { selected: true } ).data() ) + ); + }, + enabled: false + }, + { + text: 'Count rows selected', + action: function ( e, dt, node, config ) { + alert( 'Rows: '+ dt.rows( { selected: true } ).count() ); + }, + enabled: false + } + ] + } ); + + table.on( 'select', function () { + var selectedRows = table.rows( { selected: true } ).count(); + + table.button( 0 ).enable( selectedRows === 1 ); + table.button( 1 ).enable( selectedRows > 0 ); + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/api/group.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/api/group.html new file mode 100644 index 00000000..ceca859b --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/api/group.html @@ -0,0 +1,871 @@ + + + + + + + Buttons example - Group selection + + + + + + + + + + + + + +
      +
      +

      Buttons example Group selection

      +
      +

      Multiple button sets can coexist together sharing the same DataTable as a host. When using the API you need the ability to select one, or more, of those groups, + and thus the buttons in them to be able to take whatever action is required. This is provided through the button-group-selector data type of the + button() and buttons() methods.

      +

      The group selector, and the individual button selector (button-selector) give the ability to select any button or buttons in any group or groups of buttons. Actions can also be + taken on a whole group of buttons.

      +

      This example shows Buttons being constructed using the new $.fn.dataTable.Buttons construct and then the container node that holds all of the + created buttons obtained via the buttons().container() method. Note that the function is called with two parameters: 0 and null. The + 0 is the button-group-selector option (i.e. select BUttons instance 0) and the second parameter is the button-selector option. This is important as if a + single parameter is passed into the button() or buttons() methods it is treated as a button-selector.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + var table = $('#example').DataTable(); + + new $.fn.dataTable.Buttons( table, { + buttons: [ + { + text: 'Button 1', + action: function ( e, dt, node, conf ) { + console.log( 'Button 1 clicked on' ); + } + }, + { + text: 'Button 2', + action: function ( e, dt, node, conf ) { + console.log( 'Button 2 clicked on' ); + } + } + ] + } ); + + table.buttons( 0, null ).container().prependTo( + table.table().container() + ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/api/index.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/api/index.html new file mode 100644 index 00000000..10b1bac1 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/api/index.html @@ -0,0 +1,60 @@ + + + + + + + + + + + Buttons examples - API + + +
      +
      +

      Buttons example API

      +
      +

      The Buttons API is tightly integrated with DataTables own API, building on the same style and interaction. With the API it is possible to manipulate individual + buttons and groups of buttons, altering their characteristics and behaviour.

      +

      The examples in this section show how the Buttons API can be used.

      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/api/text.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/api/text.html new file mode 100644 index 00000000..a4eb2d9e --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/api/text.html @@ -0,0 +1,850 @@ + + + + + + + Buttons example - Dynamic text + + + + + + + + + + + + + +
      +
      +

      Buttons example Dynamic text

      +
      +

      This example demonstrates Buttons' ability to dynamically set the text of buttons through the button().text() method. Here the button's text will be + updated to indicate the number of times it has been clicked upon.

      +

      There are also two other important aspects of the Buttons API demonstrated here:

      +
        +
      1. The buttons.buttons.action method is executed in the scope of the button() object for the button in question. The result is + that the button methods such as button().text() are available under this - this.text() in this case. +
      2. +
      3. The config object passed in as the forth parameter to the action method is the button configuration. In this example + counter is set to 1 initially and that parameter can continue to be used by the button (self-referencing effectively).
      4. +
      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + text: 'My button', + action: function ( e, dt, node, config ) { + this.text( 'My button ('+config.counter+')' ); + config.counter++; + }, + counter: 1 + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/columnGroups.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/columnGroups.html new file mode 100644 index 00000000..312cce15 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/columnGroups.html @@ -0,0 +1,869 @@ + + + + + + + Buttons example - Column groups + + + + + + + + + + + + + + +
      +
      +

      Buttons example Column groups

      +
      +

      When working with column visibility you may wish to present a control to the end user that provides the ability to set various columns to both show and hide at + the same time - allowing grouping to occur. The colvisGroup button type provides this ability for Buttons. The show and hide parameters of this button + are both column-selector types defining + the columns in the table that should be shown or hidden respectively. If a column is not defined in either, its visibility is not altered.

      +

      This example shows three uses of the colvisGroup button type:

      +
        +
      • Grouping - show columns 0, 1, 2 and hide the others
      • +
      • Grouping - show columns 0, 2, 3, 4 and hide the others
      • +
      • Show all
      • +
      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + extend: 'colvisGroup', + text: 'Office info', + show: [ 1, 2 ], + hide: [ 3, 4, 5 ] + }, + { + extend: 'colvisGroup', + text: 'HR info', + show: [ 3, 4, 5 ], + hide: [ 1, 2 ] + }, + { + extend: 'colvisGroup', + text: 'Show all', + show: ':hidden' + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/columnText.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/columnText.html new file mode 100644 index 00000000..d4fdcc83 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/columnText.html @@ -0,0 +1,838 @@ + + + + + + + Buttons example - Customisation of column button text + + + + + + + + + + + + + + +
      +
      +

      Buttons example Customisation of column button text

      +
      +

      At times it can be useful to control the text that is used for the display of each button in the colvis list. The columnText option of the colvis button type provides exactly that ability, as a + callback function.

      +

      The example below shows the column number being prefixed to the column title. As this is a function, virtually any logic could be used (performing an action + only on column indexes higher than 3 for example). You also have access to the DataTables API instance, so you can use dt.column( idx ).node() to get + the header th/td element if needed.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ { + extend: 'colvis', + columnText: function ( dt, idx, title ) { + return (idx+1)+': '+title; + } + } ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/columns.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/columns.html new file mode 100644 index 00000000..9c7d7331 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/columns.html @@ -0,0 +1,849 @@ + + + + + + + Buttons example - Select columns + + + + + + + + + + + + + + +
      +
      +

      Buttons example Select columns

      +
      +

      The colvis button type provides a + columns option to allow you to select what columns should be included in the column visibility control list. This option is a column-selector and thus a number of methods to + select the columns included are available including jQuery selectors and data index selectors.

      +

      This example shows a jQuery selector being used to exclude the first column in the table - note that the Name column is not included in the column + visibility list.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + columnDefs: [ + { + targets: 1, + className: 'noVis' + } + ], + buttons: [ + { + extend: 'colvis', + columns: ':not(.noVis)' + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/columnsToggle.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/columnsToggle.html new file mode 100644 index 00000000..f1837509 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/columnsToggle.html @@ -0,0 +1,830 @@ + + + + + + + Buttons example - Visibility toggle buttons + + + + + + + + + + + + + + +
      +
      +

      Buttons example Visibility toggle buttons

      +
      +

      The colvis type will insert the buttons into a + collection button automatically, but you may + wish to have the column visibility buttons as buttons that are always visible. This is possible using the columnsToggle button type, as shown in this + example.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + 'columnsToggle' + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/index.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/index.html new file mode 100644 index 00000000..3521bf9b --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/index.html @@ -0,0 +1,76 @@ + + + + + + + + + + + + BUttons examples - Column visibility examples + + +
      +
      +

      BUttons example Column visibility examples

      +
      +

      The column visibility plug-in for the DataTables Buttons extension provides a suite of buttons that can be used to very easily control the visibility of columns + in a table.

      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/layout.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/layout.html new file mode 100644 index 00000000..98363f56 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/layout.html @@ -0,0 +1,838 @@ + + + + + + + Buttons example - Multi-column layout + + + + + + + + + + + + + + +
      +
      +

      Buttons example Multi-column layout

      +
      +

      The collection button has a + collectionLayout option that can be used to control the layout of the buttons shown in the collection. As the colvis button extends the collection button, this option is + also available for the column visibility controls.

      +

      This example shows a fixed, two column layout. Please see the collectionLayout option in the collection button documentation for the full list of + options.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + extend: 'colvis', + collectionLayout: 'fixed two-column' + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/restore.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/restore.html new file mode 100644 index 00000000..44c5e587 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/restore.html @@ -0,0 +1,848 @@ + + + + + + + Buttons example - Restore column visibility + + + + + + + + + + + + + + +
      +
      +

      Buttons example Restore column visibility

      +
      +

      The colvisRestore provides a single click + button that will restore the table's column visibility to the same as when the DataTable was initialised.

      +

      This example shows the colvis button collection + augmented with the colvisRestore button type + through the postfixButtons option to add the restore button to the end of the column visibility collection.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + extend: 'colvis', + postfixButtons: [ 'colvisRestore' ] + } + ], + columnDefs: [ + { + targets: -1, + visible: false + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/simple.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/simple.html new file mode 100644 index 00000000..573a55cf --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/simple.html @@ -0,0 +1,831 @@ + + + + + + + Buttons example - Basic column visibility + + + + + + + + + + + + + + +
      +
      +

      Buttons example Basic column visibility

      +
      +

      The column visibility plug-in for Buttons provides a set of buttons that can be used to easily give the end user the ability to set the visibility of + columns.

      +

      The primary button type for column visibility controls is the colvis type which adds a collection (collection) of buttons, one for each of the columns in the table, with the end user having the ability to toggle these + columns.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + 'colvis' + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/stateSave.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/stateSave.html new file mode 100644 index 00000000..95783c7c --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/stateSave.html @@ -0,0 +1,832 @@ + + + + + + + Buttons example - State saving + + + + + + + + + + + + + + +
      +
      +

      Buttons example State saving

      +
      +

      Button's column visibility module works seamlessly with DataTables' state saving option (stateSave). All you need to do is enable both the column visibility buttons and state saving, as shown + in this example.

      +

      To demonstrate this ability, simple hide a few columns and then refresh the table. The columns you selected to be hidden will remain hidden and the button + states will reflect this.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + stateSave: true, + buttons: [ + 'colvis' + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/text.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/text.html new file mode 100644 index 00000000..df7c31e4 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/column_visibility/text.html @@ -0,0 +1,836 @@ + + + + + + + Buttons example - Internationalisation + + + + + + + + + + + + + + +
      +
      +

      Buttons example Internationalisation

      +
      +

      Like all buttons available through the Buttons extension for DataTables, the button text can be modified - to suit your needs. This is always possible using the + buttons.buttons.text option + and each button type can also make use of the DataTables language configuration options.

      +

      In this case the language.buttons.colvis option is used to specify the text shown in the collection button.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ 'colvis' ], + language: { + buttons: { + colvis: 'Change columns' + } + } + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/copyi18n.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/copyi18n.html new file mode 100644 index 00000000..afd3a41c --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/copyi18n.html @@ -0,0 +1,852 @@ + + + + + + + Buttons example - Copy button internationalisation + + + + + + + + + + + + + + +
      +
      +

      Buttons example Copy button internationalisation

      +
      +

      The copyFlash will immediately copy the + exported data from the DataTable to the user's clipboard. To let the user know that something has happened the button will show a message on the page stating that + this has occurred.

      +

      The message shown to the end user can be customised using the language configuration option of DataTables. Specifically the buttons.copyTitle and + buttons.copyInfo options can be set.

      +

      This example uses these parameters to set French language strings for the copy message.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + 'copyFlash' + ], + language: { + buttons: { + copyTitle: 'Copier au clipboard', + copySuccess: { + _: 'Copiés %d rangs', + 1: 'Copié 1 rang' + } + } + } + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/filename.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/filename.html new file mode 100644 index 00000000..bd656937 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/filename.html @@ -0,0 +1,849 @@ + + + + + + + Buttons example - File name + + + + + + + + + + + + + + +
      +
      +

      Buttons example File name

      +
      +

      By default the name of the file created by the excelFlash, csvFlash and pdfFlash button types will automatically be taken from the document's title element. It + is also possible to set the file name to a specific value using the filename option of these three button types.

      +

      This example shows the filename option being set for the excelFlash and pdfFlash buttons.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + extend: 'excelFlash', + filename: 'Data export' + }, + { + extend: 'pdfFlash', + filename: 'Data export' + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/hidden.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/hidden.html new file mode 100644 index 00000000..1e43be77 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/hidden.html @@ -0,0 +1,875 @@ + + + + + + + Buttons example - Hidden initialisation + + + + + + + + + + + + + + +
      +
      +

      Buttons example Hidden initialisation

      +
      +

      When Flash buttons are created the Flash movie clip inside of them (which provides the export action) is automatically sized to fit the button. However, if the + table is initialised while hidden the buttons will have zero height and width. As a result, when the table is made visible the Flash movies must be resized to fit + the buttons. This is done using the buttons.resize() method (note that this method is only available when the Flash export buttons plug-in for Buttons is + installed).

      +

      This example shows a table that is initially hidden. If you make it visible and click the export buttons nothing will happen. Click the Resize buttons + option and the export buttons will start to operate.

      +

      A resize is often required when the table is hidden in a tab when initialised - for example if using Bootstrap tabs you might use:

      +
      $('a[data-toggle="tab"]').on('shown.bs.tab', function (e) {
      +	$.fn.dataTable.tables( { visible: true, api: true } ).buttons.resize();
      +})
      +
      +
      +
      + +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').wrap('<div id="hide" style="display:none"/>'); + + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + 'copyFlash', + 'csvFlash', + 'excelFlash', + 'pdfFlash' + ] + } ); + + $('#vis').one( 'click', function () { + $('#hide').css( 'display', 'block' ); + } ); + + $('#resize').on( 'click', function () { + $.fn.dataTable.tables( { visible: true, api: true } ).buttons.resize(); + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      button { + margin: 1em; + padding: 1em; + } +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/index.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/index.html new file mode 100644 index 00000000..a375ae7c --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/index.html @@ -0,0 +1,75 @@ + + + + + + + + + + + Buttons examples - Flash export buttons + + +
      +
      +

      Buttons example Flash export buttons

      +
      +

      The Flash export buttons provide an option for legacy browsers (IE9-) to create and save files on the client-side, without any server interaction required.

      +

      The HTML5 button types are preferred over the Flash buttons as they do not require Adobe Flash and are generally more configurable, however, not all browsers + provide the functionality required for those buttons.

      +

      If making use of these buttons in browsers which do not have Flash installed and enabled these buttons will not appear on the end user's page (no errors will be + generated).

      +

      The examples in this section explore the options available for the Flash export buttons.

      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/pdfMessage.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/pdfMessage.html new file mode 100644 index 00000000..cffef7dd --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/pdfMessage.html @@ -0,0 +1,837 @@ + + + + + + + Buttons example - PDF message + + + + + + + + + + + + + + +
      +
      +

      Buttons example PDF message

      +
      +

      It can often be useful to include description text in the print view to provide summary information about the table that will be included in the generated PDF. + The message option of the pdfFlash + button type provides this ability. It is a simple string and cannot contain any formatting information. If you require control over the styling of the exported + PDF, please refer to the pdfHtml5 button type.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + extend: 'pdfFlash', + message: 'PDF created by Buttons for DataTables.' + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/pdfPage.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/pdfPage.html new file mode 100644 index 00000000..dbe76c37 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/pdfPage.html @@ -0,0 +1,841 @@ + + + + + + + Buttons example - Page size and orientation + + + + + + + + + + + + + + +
      +
      +

      Buttons example Page size and orientation

      +
      +

      The page size and orientation of the pdfFlash + button type can be set using the orientation and pageSize options. By default these values are portrait and A4, but are easily customised as shown in this example which uses a landscape layout and US + legal paper size.

      +

      For a full list of the options available for these parameters, please refer to the pdfFlash documentation.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + extend: 'pdfFlash', + orientation: 'landscape', + pageSize: 'LEGAL' + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/simple.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/simple.html new file mode 100644 index 00000000..1f9add01 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/simple.html @@ -0,0 +1,856 @@ + + + + + + + Buttons example - Flash export buttons + + + + + + + + + + + + + + +
      +
      +

      Buttons example Flash export buttons

      +
      +

      The Flash export buttons plug-in for Buttons provides four export buttons:

      + +

      This example demonstrates these four button types with their default options. The other examples in this section demonstrate some of the options available.

      +

      Please note that the HTML5 button types are preferred over the Flash buttons as they do not require Adobe Flash and are generally more configurable, however, + not all browsers provide the functionality required for those buttons.

      +

      The copy, excel, csv and pdf button types may also use the HTML5 button types noted + here, providing a Flash fallback for older browsers (IE9-).

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + 'copyFlash', + 'csvFlash', + 'excelFlash', + 'pdfFlash' + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/swfPath.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/swfPath.html new file mode 100644 index 00000000..0baad604 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/swfPath.html @@ -0,0 +1,841 @@ + + + + + + + Buttons example - SWF file location + + + + + + + + + + + + + + +
      +
      +

      Buttons example SWF file location

      +
      +

      The Flash export buttons use a Flash swf file to provide their export options. By default, for convenience, the SWF + is loaded from the DataTables CDN. However, you can easily set the location of the file to be loaded using the + $.fn.dataTable.Buttons.swfPath parameter.

      +

      This example shows the swf file being given a specific URL that it should be loaded from.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $.fn.dataTable.Buttons.swfPath = '../../swf/flashExport.swf'; + +$(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + 'copyFlash', + 'csvFlash', + 'excelFlash', + 'pdfFlash' + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/tsv.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/tsv.html new file mode 100644 index 00000000..c28c20f4 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/flash/tsv.html @@ -0,0 +1,843 @@ + + + + + + + Buttons example - Tab separated values + + + + + + + + + + + + + + +
      +
      +

      Buttons example Tab separated values

      +
      +

      The copyFlash and csvFlash buttons have the option to specify the character + (or more generally a full string) that separates the values between fields. By default this is a tab character for the copy button, but the Comma + Separated Values button uses a comma.

      +

      The fieldSeparator option is used to specify the field separator - in this example the exported file is a tab separated values file. The file + extension has also been set to reflect this, although that is optional as most spreadsheet applications will read TSV files without issue.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + 'copyFlash', + { + extend: 'csvFlash', + fieldSeparator: '\t', + extension: '.tsv' + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/columns.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/columns.html new file mode 100644 index 00000000..c3d73848 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/columns.html @@ -0,0 +1,892 @@ + + + + + + + Buttons example - Column selectors + + + + + + + + + + + + + + + + + + +
      +
      +

      Buttons example Column selectors

      +
      +

      All of the data export buttons have a exportOptions option which can be used to specify information about what data should be exported and how. The + options given for this parameter are passed directly to the buttons.exportData() method to obtain the required data.

      +

      One of the most commonly used is the columns option which defines the columns that should be used as part of the export. This is given as a + column-selector, making it simple to tell + it if you want only visible columns, or a mix of the columns available.

      +

      In this example the copy button will export column index 0 and all visible columns, the Excel button will export only the visible columns and the PDF button + will export column indexes 0, 1, 2 and 5 only.

      +

      Column visibility controls are also included so you can change the columns easily and see the effect of the export options.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + extend: 'copyHtml5', + exportOptions: { + columns: [ 0, ':visible' ] + } + }, + { + extend: 'excelHtml5', + exportOptions: { + columns: ':visible' + } + }, + { + extend: 'pdfHtml5', + exportOptions: { + columns: [ 0, 1, 2, 5 ] + } + }, + 'colvis' + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/copyi18n.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/copyi18n.html new file mode 100644 index 00000000..96c21ce0 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/copyi18n.html @@ -0,0 +1,859 @@ + + + + + + + Buttons example - Copy button internationalisation + + + + + + + + + + + + + + +
      +
      +

      Buttons example Copy button internationalisation

      +
      +

      The copyHtml5 button type operates by + immediately copying the content's of the DataTable to the user's clipboard via the execCommand method. For older browsers that don't support this + ability, the table's data is copied to a hidden text area and the user is invited to use their system clipboard to copy the data (i.e. ctrl/cmd + c).

      +

      The messages shown to the end user can be customised using the language configuration option of DataTables. The following options are available:

      +
        +
      • language.buttons.copyTitle - the title text of the info box
      • +
      • language.buttons.copySuccess - message to display when the copy is complete
      • +
      • language.buttons.copyKey - instructions on how to copy to clipboard for older browsers.
      • +
      +

      This example uses these parameters to set French language strings for the copy message (with apologies to our native language French speaking friends! This is + Google translated text - if you have an better translation, please let me know!).

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + 'copyHtml5' + ], + language: { + buttons: { + copyTitle: 'Ajouté au presse-papiers', + copyKeys: 'Appuyez sur <i>ctrl</i> ou <i>\u2318</i> + <i>C</i> pour copier les données du tableau à votre presse-papiers. <br><br>Pour annuler, cliquez sur ce message ou appuyez sur Echap.', + copySuccess: { + _: '%d lignes copiées', + 1: '1 ligne copiée' + } + } + } + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/customFile.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/customFile.html new file mode 100644 index 00000000..adcfa830 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/customFile.html @@ -0,0 +1,855 @@ + + + + + + + Buttons example - Custom file (JSON) + + + + + + + + + + + + + + +
      +
      +

      Buttons example Custom file (JSON)

      +
      +

      Buttons uses the excellent FileSaver.js by Eli Grey in order to be able to create and download files on + the client-side (i.e. for the CSV and Excel button types). Buttons' built in FileSaver.js is exposed via $.fn.dataTable.fileSave() when the HTML5 + button types file is loaded, and it can be used to easily create your own custom files.

      +

      This example makes use of buttons.exportData() to get data from the host DataTable and then create a file with JSON data in it using the $.fn.dataTable.fileSave() method.

      +

      Please note that Safari and IE9- are not currently supported. Safari support should be available with the next version of Safari.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + text: 'JSON', + action: function ( e, dt, button, config ) { + var data = dt.buttons.exportData(); + + $.fn.dataTable.fileSave( + new Blob( [ JSON.stringify( data ) ] ), + 'Export.json' + ); + } + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/excelBorder.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/excelBorder.html new file mode 100644 index 00000000..1cb66b03 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/excelBorder.html @@ -0,0 +1,852 @@ + + + + + + + Buttons example - Excel - Customise borders + + + + + + + + + + + + + + + +
      +
      +

      Buttons example Excel - Customise borders

      +
      +

      The Excel export button saves to an XLSX file and the data can be customised before exporting the file using the customize method of the excelHtml5 button type.

      +

      This example demonstrates how to manipulate the file using this method to add a styling attribute to a row in the XML used to create the XSLX file. The object + passed into the customize method contains the XSLX's file structure and the worksheet can be accessed as shown. A jQuery selector is then used to + select the cells in row 10 and a border added. More complex logic (such as conditionally adding borders based on cell content) could of course be used.

      +

      The style added (index 25 in this case) is defined by the default styles included by Buttons. The full list of styles available and further + information about the customize method are detailed in the excelHtml5 documentation.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ { + extend: 'excelHtml5', + customize: function ( xlsx ){ + var sheet = xlsx.xl.worksheets['sheet1.xml']; + + // jQuery selector to add a border + $('row c[r*="10"]', sheet).attr( 's', '25' ); + } + } ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/excelCellShading.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/excelCellShading.html new file mode 100644 index 00000000..e2596b2e --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/excelCellShading.html @@ -0,0 +1,861 @@ + + + + + + + Buttons example - Excel - Cell background + + + + + + + + + + + + + + + +
      +
      +

      Buttons example Excel - Cell background

      +
      +

      The Excel export button saves to an XLSX file and the data can be customised before exporting the file using the customize method of the excelHtml5 button type.

      +

      This example demonstrates how the created file can be customised by giving any cell in the Salary column that has a value greater than $500,000 a blue + background.

      +

      The style added (index 20 in this case) is defined by the default styles included by Buttons. The full list of styles available and further + information about the customize method are detailed in the excelHtml5 documentation.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable({ + dom: 'Bfrtip', + buttons: [{ + extend: 'excelHtml5', + customize: function(xlsx) { + var sheet = xlsx.xl.worksheets['sheet1.xml']; + + // Loop over the cells in column `F` + $('row c[r^="F"]', sheet).each( function () { + // Get the value and strip the non numeric characters + if ( $('is t', this).text().replace(/[^\d]/g, '') * 1 >= 500000 ) { + $(this).attr( 's', '20' ); + } + }); + } + }] + }); +}); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/excelTextBold.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/excelTextBold.html new file mode 100644 index 00000000..faaa6132 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/excelTextBold.html @@ -0,0 +1,850 @@ + + + + + + + Buttons example - Excel - Bold text + + + + + + + + + + + + + + + +
      +
      +

      Buttons example Excel - Bold text

      +
      +

      The Excel export button saves to an XLSX file and the data can be customised before exporting the file using the customize method of the excelHtml5 button type.

      +

      This example demonstrates how to manipulate the generated file by making the text in the third column (C) bold using the styling options that are built + into the created spreadsheet. jQuery is used to select the required cells (XSLX files are just a collection of XML files after all!) and then add a styling + attribute.

      +

      The style added (index 2 in this case) is defined by the default styles included by Buttons. The full list of styles available and further + information about the customize method are detailed in the excelHtml5 documentation.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready( function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ { + extend: 'excelHtml5', + customize: function( xlsx ) { + var sheet = xlsx.xl.worksheets['sheet1.xml']; + + $('row c[r^="C"]', sheet).attr( 's', '2' ); + } + } ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/filename.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/filename.html new file mode 100644 index 00000000..e6dbed22 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/filename.html @@ -0,0 +1,864 @@ + + + + + + + Buttons example - File name + + + + + + + + + + + + + + + + + +
      +
      +

      Buttons example File name

      +
      +

      By default the name of the file created by the excelHtml5, csvHtml5 and pdfHtml5 button types will automatically be taken from the document's title element. It + is also possible to set the file name to a specific value using the title option of these three button types.

      +

      This example shows the title option being set for the excelHtml5 and pdfHtml5 buttons.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + extend: 'excelHtml5', + title: 'Data export' + }, + { + extend: 'pdfHtml5', + title: 'Data export' + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/index.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/index.html new file mode 100644 index 00000000..ec8dec4c --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/index.html @@ -0,0 +1,95 @@ + + + + + + + + + + + Buttons examples - HTML5 export buttons + + +
      +
      +

      Buttons example HTML5 export buttons

      +
      +

      The HTML5 export buttons make use of the local file saving features of modern browsers (IE10+, Chrome, Safari, Firefox and Opera) to create files on the + client-side and then download them without any server interaction required.

      +

      Browsers which do not support the required APIs for these button types have the option of using the Flash button alternatives, otherwise the buttons will not + appear on the end user's page (no errors will be generated if this is the case).

      +

      The examples in this section explore the options available for the HTML5 export buttons.

      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/outputFormat-function.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/outputFormat-function.html new file mode 100644 index 00000000..719457ee --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/outputFormat-function.html @@ -0,0 +1,454 @@ + + + + + + + Buttons example - Format output data - export options + + + + + + + + + + + + + + + + + +
      +
      +

      Buttons example Format output data - export options

      +
      +

      Buttons has two different methods that can be used to format the data exported differently from the data that is shown in the table: orthogonal options and formatting functions as shown in this example. They both achieve basically the same thing in different + ways: namely modification of the output data.

      +

      Formatting functions for export buttons are specified by assigning a function to one (or more) of the format object of the + exportOptions object. Three formatting functions can be used: header, footer and body. This is the primarily + advantage of using formatting functions over orthogonal data - the header and footer can also be formatted using this method (of course orthogonal and this + formatting function method can both be used together if you prefer!).

      +

      This example uses a body formatting function to remove the $ and , characters from the final column to make it a numeric + value in the output data. Since this is common to all three export buttons used, the function is placed into an object that is reused by each button - simply to + save repeating the same code! This is not required, but it can be a useful technique.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeExtn.Start dateSalary
      NamePositionOfficeExtn.Start dateSalary
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + var buttonCommon = { + exportOptions: { + format: { + body: function ( data, row, column, node ) { + // Strip $ from salary column to make it numeric + return column === 5 ? + data.replace( /[$,]/g, '' ) : + data; + } + } + } + }; + + $('#example').DataTable( { + ajax: '../../../../examples/ajax/data/objects.txt', + columns: [ + { data: 'name' }, + { data: 'position' }, + { data: 'office' }, + { data: 'extn' }, + { data: 'start_date' }, + { data: 'salary' } + ], + dom: 'Bfrtip', + buttons: [ + $.extend( true, {}, buttonCommon, { + extend: 'copyHtml5' + } ), + $.extend( true, {}, buttonCommon, { + extend: 'excelHtml5' + } ), + $.extend( true, {}, buttonCommon, { + extend: 'pdfHtml5' + } ) + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/outputFormat-orthogonal.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/outputFormat-orthogonal.html new file mode 100644 index 00000000..c60a303e --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/outputFormat-orthogonal.html @@ -0,0 +1,443 @@ + + + + + + + Buttons example - Format output data - orthogonal data + + + + + + + + + + + + + + + + + +
      +
      +

      Buttons example Format output data - orthogonal data

      +
      +

      Buttons has two different methods that can be used to format the data exported differently from the data that is shown in the table: orthogonal options as shown + in this example and formatting functions. They both achieve basically the same thing in different ways: namely + modification of the output data.

      +

      The orthogonal options are based upon DataTables' support for orthogonal data - specifically being able to + use columns.render as an object + for function to give DataTables different data for the different actions it needs to take.

      +

      By default Buttons will ask for the same data that is shown in the table (display) but the orthogonal + option of the exportOptions parameter can be used to specify a different data point. In this example the orthogonal data for the exported buttons is + set to be export and the columns.render function will return a deformatted string (stripping the $ and , characters + from the final column to make it a numeric value).

      +
      +
      + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeExtn.Start dateSalary
      NamePositionOfficeExtn.Start dateSalary
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + ajax: '../../../../examples/ajax/data/objects.txt', + columns: [ + { data: 'name' }, + { data: 'position' }, + { data: 'office' }, + { data: 'extn' }, + { data: 'start_date' }, + { data: 'salary', render: function (data, type, row) { + return type === 'export' ? + data.replace( /[$,]/g, '' ) : + data; + } } + ], + dom: 'Bfrtip', + buttons: [ + { + extend: 'copyHtml5', + exportOptions: { orthogonal: 'export' } + }, + { + extend: 'excelHtml5', + exportOptions: { orthogonal: 'export' } + }, + { + extend: 'pdfHtml5', + exportOptions: { orthogonal: 'export' } + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/pdfImage.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/pdfImage.html new file mode 100644 index 00000000..b14c49fd --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/pdfImage.html @@ -0,0 +1,864 @@ + + + + + + + Buttons example - PDF - image + + + + + + + + + + + + + + + + +
      +
      +

      Buttons example PDF - image

      +
      +

      The PDFs created through the pdfHtml5 button + type are generated through the PDFMake library which uses a declarative document structure to describe the PDF to be make in a + simple to understand Javascript object.

      +

      The pdfHtml5 button will generate a document + description object which you then have the option to customise through the button's customize option. This parameter should be given as a function and + is given a single parameter - the object that the button as created with the table already populated. That object can then be modified to suit your need.

      +

      This example injects an image (the DataTables logo) into the PDF. PDFMaker uses based64 encoded images (online tools such as DataUrl.net are available which you can use to encode images) which is the long string shown in this example.

      +

      Please refer to the PDFMaker documentation for full details of how the PDF can be customised.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + extend: 'pdfHtml5', + customize: function ( doc ) { + doc.content.splice( 1, 0, { + margin: [ 0, 0, 0, 12 ], + alignment: 'center', + image: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAIAAAD/gAIDAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA9lpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wUmlnaHRzPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvcmlnaHRzLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcFJpZ2h0czpNYXJrZWQ9IkZhbHNlIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDoxN2FlYzk4Yy0zMjgzLTExZGEtYTIzOC1lM2UyZmFmNmU5NjkiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6QUYzODU5RTYxNDNCMTFFNTlBNjVCOTY4NjAwQzY5QkQiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6QUYzODU5RTUxNDNCMTFFNTlBNjVCOTY4NjAwQzY5QkQiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBNYWNpbnRvc2giPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDowODgwMTE3NDA3MjA2ODExOTJCMDk2REE0QTA5NjJFNCIgc3RSZWY6ZG9jdW1lbnRJRD0iYWRvYmU6ZG9jaWQ6cGhvdG9zaG9wOjE3YWVjOThjLTMyODMtMTFkYS1hMjM4LWUzZTJmYWY2ZTk2OSIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/Pu9vBW8AADRxSURBVHja3H0JmFxXdea79y21967uVi+SbLXUkiVZso2NZWJjsyQEAsYZlnHIJCyZJPARMsnnyZedBJjJB5kMA5kQCAkhkECCweAVbxjvtmRsy7YWS+puLb13V3fXvrzl3jnn3HtfVRsbwsQ2JKXncnUtr97731n+s9xTTEpp/bhvQRDU6dZoNHzfD8PIsiS3bc91E8lkOpVKp9Oe5/3Yj9N5+b8SLs/KyurCwvzM7Ozc3Nzi4tLKykqxWKxWa00AK/CjSEgpGAO4uOclUqlkLpvr7u7u798wPDK8aXTT6OjowEC/bdv/YcECOCYnJ48de/b4ieOnT51ZWFhYKxSq1Wqz2QTJiqJImlv8EcYY3HP4HwfgbMdxQL4ymUxvb+/o6MjOnTv37du7e/fugf7+l+cU2EuthuVy5eixo48//vjTTz8zNTm1uLRUKpUAIIWOQiS+vZAkqvv29wN2rutms9mhoaHzz99zxeWX799/aV9f379XsE6fPvPIo488+uiBY8eOgcKBZIE9QknhvB0dif/gJuBmSaH+tFgMC1eb+vP7seModE4mk968edNP/dRP/dyb3nTBBfv+PYEF6Nzz3e8+/PAjJ06cWFpaBssNT4IsxAAJEUVhEEZgniIAx2KObSc4T9g8wbjHLBuQQfRkIIUvREPIBrgBxgSpo8vhPQz31q65gBroaU9Pz6WXvvKd73jHlVe++oVE9ScFrBMnTt5xxx33P/DA8eMn8vk8GCM4OSVK8EVhCOa7AQABLolkbzqzMZMdTqcGvWSv63RxnuEsaUlPWo6UtowYoBXCu8NmGFR8f6XRnGs2zjaap4NwXsiSzUEZk+AzQe5i1Mi+8VwuB1r5nne/+4orLv9JBGtpaem2226/8667jhw+vLS8DOeoYIKXwjBoNmtRGCUS3Z3d53b3jnd0bkmm+l0nyyxXWrYUsMEJcwswklzAY3hGgnDZ8BifxD9pE1YYAb1YqtdPVKtPVOuHgnCac+E4ac7ddhsHqAFkP/3613/wgx8YHx//SQEL1OW+++674ZvfOnjg4PTMTBiGCibYM8hRo1EDk9LTNz4weEFXz9ZksocxOCuAAHC0yR3TRjARKHCv8EL4RMQINZAycy8ZvNmSIH0sjAq12pFS+Z5y9aFQLLgOCFrKQoPX8qoDAwPve997f/W//koikfgxgzU/P3/99V+//Y47gBNUKhWwGkqaQJQa9VoqPbBx5OLBoQuz2QEwNEQDwNa4tIFhctA84WnHMmUECjBCyBihhhgRahY9hnuLHpMAWShQfjBfLH93tXBj0z8GRg0ErV3K4LZ///4P//Ef7d17/o8NrAMHDv7TV77y4IMPzc7Okgl34Nh9H1AqpzKDm865YuPwhclkN7kzm4NhZmCbNVIIE22kX0rX4GBskiAEKIL7iGAipERkCS1fVgsvqf0iw8vgRqJUKt+7vPqP9cYzjpMCixbDBZYP2Nnv/Pfr3vOed7/cYIGufevGG//lX772xBNPAm8CygM2AnxctVKwndyWrVeNbN6fSnXB/gEjsME2JxfGQawcpgTKUmqoZIop7SPhYoQRjwCaEEUpUlIWWZGSL0BNGsiIdRidExgkcU+Iylrx1sXlLwThGdfNwdcZpoEE5dprr/0fH/soMNuXCaxyufylL335W9+6EdgmxHGKEzQa1Ua9MTRy8diON+Q6NiJtdFzH9lCgtEw5pIO0WVxqvNB4kUyxNqSMNOE9jyIjWfoZS90b4UKnaVlazECGKK5MhMHCwvLf5le/xmzh2Bl6CW9gRF/1qld95jP/d3Rk5CUHa3l5+W8+//lbb7ltcmpKMWnYQ6W85npdO3ZfMzRyAYkS2K6E7STwMXcRTe5wy1b6iJ5ewYRIkcEGmbKMCQdE8PwJmpArgBCvkCnUSNAsBRnhBfcx2ZIkX7BFeGzcKVUemp7/RL1x3PM6yPDjDQL2bdvGvvB3f7t7966XEKy5ufnPfOYz3779jrNnzypbDrSgUi70b9y36/y3ZTr6OaDiJkCgbMdD7bPhPbDZSH6YTQaeW0THcZO0WZxsUMvrtdkpZsSKR6H+Ex8oKNWnyH4p2SLhEjFkjIWglWG0Mj3/yfzqDa6bIkcslXwNDgz8w5e+ePErXvGSgAWO79Of/stv3347xC7KSPnNeq1W27bzjWM7fsZxkxSuJQAjCHgBI0JKMVJO1ooBTPAf3iFGjOy6pYRLmSEES2qbJSKDl0CAgMkKgxdIXGREjNQQwdGSpWw+IAVPwc6skGgqW8p/dWb+kyBxyuqTv252d3d/9Sv/ePHFF7/IYIH2/Z9PffqWW26dm1NI8Xq9HAZyz4W/MLL5UkAEYEKZUqqHGxBsTlFdHNmpO9zUV5NkwT9FnUi5SLikQkoiQDLSuGikDEyxrBFYTAuXUOeyTr4sFgJGcGCF0n2nzvxxJFZtY8JAvsBF3vCNr+/Zs/tFAwss+qc+9Zc3fPOb09PTCqlarSSld+Er3zuwcTeg4bgp1006jova56Ah55hV4QocRsGOgogBHJaijZY2ItJYd8kMBeWKZ5HL40olI7JfSg1JyhA1SaihVmoXIYl8aZ0E/2xMPmwQeCVqtWdOnvkdP5hx7Cy9gVWr1c2bNt18y02bRkdfBLCAJXz2s5/7p698dWJy0kUgECnLSl582a/19W8DSFxPIeWBuVKqB7pnKbEinYtTLQojrSp4egqyyOYCNxvuLU7vAZIVBjzw7abv+L4X+G4YOhQVWcqEhaGGTyksokae0ewTZYwpy7UOL7fenDh56rqGf1q5SDhCoD6XXHLxjd/6Zjab/beCdf313/js5z53+PBhjje7US9H0r3ksvf3DWyHPz0vjQroKIvucKIRKFOkcpx0Dq82U9YXtYIeRJ7TSCf9jozI5Xg246ZTrge2ToeTeFSRkEEQNRpRtRoVi3J11V5Z8QqFTL2eFBHwfmQPIWqirTymjJgyecZyaeZloSgDZBovbjuN5sSJqd9u+jO2nVZ4ra2tvetdv/D5v/ncvwmsgwcPfvwTf/7II49CAAhmCCx60w8vedX7BzbuQaQSKbDrLrAE2wFWRSJFGQZusiPMUhaKiCOYc+E69c5Mra/H2tCb6urMpNJpAFoZNeX+NQnQd5pOAt0Ft1urNVdXfQgWTp9OLS1mm80ks5Rn1MKl7BfptdZEVHutlQAcGi+LBUApqvUjx6d+K4rWONcBY6FQ+F9//okPfOD9/59gLSwsfvRjH/v2t28HxQaigCyhUrrwkvduOucyDF4SSqYS4APh6zlFz2jOufJ5xiThKQNpECm30tdTGx5M9m/oymRzoBFwCpiz0hi1Z/TwodA5QdAokx+0yCGIsFZvzM02jx3zpqY669UUfB28GSAj50DuQhkuy8gXW48X6WOx/ODJU79DjMxR1gbuv33bLRdddNGPDBacBri/L3/5yzMzs64LMbAsFpbHd7115563kEylwVSR9gFNJzKl01YoVaR+lrLqcOWTbnWgt7p5ND3QvyGVyhBRiNSJGCZpApc2wGKklJsj+ZKaiCJhk2HYnJtrHHoyceLZbrBrmOZANeSWUOelz6+N3MPhKGUEXAKHu4v5fzk983GVqIBbpVI5f8+eO++8PZVKPS8m9p/8yZ887wvf/e53v/gPX5qYmHDQqLNyeW1g6IK9F/5nsE1uIuWBRXeRTznAEhyFFMkUck/1CPUOSGt/9+p529h546P9GwZADBUS5CQVtkYGdQ617Zk2LdZPoWAxLXeIiN3Rkdi6NeofKBcKsriWUEJtqSuldtX6gx61BAOugZ/N7gqDfKX6FGVELM8DUZ2C03n1FVf8CJKVz+f/6I8+DPwTmAioF8R9jGcuf8112dwAqB6A5ToIFogV6CMjpGzeVnRAI85TXmnzxurY1oHu7g1kXISJN8xRm7wTY9KUcozGoUCRKEVS1X1QK4UkdTMSh6/imyHiqlabBx91Hn+sJ4ocNIBER5gVO5ZYgnUwpIQLDyoqHZ/6jVr9BOdJSk5gaHn33Xft2b37XytZX/3qP994081ARB3XhSOqVav7Lv6lDQPjgDoqIBEFRArMlEkbc25oJ7m7ruzKrm1i5/g5uVy3Tl2qkhbXgCI7A02gWAiOsFaPCqVgZS3Ir/pwXyyHtVoUhAJO3HU5CDfnJp6RWt6kEjU8Q9iVc845orevPDPj1utwYNKKE/Ca6sVP6MtJ/49sJ51Kjq4W7iEQ8fiq1cr02Zl3vvMd/6q64cmTE7ffcQcwdVRAy6pUCiOb94+MXgQyrmAiSuWQ79OGinMl8RTEWGKgO79rPDs8NAqvCCyX6kqNqQZaDtAqIQvlcGGpAdta0a/WQt+H64wWnwI9oeD1PDuXcXq7vYF+r6/HSXgcEAwDtUNpaRRQAEPpbB9nnV1rt90iFheycJVbWqw4HmXoCWVOYgaIOkL4uewrBvvfNr/0ZWahqcpmO+64887bbvv2G9/4sz9cDf/3Jz/5hS98cWlpCci6j/UF+9Wv/91c50ZAClmVRx4QGBHmEmySqVbtD+jkxp7lPef19g8MKUkw11T/H0QJQDk7V588U13MNxpNtPS4B0vzBUqBCm3dBepgRBwKzg1QGx1KnLPF6+6CWEf6Ab2R3kZJCPw4MNtiKbz1ps6Zs1nPE5TbkFQtYbEuEs1XmYlQWgFQsFCsTZz6ULV2RkkPBLz79u29+647QVx+kBoeO/bs3/3d34Nd5xT6VsqFHbvePLTpIiAHxNQTJFkkVrZCSisgISU39ub37t7Q3z+k6DozhgzgAG2C/U+eqT3y+NqzE5VSJeQkYo5tEZGNjbjRFxYrr6ToyWo0xdx8ODEVlkqys4NnMpgRNPaaKbYLzyST/Jxz6/NzdrEARytbfsPSRoy+w9ImEu8gugYqkyxXH8T6CCq+Ozk5tXv37p07d7SDw58jVnfccefkxARVq1izUcvmhraMXQ57xiDZpQgZUy6cazul0i36QPu78nt29vRt2Iiq13JIiCZoE1iiu+/PP3hgpVD0PZclXCWSClQjm1yfBmGn3qB2goEeWCIP3Wn07PHmTbfWDz0VwNvIVDBFPnFvHEyYlcnYb3pzsW9DA8gT0yQrdrn60Ag3uF6YvLVk0NVxVWfHBeC+FQ6A11995q8FOd3nB+vMmbMPPfTQ6toa9VzIRrO+dfy1qVSXynlidRMkwdaypLQPjxAdmN2ZWQM7BdqHbMegBAcE8geCeORE+c77lhaWG16CKcauUICd2G2yiRfA1gEAM2YQTohz4uK0weNEUoaReOSAf/sdQbksPc8YcE0/MAzq6GQ/87OFVBqsoEp+6DjeiJcizpwpvOA4Wbqv++c9UwFKp9MHDhx44IEHXhCs+++/f2JyArgsyE2z2chkB0c2vQL2TOkEh2TK5lyTKm2K0EnxpFceP9faODRianaaNgFM8OfDj68dPFSAl1yPsbbz4sZPWa0/LSWp2mvoLGG8Twn0jRkpSyblzEx0083h7KxIJCRrUTLcZxDwwSFx+ZUFEWc52HrXqPeutMOBSDSTvqQjuxusnirWglj9/d9/8fnBgpjmoYcfXllZ1bWsRm3zOZel0l0Y92EeXWsf047PilNTnAXApzZv3sQUwzEaaDvACeT9B1ZOTFU8VawwYQhr34M2bMaOmOc57YorleStrAs4WHyeCxSxlKzV5W3fFpOTFuBlKUCJtcGbfZ/tPK9x3u5y4GsJNdeqJV/mK0mmeaar42cSCV2szWazd3/nnpmZmecB6+mnnwHrDv5JJYtdL4dihQUutFOofoqaG+attB6IZm9HYevWAQiqFb9UhwPKBX89+Njqmdm65+nsA5w2XAgtLkyaZBdqGSGyXur4OsahPqJcm0lUoVNzXTQsd91lTU1ZCa8VkCotloLv31/u7vExwGZxgKWPPvY+qjggrTCTuiSb2WI7FNDaNpDzm2++5XnAAhVdXFxUh9ps1voHz8t1DOhGDMOqDKlUVwMVMOHUzt3sdnX2wiG3zCcgYrODTxUAqQQiJVmbirVtzHipFhXjrHVMLUGjfco4fwDyRSrJCT5weSDCd93J5+el28KL/FzEsrnoootL2lKv+3ZL9+q0KgPSsXtz2VfCMSsNSCS8m26++blglUqlQ089BZGkKrsDORwGFmpTHl2l0nXrT9z8o3CRg72V4aFBy2RzybwgSzg+UTkxVU14dP50IOakKRGviju0h3XgM7mOc3PLgEnHuu5UpRFPwsuVzSb7zt1OvSYwpRbTdPBzAd8+Xh8aaooI5F3G8ZjpaorpBKdqpkwnL0mnOtXbUqn0k08eOnXq1DqwTpw4AU8FQQCfDkM/me7t3TBGvkwhZVttehJf+KRb3TScTiYzQLoVJZVIO1l+xT90pOg6yjoLY6ekEX+pDRGKhja9baTBxEOW9X05KZVmp3oOaCKL6B6+GjirBH1cztsPPgCXO2K8JZtgrF3X2ntB2QQQ0moFQjpYj78bdu4652Yy5wIjoUyAXSgU7rvv/nVgPfPMkeXlvPICgd/o7RtLp7vJoCsPaLJ6+qvwbIAx93XV+/v7ZJxfp6sDAv/k4aIfCJXybJltI1vciIzOKjBdEWNtMbYOZeiNVhzX6V42LYA6ga85FIpYwhPPHktMTABwMrYJ8C8I2aYtjQ0DPmglWxccGuOljD2hwVk2ldyTTDqK8IMZuvfee1tgwWkfO3YMvKHyg8BMNgzsYLreR3le1v7VFDjA5bIbQ4PYHytU2phYAxi3MzP1+cUGyJdlyLP5VIudG9lXUqNIZXwGTGGnX1KWShFOdcSsZbniQo62/aRljx306o2QTsVUE6XluWL7eJXMvHGslmylbFjMOvBjnrszlcqo55LJJGhio9HQYK2urigdBFwglgXi3927meifw3XBvS3406olc5nahr5O83VSUQCI+46dLHNTRTXmxYqxttZ5OBk7OtmyuCoh2mIZdCSknpbykJau3OjcC+mm0PlW2xFLS96J45YWLkNMwohv2lLPZCIVGOmviK8cfQ/XTkg4fFMq2Q+2TyW5ZmZnIPrRWYfZ2dmFxUXVfgakIZ3pzWT6yKlx4/14nJxTmsJZONAn0+ksHCQcDnWxgMTyucXmaiEAjq5DLzwwIVvpEe0GWnG8FSd/mTAxniTvSaYfQ2WQ9CgQAWxhFAUyCEUUYhI5DOzQt+neCfwoDBwIiCPhhr714P32pk01iGRVvEIXS3Z0BIMbG6emMhAdUzrMXJOYB+G7yPCyrkRyFALERgP0llertSNHjuzadR6Cdfbs2WKxqEgSfGfHho2elyb6YZsgLZaGVoY8lcqBswypY5ZR9gKOrKvDyWScejOyudWuWi0R0n+sy5MzEwjDvxBcMSZhhB9EgE6ImxDwDGIGL1EukPq2BD62wgikBl6Fx4CmhHeKKJqe9iZOFsd32CDp0qTzPS/KdZbz+VQqBWzDAjIFMTy345KKFedwGbzX2ZRIOPW6UmcLwLKst+PD6ZnZer2uwIDjyXUOKb5OZfe4/qA8uzEolj09z5X3jH1LJKxcxtm6OQ2nFNt0DZX+rLVOwKSWvkha4BDqtaBU9otlH+7LtaDRDEGaCBop9ZdaZi+SxUZHCpNit1QsDZdYSufEcQ/TL1odEK0oZP39dVCgQkGs5KPlxWh5KVpbFdWqCEPJDNtWh+3YQ2CtlENxHOfkyZPaZi3ML6jTJrW3srmBlrK3bLsSV31cYPqXV625xToEf6Z0hfdwkQGsbNoWQmp7EtvTuEmK6WorvBlksFINiqVmpdKsNVCUUAyM5YptsJSqmUHGiedWDcIylTZF08i3gsGanU2WSwFv1XgxG9HZFXR1B2jGKe8aBLJaEYDX8pJYXg6LReE3cYdAx2zel0hkFNau60LQg0wCYAJSD8GzSiKCUQfSoA41tlYmhGh5XDpYPnm6iR/UdVM83kjITMbeMpoKIkGF+rgVSMYGFeSuXo/KFb9Y8au1ABOk6kxNwcdUwVqtahoOKu+oLJ8wfUbPWZOhBBrC7EolubwsuB37OzyCREL09ARCmKSWCr9oVUvgy3JJ5JfDxaVgdc1vNnOel1VYAzfPr6wUSyVeq9XAYClDiJVUJ5FI5GjvcW9QW5ig4zPEARR+acVaWKqh14h9NEq7HNuSTiV4JGIZILkSVrMpShWQI8IoIMphCsiaAkiDDFXgRQyIgkmvLSCkcI0BIdaCrT1tBXLkLC0xqqoa/oKJfwlxopQmNLRMDcgEvZjeCWSpHK7kIRzOwqlhQYTbENsU1tYQrGqtqugovuAkHDclZWsNBGu5cUN/WWzl+cTpBrioWCqwTSESuay7eSQFRlq9F+sRNdQ1kCbfjzSJNTKn9VXVc3RdR1jtcmMwMz1rCjWrrXxtSU1spU7FINvga6sOeARd3NAqzMAnqtxWG2+PIweVYsOoSEqX84xtc7UcAXgWiBSv0cI107ohVJKPtVL9rfRifIjaAKFuWwt5ubRcQ/bQKr6jYxrbkoFwtOkLVLdSs9pAnxabF9UhFBe82pDRKLXERZgamDCSJto/EUOmYVK8jnKKslq1A0yVUlOT9gZAdyKkOogKxuFcJRRZnFxsJdw5T9oIm17kVyqVOWin7wda77EGB4jaUlGTdtYWN1vEHJQuYRTyiVMN8O3tVWUAqzNn9/W4K2uNho+CwmLHZbUh0q5byuuJuGSo9U2t6YlfEgoyoUsVcVup4cZauzAmti3fd1C6W5ESvtlLRHB+rQQNb2UF1p0xAGh5ZLN0IhAIAw9xwUfUcudIPFr9ZhpC0aKQOjBT7WeY7WJzSzKfr3FuTI0AAhk1m9H2c9IQ9GjzYmwMgIK4RKIlJSRoRoyIgyoo9Ge0TIkYtZbqWaaTLY5YdQEF4zTMSTE4tXYGTDwAi7Kcq2w1cmkKDyR9UOrMmg5pnbhhChdAQITzHHfSngySsRDFLlowXdPV8Ri+FEb25OkGVYphjyGtRAV+KPp6vM3DKU0LjR8T6wVIKZyBpR0UJV1R6zVj0YUxBaoHVcXgsWTAaYNMgX2wiVC3+kws+dwzJNWjBLbUkZyiKCa9wXh7ioXCUtWY3Sqrm5YNkyBhOufW7vwxhmH6iKkkMbMgF5crId6iliwIsWs7OBSK3ITmBKYqr4VI26yohYb+bBSpZyP610JK3wNHQb8RqTZv1fJstVLUHKk5EEvJDKeLV1ugJCqDxbVkmfB13WnDGzkTsoUvc12He55r26afCpQzwnihLRSRravSKrQx06OPz4JdWF6Jnj5aBqANrJKkTPT3eaNDSSVcUdSuWKSPhAk9r57Rd5GyYOqmnozMC6q/Qfed6iU+tAyItApbzTlKlgMPmJcIua1rq7EEAPumsq5KZFOigtOf2gmIuN+G8ZCK48o6sWQqxSFSAoZqsh88ivxI+Po6qH+KL0iSJkHNn6plFhtleK0qikWIX9npabmyUudtawCVGIFwEeshnYti2y1iY61j5RioiESJ7iP1QLSrqVI9WhIlzGoxygur7hSAyaHeCNhSKd9xuGwJC55Ko2FTjoBx7TQZj9OnrTQ9PAPsP4AvV70bEPHksjmeTmeSyVS8JjmKICRrtARS6hioFb1gzxVmisPAKhTDSjWivAOr1Z1nT9YwuDSqBv8FvhjsTwwPoHBp7TSSEwNB/4+M1AiDVBRFBiDlDVTaitboQAQCPAg2y3Kwqk3LN4Bnuy52mrguU1s223RoTUN7FaNadWLiji2stlRgPacOYtsQ/zXhGJTLAqbe1dXpZLOZXDarGCmAHAVNv1khNy+0ZSYzScUaZQoR1Fo9qtSw34dhCkx5E3vyjNi5vd7ZmYnZNLJcyXeNZ8/M1ISxzHFLgyXbpdAy4tZum0S8Mpqjm4YQ2ZXMjaSHyUfu4pIw7NvDvBuu/nWwV4wWM2BnW2dn07ZTEG62IkkJMY2rPIDyesquCyG1Spg4wnYaUtaBHJIARd1dnd1d3bievaenW0fR2LAU1msFzRfUimV9ciZ+F6xcDesNQdlhUgqVAgISWHOPTzReeVFSCa9CFizX8GByaCA5M193bCsOuVUuQdNPS9P0dnqqIm50QVxl/RwUKOFGIeDlAFhomQAp7qC1wuomaZ9LQKCkVDs6gZHaSiYVsQ8DXiwC66bKkDJbKjGDkYc0SVR0665bDQWmKODEwG319PZ2dHYgnR8cHFRFHRVLV6vLxnVp8qPDCjQ9cq0Q1GqYR6YVNpx6Hrmg5adweSdOsWKxQVk7/SH4NMj87vEOrtYY4gJDtbLJiiM74z9lzD+VxnFc9+Nh946bcZ2MzTOWTFsyZcmkZXmwceaohnviCpLbcJUo34N1z+VcjouYquDqFFGt8lLJwYoGFtMEY60qpGk5p4KIJRLJst+sksQxYFgjw8NYjwCwRkdHgUDAU5hJ4LxcmgezgaKizgAZP/obvynLZSSwgIoQtKhEaiKsVpfA+ZXLiROT/iv2JUOp+5lw1YovR4YSQwPZ5XxgO0TgVZRsRZpPtTXhkvjqFfe0dBNNuIicKLJDn4NDB3uCzRwWFqZVDMsJKWCbqiVCksHr7FxJpztE1Ao4bUes5NONOnc9oXiDAsvYB2Eqkril0oXlfC2Odca2jem08jnnnJNMJilCxHCnUpoP/DpPOqLtNOqNqFKh9AHjqpwqTLOYNHG7Sh+fmLC3b22m00m0ZQQo3Hse27ktk1/xadWBSqWrAoxs1X7ayi2q6ZgWVrAQNtDIsFUYZaapA3fCBQiUjTIlkJ9EIaYeWaO/37ftJEakcbxtydmZFF0/RbIka6VI4/ZJDC/AtCe81XK5pkpqgPTuXbtisLZ0dXdBVK1Wo9ZqK7B5iayKTWAvtVpQqaq1AHbcEsZM3MNM7lL507WCd2KiccH5Xhi1mhObTWtokHVk7NWCpIZei7XXODXqOoJRa3vN4hOLFlOg84WgmLLvqjVQUvZN2Fi5iDDxbGH6GR1p6PRvWOzrS+vcFxkE+CKI7WZnk44rKKyxVI8J6byS7gglXYbwwPUqjOerVWBCIBkinUrtphZTR9msTaObzpw+QzsFe1YprJ3t6t6suGGl4sPXcNuD66FoV5wwlazVSxtHAeA5jx23t53bBHdLwkVMTWBj0Ni5/L6HBDxoTU+RJgIVFHXq9YMGqQjRweY/YOr0QJ05LY9DmaJ1E6GAMwyBE4Vk82zO/ZGRSjo1SkNJtFg5jjh7Nl0qeYkE6KO0FVgIs5YsGReKpMhkio1mvtEIqJuoOTQ0NDa2TaeVwWDt3r1LrUZSRii/fAJ5vIzK5UahWDchnWGq6vpb8aJ4jP4p+EDFgTfkV5InJwMkFSqkoftmU24esToyvF7jfhO3ZoO2OoOt0eCNGgODUq+xWg3v6/AkvdRsML+JKeBI90LSihweOTZsIbWfBUDpUDTQadj9fYvDwzmagBDbQQRsaiIH9MNxsP/NdnTwaOg3iqclYVcgWWGuY6lQWFHdG7Vabe++fel0qlWRvuTii0EQlD45jre2Muk3SyVAqlDTqYE4plM96Dq7q1o6TegvtOKAcB055lSrPrVNEF6RBPPheXL7mAUQBE04f+Y3WLNJG0KmsGP4ALGDV8GlgCdSqmep6BJbJm3peiCnwksI1Ckb5YtyUvAvkU7Xto41M5meyMiM6v1eWUnMz2dSSfys46rcg5J6Za2UE0Q15HY9lZ5bWSmoknMQ+FdddeW68v2FF14wMDCgs162W6/nZ6aPAwlAW0DRog7XVC7KUpZfaQ19j04qWAo7OIalpeTklBauOI8AwrX1HJHLoBwFPmyAmpYyeIzw0QMI38KAkamiReRCpz5QLlyACTc4Z9uOgAQQQZIU63hAtTZvnhsa6lfLw0zGDx37ieNdAFoiaRG5R/nivG39AFqBiEoIIpsrhNF8sYj1eVDkXC531VVXrQOrv79/7969ijGrVoPZmSejKIhEIKgUR6u0ItnSQyXaOhjSi2Y0Xkox7cNHvUbdp74fvYFwwbXdsT0CCUIfF9JKOAVNjA7psvKGKjdnE0ZuArsjk0npJQksF0wPRS3gdCBys5OcpQcGzo6NZVw3EwkRF5bAWuWXk2fPZpNpgdZK+U1LV28xqpJk11EB8WR7eufz+fkgCNVqxL3nn79927bn9me9/nWvjTuZHTtRLZ9s1lfUhB2FF00hUqGwqTFIqadSaO6k1mWRcHE5v5CaOh0iJxNx7GQ1fTm+PcxlLSBN8apevfTNNIgY6oTXH6QAHAJYCNrwsecSTbctVdPHiNBJWSzX1TUzPh52dvRjQBeXGTG6sA4/02NhjgVXNWLvjVR+E5h5QBtWugVOCAJmU05npufmlpQO1mrVq69+y/M0s1155atHRoZNJGaHYamwdoQC3QD3hb5GR7SxkZct4it11lhI7VoQAvuZI16zGVgmcQ63MJSZtNi5AwuVyveZFRM6yYsYIcO0XI2U5SXoHjYVIXtMtbjiCn8v6XkZxjo6cjM7dqz19w8TCbXiBD0Ytamp3Px8KpGIXYEfRD5gFPhwDIhXFPqYa4ma8FR3z2K1erZYrFD7Y9jV1XXNNdc8D1h9fX1XXXllPAMM4oy1lSf9Zjmi3cXKSJtuw7BatT7W6kc3tWEwq2BTz5wFk2niPoLMDySAlctS5K5zu5bKlmCIiwKFCRbXQEP3HDMKHq7WA4xwIZrjgUAxlgnDdCY9Nb59aWhoE7maVlUMDqBYcJ9+utv14BhwfUAk/DDCKXBBgBvJFKZ14flINEGSNmyYPnNmWvnBUrH4mquu2rJly/N3K7/97W+PR2mAmW/WF4pKuCISLqWMcVpYyVKrJhwnCOPuIDh05/DRBAZSVpxvB8slO3LhjvFmFLX1kKqcid4YJQ9Aggg1fAwhIuobxP2uC4Y8afOUiLJhaHd3PbNz58rQ8CZaTW1oAPlNoBqPHewBr2LbcLEx9RQETVI+QCoksaI/QAGlT9FyPohOzc/nbQzKJIQCv/Ir73vB1u6LLrpw//5L4WN6fJdtryw/6vvlMIR9+YLwokwlypclTE5iXTbWtAGpMroj5uYyMzOgAnFEi5gBejt3NjIZYVmmcEDxh36gsgK2fknV9dTSRfAAgQ9c3C6X3SBYGuh/ZOfOoL9/hFheKzONSWEePf69zvkFkMF6FAFMjQDVDdtMAurJoUpNSPPMcKSZxWpDw9NTU5PU2c7K5fJFF130ute97getsHjfe98TZ+VBExv1ubWVQyRczTDSeJm61boyy7oFQcz0aGCY6hw7lgRd1pbECFdXZ7htrAnWHUHB3gLya7ay3EzZb3pJL04CpMBdNht2pQJHVctln9wxfvi8nT0dHf2hkvhWLR9Mnjj8TMfERCaRDC3MQ4Q0nhLrEzglIlIxk9BWxUIZGxjIB+Hk9PSCGlJZrVZ+44MffM7AyueC9ZrXvAaEq9n0Y2VcWXqw0VhGyxU1SRkDbbx0SKXSGrGlb1+phqcJPmh2LjO/EFKZt3VKYQSWqwZMgiQYIDMVKoOU2g9hBKGlXau6lbLtN4u57NPbtz+2b5+/afNmx8mgGom4OwIvEhj1Y0c7jh7tSqeFq/0mpwEKNKWLJiCY6xYRXfAdtzI8cubYseMgbph3KZcuuGDf29/+th+yhA7e+qEP/cZDDz1s/nSCYG154YHhTVdbQYNmFFFOynThx+1tuolIyucWnLCl03v2eHJwoEmJYGkmIFidXeH4eAXkTgjP9BeaRIWl5jSoOAH0opxKrnZ15fv767296UxmBI4cTXOcNiMJx7S6LY8c7jpytCuRjLgphWHZWGDWispCpqImSQdlEyzM1rH51dVngTGA98DROpXK7/3u737/GNnnX8n6S7/87ptuujmdTitXB5H86JZrO7t34zJWL4OjqXiSc8y9WTjry7bMyCLMP1umMGXFjbWYQfvp1y319yfCsPV1HCu94dx8eXUVbASEDV4QODglhAQE/JfrNBPJRjbT6OiIOnIugOQ4aUrdRHG+2ZQGpWODLlqHDvWeOpVLYNmZ8i3aOyLpBS8c+IK640LFFYSoB0Et17G8deyJe+75TrVaAwFcXVl51WX777rrzu+fr/j8Q11///d+795774OA26YICpR9cf6OZGqIsR49J0x19nGzyiPu8tNXmenCkKkUBH4ChKuvD4TLMc3NFvZ3MntkpGt4GKlvEDaQIUZqdaal61o41gaYlEN0F05VtK03j9tOgdBHxaL35BP9EMOn0iG1gyLguHglUkE+9sWZQlJIqRh0kdyujm07e+TIU6VSBTxtSJWyP/uz//m8kyiff9kvcC7w93fddbfqfoPDDv1iGNYy2W2m00SvhIllx4ClMi3MjMRSI4jwbcWiM7SxnE7ZMeNXgSaxXYarPzhQAyCZKbU5bpLbCVyChCZZFaefgxJdbQe7GU6d6vze9wZrtUQqJRzbtI5jHgWnsEA0TukwDEfQA+pxnihW27ZPl8uPHzp0FBdRMr6wMP+bH/rQC01ve8FRBY1G441v+rknnngyk0mbSXDN/sE39PVf7rg4tdex07adgECfMY9ZDgORMfpIY9bowurmPTxoP+Dn7Vx81WVNHJSiVafVJBeff7tuyfgZ8wEts4QDRXkyn089+2zf8nLG8wRE11hh5rofCtAh1Yt8nygoMisgpU0RNYSoNv3a0ND8wMChu+6+FxwaKGCxUNiyZdMjDz8MwfOPPATj0KGnfvaNbwI2omJG4i9s48jbOrv3uHjL2DbO1eMAFvPIeOF8UVUfxkKxRZPW9EQx7C92Xf/Nb5rt7vZoEm5bs1+rsyLuDzWltPbhD/Q08gwMCazV1dTERNfcHE4RSySEqtmoJQgRIoUWCjYfYSL9VkiJuhA136+CuxgfP37f/d9ZXl6Fk6GmouKdd95xxeUvONr0Bec6qAwqYHzLLbcYZcQWo1plKpkacZxOSlcahxinh/VgLHUZzBAjoRuUm02w4lZnp0gmBaiPAkO0UnQtUYpb46QpjlJJAnPtYEjn5rJPP73hyNENxUISc1uuMK0vuvUQBMoHmJrC90OMbDBiA4qhkQqCajq9tmvXqcefeGhmZkEV5BcX5j7ykT/9xXf94r9pcM+v//oHvvTlL3d3d5tOvcDxuodG3pHJbgJ9xAoVOkdQxgRNwdTypUQM9VGNeJJ6SFYQcIiT+/r84eHG4ECjszMAH2/zlvxI2erZUe07ACZ8qlp1VteSiwvp5eV0reYCXwW9s22dwyPOQSwDc/bYGY4cnaK/EO0U2nK0U4BUWE0kCnv3njl69MEjR04AUsCW5ufnrr76Ld/4+td/8IThHw5WtVq9+uprDhw82NHRYdQi8BJ9g0P/KZMdhcjfdcF4pTiRCYblPBdcnqWqWGpApORxhxBNQYTzQSYN55lJRbmOoLMjyObCVCry3Ai1iSkuajeavF51yxXYvFoNGJ9NC9MxitLlGV1P1RwTiC5EChj6hTqaCUNlzkmmsMJMSJ0/fXLi0UNPHXWpeL2Sz28f3/bde+7p6el5EYaNTU/PvOnn3nzmzJlsNmveHyYSvRsGr85kz8HIlvBC8gXGC+29SwNIzVxbGq5paqtcmkFXYM70mEg1z661CFHGky7QE3PM86myoCq76+4ErvVcTTQAI4WrDULFpCgIpHQCIiXrUirtA6TmTpw88NRTR226FYuFzo4OIFnbt29/0cbYHT58+K1v/fmV1VVgqiabGiUSXb0b3pDJ7VB4OYQX+EfOtD5a5CLXqaRylPHoOkM4Wk10jLVXBmPZURG1Cq310BTsJRDEobDNJKQEuGpkhEeR9GniNzC7umXV/KDW3bW6Y+fskSMHDh8+4dBcCghrgLDcduutl1566Ys8IPHgwcfe8c53FoulGC9cpZxId3ZfkcldQEX2pO2k0T9qPuFazGVqbrKl8dL3huVLXaTV/YWtOT087ns0qDHJ2hqlsedeZ6uRbeKqHXPTiQTknA1pNVCmwsrw8Oqm0bPfe+zRyakzyk4BUrCzG274BoTDL8nozYMHD1577bvyKyuxPsJ1Tia8TG5POrc/keimKRkpUkmc7M41ZA61deiptwQWbw+G4tEwpk+KStxW7GZ1oya19qjFA7jyALl4KDRe9EhRcwEyJZuWbEqrHkU1xsvbxlZSqcmHHz6wtJRXSIH2gW/62teuf+1rX/OvP/0feajr008//Qvv+i+nT5/u7OyMP5tM2tnsaCqzP5Hc4npJmp6NG5ZmLc9Mnka8WBxImkkBrLVCMu74b/9NBtMrT9UQPfeImraI1qskFlYcCKlAWj7AZDEQqAaEHJ0da2PblvP5IwcPHqrXGw5NAFrN53t7e66//mv79+9/yccFg6X/5Xe/99FHH43dB+wkkXCy2Y5UerebON9L9LgOjaxBlUzS8GmPmtBoYrCRMlpvbYYrtBYjMNNqr1IOTMh44Ixs61fVbakqJ2UhTIFl+Yw1IPoIo4ZtVzaNrnR1Tj/9zKGTJ0/Fw3oXFxf27N79z//81R07drxMg6jL5fJv/rff+spXvgp8AgRbpajAWGYziUx2CPBy3HNdNweGX5kw1Eeu8HINWK1chQJLmj7alrvUjfJWnJKWps5rMKIaMq7+AqSaABNadKu6oa8wNLScXz7+5KHDxWJZjaAFjr68tHjNNW/9/Oc/39vb+3KPOP/0p//yIx/9mO/7QPTjtBKIWEdHLp0Zte2d3AEiliUR81pWnww/DsC3aBK8smLaV2ovGY+WjhdixC1jVA3FihZDUQo5B6TQSAFLYKza1VkaHFxuNE4fOXx0emYeMFKxWqlYDMPgD/7g9//wD//wxzY8/8CBA7/929d97/HHu7q6VOZM9WSlUx4YtWR6mNtbLTZi250EmRsTV8MtzO8ttHMLs2hCrkvHqAnAEY1yikiUcBPo9XxQuu7uUl/vSrMxfeLkyTNnZoGOqgF88GB5aWnXrvM+/elPxbXlH9vPMtRqtY9//BN/9Zm/rtfroJWqiVBDlk50duYymQHbGZFshLFezjOIGloxR1kxIhYOShbSCwXW+gC71ZGgxxvielVKB4OFSqUqXZ2FVCpfKs1MTZ2enV1s/12ItbU18CC/9mu/+uEPfxgu3k/KD348+eSTf/qnH73zrrswHZHJqCZVajO0Egm3oyOTy3WnUhtsZ1BaGyzWzVmWI4M1c+LVDAqmmtrbMjZW24IorIeDkQI5qicS1XSq5CXW/ObS4uLc9PTc6mqR7Kb+lZFSqVSrVa668sqPfOQjl1122U/KD36032688aa/+Iu/OPjY99TvVMVSpkZLppJeLpfO5TpT6W7P62Z2N2NwtbM4P44lNYPFfrnYMyqBCjkLbLvpOHXXqQHxFqJYra6srOSBNxUKJd8P6KeK9C/xgPOpVSv79u297rrrrr322hfx7F78HykCDv2Nb9zw2c9+9sDBx2DnQF/JXZrJo9SoC9YklUqk00kIBlKpTCKR8dwUR3bm0W8SqBlaegwrWiX8+RjQ8mqlXC6W4K6KA/AiwVX7LS1HCoOgWCpBTHjRhRe8//3vB5he9B+uewl//uruu+/+4j986Z7v3AOMP5lMplIpk0SU63+JiVGlCn+PydajlDjVeFDxQr0AX68K0gMYzA9oqWtTrVZrNfCDnVdedeV73/OeN7zhDS/RD9S95D+sBlz/5ptvufnmmw899VSxULRRplKuhwNOY0K7flJw6/df2ue8srZWTGyY8H1wLL7fBNZy/p49b3nLm6+++q3bqKf4pbuxl+3HIE+ePHnfffffe9+9hw49NTszC6eqZr652MLgkMXhbH20Y9ZxCZWaCvCGy89TqeTQxo179+69Cgz4lVfu3Lnz5TkF9vL/cibANDk5efjwEbidnDg5MzMLthrsUKPZxB9b0w11+le/sK8okcjibxr2DA8Pj41t27V7F8QrY2NjP3R8+38EsJ5zgwMo6FuxXCmDGQ98YJsSJA4UNpvNdeK6Gbxxzn+8h/r/BBgA16kwIwArdGsAAAAASUVORK5CYII=' + } ); + } + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/pdfMessage.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/pdfMessage.html new file mode 100644 index 00000000..2fea4107 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/pdfMessage.html @@ -0,0 +1,848 @@ + + + + + + + Buttons example - PDF - message + + + + + + + + + + + + + + + + +
      +
      +

      Buttons example PDF - message

      +
      +

      It can often be useful to include description text in the print view to provide summary information about the table that will be included in the generated PDF. + The message option of the pdfHtml5 + button type provides this ability.

      +

      In the example here a simple string is used - for more complex options, please see the PDF image example for complete customisation + control.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + extend: 'pdfHtml5', + message: 'PDF created by PDFMake with Buttons for DataTables.' + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/pdfOpen.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/pdfOpen.html new file mode 100644 index 00000000..b1fabdea --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/pdfOpen.html @@ -0,0 +1,844 @@ + + + + + + + Buttons example - PDF - open in new window + + + + + + + + + + + + + + + + +
      +
      +

      Buttons example PDF - open in new window

      +
      +

      Please refer to the PDFMaker documentation for full details of how the PDF can be customised.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + extend: 'pdfHtml5', + download: 'open' + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/pdfPage.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/pdfPage.html new file mode 100644 index 00000000..21048eea --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/pdfPage.html @@ -0,0 +1,851 @@ + + + + + + + Buttons example - PDF - page size and orientation + + + + + + + + + + + + + + + + +
      +
      +

      Buttons example PDF - page size and orientation

      +
      +

      The page size and orientation of the pdfHtml5 + button type can be set using the orientation and pageSize options. By default these values are portrait and A4, but are easily customised as shown in this example which uses a landscape layout and US + legal paper size.

      +

      For a full list of the options available for these parameters, please refer to the pdfHtml5 documentation.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + extend: 'pdfHtml5', + orientation: 'landscape', + pageSize: 'LEGAL' + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/simple.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/simple.html new file mode 100644 index 00000000..2ec8fb7b --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/simple.html @@ -0,0 +1,881 @@ + + + + + + + Buttons example - HTML5 export buttons + + + + + + + + + + + + + + + + + +
      +
      +

      Buttons example HTML5 export buttons

      +
      +

      The HTML5 export buttons plug-in for Buttons provides four export buttons:

      + +

      This example demonstrates these four button types with their default options. The other examples in this section demonstrate some of the options available.

      +

      Please note that the copy, excel, csv and pdf button types may also use the HTML5 button types noted + here, providing a Flash fallback for older browsers (IE9-).

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + extend: 'copyHtml5', + exportOptions: { + columns: ':contains("Office")' + } + }, + 'excelHtml5', + 'csvHtml5', + 'pdfHtml5' + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/tsv.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/tsv.html new file mode 100644 index 00000000..87437fe1 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/html5/tsv.html @@ -0,0 +1,848 @@ + + + + + + + Buttons example - Tab separated values + + + + + + + + + + + + + + + +
      +
      +

      Buttons example Tab separated values

      +
      +

      The copyHtml5 and csvHtml5 buttons have the option to specify the character + (or more generally a full string) that separates the values between fields. By default this is a tab character for the copy button, but the Comma + Separated Values button uses a comma.

      +

      The fieldSeparator option is used to specify the field separator - in this example the exported file is a tab separated values file. The file + extension has also been set to reflect this, although that is optional as most spreadsheet applications will read TSV files without issue.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + 'copyHtml5', + { + extend: 'csvHtml5', + fieldSeparator: '\t', + extension: '.tsv' + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/index.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/index.html new file mode 100644 index 00000000..17ef7803 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/index.html @@ -0,0 +1,269 @@ + + + + + + + + + + + Buttons examples - Buttons for DataTables + + +
      +
      +

      Buttons example Buttons for DataTables

      +
      +

      The Buttons extension for DataTables provides a common set of options, API methods and styling to display buttons on a page that will interact with a DataTable. + The core library provides the based framework upon which plug-ins can built.

      +

      There are four plug-ins that are part of the core Buttons software providing various utilities:

      +
        +
      • HTML5 export buttons - Copy to clipboard; Save to Excel, CSV and PDF
      • +
      • Flash export buttons - Copy to clipboard; Save to Excel, CSV and PDF for older browsers
      • +
      • Print view
      • +
      • Column visibility buttons
      • +
      +

      Other extensions for DataTables also provide buttons - Editor for example make the create, edit and remove buttons available.

      +

      The examples presented here give an introduce to how Buttons can be used, the API and its various core plug-in buttons.

      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/className.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/className.html new file mode 100644 index 00000000..b23a2f76 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/className.html @@ -0,0 +1,870 @@ + + + + + + + Buttons example - Class names + + + + + + + + + + + + + +
      +
      +

      Buttons example Class names

      +
      +

      This example also shows button definition objects being used to describe buttons. In this case we use the buttons.buttons.className + option to specify a custom class name for the button. A little bit of CSS is used to style the buttons - the class names and CSS can of course be adjusted to suit + whatever styling requirements you have.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + text: 'Red', + className: 'red' + }, + { + text: 'Orange', + className: 'orange' + }, + { + text: 'Green', + className: 'green' + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      a.dt-button.red { + color: red; + } + + a.dt-button.orange { + color: orange; + } + + a.dt-button.green { + color: green; + } +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/collections-autoClose.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/collections-autoClose.html new file mode 100644 index 00000000..2d9dd2f4 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/collections-autoClose.html @@ -0,0 +1,862 @@ + + + + + + + Buttons example - Auto close collection + + + + + + + + + + + + + +
      +
      +

      Buttons example Auto close collection

      +
      +

      Buttons' collections will remain on screen when a sub-button is activated by default, but this behaviour isn't always desirable and can be controlled through + the use of the autoClose option as shown in this example.

      +

      In every other regard it is identical to the collections example but in this case the collection will close automatically when + one of the sub-buttons is selected.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + extend: 'collection', + text: 'Table control', + autoClose: true, + buttons: [ + { + text: 'Toggle start date', + action: function ( e, dt, node, config ) { + dt.column( -2 ).visible( ! dt.column( -2 ).visible() ); + } + }, + { + text: 'Toggle salary', + action: function ( e, dt, node, config ) { + dt.column( -1 ).visible( ! dt.column( -1 ).visible() ); + } + } + ] + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/collections-sub.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/collections-sub.html new file mode 100644 index 00000000..fb290571 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/collections-sub.html @@ -0,0 +1,870 @@ + + + + + + + Buttons example - Multi-level collections + + + + + + + + + + + + + + +
      +
      +

      Buttons example Multi-level collections

      +
      +

      As of Buttons 1.1, basic options for displaying a collection inside a collection is possible simply by using a collection button in the buttons + array for another collection. This Inception like behaviour basically means that multi-level collections are + possible.

      +

      It is worth noting that only a single collection can be shown at a time, so the display of any sub-collection will replace the display of the existing + collection.

      +

      This example shows a custom collection button (matching the simple collection example) with the addition of a column visibility + button, which when activated will show another collection of buttons, this time controlling the column visibility.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + extend: 'collection', + text: 'Table control', + buttons: [ + { + text: 'Toggle start date', + action: function ( e, dt, node, config ) { + dt.column( -2 ).visible( ! dt.column( -2 ).visible() ); + } + }, + { + text: 'Toggle salary', + action: function ( e, dt, node, config ) { + dt.column( -1 ).visible( ! dt.column( -1 ).visible() ); + } + }, + 'colvis' + ] + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/collections.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/collections.html new file mode 100644 index 00000000..c19cdd5d --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/collections.html @@ -0,0 +1,865 @@ + + + + + + + Buttons example - Collections + + + + + + + + + + + + + +
      +
      +

      Buttons example Collections

      +
      +

      The collection button provides the ability to + show a list of buttons when activated. The buttons it will display in the sub-list are defined by its buttons property which can take all of the same + button options as the buttons.buttons array (which the exception of another collection - collections cannot be nested).

      +

      Button collections can be useful for grouping functionality of button types - for example one collection could provide file export options, another table + editing and a third column visibility controls.

      +

      This simple example shows a collection with two custom buttons. These buttons simply toggle the visibility of the final two columns in the table (if you require + full column visibility control, check out the colvis + button type).

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + extend: 'collection', + text: 'Table control', + buttons: [ + { + text: 'Toggle start date', + action: function ( e, dt, node, config ) { + dt.column( -2 ).visible( ! dt.column( -2 ).visible() ); + } + }, + { + text: 'Toggle salary', + action: function ( e, dt, node, config ) { + dt.column( -1 ).visible( ! dt.column( -1 ).visible() ); + } + } + ] + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/custom.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/custom.html new file mode 100644 index 00000000..b9ef144c --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/custom.html @@ -0,0 +1,844 @@ + + + + + + + Buttons example - Custom button + + + + + + + + + + + + + +
      +
      +

      Buttons example Custom button

      +
      +

      Fundamentally, each button is described by an object - this object is read by Buttons and displayed as appropriate. There are a number of parameters that + Buttons will automatically look for in the button description object such as buttons.buttons.text and buttons.buttons.action which are the two fundamental parameters (button text and the action to take when + activated).

      +

      All parameters (including these two, although to make the button useful they will need to be specified!) are optional, and each plug-in button type can also + specify its own parameters (for example the pdfHtml5 button type uses message to display a custom message in the generated PDF).

      +

      This example shows a single button that is specified using the buttons.buttons.text and buttons.buttons.action parameters only - it simply shows an alert when activated, but any Javascript function could be + run when the button is activated.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + text: 'My button', + action: function ( e, dt, node, config ) { + alert( 'Button activated' ); + } + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/export.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/export.html new file mode 100644 index 00000000..989523f7 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/export.html @@ -0,0 +1,875 @@ + + + + + + + Buttons example - File export + + + + + + + + + + + + + + + + + + + +
      +
      +

      Buttons example File export

      +
      +

      Exporting data from a table can often be a key part of a complex application. The Buttons extension for DataTables provides three plug-ins that provide + overlapping functionality for data export:

      +
        +
      • HTML5 export buttons - makes use of HTML5 APIs to create files client-side
      • +
      • Flash export buttons - uses Adobe Flash for legacy browsers
      • +
      • Print button
      • +
      +

      Both sets of buttons provide:

      +
        +
      • Copy to clipboard
      • +
      • Save as Excel (XLSX)
      • +
      • Save as CSV
      • +
      • Save as PDF
      • +
      • Display a print view
      • +
      +

      Buttons provides button types that will automatically determine if HTML5 or Flash should be used based on the browser's functionality and it is + strongly recommended that you use these button types over the specific HTML5 or Flash button types. These are: copy, csv, excel, pdf.

      +

      This example shows those four button types, plus print, being used with all required dependencies being loaded.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + 'copy', 'csv', 'excel', 'pdf', 'print' + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/index.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/index.html new file mode 100644 index 00000000..8b58abe8 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/index.html @@ -0,0 +1,85 @@ + + + + + + + + + + + Buttons examples - Initialisation + + +
      +
      +

      Buttons example Initialisation

      +
      +

      Buttons is an unimaginatively named library that provides buttons for DataTables. Simple, single click buttons can be useful when used in combination with a + table providing end users with the ability to interact with the table. This can take the form of exporting data, controlling column visibility, triggering an + editing action or activating any other custom method you wish to use.

      +

      The set of examples available here show how Buttons can be initialised and the basics of how to use it.

      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/keys.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/keys.html new file mode 100644 index 00000000..4983812a --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/keys.html @@ -0,0 +1,863 @@ + + + + + + + Buttons example - Keyboard activation + + + + + + + + + + + + + +
      +
      +

      Buttons example Keyboard activation

      +
      +

      Keyboard navigation is essential for fast navigation of a table operations and also for good accessibility. Buttons provides the ability to give each button a + key binding - i.e. a key combination that when pressed will activate the button's action.

      +

      The key binding can be given as a single character if you wish to listen for an unmodified key press, or as an object if you wish it to only be activated when a + modifier key such as shift, alt, etc, is pressed.

      +

      Only when there is no element on the page that has focus will Buttons act on a key press. This means that if you search for (for example) 1 in the DataTables + search box, it will not activate Button 1 in this example. Having said that, adding a modifier key, such as shift or alt can often be useful to prevent + accidental triggering of a button.

      +

      This example shows two buttons; the first will be activated if 1 is pressed on the keyboard. The second requires alt + 2 to be + pressed.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + text: 'Button <u>1</u>', + key: '1', + action: function ( e, dt, node, config ) { + alert( 'Button 1 activated' ); + } + }, + { + text: 'Button <u><i>alt</i> 2</u>', + key: { + altKey: true, + key: '2' + }, + action: function ( e, dt, node, config ) { + alert( 'Button 2 activated' ); + } + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/multiple.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/multiple.html new file mode 100644 index 00000000..6442d505 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/multiple.html @@ -0,0 +1,885 @@ + + + + + + + Buttons example - Multiple button groups + + + + + + + + + + + + + +
      +
      +

      Buttons example Multiple button groups

      +
      +

      Buttons' ability to have new instances constructed arbitrarily gives it the ability to have multiple button instances created for a + single DataTable. This can be useful if you wish to display button groups with different functionality (file export, editing, etc).

      +

      In this example the buttons option is + used to construct the first buttons set. The new $.fn.dataTable.Buttons() constructor is then used to create a second and finally the API used to + insert this into the document.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + var table = $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + text: 'Button 1', + action: function ( e, dt, node, config ) { + alert( 'Button 1 clicked on' ); + } + } + ] + } ); + + new $.fn.dataTable.Buttons( table, { + buttons: [ + { + text: 'Button 2', + action: function ( e, dt, node, conf ) { + alert( 'Button 2 clicked on' ); + } + }, + { + text: 'Button 3', + action: function ( e, dt, node, conf ) { + alert( 'Button 3 clicked on' ); + } + } + ] + } ); + + table.buttons( 1, null ).container().appendTo( + table.table().container() + ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      div.dt-buttons { + clear: both; + } +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/new.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/new.html new file mode 100644 index 00000000..f2d9b006 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/new.html @@ -0,0 +1,864 @@ + + + + + + + Buttons example - `new` initialisation + + + + + + + + + + + + + +
      +
      +

      Buttons example `new` initialisation

      +
      +

      Buttons will typically be initialised through the buttons parameter in the DataTables configuration object, but it is also possible to construct a new buttons list at any + time using the new $.fn.dataTable.Buttons() constructor. This constructor takes two parameters:

      +
        +
      1. DataTable to apply the buttons to
      2. +
      3. Button options - this matches the options that can be given to the buttons option. +
      4. +
      +

      This example shows a Buttons constructor being used with its API to create and insert a set of buttons after a DataTable has been created.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + var table = $('#example').DataTable(); + + new $.fn.dataTable.Buttons( table, { + buttons: [ + { + text: 'Button 1', + action: function ( e, dt, node, conf ) { + console.log( 'Button 1 clicked on' ); + } + }, + { + text: 'Button 2', + action: function ( e, dt, node, conf ) { + console.log( 'Button 2 clicked on' ); + } + } + ] + } ); + + table.buttons( 0, null ).container().prependTo( + table.table().container() + ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/pageLength.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/pageLength.html new file mode 100644 index 00000000..5cc56fc0 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/pageLength.html @@ -0,0 +1,841 @@ + + + + + + + Buttons example - Page length + + + + + + + + + + + + + +
      +
      +

      Buttons example Page length

      +
      +

      Buttons are often inserted into the document where DataTables default page length select width would go (top left), to + provide controls or table information at each of the four corners of the table. However, you may wish to keep the length list, which you can do by adding the + l option back into dom, or + for improved styling integration you can use the pageLength button.

      +

      The pageLength button acts in exactly the + same way as the default length list and will inherit the options specified by the lengthMenu option.

      +

      This example shows the pageLength button + being used with lengthMenu to + specify page lengths of 10, 25, 50 and all rows, with language strings used for the buttons.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + lengthMenu: [ + [ 10, 25, 50, -1 ], + [ '10 rows', '25 rows', '50 rows', 'Show all' ] + ], + buttons: [ + 'pageLength' + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/plugins.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/plugins.html new file mode 100644 index 00000000..718c9601 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/plugins.html @@ -0,0 +1,870 @@ + + + + + + + Buttons example - Plug-ins + + + + + + + + + + + + + +
      +
      +

      Buttons example Plug-ins

      +
      +

      While it is quite simple to create a custom button with Buttons, if you have a complex button that you wish to reuse the logic from + for multiple buttons you may wish to define a plug-in button type. This is simply done by attaching your new button to the $.fn.dataTable.ext.buttons + object. Give the button the name that you wish to use to refer to it in the buttons.buttons.extend option. The object assigned should contain whatever parameters you require for your + button.

      +

      This simple example shows an alert button type being defined which is then used for three different buttons. Each has custom text, but the + action method is shared between them.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $.fn.dataTable.ext.buttons.alert = { + className: 'buttons-alert', + + action: function ( e, dt, node, config ) { + alert( this.text() ); + } +}; + + +$(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + extend: 'alert', + text: 'My button 1' + }, + { + extend: 'alert', + text: 'My button 2' + }, + { + extend: 'alert', + text: 'My button 3' + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/simple.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/simple.html new file mode 100644 index 00000000..16e7570b --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/initialisation/simple.html @@ -0,0 +1,865 @@ + + + + + + + Buttons example - Basic initialisation + + + + + + + + + + + + + + + + + + + +
      +
      +

      Buttons example Basic initialisation

      +
      +

      Buttons can be initialised very easily though the buttons object which can be given as an array of the buttons that you wish to display. The B option in the dom + parameter will instruct DataTables where the buttons should be placed in the document - in this case, at the top left (CSS also plays a part).

      +

      The simplest method of using buttons is to use predefined button types which can be displayed simply by + using their name in the buttons array. + Each button can also be extended to provide customisation of that button.

      +

      This example shows the copy, csv, excel, pdf and print buttons being used to display data export options for + the DataTable.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + 'copy', 'csv', 'excel', 'pdf', 'print' + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/print/autoPrint.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/print/autoPrint.html new file mode 100644 index 00000000..8ef24a19 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/print/autoPrint.html @@ -0,0 +1,838 @@ + + + + + + + Buttons example - Disable auto print + + + + + + + + + + + + + + +
      +
      +

      Buttons example Disable auto print

      +
      +

      By default, when the print button opens the print + view window it will automatically call the browser's window.print() method to present the browser's print dialogue box to the end user and they can + set the options they wish. When the print action is confirmed or cancelled the print view window is then automatically closed.

      +

      If this automatic print and close behaviour is not what you want and you would rather the end user select the print command themselves, the + autoPrint option can be specified to disable this behaviour. This example shows that in practice.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + extend: 'print', + autoPrint: false + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/print/columns.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/print/columns.html new file mode 100644 index 00000000..67a55c54 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/print/columns.html @@ -0,0 +1,859 @@ + + + + + + + Buttons example - Export options - column selector + + + + + + + + + + + + + + + +
      +
      +

      Buttons example Export options - column selector

      +
      +

      The exportOptions.columns option of the print button provides the ability to select only certain columns (using a column-selector). In this example only the + visible columns are used for the printing.

      +

      The column visibility buttons (colvis) are + included in this example so the column visibility can be easily changed. Additionally, the last column in the table is hidden by default (columns.visible).

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + extend: 'print', + exportOptions: { + columns: ':visible' + } + }, + 'colvis' + ], + columnDefs: [ { + targets: -1, + visible: false + } ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/print/customisation.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/print/customisation.html new file mode 100644 index 00000000..a3f5b39d --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/print/customisation.html @@ -0,0 +1,864 @@ + + + + + + + Buttons example - Customisation of the print view window + + + + + + + + + + + + + + +
      +
      +

      Buttons example Customisation of the print view window

      +
      +

      If you wish to customise the print view document, this can be done through the customize method of the print button type. This is a callback function that is + executed when the print view document has been created, and gives you the ability to modify it to suit your needs. The function is given a single parameter - the + window object for the print view document.

      +

      This simple example shows:

      +
        +
      • How an image can be inserted into the print view document using jQuery
      • +
      • The document's font-size can be adjusted to be suitable for printing
      • +
      • A class added to the table to improve its layout for printing
      • +
      • The font-size of the table set to match the main document's font-size.
      • +
      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + extend: 'print', + customize: function ( win ) { + $(win.document.body) + .css( 'font-size', '10pt' ) + .prepend( + '<img src="http://datatables.net/media/images/logo-fade.png" style="position:absolute; top:0; left:0;" />' + ); + + $(win.document.body).find( 'table' ) + .addClass( 'compact' ) + .css( 'font-size', 'inherit' ); + } + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/print/index.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/print/index.html new file mode 100644 index 00000000..29df5507 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/print/index.html @@ -0,0 +1,65 @@ + + + + + + + + + + + Buttons examples - Print + + +
      +
      +

      Buttons example Print

      +
      +

      This set of examples shows how the print button + type can be used and customised to display a printable version of the DataTable.

      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/print/message.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/print/message.html new file mode 100644 index 00000000..315e4171 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/print/message.html @@ -0,0 +1,837 @@ + + + + + + + Buttons example - Custom message + + + + + + + + + + + + + + +
      +
      +

      Buttons example Custom message

      +
      +

      It can often be useful to include description text in the print view to provide summary information about the table that will be included in the hard printed + copy. The message option of the print + button type provides this ability.

      +

      In the example here a simple string is used, but complex HTML could be used if required.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + extend: 'print', + message: 'This print was produced using the Print button for DataTables' + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/print/select.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/print/select.html new file mode 100644 index 00000000..aa5d231c --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/print/select.html @@ -0,0 +1,869 @@ + + + + + + + Buttons example - Export options - row selector + + + + + + + + + + + + + + + +
      +
      +

      Buttons example Export options - row selector

      +
      +

      The print button provides a lot of flexibility in + the selection of the data that is to be exported. The exportOptions object can be used to determine what columns and rows are included in the printed + data. A DataTables selector-modifier + object can be given using the exportOptions.modifier option and has the ability to determine the order of the print table and if filtering rows are + included, among other actions.

      +

      In this example the Select extension for DataTables is used to give the end user the ability to select + rows by clicking on them. Two print buttons are utilised in this example to demonstrate the exportOptions option:

      +
        +
      • The first button will print all rows (after filtering)
      • +
      • The second button will print only the selected rows.
      • +
      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + extend: 'print', + text: 'Print all' + }, + { + extend: 'print', + text: 'Print selected', + exportOptions: { + modifier: { + selected: true + } + } + } + ], + select: true + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/print/simple.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/print/simple.html new file mode 100644 index 00000000..6f967bef --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/print/simple.html @@ -0,0 +1,830 @@ + + + + + + + Buttons example - Print button + + + + + + + + + + + + + + +
      +
      +

      Buttons example Print button

      +
      +

      This simple example shows Buttons configured with the print button type only. The print button will open a new window in the end user's browser and, by default, automatically trigger + the print function allowing the end user to print the table. The window will be closed once the print is complete, or has been cancelled.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + 'print' + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/styling/bootstrap.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/styling/bootstrap.html new file mode 100644 index 00000000..f36f4513 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/styling/bootstrap.html @@ -0,0 +1,878 @@ + + + + + + + Buttons example - Bootstrap 3 + + + + + + + + + + + + + + + + + + + + + + +
      +
      +

      Buttons example Bootstrap 3

      +
      +

      This example shows DataTables and the Buttons extension being used with the Bootstrap framework providing the styling. The + DataTables / Bootstrap integration provides seamless integration for DataTables to be used in a Bootstrap + page.

      +

      Note that for ease of implementation, the buttons option is specified as true to use the default options, and the buttons().container() method then used to insert the + buttons into the document. It is possible to use the dom option to insert the buttons like in the DataTables styled examples, but the default dom option used for Bootstrap styling is quite + complex and would need to be fully restated.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + var table = $('#example').DataTable( { + lengthChange: false, + buttons: [ 'copy', 'excel', 'pdf', 'colvis' ] + } ); + + table.buttons().container() + .appendTo( '#example_wrapper .col-sm-6:eq(0)' ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/styling/bootstrap4.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/styling/bootstrap4.html new file mode 100644 index 00000000..6ffea37e --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/styling/bootstrap4.html @@ -0,0 +1,881 @@ + + + + + + + Buttons example - Bootstrap 4 + + + + + + + + + + + + + + + + + + + + + + +
      +
      +

      Buttons example Bootstrap 4

      +
      +

      This example shows DataTables and the Buttons extension being used with the Bootstrap 4 framework providing the + styling.

      +

      Please note that Bootstrap 4 is still in alpha at the time this example was published and as such the integration may need to change as Bootstrap continues its + development. Bootstrap 4 integration will only be made available with the DataTables downloader once a stable version of Bootstrap 4 has been released. Until then + the integration files must be installed from source.

      +

      Note that for ease of implementation, the buttons option is specified as true to use the default options, and the buttons().container() method then used to insert the + buttons into the document. It is possible to use the dom option to insert the buttons like in the DataTables styled examples, but the default dom option used for Bootstrap styling is quite + complex and would need to be fully restated.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + var table = $('#example').DataTable( { + lengthChange: false, + buttons: [ 'copy', 'excel', 'pdf', 'colvis' ] + } ); + + table.buttons().container() + .appendTo( '#example_wrapper .col-md-6:eq(0)' ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/styling/foundation.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/styling/foundation.html new file mode 100644 index 00000000..507e9cc6 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/styling/foundation.html @@ -0,0 +1,879 @@ + + + + + + + Buttons example - Foundation styling + + + + + + + + + + + + + + + + + + + + + + +
      +
      +

      Buttons example Foundation styling

      +
      +

      This example shows DataTables and the Buttons extension being used with the Foundation framework providing the styling. + The DataTables / Foundation integration prove seamless integration for DataTables to be used in a + Foundation page.

      +

      Note that for ease of implementation, the buttons option is specified as true to use the default options, and the buttons().container() method then used to insert the + buttons into the document. It is possible to use the dom option to insert the buttons like in the DataTables styled examples, but the default dom option used for Foundation styling is quite + complex and would need to be fully restated.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + var table = $('#example').DataTable( { + lengthChange: false, + buttons: [ 'copy', 'excel', 'pdf', 'colvis' ] + } ); + + table.buttons().container() + .appendTo( '#example_wrapper .small-6.columns:eq(0)' ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/styling/icons.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/styling/icons.html new file mode 100644 index 00000000..fe1cf7df --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/styling/icons.html @@ -0,0 +1,892 @@ + + + + + + + Buttons example - Icons + + + + + + + + + + + + + + + + + + +
      +
      +

      Buttons example Icons

      +
      +

      This example shows how the buttons.buttons.text option can be used to show an icon in the button instead of regular text. Note also that the + buttons.buttons.titleAttr option is used to specify a tooltip title for the button, which can improve accessibility, + letting users know what the button does when they hover their mouse over the button.

      +

      Font Awesome is used to provide the icons uses here, but any image / font can be used as suits your + requirements.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + $('#example').DataTable( { + dom: 'Bfrtip', + buttons: [ + { + extend: 'copyHtml5', + text: '<i class="fa fa-files-o"></i>', + titleAttr: 'Copy' + }, + { + extend: 'excelHtml5', + text: '<i class="fa fa-file-excel-o"></i>', + titleAttr: 'Excel' + }, + { + extend: 'csvHtml5', + text: '<i class="fa fa-file-text-o"></i>', + titleAttr: 'CSV' + }, + { + extend: 'pdfHtml5', + text: '<i class="fa fa-file-pdf-o"></i>', + titleAttr: 'PDF' + } + ] + } ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/styling/index.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/styling/index.html new file mode 100644 index 00000000..9918f46f --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/styling/index.html @@ -0,0 +1,65 @@ + + + + + + + + + + + Buttons examples - Styling + + +
      +
      +

      Buttons example Styling

      +
      +

      The Buttons library, like all DataTables extensions provides extensive styling options and the ability to be styled by the styling frameworks supported by + DataTables core. This section shows Buttons being styling using external CSS frameworks.

      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/styling/jqueryui.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/styling/jqueryui.html new file mode 100644 index 00000000..49196e2a --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/styling/jqueryui.html @@ -0,0 +1,876 @@ + + + + + + + Buttons example - jQuery UI styling + + + + + + + + + + + + + + + + + + + + + + +
      +
      +

      Buttons example jQuery UI styling

      +
      +

      This example shows DataTables and Buttons being used with jQuery UI providing the base styling information.

      +

      Note that for ease of implementation, the buttons option is specified with a basic set of buttons, and the buttons().container() method then used to insert the + buttons into the document. It is possible to use the dom option to insert the buttons like in the DataTables styled examples, but the default dom option used for jQuery UI styling is quite + complex and would need to be fully restated.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + var table = $('#example').DataTable( { + lengthChange: false, + buttons: [ 'copy', 'excel', 'pdf', 'colvis' ] + } ); + + table.buttons().container() + .insertBefore( '#example_filter' ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/styling/semanticui.html b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/styling/semanticui.html new file mode 100644 index 00000000..96e3b1e8 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/examples/styling/semanticui.html @@ -0,0 +1,877 @@ + + + + + + + Buttons example - Semantic UI styling + + + + + + + + + + + + + + + + + + + + + + +
      +
      +

      Buttons example Semantic UI styling

      +
      +

      This example shows DataTables and the Buttons extension being used with the Semantic UI framework providing the styling. + The DataTables / Semantic UI integration provides seamless integration for DataTables to be used in a Semantic UI page.

      +

      Note that for ease of implementation, the buttons option is specified with a basic set of buttons, and the buttons().container() method then used to insert the + buttons into the document. It is possible to use the dom option to insert the buttons like in the DataTables styled examples, but the default dom option used for Semantic UI styling is quite + complex and would need to be fully restated.

      +
      +
      + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
      NamePositionOfficeAgeStart dateSalary
      NamePositionOfficeAgeStart dateSalary
      Tiger NixonSystem ArchitectEdinburgh612011/04/25$320,800
      Garrett WintersAccountantTokyo632011/07/25$170,750
      Ashton CoxJunior Technical AuthorSan Francisco662009/01/12$86,000
      Cedric KellySenior Javascript DeveloperEdinburgh222012/03/29$433,060
      Airi SatouAccountantTokyo332008/11/28$162,700
      Brielle WilliamsonIntegration SpecialistNew York612012/12/02$372,000
      Herrod ChandlerSales AssistantSan Francisco592012/08/06$137,500
      Rhona DavidsonIntegration SpecialistTokyo552010/10/14$327,900
      Colleen HurstJavascript DeveloperSan Francisco392009/09/15$205,500
      Sonya FrostSoftware EngineerEdinburgh232008/12/13$103,600
      Jena GainesOffice ManagerLondon302008/12/19$90,560
      Quinn FlynnSupport LeadEdinburgh222013/03/03$342,000
      Charde MarshallRegional DirectorSan Francisco362008/10/16$470,600
      Haley KennedySenior Marketing DesignerLondon432012/12/18$313,500
      Tatyana FitzpatrickRegional DirectorLondon192010/03/17$385,750
      Michael SilvaMarketing DesignerLondon662012/11/27$198,500
      Paul ByrdChief Financial Officer (CFO)New York642010/06/09$725,000
      Gloria LittleSystems AdministratorNew York592009/04/10$237,500
      Bradley GreerSoftware EngineerLondon412012/10/13$132,000
      Dai RiosPersonnel LeadEdinburgh352012/09/26$217,500
      Jenette CaldwellDevelopment LeadNew York302011/09/03$345,000
      Yuri BerryChief Marketing Officer (CMO)New York402009/06/25$675,000
      Caesar VancePre-Sales SupportNew York212011/12/12$106,450
      Doris WilderSales AssistantSidney232010/09/20$85,600
      Angelica RamosChief Executive Officer (CEO)London472009/10/09$1,200,000
      Gavin JoyceDeveloperEdinburgh422010/12/22$92,575
      Jennifer ChangRegional DirectorSingapore282010/11/14$357,650
      Brenden WagnerSoftware EngineerSan Francisco282011/06/07$206,850
      Fiona GreenChief Operating Officer (COO)San Francisco482010/03/11$850,000
      Shou ItouRegional MarketingTokyo202011/08/14$163,000
      Michelle HouseIntegration SpecialistSidney372011/06/02$95,400
      Suki BurksDeveloperLondon532009/10/22$114,500
      Prescott BartlettTechnical AuthorLondon272011/05/07$145,000
      Gavin CortezTeam LeaderSan Francisco222008/10/26$235,500
      Martena MccrayPost-Sales supportEdinburgh462011/03/09$324,050
      Unity ButlerMarketing DesignerSan Francisco472009/12/09$85,675
      Howard HatfieldOffice ManagerSan Francisco512008/12/16$164,500
      Hope FuentesSecretarySan Francisco412010/02/12$109,850
      Vivian HarrellFinancial ControllerSan Francisco622009/02/14$452,500
      Timothy MooneyOffice ManagerLondon372008/12/11$136,200
      Jackson BradshawDirectorNew York652008/09/26$645,750
      Olivia LiangSupport EngineerSingapore642011/02/03$234,500
      Bruno NashSoftware EngineerLondon382011/05/03$163,500
      Sakura YamamotoSupport EngineerTokyo372009/08/19$139,575
      Thor WaltonDeveloperNew York612013/08/11$98,540
      Finn CamachoSupport EngineerSan Francisco472009/07/07$87,500
      Serge BaldwinData CoordinatorSingapore642012/04/09$138,575
      Zenaida FrankSoftware EngineerNew York632010/01/04$125,250
      Zorita SerranoSoftware EngineerSan Francisco562012/06/01$115,000
      Jennifer AcostaJunior Javascript DeveloperEdinburgh432013/02/01$75,650
      Cara StevensSales AssistantNew York462011/12/06$145,600
      Hermione ButlerRegional DirectorLondon472011/03/21$356,250
      Lael GreerSystems AdministratorLondon212009/02/27$103,500
      Jonas AlexanderDeveloperSan Francisco302010/07/14$86,500
      Shad DeckerRegional DirectorEdinburgh512008/11/13$183,000
      Michael BruceJavascript DeveloperSingapore292011/06/27$183,000
      Donna SniderCustomer SupportNew York272011/01/25$112,000
      +
        +
      • Javascript
      • +
      • HTML
      • +
      • CSS
      • +
      • Ajax
      • +
      • Server-side script
      • +
      +
      +
      +

      The Javascript shown below is used to initialise the table shown in this example:

      $(document).ready(function() { + var table = $('#example').DataTable( { + lengthChange: false, + buttons: [ 'copy', 'excel', 'pdf', 'colvis' ] + } ); + + table.buttons().container() + .appendTo( $('div.eight.column:eq(0)', table.table().container()) ); +} ); +

      In addition to the above code, the following Javascript library files are loaded for use in this example:

      + +
      +
      +

      The HTML shown below is the raw HTML table element, before it has been enhanced by DataTables:

      +
      +
      +
      +

      This example uses a little bit of additional CSS beyond what is loaded from the library files (below), in order to correctly display the table. The + additional CSS used is shown below:

      +
      +

      The following CSS library files are loaded for use in this example to provide the styling of the table:

      + +
      +
      +

      This table loads data by Ajax. The latest data that has been loaded is shown below. This data will update automatically as any additional data is + loaded.

      +
      +
      +

      The script used to perform the server-side processing for this table is shown below. Please note that this is just an example script using PHP. Server-side + processing scripts can be written in any language, using the protocol described in the DataTables + documentation.

      +
      +
      +
      +
      +
      + +
      + + \ No newline at end of file diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/js/buttons.bootstrap.js b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/js/buttons.bootstrap.js new file mode 100644 index 00000000..0dc7b5bb --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/js/buttons.bootstrap.js @@ -0,0 +1,68 @@ +/*! Bootstrap integration for DataTables' Buttons + * ©2016 SpryMedia Ltd - datatables.net/license + */ + +(function( factory ){ + if ( typeof define === 'function' && define.amd ) { + // AMD + define( ['jquery', 'datatables.net-bs', 'datatables.net-buttons'], function ( $ ) { + return factory( $, window, document ); + } ); + } + else if ( typeof exports === 'object' ) { + // CommonJS + module.exports = function (root, $) { + if ( ! root ) { + root = window; + } + + if ( ! $ || ! $.fn.dataTable ) { + $ = require('datatables.net-bs')(root, $).$; + } + + if ( ! $.fn.dataTable.Buttons ) { + require('datatables.net-buttons')(root, $); + } + + return factory( $, root, root.document ); + }; + } + else { + // Browser + factory( jQuery, window, document ); + } +}(function( $, window, document, undefined ) { +'use strict'; +var DataTable = $.fn.dataTable; + + +$.extend( true, DataTable.Buttons.defaults, { + dom: { + container: { + className: 'dt-buttons btn-group' + }, + button: { + className: 'btn btn-default' + }, + collection: { + tag: 'ul', + className: 'dt-button-collection dropdown-menu', + button: { + tag: 'li', + className: 'dt-button' + }, + buttonLiner: { + tag: 'a', + className: '' + } + } + } +} ); + +DataTable.ext.buttons.collection.text = function ( dt ) { + return dt.i18n('buttons.collection', 'Collection '); +}; + + +return DataTable.Buttons; +})); diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/js/buttons.bootstrap.min.js b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/js/buttons.bootstrap.min.js new file mode 100644 index 00000000..dc28bac1 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/js/buttons.bootstrap.min.js @@ -0,0 +1,6 @@ +/*! + Bootstrap integration for DataTables' Buttons + ©2016 SpryMedia Ltd - datatables.net/license +*/ +(function(c){"function"===typeof define&&define.amd?define(["jquery","datatables.net-bs","datatables.net-buttons"],function(a){return c(a,window,document)}):"object"===typeof exports?module.exports=function(a,b){a||(a=window);if(!b||!b.fn.dataTable)b=require("datatables.net-bs")(a,b).$;b.fn.dataTable.Buttons||require("datatables.net-buttons")(a,b);return c(b,a,a.document)}:c(jQuery,window,document)})(function(c){var a=c.fn.dataTable;c.extend(!0,a.Buttons.defaults,{dom:{container:{className:"dt-buttons btn-group"}, +button:{className:"btn btn-default"},collection:{tag:"ul",className:"dt-button-collection dropdown-menu",button:{tag:"li",className:"dt-button"},buttonLiner:{tag:"a",className:""}}}});a.ext.buttons.collection.text=function(a){return a.i18n("buttons.collection",'Collection ')};return a.Buttons}); diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/js/buttons.bootstrap4.js b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/js/buttons.bootstrap4.js new file mode 100644 index 00000000..8e0212e7 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/js/buttons.bootstrap4.js @@ -0,0 +1,60 @@ +/*! Bootstrap integration for DataTables' Buttons + * ©2016 SpryMedia Ltd - datatables.net/license + */ + +(function( factory ){ + if ( typeof define === 'function' && define.amd ) { + // AMD + define( ['jquery', 'datatables.net-bs4', 'datatables.net-buttons'], function ( $ ) { + return factory( $, window, document ); + } ); + } + else if ( typeof exports === 'object' ) { + // CommonJS + module.exports = function (root, $) { + if ( ! root ) { + root = window; + } + + if ( ! $ || ! $.fn.dataTable ) { + $ = require('datatables.net-bs4')(root, $).$; + } + + if ( ! $.fn.dataTable.Buttons ) { + require('datatables.net-buttons')(root, $); + } + + return factory( $, root, root.document ); + }; + } + else { + // Browser + factory( jQuery, window, document ); + } +}(function( $, window, document, undefined ) { +'use strict'; +var DataTable = $.fn.dataTable; + +$.extend( true, DataTable.Buttons.defaults, { + dom: { + container: { + className: 'dt-buttons btn-group' + }, + button: { + className: 'btn btn-secondary' + }, + collection: { + tag: 'div', + className: 'dt-button-collection dropdown-menu', + button: { + tag: 'a', + className: 'dt-button dropdown-item' + } + } + } +} ); + +DataTable.ext.buttons.collection.className += ' dropdown-toggle'; + +return DataTable.Buttons; +})); diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/js/buttons.bootstrap4.min.js b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/js/buttons.bootstrap4.min.js new file mode 100644 index 00000000..048b857a --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/js/buttons.bootstrap4.min.js @@ -0,0 +1,6 @@ +/*! + Bootstrap integration for DataTables' Buttons + ©2016 SpryMedia Ltd - datatables.net/license +*/ +(function(c){"function"===typeof define&&define.amd?define(["jquery","datatables.net-bs4","datatables.net-buttons"],function(a){return c(a,window,document)}):"object"===typeof exports?module.exports=function(a,b){a||(a=window);if(!b||!b.fn.dataTable)b=require("datatables.net-bs4")(a,b).$;b.fn.dataTable.Buttons||require("datatables.net-buttons")(a,b);return c(b,a,a.document)}:c(jQuery,window,document)})(function(c){var a=c.fn.dataTable;c.extend(!0,a.Buttons.defaults,{dom:{container:{className:"dt-buttons btn-group"}, +button:{className:"btn btn-secondary"},collection:{tag:"div",className:"dt-button-collection dropdown-menu",button:{tag:"a",className:"dt-button dropdown-item"}}}});a.ext.buttons.collection.className+=" dropdown-toggle";return a.Buttons}); diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/js/buttons.colVis.js b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/js/buttons.colVis.js new file mode 100644 index 00000000..04f3ece3 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/js/buttons.colVis.js @@ -0,0 +1,206 @@ +/*! + * Column visibility buttons for Buttons and DataTables. + * 2016 SpryMedia Ltd - datatables.net/license + */ + +(function( factory ){ + if ( typeof define === 'function' && define.amd ) { + // AMD + define( ['jquery', 'datatables.net', 'datatables.net-buttons'], function ( $ ) { + return factory( $, window, document ); + } ); + } + else if ( typeof exports === 'object' ) { + // CommonJS + module.exports = function (root, $) { + if ( ! root ) { + root = window; + } + + if ( ! $ || ! $.fn.dataTable ) { + $ = require('datatables.net')(root, $).$; + } + + if ( ! $.fn.dataTable.Buttons ) { + require('datatables.net-buttons')(root, $); + } + + return factory( $, root, root.document ); + }; + } + else { + // Browser + factory( jQuery, window, document ); + } +}(function( $, window, document, undefined ) { +'use strict'; +var DataTable = $.fn.dataTable; + + +$.extend( DataTable.ext.buttons, { + // A collection of column visibility buttons + colvis: function ( dt, conf ) { + return { + extend: 'collection', + text: function ( dt ) { + return dt.i18n( 'buttons.colvis', 'Column visibility' ); + }, + className: 'buttons-colvis', + buttons: [ { + extend: 'columnsToggle', + columns: conf.columns, + columnText: conf.columnText + } ] + }; + }, + + // Selected columns with individual buttons - toggle column visibility + columnsToggle: function ( dt, conf ) { + var columns = dt.columns( conf.columns ).indexes().map( function ( idx ) { + return { + extend: 'columnToggle', + columns: idx, + columnText: conf.columnText + }; + } ).toArray(); + + return columns; + }, + + // Single button to toggle column visibility + columnToggle: function ( dt, conf ) { + return { + extend: 'columnVisibility', + columns: conf.columns, + columnText: conf.columnText + }; + }, + + // Selected columns with individual buttons - set column visibility + columnsVisibility: function ( dt, conf ) { + var columns = dt.columns( conf.columns ).indexes().map( function ( idx ) { + return { + extend: 'columnVisibility', + columns: idx, + visibility: conf.visibility, + columnText: conf.columnText + }; + } ).toArray(); + + return columns; + }, + + // Single button to set column visibility + columnVisibility: { + columns: undefined, // column selector + text: function ( dt, button, conf ) { + return conf._columnText( dt, conf ); + }, + className: 'buttons-columnVisibility', + action: function ( e, dt, button, conf ) { + var col = dt.columns( conf.columns ); + var curr = col.visible(); + + col.visible( conf.visibility !== undefined ? + conf.visibility : + ! (curr.length ? curr[0] : false ) + ); + }, + init: function ( dt, button, conf ) { + var that = this; + + dt + .on( 'column-visibility.dt'+conf.namespace, function (e, settings) { + if ( ! settings.bDestroying ) { + that.active( dt.column( conf.columns ).visible() ); + } + } ) + .on( 'column-reorder.dt'+conf.namespace, function (e, settings, details) { + // Don't rename buttons based on column name if the button + // controls more than one column! + if ( dt.columns( conf.columns ).count() !== 1 ) { + return; + } + + if ( typeof conf.columns === 'number' ) { + conf.columns = details.mapping[ conf.columns ]; + } + + var col = dt.column( conf.columns ); + + that.text( conf._columnText( dt, conf ) ); + that.active( col.visible() ); + } ); + + this.active( dt.column( conf.columns ).visible() ); + }, + destroy: function ( dt, button, conf ) { + dt + .off( 'column-visibility.dt'+conf.namespace ) + .off( 'column-reorder.dt'+conf.namespace ); + }, + + _columnText: function ( dt, conf ) { + // Use DataTables' internal data structure until this is presented + // is a public API. The other option is to use + // `$( column(col).node() ).text()` but the node might not have been + // populated when Buttons is constructed. + var idx = dt.column( conf.columns ).index(); + var title = dt.settings()[0].aoColumns[ idx ].sTitle + .replace(/\n/g," ") // remove new lines + .replace( /<.*?>/g, "" ) // strip HTML + .replace(/^\s+|\s+$/g,""); // trim + + return conf.columnText ? + conf.columnText( dt, idx, title ) : + title; + } + }, + + + colvisRestore: { + className: 'buttons-colvisRestore', + + text: function ( dt ) { + return dt.i18n( 'buttons.colvisRestore', 'Restore visibility' ); + }, + + init: function ( dt, button, conf ) { + conf._visOriginal = dt.columns().indexes().map( function ( idx ) { + return dt.column( idx ).visible(); + } ).toArray(); + }, + + action: function ( e, dt, button, conf ) { + dt.columns().every( function ( i ) { + // Take into account that ColReorder might have disrupted our + // indexes + var idx = dt.colReorder && dt.colReorder.transpose ? + dt.colReorder.transpose( i, 'toOriginal' ) : + i; + + this.visible( conf._visOriginal[ idx ] ); + } ); + } + }, + + + colvisGroup: { + className: 'buttons-colvisGroup', + + action: function ( e, dt, button, conf ) { + dt.columns( conf.show ).visible( true, false ); + dt.columns( conf.hide ).visible( false, false ); + + dt.columns.adjust(); + }, + + show: [], + + hide: [] + } +} ); + + +return DataTable.Buttons; +})); diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/js/buttons.colVis.min.js b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/js/buttons.colVis.min.js new file mode 100644 index 00000000..1e59b8bd --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/js/buttons.colVis.min.js @@ -0,0 +1,6 @@ +(function(g){"function"===typeof define&&define.amd?define(["jquery","datatables.net","datatables.net-buttons"],function(d){return g(d,window,document)}):"object"===typeof exports?module.exports=function(d,e){d||(d=window);if(!e||!e.fn.dataTable)e=require("datatables.net")(d,e).$;e.fn.dataTable.Buttons||require("datatables.net-buttons")(d,e);return g(e,d,d.document)}:g(jQuery,window,document)})(function(g,d,e,h){d=g.fn.dataTable;g.extend(d.ext.buttons,{colvis:function(b,a){return{extend:"collection", +text:function(a){return a.i18n("buttons.colvis","Column visibility")},className:"buttons-colvis",buttons:[{extend:"columnsToggle",columns:a.columns,columnText:a.columnText}]}},columnsToggle:function(b,a){return b.columns(a.columns).indexes().map(function(b){return{extend:"columnToggle",columns:b,columnText:a.columnText}}).toArray()},columnToggle:function(b,a){return{extend:"columnVisibility",columns:a.columns,columnText:a.columnText}},columnsVisibility:function(b,a){return b.columns(a.columns).indexes().map(function(b){return{extend:"columnVisibility", +columns:b,visibility:a.visibility,columnText:a.columnText}}).toArray()},columnVisibility:{columns:h,text:function(b,a,c){return c._columnText(b,c)},className:"buttons-columnVisibility",action:function(b,a,c,f){b=a.columns(f.columns);a=b.visible();b.visible(f.visibility!==h?f.visibility:!(a.length&&a[0]))},init:function(b,a,c){var f=this;b.on("column-visibility.dt"+c.namespace,function(a,d){d.bDestroying||f.active(b.column(c.columns).visible())}).on("column-reorder.dt"+c.namespace,function(a,d,e){1=== +b.columns(c.columns).count()&&("number"===typeof c.columns&&(c.columns=e.mapping[c.columns]),a=b.column(c.columns),f.text(c._columnText(b,c)),f.active(a.visible()))});this.active(b.column(c.columns).visible())},destroy:function(b,a,c){b.off("column-visibility.dt"+c.namespace).off("column-reorder.dt"+c.namespace)},_columnText:function(b,a){var c=b.column(a.columns).index(),f=b.settings()[0].aoColumns[c].sTitle.replace(/\n/g," ").replace(/<.*?>/g,"").replace(/^\s+|\s+$/g,"");return a.columnText?a.columnText(b, +c,f):f}},colvisRestore:{className:"buttons-colvisRestore",text:function(b){return b.i18n("buttons.colvisRestore","Restore visibility")},init:function(b,a,c){c._visOriginal=b.columns().indexes().map(function(a){return b.column(a).visible()}).toArray()},action:function(b,a,c,d){a.columns().every(function(b){b=a.colReorder&&a.colReorder.transpose?a.colReorder.transpose(b,"toOriginal"):b;this.visible(d._visOriginal[b])})}},colvisGroup:{className:"buttons-colvisGroup",action:function(b,a,c,d){a.columns(d.show).visible(!0, +!1);a.columns(d.hide).visible(!1,!1);a.columns.adjust()},show:[],hide:[]}});return d.Buttons}); diff --git a/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/js/buttons.flash.js b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/js/buttons.flash.js new file mode 100644 index 00000000..3cb100c2 --- /dev/null +++ b/build/lib/helpdesk/static/helpdesk/vendor/datatables/extensions/Buttons/js/buttons.flash.js @@ -0,0 +1,1441 @@ +/*! + * Flash export buttons for Buttons and DataTables. + * 2015 SpryMedia Ltd - datatables.net/license + * + * ZeroClipbaord - MIT license + * Copyright (c) 2012 Joseph Huckaby + */ + +(function( factory ){ + if ( typeof define === 'function' && define.amd ) { + // AMD + define( ['jquery', 'datatables.net', 'datatables.net-buttons'], function ( $ ) { + return factory( $, window, document ); + } ); + } + else if ( typeof exports === 'object' ) { + // CommonJS + module.exports = function (root, $) { + if ( ! root ) { + root = window; + } + + if ( ! $ || ! $.fn.dataTable ) { + $ = require('datatables.net')(root, $).$; + } + + if ( ! $.fn.dataTable.Buttons ) { + require('datatables.net-buttons')(root, $); + } + + return factory( $, root, root.document ); + }; + } + else { + // Browser + factory( jQuery, window, document ); + } +}(function( $, window, document, undefined ) { +'use strict'; +var DataTable = $.fn.dataTable; + + +/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * ZeroClipboard dependency + */ + +/* + * ZeroClipboard 1.0.4 with modifications + * Author: Joseph Huckaby + * License: MIT + * + * Copyright (c) 2012 Joseph Huckaby + */ +var ZeroClipboard_TableTools = { + version: "1.0.4-TableTools2", + clients: {}, // registered upload clients on page, indexed by id + moviePath: '', // URL to movie + nextId: 1, // ID of next movie + + $: function(thingy) { + // simple DOM lookup utility function + if (typeof(thingy) == 'string') { + thingy = document.getElementById(thingy); + } + if (!thingy.addClass) { + // extend element with a few useful methods + thingy.hide = function() { this.style.display = 'none'; }; + thingy.show = function() { this.style.display = ''; }; + thingy.addClass = function(name) { this.removeClass(name); this.className += ' ' + name; }; + thingy.removeClass = function(name) { + this.className = this.className.replace( new RegExp("\\s*" + name + "\\s*"), " ").replace(/^\s+/, '').replace(/\s+$/, ''); + }; + thingy.hasClass = function(name) { + return !!this.className.match( new RegExp("\\s*" + name + "\\s*") ); + }; + } + return thingy; + }, + + setMoviePath: function(path) { + // set path to ZeroClipboard.swf + this.moviePath = path; + }, + + dispatch: function(id, eventName, args) { + // receive event from flash movie, send to client + var client = this.clients[id]; + if (client) { + client.receiveEvent(eventName, args); + } + }, + + log: function ( str ) { + console.log( 'Flash: '+str ); + }, + + register: function(id, client) { + // register new client to receive events + this.clients[id] = client; + }, + + getDOMObjectPosition: function(obj) { + // get absolute coordinates for dom element + var info = { + left: 0, + top: 0, + width: obj.width ? obj.width : obj.offsetWidth, + height: obj.height ? obj.height : obj.offsetHeight + }; + + if ( obj.style.width !== "" ) { + info.width = obj.style.width.replace("px",""); + } + + if ( obj.style.height !== "" ) { + info.height = obj.style.height.replace("px",""); + } + + while (obj) { + info.left += obj.offsetLeft; + info.top += obj.offsetTop; + obj = obj.offsetParent; + } + + return info; + }, + + Client: function(elem) { + // constructor for new simple upload client + this.handlers = {}; + + // unique ID + this.id = ZeroClipboard_TableTools.nextId++; + this.movieId = 'ZeroClipboard_TableToolsMovie_' + this.id; + + // register client with singleton to receive flash events + ZeroClipboard_TableTools.register(this.id, this); + + // create movie + if (elem) { + this.glue(elem); + } + } +}; + +ZeroClipboard_TableTools.Client.prototype = { + + id: 0, // unique ID for us + ready: false, // whether movie is ready to receive events or not + movie: null, // reference to movie object + clipText: '', // text to copy to clipboard + fileName: '', // default file save name + action: 'copy', // action to perform + handCursorEnabled: true, // whether to show hand cursor, or default pointer cursor + cssEffects: true, // enable CSS mouse effects on dom container + handlers: null, // user event handlers + sized: false, + sheetName: '', // default sheet name for excel export + + glue: function(elem, title) { + // glue to DOM element + // elem can be ID or actual DOM element object + this.domElement = ZeroClipboard_TableTools.$(elem); + + // float just above object, or zIndex 99 if dom element isn't set + var zIndex = 99; + if (this.domElement.style.zIndex) { + zIndex = parseInt(this.domElement.style.zIndex, 10) + 1; + } + + // find X/Y position of domElement + var box = ZeroClipboard_TableTools.getDOMObjectPosition(this.domElement); + + // create floating DIV above element + this.div = document.createElement('div'); + var style = this.div.style; + style.position = 'absolute'; + style.left = '0px'; + style.top = '0px'; + style.width = (box.width) + 'px'; + style.height = box.height + 'px'; + style.zIndex = zIndex; + + if ( typeof title != "undefined" && title !== "" ) { + this.div.title = title; + } + if ( box.width !== 0 && box.height !== 0 ) { + this.sized = true; + } + + // style.backgroundColor = '#f00'; // debug + if ( this.domElement ) { + this.domElement.appendChild(this.div); + this.div.innerHTML = this.getHTML( box.width, box.height ).replace(/&/g, '&'); + } + }, + + positionElement: function() { + var box = ZeroClipboard_TableTools.getDOMObjectPosition(this.domElement); + var style = this.div.style; + + style.position = 'absolute'; + //style.left = (this.domElement.offsetLeft)+'px'; + //style.top = this.domElement.offsetTop+'px'; + style.width = box.width + 'px'; + style.height = box.height + 'px'; + + if ( box.width !== 0 && box.height !== 0 ) { + this.sized = true; + } else { + return; + } + + var flash = this.div.childNodes[0]; + flash.width = box.width; + flash.height = box.height; + }, + + getHTML: function(width, height) { + // return HTML for movie + var html = ''; + var flashvars = 'id=' + this.id + + '&width=' + width + + '&height=' + height; + + if (navigator.userAgent.match(/MSIE/)) { + // IE gets an OBJECT tag + var protocol = location.href.match(/^https/i) ? 'https://' : 'http://'; + html += ''; + } + else { + // all other browsers get an EMBED tag + html += ''; + } + return html; + }, + + hide: function() { + // temporarily hide floater offscreen + if (this.div) { + this.div.style.left = '-2000px'; + } + }, + + show: function() { + // show ourselves after a call to hide() + this.reposition(); + }, + + destroy: function() { + // destroy control and floater + var that = this; + + if (this.domElement && this.div) { + $(this.div).remove(); + + this.domElement = null; + this.div = null; + + $.each( ZeroClipboard_TableTools.clients, function ( id, client ) { + if ( client === that ) { + delete ZeroClipboard_TableTools.clients[ id ]; + } + } ); + } + }, + + reposition: function(elem) { + // reposition our floating div, optionally to new container + // warning: container CANNOT change size, only position + if (elem) { + this.domElement = ZeroClipboard_TableTools.$(elem); + if (!this.domElement) { + this.hide(); + } + } + + if (this.domElement && this.div) { + var box = ZeroClipboard_TableTools.getDOMObjectPosition(this.domElement); + var style = this.div.style; + style.left = '' + box.left + 'px'; + style.top = '' + box.top + 'px'; + } + }, + + clearText: function() { + // clear the text to be copy / saved + this.clipText = ''; + if (this.ready) { + this.movie.clearText(); + } + }, + + appendText: function(newText) { + // append text to that which is to be copied / saved + this.clipText += newText; + if (this.ready) { this.movie.appendText(newText) ;} + }, + + setText: function(newText) { + // set text to be copied to be copied / saved + this.clipText = newText; + if (this.ready) { this.movie.setText(newText) ;} + }, + + setFileName: function(newText) { + // set the file name + this.fileName = newText; + if (this.ready) { + this.movie.setFileName(newText); + } + }, + + setSheetData: function(data) { + // set the xlsx sheet data + if (this.ready) { + this.movie.setSheetData( JSON.stringify( data ) ); + } + }, + + setAction: function(newText) { + // set action (save or copy) + this.action = newText; + if (this.ready) { + this.movie.setAction(newText); + } + }, + + addEventListener: function(eventName, func) { + // add user event listener for event + // event types: load, queueStart, fileStart, fileComplete, queueComplete, progress, error, cancel + eventName = eventName.toString().toLowerCase().replace(/^on/, ''); + if (!this.handlers[eventName]) { + this.handlers[eventName] = []; + } + this.handlers[eventName].push(func); + }, + + setHandCursor: function(enabled) { + // enable hand cursor (true), or default arrow cursor (false) + this.handCursorEnabled = enabled; + if (this.ready) { + this.movie.setHandCursor(enabled); + } + }, + + setCSSEffects: function(enabled) { + // enable or disable CSS effects on DOM container + this.cssEffects = !!enabled; + }, + + receiveEvent: function(eventName, args) { + var self; + + // receive event from flash + eventName = eventName.toString().toLowerCase().replace(/^on/, ''); + + // special behavior for certain events + switch (eventName) { + case 'load': + // movie claims it is ready, but in IE this isn't always the case... + // bug fix: Cannot extend EMBED DOM elements in Firefox, must use traditional function + this.movie = document.getElementById(this.movieId); + if (!this.movie) { + self = this; + setTimeout( function() { self.receiveEvent('load', null); }, 1 ); + return; + } + + // firefox on pc needs a "kick" in order to set these in certain cases + if (!this.ready && navigator.userAgent.match(/Firefox/) && navigator.userAgent.match(/Windows/)) { + self = this; + setTimeout( function() { self.receiveEvent('load', null); }, 100 ); + this.ready = true; + return; + } + + this.ready = true; + this.movie.clearText(); + this.movie.appendText( this.clipText ); + this.movie.setFileName( this.fileName ); + this.movie.setAction( this.action ); + this.movie.setHandCursor( this.handCursorEnabled ); + break; + + case 'mouseover': + if (this.domElement && this.cssEffects) { + //this.domElement.addClass('hover'); + if (this.recoverActive) { + this.domElement.addClass('active'); + } + } + break; + + case 'mouseout': + if (this.domElement && this.cssEffects) { + this.recoverActive = false; + if (this.domElement.hasClass('active')) { + this.domElement.removeClass('active'); + this.recoverActive = true; + } + //this.domElement.removeClass('hover'); + } + break; + + case 'mousedown': + if (this.domElement && this.cssEffects) { + this.domElement.addClass('active'); + } + break; + + case 'mouseup': + if (this.domElement && this.cssEffects) { + this.domElement.removeClass('active'); + this.recoverActive = false; + } + break; + } // switch eventName + + if (this.handlers[eventName]) { + for (var idx = 0, len = this.handlers[eventName].length; idx < len; idx++) { + var func = this.handlers[eventName][idx]; + + if (typeof(func) == 'function') { + // actual function reference + func(this, args); + } + else if ((typeof(func) == 'object') && (func.length == 2)) { + // PHP style object + method, i.e. [myObject, 'myMethod'] + func[0][ func[1] ](this, args); + } + else if (typeof(func) == 'string') { + // name of function + window[func](this, args); + } + } // foreach event handler defined + } // user defined handler for event + } +}; + +ZeroClipboard_TableTools.hasFlash = function () +{ + try { + var fo = new ActiveXObject('ShockwaveFlash.ShockwaveFlash'); + if (fo) { + return true; + } + } + catch (e) { + if ( + navigator.mimeTypes && + navigator.mimeTypes['application/x-shockwave-flash'] !== undefined && + navigator.mimeTypes['application/x-shockwave-flash'].enabledPlugin + ) { + return true; + } + } + + return false; +}; + +// For the Flash binding to work, ZeroClipboard_TableTools must be on the global +// object list +window.ZeroClipboard_TableTools = ZeroClipboard_TableTools; + + + +/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * Local (private) functions + */ + +/** + * If a Buttons instance is initlaised before it is placed into the DOM, Flash + * won't be able to bind to it, so we need to wait until it is available, this + * method abstracts that out. + * + * @param {ZeroClipboard} flash ZeroClipboard instance + * @param {jQuery} node Button + */ +var _glue = function ( flash, node ) +{ + var id = node.attr('id'); + + if ( node.parents('html').length ) { + flash.glue( node[0], '' ); + } + else { + setTimeout( function () { + _glue( flash, node ); + }, 500 ); + } +}; + +/** + * Get the file name for an exported file. + * + * @param {object} config Button configuration + * @param {boolean} incExtension Include the file name extension + */ +var _filename = function ( config, incExtension ) +{ + // Backwards compatibility + var filename = config.filename === '*' && config.title !== '*' && config.title !== undefined ? + config.title : + config.filename; + + if ( typeof filename === 'function' ) { + filename = filename(); + } + + if ( filename.indexOf( '*' ) !== -1 ) { + filename = $.trim( filename.replace( '*', $('title').text() ) ); + } + + // Strip characters which the OS will object to + filename = filename.replace(/[^a-zA-Z0-9_\u00A1-\uFFFF\.,\-_ !\(\)]/g, ""); + + return incExtension === undefined || incExtension === true ? + filename+config.extension : + filename; +}; + +/** + * Get the sheet name for Excel exports. + * + * @param {object} config Button configuration + */ +var _sheetname = function ( config ) +{ + var sheetName = 'Sheet1'; + + if ( config.sheetName ) { + sheetName = config.sheetName.replace(/[\[\]\*\/\\\?\:]/g, ''); + } + + return sheetName; +}; + +/** + * Get the title for an exported file. + * + * @param {object} config Button configuration + */ +var _title = function ( config ) +{ + var title = config.title; + + if ( typeof title === 'function' ) { + title = title(); + } + + return title.indexOf( '*' ) !== -1 ? + title.replace( '*', $('title').text() || 'Exported data' ) : + title; +}; + +/** + * Set the flash text. This has to be broken up into chunks as the Javascript / + * Flash bridge has a size limit. There is no indication in the Flash + * documentation what this is, and it probably depends upon the browser. + * Experimentation shows that the point is around 50k when data starts to get + * lost, so an 8K limit used here is safe. + * + * @param {ZeroClipboard} flash ZeroClipboard instance + * @param {string} data Data to send to Flash + */ +var _setText = function ( flash, data ) +{ + var parts = data.match(/[\s\S]{1,8192}/g) || []; + + flash.clearText(); + for ( var i=0, len=parts.length ; i 0 ) { + s += separator; + } + + s += boundary ? + boundary + ('' + a[i]).replace( reBoundary, escapeChar+boundary ) + boundary : + a[i]; + } + + return s; + }; + + var header = config.header ? join( data.header )+newLine : ''; + var footer = config.footer && data.footer ? newLine+join( data.footer ) : ''; + var body = []; + + for ( var i=0, ien=data.body.length ; i= 0 ) { + s = String.fromCharCode(n % len + ordA) + s; + n = Math.floor(n / len) - 1; + } + + return s; +} + +/** + * Create an XML node and add any children, attributes, etc without needing to + * be verbose in the DOM. + * + * @param {object} doc XML document + * @param {string} nodeName Node name + * @param {object} opts Options - can be `attr` (attributes), `children` + * (child nodes) and `text` (text content) + * @return {node} Created node + */ +function _createNode( doc, nodeName, opts ){ + var tempNode = doc.createElement( nodeName ); + + if ( opts ) { + if ( opts.attr ) { + $(tempNode).attr( opts.attr ); + } + + if( opts.children ) { + $.each( opts.children, function ( key, value ) { + tempNode.appendChild( value ); + }); + } + + if( opts.text ) { + tempNode.appendChild( doc.createTextNode( opts.text ) ); + } + } + + return tempNode; +} + +/** + * Get the width for an Excel column based on the contents of that column + * @param {object} data Data for export + * @param {int} col Column index + * @return {int} Column width + */ +function _excelColWidth( data, col ) { + var max = data.header[col].length; + var len, lineSplit, str; + + if ( data.footer && data.footer[col].length > max ) { + max = data.footer[col].length; + } + + for ( var i=0, ien=data.body.length ; i max ) { + max = len; + } + + // Max width rather than having potentially massive column widths + if ( max > 40 ) { + return 52; // 40 * 1.3 + } + } + + max *= 1.3; + + // And a min width + return max > 6 ? max : 6; +} + + var _serialiser = ""; + if (typeof window.XMLSerializer === 'undefined') { + _serialiser = new function () { + this.serializeToString = function (input) { + return input.xml + } + }; + } else { + _serialiser = new XMLSerializer(); + } + + var _ieExcel; + + +/** + * Convert XML documents in an object to strings + * @param {object} obj XLSX document object + */ +function _xlsxToStrings( obj ) { + if ( _ieExcel === undefined ) { + // Detect if we are dealing with IE's _awful_ serialiser by seeing if it + // drop attributes + _ieExcel = _serialiser + .serializeToString( + $.parseXML( excelStrings['xl/worksheets/sheet1.xml'] ) + ) + .indexOf( 'xmlns:r' ) === -1; + } + + $.each( obj, function ( name, val ) { + if ( $.isPlainObject( val ) ) { + _xlsxToStrings( val ); + } + else { + if ( _ieExcel ) { + // IE's XML serialiser will drop some name space attributes from + // from the root node, so we need to save them. Do this by + // replacing the namespace nodes with a regular attribute that + // we convert back when serialised. Edge does not have this + // issue + var worksheet = val.childNodes[0]; + var i, ien; + var attrs = []; + + for ( i=worksheet.attributes.length-1 ; i>=0 ; i-- ) { + var attrName = worksheet.attributes[i].nodeName; + var attrValue = worksheet.attributes[i].nodeValue; + + if ( attrName.indexOf( ':' ) !== -1 ) { + attrs.push( { name: attrName, value: attrValue } ); + + worksheet.removeAttribute( attrName ); + } + } + + for ( i=0, ien=attrs.length ; i]*?) xmlns=""([^<>]*?)>/g, '<$1 $2>' ); + + obj[ name ] = str; + } + } ); +} + +// Excel - Pre-defined strings to build a basic XLSX file +var excelStrings = { + "_rels/.rels": + ''+ + ''+ + ''+ + '', + + "xl/_rels/workbook.xml.rels": + ''+ + ''+ + ''+ + ''+ + '', + + "[Content_Types].xml": + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + '', + + "xl/workbook.xml": + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + '', + + "xl/worksheets/sheet1.xml": + ''+ + ''+ + ''+ + '', + + "xl/styles.xml": + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ // Excel appears to use this as a dotted background regardless of values + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + '' +}; +// Note we could use 3 `for` loops for the styles, but when gzipped there is +// virtually no difference in size, since the above can be easily compressed + +// Pattern matching for special number formats. Perhaps this should be exposed +// via an API in future? +var _excelSpecials = [ + { match: /^\-?\d+\.\d%$/, style: 60, fmt: function (d) { return d/100; } }, // Precent with d.p. + { match: /^\-?\d+\.?\d*%$/, style: 56, fmt: function (d) { return d/100; } }, // Percent + { match: /^\-?\$[\d,]+.?\d*$/, style: 57 }, // Dollars + { match: /^\-?£[\d,]+.?\d*$/, style: 58 }, // Pounds + { match: /^\-?€[\d,]+.?\d*$/, style: 59 }, // Euros + { match: /^\([\d,]+\)$/, style: 61, fmt: function (d) { return -1 * d.replace(/[\(\)]/g, ''); } }, // Negative numbers indicated by brackets + { match: /^\([\d,]+\.\d{2}\)$/, style: 62, fmt: function (d) { return -1 * d.replace(/[\(\)]/g, ''); } }, // Negative numbers indicated by brackets - 2d.p. + { match: /^[\d,]+$/, style: 63 }, // Numbers with thousand separators + { match: /^[\d,]+\.\d{2}$/, style: 64 } // Numbers with 2d.p. and thousands separators +]; + + + +/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * DataTables options and methods + */ + +// Set the default SWF path +DataTable.Buttons.swfPath = '//cdn.datatables.net/buttons/1.2.4/swf/flashExport.swf'; + +// Method to allow Flash buttons to be resized when made visible - as they are +// of zero height and width if initialised hidden +DataTable.Api.register( 'buttons.resize()', function () { + $.each( ZeroClipboard_TableTools.clients, function ( i, client ) { + if ( client.domElement !== undefined && client.domElement.parentNode ) { + client.positionElement(); + } + } ); +} ); + + +/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * Button definitions + */ + +// Copy to clipboard +DataTable.ext.buttons.copyFlash = $.extend( {}, flashButton, { + className: 'buttons-copy buttons-flash', + + text: function ( dt ) { + return dt.i18n( 'buttons.copy', 'Copy' ); + }, + + action: function ( e, dt, button, config ) { + // Check that the trigger did actually occur due to a Flash activation + if ( ! config._fromFlash ) { + return; + } + + this.processing( true ); + + var flash = config._flash; + var data = _exportData( dt, config ); + var output = config.customize ? + config.customize( data.str, config ) : + data.str; + + flash.setAction( 'copy' ); + _setText( flash, output ); + + this.processing( false ); + + dt.buttons.info( + dt.i18n( 'buttons.copyTitle', 'Copy to clipboard' ), + dt.i18n( 'buttons.copySuccess', { + _: 'Copied %d rows to clipboard', + 1: 'Copied 1 row to clipboard' + }, data.rows ), + 3000 + ); + }, + + fieldSeparator: '\t', + + fieldBoundary: '' +} ); + +// CSV save file +DataTable.ext.buttons.csvFlash = $.extend( {}, flashButton, { + className: 'buttons-csv buttons-flash', + + text: function ( dt ) { + return dt.i18n( 'buttons.csv', 'CSV' ); + }, + + action: function ( e, dt, button, config ) { + // Set the text + var flash = config._flash; + var data = _exportData( dt, config ); + var output = config.customize ? + config.customize( data.str, config ) : + data.str; + + flash.setAction( 'csv' ); + flash.setFileName( _filename( config ) ); + _setText( flash, output ); + }, + + escapeChar: '"' +} ); + +// Excel save file - this is really a CSV file using UTF-8 that Excel can read +DataTable.ext.buttons.excelFlash = $.extend( {}, flashButton, { + className: 'buttons-excel buttons-flash', + + text: function ( dt ) { + return dt.i18n( 'buttons.excel', 'Excel' ); + }, + + action: function ( e, dt, button, config ) { + this.processing( true ); + + var flash = config._flash; + var rowPos = 0; + var rels = $.parseXML( excelStrings['xl/worksheets/sheet1.xml'] ) ; //Parses xml + var relsGet = rels.getElementsByTagName( "sheetData" )[0]; + + var xlsx = { + _rels: { + ".rels": $.parseXML( excelStrings['_rels/.rels'] ) + }, + xl: { + _rels: { + "workbook.xml.rels": $.parseXML( excelStrings['xl/_rels/workbook.xml.rels'] ) + }, + "workbook.xml": $.parseXML( excelStrings['xl/workbook.xml'] ), + "styles.xml": $.parseXML( excelStrings['xl/styles.xml'] ), + "worksheets": { + "sheet1.xml": rels + } + + }, + "[Content_Types].xml": $.parseXML( excelStrings['[Content_Types].xml']) + }; + + var data = dt.buttons.exportData( config.exportOptions ); + var currentRow, rowNode; + var addRow = function ( row ) { + currentRow = rowPos+1; + rowNode = _createNode( rels, "row", { attr: {r:currentRow} } ); + + for ( var i=0, ien=row.length ; id&&(d=a.footer[b].length);for(var e=0,f=a.body.length;ed&&(d=c),40'+ +c),c=c.replace(/_dt_b_namespace_token_/g,":"));c=c.replace(/<([^<>]*?) xmlns=""([^<>]*?)>/g,"<$1 $2>");a[b]=c}})}var i=g.fn.dataTable,h={version:"1.0.4-TableTools2",clients:{},moviePath:"",nextId:1,$:function(a){"string"==typeof a&&(a=l.getElementById(a));a.addClass||(a.hide=function(){this.style.display="none"},a.show=function(){this.style.display=""},a.addClass=function(a){this.removeClass(a);this.className+=" "+a},a.removeClass=function(a){this.className=this.className.replace(RegExp("\\s*"+a+ +"\\s*")," ").replace(/^\s+/,"").replace(/\s+$/,"")},a.hasClass=function(a){return!!this.className.match(RegExp("\\s*"+a+"\\s*"))});return a},setMoviePath:function(a){this.moviePath=a},dispatch:function(a,b,d){(a=this.clients[a])&&a.receiveEvent(b,d)},log:function(a){console.log("Flash: "+a)},register:function(a,b){this.clients[a]=b},getDOMObjectPosition:function(a){var b={left:0,top:0,width:a.width?a.width:a.offsetWidth,height:a.height?a.height:a.offsetHeight};""!==a.style.width&&(b.width=a.style.width.replace("px", +""));""!==a.style.height&&(b.height=a.style.height.replace("px",""));for(;a;)b.left+=a.offsetLeft,b.top+=a.offsetTop,a=a.offsetParent;return b},Client:function(a){this.handlers={};this.id=h.nextId++;this.movieId="ZeroClipboard_TableToolsMovie_"+this.id;h.register(this.id,this);a&&this.glue(a)}};h.Client.prototype={id:0,ready:!1,movie:null,clipText:"",fileName:"",action:"copy",handCursorEnabled:!0,cssEffects:!0,handlers:null,sized:!1,sheetName:"",glue:function(a,b){this.domElement=h.$(a);var d=99; +this.domElement.style.zIndex&&(d=parseInt(this.domElement.style.zIndex,10)+1);var c=h.getDOMObjectPosition(this.domElement);this.div=l.createElement("div");var e=this.div.style;e.position="absolute";e.left="0px";e.top="0px";e.width=c.width+"px";e.height=c.height+"px";e.zIndex=d;"undefined"!=typeof b&&""!==b&&(this.div.title=b);0!==c.width&&0!==c.height&&(this.sized=!0);this.domElement&&(this.domElement.appendChild(this.div),this.div.innerHTML=this.getHTML(c.width,c.height).replace(/&/g,"&"))}, +positionElement:function(){var a=h.getDOMObjectPosition(this.domElement),b=this.div.style;b.position="absolute";b.width=a.width+"px";b.height=a.height+"px";0!==a.width&&0!==a.height&&(this.sized=!0,b=this.div.childNodes[0],b.width=a.width,b.height=a.height)},getHTML:function(a,b){var d="",c="id="+this.id+"&width="+a+"&height="+b;if(navigator.userAgent.match(/MSIE/))var e=location.href.match(/^https/i)?"https://":"http://",d=d+(''); +else d+='';return d},hide:function(){this.div&&(this.div.style.left="-2000px")},show:function(){this.reposition()},destroy:function(){var a= +this;this.domElement&&this.div&&(g(this.div).remove(),this.div=this.domElement=null,g.each(h.clients,function(b,d){d===a&&delete h.clients[b]}))},reposition:function(a){a&&((this.domElement=h.$(a))||this.hide());if(this.domElement&&this.div){var a=h.getDOMObjectPosition(this.domElement),b=this.div.style;b.left=""+a.left+"px";b.top=""+a.top+"px"}},clearText:function(){this.clipText="";this.ready&&this.movie.clearText()},appendText:function(a){this.clipText+=a;this.ready&&this.movie.appendText(a)}, +setText:function(a){this.clipText=a;this.ready&&this.movie.setText(a)},setFileName:function(a){this.fileName=a;this.ready&&this.movie.setFileName(a)},setSheetData:function(a){this.ready&&this.movie.setSheetData(JSON.stringify(a))},setAction:function(a){this.action=a;this.ready&&this.movie.setAction(a)},addEventListener:function(a,b){a=a.toString().toLowerCase().replace(/^on/,"");this.handlers[a]||(this.handlers[a]=[]);this.handlers[a].push(b)},setHandCursor:function(a){this.handCursorEnabled=a;this.ready&& +this.movie.setHandCursor(a)},setCSSEffects:function(a){this.cssEffects=!!a},receiveEvent:function(a,b){var d,a=a.toString().toLowerCase().replace(/^on/,"");switch(a){case "load":this.movie=l.getElementById(this.movieId);if(!this.movie){d=this;setTimeout(function(){d.receiveEvent("load",null)},1);return}if(!this.ready&&navigator.userAgent.match(/Firefox/)&&navigator.userAgent.match(/Windows/)){d=this;setTimeout(function(){d.receiveEvent("load",null)},100);this.ready=!0;return}this.ready=!0;this.movie.clearText(); +this.movie.appendText(this.clipText);this.movie.setFileName(this.fileName);this.movie.setAction(this.action);this.movie.setHandCursor(this.handCursorEnabled);break;case "mouseover":this.domElement&&this.cssEffects&&this.recoverActive&&this.domElement.addClass("active");break;case "mouseout":this.domElement&&this.cssEffects&&(this.recoverActive=!1,this.domElement.hasClass("active")&&(this.domElement.removeClass("active"),this.recoverActive=!0));break;case "mousedown":this.domElement&&this.cssEffects&& +this.domElement.addClass("active");break;case "mouseup":this.domElement&&this.cssEffects&&(this.domElement.removeClass("active"),this.recoverActive=!1)}if(this.handlers[a])for(var c=0,e=this.handlers[a].length;c', +"xl/_rels/workbook.xml.rels":'',"[Content_Types].xml":'', +"xl/workbook.xml":'', +"xl/worksheets/sheet1.xml":'',"xl/styles.xml":''}, +y=[{match:/^\-?\d+\.\d%$/,style:60,fmt:function(a){return a/100}},{match:/^\-?\d+\.?\d*%$/,style:56,fmt:function(a){return a/100}},{match:/^\-?\$[\d,]+.?\d*$/,style:57},{match:/^\-?£[\d,]+.?\d*$/,style:58},{match:/^\-?€[\d,]+.?\d*$/,style:59},{match:/^\([\d,]+\)$/,style:61,fmt:function(a){return-1*a.replace(/[\(\)]/g,"")}},{match:/^\([\d,]+\.\d{2}\)$/,style:62,fmt:function(a){return-1*a.replace(/[\(\)]/g,"")}},{match:/^[\d,]+$/,style:63},{match:/^[\d,]+\.\d{2}$/,style:64}];i.Buttons.swfPath="//cdn.datatables.net/buttons/1.2.4/swf/flashExport.swf"; +i.Api.register("buttons.resize()",function(){g.each(h.clients,function(a,b){b.domElement!==p&&b.domElement.parentNode&&b.positionElement()})});i.ext.buttons.copyFlash=g.extend({},s,{className:"buttons-copy buttons-flash",text:function(a){return a.i18n("buttons.copy","Copy")},action:function(a,b,d,c){c._fromFlash&&(this.processing(!0),a=c._flash,d=x(b,c),c=c.customize?c.customize(d.str,c):d.str,a.setAction("copy"),r(a,c),this.processing(!1),b.buttons.info(b.i18n("buttons.copyTitle","Copy to clipboard"), +b.i18n("buttons.copySuccess",{_:"Copied %d rows to clipboard",1:"Copied 1 row to clipboard"},d.rows),3E3))},fieldSeparator:"\t",fieldBoundary:""});i.ext.buttons.csvFlash=g.extend({},s,{className:"buttons-csv buttons-flash",text:function(a){return a.i18n("buttons.csv","CSV")},action:function(a,b,d,c){a=c._flash;b=x(b,c);b=c.customize?c.customize(b.str,c):b.str;a.setAction("csv");a.setFileName(q(c));r(a,b)},escapeChar:'"'});i.ext.buttons.excelFlash=g.extend({},s,{className:"buttons-excel buttons-flash", +text:function(a){return a.i18n("buttons.excel","Excel")},action:function(a,b,d,c){this.processing(!0);var a=c._flash,e=0,f=g.parseXML(o["xl/worksheets/sheet1.xml"]),h=f.getElementsByTagName("sheetData")[0],d={_rels:{".rels":g.parseXML(o["_rels/.rels"])},xl:{_rels:{"workbook.xml.rels":g.parseXML(o["xl/_rels/workbook.xml.rels"])},"workbook.xml":g.parseXML(o["xl/workbook.xml"]),"styles.xml":g.parseXML(o["xl/styles.xml"]),worksheets:{"sheet1.xml":f}},"[Content_Types].xml":g.parseXML(o["[Content_Types].xml"])}, +b=b.buttons.exportData(c.exportOptions),j,l,i=function(a){j=e+1;l=m(f,"row",{attr:{r:j}});for(var b=0,c=a.length;b 0 ) { + s += separator; + } + + s += boundary ? + boundary + ('' + a[i]).replace( reBoundary, escapeChar+boundary ) + boundary : + a[i]; + } + + return s; + }; + + var header = config.header ? join( data.header )+newLine : ''; + var footer = config.footer && data.footer ? newLine+join( data.footer ) : ''; + var body = []; + + for ( var i=0, ien=data.body.length ; i 1 && version[1]*1 < 603.1 ) { + return true; + } + + return false; +}; + +/** + * Convert from numeric position to letter for column names in Excel + * @param {int} n Column number + * @return {string} Column letter(s) name + */ +function createCellPos( n ){ + var ordA = 'A'.charCodeAt(0); + var ordZ = 'Z'.charCodeAt(0); + var len = ordZ - ordA + 1; + var s = ""; + + while( n >= 0 ) { + s = String.fromCharCode(n % len + ordA) + s; + n = Math.floor(n / len) - 1; + } + + return s; +} + +try { + var _serialiser = new XMLSerializer(); + var _ieExcel; +} +catch (t) {} + +/** + * Recursively add XML files from an object's structure to a ZIP file. This + * allows the XSLX file to be easily defined with an object's structure matching + * the files structure. + * + * @param {JSZip} zip ZIP package + * @param {object} obj Object to add (recursive) + */ +function _addToZip( zip, obj ) { + if ( _ieExcel === undefined ) { + // Detect if we are dealing with IE's _awful_ serialiser by seeing if it + // drop attributes + _ieExcel = _serialiser + .serializeToString( + $.parseXML( excelStrings['xl/worksheets/sheet1.xml'] ) + ) + .indexOf( 'xmlns:r' ) === -1; + } + + $.each( obj, function ( name, val ) { + if ( $.isPlainObject( val ) ) { + var newDir = zip.folder( name ); + _addToZip( newDir, val ); + } + else { + if ( _ieExcel ) { + // IE's XML serialiser will drop some name space attributes from + // from the root node, so we need to save them. Do this by + // replacing the namespace nodes with a regular attribute that + // we convert back when serialised. Edge does not have this + // issue + var worksheet = val.childNodes[0]; + var i, ien; + var attrs = []; + + for ( i=worksheet.attributes.length-1 ; i>=0 ; i-- ) { + var attrName = worksheet.attributes[i].nodeName; + var attrValue = worksheet.attributes[i].nodeValue; + + if ( attrName.indexOf( ':' ) !== -1 ) { + attrs.push( { name: attrName, value: attrValue } ); + + worksheet.removeAttribute( attrName ); + } + } + + for ( i=0, ien=attrs.length ; i]*?) xmlns=""([^<>]*?)>/g, '<$1 $2>' ); + + zip.file( name, str ); + } + } ); +} + +/** + * Create an XML node and add any children, attributes, etc without needing to + * be verbose in the DOM. + * + * @param {object} doc XML document + * @param {string} nodeName Node name + * @param {object} opts Options - can be `attr` (attributes), `children` + * (child nodes) and `text` (text content) + * @return {node} Created node + */ +function _createNode( doc, nodeName, opts ) { + var tempNode = doc.createElement( nodeName ); + + if ( opts ) { + if ( opts.attr ) { + $(tempNode).attr( opts.attr ); + } + + if( opts.children ) { + $.each( opts.children, function ( key, value ) { + tempNode.appendChild( value ); + }); + } + + if( opts.text ) { + tempNode.appendChild( doc.createTextNode( opts.text ) ); + } + } + + return tempNode; +} + +/** + * Get the width for an Excel column based on the contents of that column + * @param {object} data Data for export + * @param {int} col Column index + * @return {int} Column width + */ +function _excelColWidth( data, col ) { + var max = data.header[col].length; + var len, lineSplit, str; + + if ( data.footer && data.footer[col].length > max ) { + max = data.footer[col].length; + } + + for ( var i=0, ien=data.body.length ; i max ) { + max = len; + } + + // Max width rather than having potentially massive column widths + if ( max > 40 ) { + return 52; // 40 * 1.3 + } + } + + max *= 1.3; + + // And a min width + return max > 6 ? max : 6; +} + +// Excel - Pre-defined strings to build a basic XLSX file +var excelStrings = { + "_rels/.rels": + ''+ + ''+ + ''+ + '', + + "xl/_rels/workbook.xml.rels": + ''+ + ''+ + ''+ + ''+ + '', + + "[Content_Types].xml": + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + '', + + "xl/workbook.xml": + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + '', + + "xl/worksheets/sheet1.xml": + ''+ + ''+ + ''+ + '', + + "xl/styles.xml": + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ // Excel appears to use this as a dotted background regardless of values + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + ''+ + '' +}; +// Note we could use 3 `for` loops for the styles, but when gzipped there is +// virtually no difference in size, since the above can be easily compressed + +// Pattern matching for special number formats. Perhaps this should be exposed +// via an API in future? +// Ref: section 3.8.30 - built in formatters in open spreadsheet +// https://www.ecma-international.org/news/TC45_current_work/Office%20Open%20XML%20Part%204%20-%20Markup%20Language%20Reference.pdf +var _excelSpecials = [ + { match: /^\-?\d+\.\d%$/, style: 60, fmt: function (d) { return d/100; } }, // Precent with d.p. + { match: /^\-?\d+\.?\d*%$/, style: 56, fmt: function (d) { return d/100; } }, // Percent + { match: /^\-?\$[\d,]+.?\d*$/, style: 57 }, // Dollars + { match: /^\-?£[\d,]+.?\d*$/, style: 58 }, // Pounds + { match: /^\-?€[\d,]+.?\d*$/, style: 59 }, // Euros + { match: /^\-?\d+$/, style: 65 }, // Numbers without thousand separators + { match: /^\-?\d+\.\d{2}$/, style: 66 }, // Numbers 2 d.p. without thousands separators + { match: /^\([\d,]+\)$/, style: 61, fmt: function (d) { return -1 * d.replace(/[\(\)]/g, ''); } }, // Negative numbers indicated by brackets + { match: /^\([\d,]+\.\d{2}\)$/, style: 62, fmt: function (d) { return -1 * d.replace(/[\(\)]/g, ''); } }, // Negative numbers indicated by brackets - 2d.p. + { match: /^\-?[\d,]+$/, style: 63 }, // Numbers with thousand separators + { match: /^\-?[\d,]+\.\d{2}$/, style: 64 } // Numbers with 2 d.p. and thousands separators +]; + + + +/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * + * Buttons + */ + +// +// Copy to clipboard +// +DataTable.ext.buttons.copyHtml5 = { + className: 'buttons-copy buttons-html5', + + text: function ( dt ) { + return dt.i18n( 'buttons.copy', 'Copy' ); + }, + + action: function ( e, dt, button, config ) { + this.processing( true ); + + var that = this; + var exportData = _exportData( dt, config ); + var output = exportData.str; + var hiddenDiv = $('
      ') + .css( { + height: 1, + width: 1, + overflow: 'hidden', + position: 'fixed', + top: 0, + left: 0 + } ); + + if ( config.customize ) { + output = config.customize( output, config ); + } + + var textarea = $('",l.noCloneChecked=!!a.cloneNode(!0).lastChild.defaultValue,b.appendChild(a),c=d.createElement("input"),c.setAttribute("type","radio"),c.setAttribute("checked","checked"),c.setAttribute("name","t"),a.appendChild(c),l.checkClone=a.cloneNode(!0).cloneNode(!0).lastChild.checked,l.noCloneEvent=!!a.addEventListener,a[n.expando]=1,l.attributes=!a.getAttribute(n.expando)}();var da={option:[1,""],legend:[1,"
      ","
      "],area:[1,"",""],param:[1,"",""],thead:[1,"","
      "],tr:[2,"","
      "],col:[2,"","
      "],td:[3,"","
      "],_default:l.htmlSerialize?[0,"",""]:[1,"X
      ","
      "]};da.optgroup=da.option,da.tbody=da.tfoot=da.colgroup=da.caption=da.thead,da.th=da.td;function ea(a,b){var c,d,e=0,f="undefined"!=typeof a.getElementsByTagName?a.getElementsByTagName(b||"*"):"undefined"!=typeof a.querySelectorAll?a.querySelectorAll(b||"*"):void 0;if(!f)for(f=[],c=a.childNodes||a;null!=(d=c[e]);e++)!b||n.nodeName(d,b)?f.push(d):n.merge(f,ea(d,b));return void 0===b||b&&n.nodeName(a,b)?n.merge([a],f):f}function fa(a,b){for(var c,d=0;null!=(c=a[d]);d++)n._data(c,"globalEval",!b||n._data(b[d],"globalEval"))}var ga=/<|&#?\w+;/,ha=/r;r++)if(g=a[r],g||0===g)if("object"===n.type(g))n.merge(q,g.nodeType?[g]:g);else if(ga.test(g)){i=i||p.appendChild(b.createElement("div")),j=($.exec(g)||["",""])[1].toLowerCase(),m=da[j]||da._default,i.innerHTML=m[1]+n.htmlPrefilter(g)+m[2],f=m[0];while(f--)i=i.lastChild;if(!l.leadingWhitespace&&aa.test(g)&&q.push(b.createTextNode(aa.exec(g)[0])),!l.tbody){g="table"!==j||ha.test(g)?""!==m[1]||ha.test(g)?0:i:i.firstChild,f=g&&g.childNodes.length;while(f--)n.nodeName(k=g.childNodes[f],"tbody")&&!k.childNodes.length&&g.removeChild(k)}n.merge(q,i.childNodes),i.textContent="";while(i.firstChild)i.removeChild(i.firstChild);i=p.lastChild}else q.push(b.createTextNode(g));i&&p.removeChild(i),l.appendChecked||n.grep(ea(q,"input"),ia),r=0;while(g=q[r++])if(d&&n.inArray(g,d)>-1)e&&e.push(g);else if(h=n.contains(g.ownerDocument,g),i=ea(p.appendChild(g),"script"),h&&fa(i),c){f=0;while(g=i[f++])_.test(g.type||"")&&c.push(g)}return i=null,p}!function(){var b,c,e=d.createElement("div");for(b in{submit:!0,change:!0,focusin:!0})c="on"+b,(l[b]=c in a)||(e.setAttribute(c,"t"),l[b]=e.attributes[c].expando===!1);e=null}();var ka=/^(?:input|select|textarea)$/i,la=/^key/,ma=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,na=/^(?:focusinfocus|focusoutblur)$/,oa=/^([^.]*)(?:\.(.+)|)/;function pa(){return!0}function qa(){return!1}function ra(){try{return d.activeElement}catch(a){}}function sa(a,b,c,d,e,f){var g,h;if("object"==typeof b){"string"!=typeof c&&(d=d||c,c=void 0);for(h in b)sa(a,h,c,d,b[h],f);return a}if(null==d&&null==e?(e=c,d=c=void 0):null==e&&("string"==typeof c?(e=d,d=void 0):(e=d,d=c,c=void 0)),e===!1)e=qa;else if(!e)return a;return 1===f&&(g=e,e=function(a){return n().off(a),g.apply(this,arguments)},e.guid=g.guid||(g.guid=n.guid++)),a.each(function(){n.event.add(this,b,e,d,c)})}n.event={global:{},add:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=n._data(a);if(r){c.handler&&(i=c,c=i.handler,e=i.selector),c.guid||(c.guid=n.guid++),(g=r.events)||(g=r.events={}),(k=r.handle)||(k=r.handle=function(a){return"undefined"==typeof n||a&&n.event.triggered===a.type?void 0:n.event.dispatch.apply(k.elem,arguments)},k.elem=a),b=(b||"").match(G)||[""],h=b.length;while(h--)f=oa.exec(b[h])||[],o=q=f[1],p=(f[2]||"").split(".").sort(),o&&(j=n.event.special[o]||{},o=(e?j.delegateType:j.bindType)||o,j=n.event.special[o]||{},l=n.extend({type:o,origType:q,data:d,handler:c,guid:c.guid,selector:e,needsContext:e&&n.expr.match.needsContext.test(e),namespace:p.join(".")},i),(m=g[o])||(m=g[o]=[],m.delegateCount=0,j.setup&&j.setup.call(a,d,p,k)!==!1||(a.addEventListener?a.addEventListener(o,k,!1):a.attachEvent&&a.attachEvent("on"+o,k))),j.add&&(j.add.call(a,l),l.handler.guid||(l.handler.guid=c.guid)),e?m.splice(m.delegateCount++,0,l):m.push(l),n.event.global[o]=!0);a=null}},remove:function(a,b,c,d,e){var f,g,h,i,j,k,l,m,o,p,q,r=n.hasData(a)&&n._data(a);if(r&&(k=r.events)){b=(b||"").match(G)||[""],j=b.length;while(j--)if(h=oa.exec(b[j])||[],o=q=h[1],p=(h[2]||"").split(".").sort(),o){l=n.event.special[o]||{},o=(d?l.delegateType:l.bindType)||o,m=k[o]||[],h=h[2]&&new RegExp("(^|\\.)"+p.join("\\.(?:.*\\.|)")+"(\\.|$)"),i=f=m.length;while(f--)g=m[f],!e&&q!==g.origType||c&&c.guid!==g.guid||h&&!h.test(g.namespace)||d&&d!==g.selector&&("**"!==d||!g.selector)||(m.splice(f,1),g.selector&&m.delegateCount--,l.remove&&l.remove.call(a,g));i&&!m.length&&(l.teardown&&l.teardown.call(a,p,r.handle)!==!1||n.removeEvent(a,o,r.handle),delete k[o])}else for(o in k)n.event.remove(a,o+b[j],c,d,!0);n.isEmptyObject(k)&&(delete r.handle,n._removeData(a,"events"))}},trigger:function(b,c,e,f){var g,h,i,j,l,m,o,p=[e||d],q=k.call(b,"type")?b.type:b,r=k.call(b,"namespace")?b.namespace.split("."):[];if(i=m=e=e||d,3!==e.nodeType&&8!==e.nodeType&&!na.test(q+n.event.triggered)&&(q.indexOf(".")>-1&&(r=q.split("."),q=r.shift(),r.sort()),h=q.indexOf(":")<0&&"on"+q,b=b[n.expando]?b:new n.Event(q,"object"==typeof b&&b),b.isTrigger=f?2:3,b.namespace=r.join("."),b.rnamespace=b.namespace?new RegExp("(^|\\.)"+r.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,b.result=void 0,b.target||(b.target=e),c=null==c?[b]:n.makeArray(c,[b]),l=n.event.special[q]||{},f||!l.trigger||l.trigger.apply(e,c)!==!1)){if(!f&&!l.noBubble&&!n.isWindow(e)){for(j=l.delegateType||q,na.test(j+q)||(i=i.parentNode);i;i=i.parentNode)p.push(i),m=i;m===(e.ownerDocument||d)&&p.push(m.defaultView||m.parentWindow||a)}o=0;while((i=p[o++])&&!b.isPropagationStopped())b.type=o>1?j:l.bindType||q,g=(n._data(i,"events")||{})[b.type]&&n._data(i,"handle"),g&&g.apply(i,c),g=h&&i[h],g&&g.apply&&M(i)&&(b.result=g.apply(i,c),b.result===!1&&b.preventDefault());if(b.type=q,!f&&!b.isDefaultPrevented()&&(!l._default||l._default.apply(p.pop(),c)===!1)&&M(e)&&h&&e[q]&&!n.isWindow(e)){m=e[h],m&&(e[h]=null),n.event.triggered=q;try{e[q]()}catch(s){}n.event.triggered=void 0,m&&(e[h]=m)}return b.result}},dispatch:function(a){a=n.event.fix(a);var b,c,d,f,g,h=[],i=e.call(arguments),j=(n._data(this,"events")||{})[a.type]||[],k=n.event.special[a.type]||{};if(i[0]=a,a.delegateTarget=this,!k.preDispatch||k.preDispatch.call(this,a)!==!1){h=n.event.handlers.call(this,a,j),b=0;while((f=h[b++])&&!a.isPropagationStopped()){a.currentTarget=f.elem,c=0;while((g=f.handlers[c++])&&!a.isImmediatePropagationStopped())(!a.rnamespace||a.rnamespace.test(g.namespace))&&(a.handleObj=g,a.data=g.data,d=((n.event.special[g.origType]||{}).handle||g.handler).apply(f.elem,i),void 0!==d&&(a.result=d)===!1&&(a.preventDefault(),a.stopPropagation()))}return k.postDispatch&&k.postDispatch.call(this,a),a.result}},handlers:function(a,b){var c,d,e,f,g=[],h=b.delegateCount,i=a.target;if(h&&i.nodeType&&("click"!==a.type||isNaN(a.button)||a.button<1))for(;i!=this;i=i.parentNode||this)if(1===i.nodeType&&(i.disabled!==!0||"click"!==a.type)){for(d=[],c=0;h>c;c++)f=b[c],e=f.selector+" ",void 0===d[e]&&(d[e]=f.needsContext?n(e,this).index(i)>-1:n.find(e,this,null,[i]).length),d[e]&&d.push(f);d.length&&g.push({elem:i,handlers:d})}return h]","i"),va=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:-]+)[^>]*)\/>/gi,wa=/\s*$/g,Aa=ca(d),Ba=Aa.appendChild(d.createElement("div"));function Ca(a,b){return n.nodeName(a,"table")&&n.nodeName(11!==b.nodeType?b:b.firstChild,"tr")?a.getElementsByTagName("tbody")[0]||a.appendChild(a.ownerDocument.createElement("tbody")):a}function Da(a){return a.type=(null!==n.find.attr(a,"type"))+"/"+a.type,a}function Ea(a){var b=ya.exec(a.type);return b?a.type=b[1]:a.removeAttribute("type"),a}function Fa(a,b){if(1===b.nodeType&&n.hasData(a)){var c,d,e,f=n._data(a),g=n._data(b,f),h=f.events;if(h){delete g.handle,g.events={};for(c in h)for(d=0,e=h[c].length;e>d;d++)n.event.add(b,c,h[c][d])}g.data&&(g.data=n.extend({},g.data))}}function Ga(a,b){var c,d,e;if(1===b.nodeType){if(c=b.nodeName.toLowerCase(),!l.noCloneEvent&&b[n.expando]){e=n._data(b);for(d in e.events)n.removeEvent(b,d,e.handle);b.removeAttribute(n.expando)}"script"===c&&b.text!==a.text?(Da(b).text=a.text,Ea(b)):"object"===c?(b.parentNode&&(b.outerHTML=a.outerHTML),l.html5Clone&&a.innerHTML&&!n.trim(b.innerHTML)&&(b.innerHTML=a.innerHTML)):"input"===c&&Z.test(a.type)?(b.defaultChecked=b.checked=a.checked,b.value!==a.value&&(b.value=a.value)):"option"===c?b.defaultSelected=b.selected=a.defaultSelected:("input"===c||"textarea"===c)&&(b.defaultValue=a.defaultValue)}}function Ha(a,b,c,d){b=f.apply([],b);var e,g,h,i,j,k,m=0,o=a.length,p=o-1,q=b[0],r=n.isFunction(q);if(r||o>1&&"string"==typeof q&&!l.checkClone&&xa.test(q))return a.each(function(e){var f=a.eq(e);r&&(b[0]=q.call(this,e,f.html())),Ha(f,b,c,d)});if(o&&(k=ja(b,a[0].ownerDocument,!1,a,d),e=k.firstChild,1===k.childNodes.length&&(k=e),e||d)){for(i=n.map(ea(k,"script"),Da),h=i.length;o>m;m++)g=k,m!==p&&(g=n.clone(g,!0,!0),h&&n.merge(i,ea(g,"script"))),c.call(a[m],g,m);if(h)for(j=i[i.length-1].ownerDocument,n.map(i,Ea),m=0;h>m;m++)g=i[m],_.test(g.type||"")&&!n._data(g,"globalEval")&&n.contains(j,g)&&(g.src?n._evalUrl&&n._evalUrl(g.src):n.globalEval((g.text||g.textContent||g.innerHTML||"").replace(za,"")));k=e=null}return a}function Ia(a,b,c){for(var d,e=b?n.filter(b,a):a,f=0;null!=(d=e[f]);f++)c||1!==d.nodeType||n.cleanData(ea(d)),d.parentNode&&(c&&n.contains(d.ownerDocument,d)&&fa(ea(d,"script")),d.parentNode.removeChild(d));return a}n.extend({htmlPrefilter:function(a){return a.replace(va,"<$1>")},clone:function(a,b,c){var d,e,f,g,h,i=n.contains(a.ownerDocument,a);if(l.html5Clone||n.isXMLDoc(a)||!ua.test("<"+a.nodeName+">")?f=a.cloneNode(!0):(Ba.innerHTML=a.outerHTML,Ba.removeChild(f=Ba.firstChild)),!(l.noCloneEvent&&l.noCloneChecked||1!==a.nodeType&&11!==a.nodeType||n.isXMLDoc(a)))for(d=ea(f),h=ea(a),g=0;null!=(e=h[g]);++g)d[g]&&Ga(e,d[g]);if(b)if(c)for(h=h||ea(a),d=d||ea(f),g=0;null!=(e=h[g]);g++)Fa(e,d[g]);else Fa(a,f);return d=ea(f,"script"),d.length>0&&fa(d,!i&&ea(a,"script")),d=h=e=null,f},cleanData:function(a,b){for(var d,e,f,g,h=0,i=n.expando,j=n.cache,k=l.attributes,m=n.event.special;null!=(d=a[h]);h++)if((b||M(d))&&(f=d[i],g=f&&j[f])){if(g.events)for(e in g.events)m[e]?n.event.remove(d,e):n.removeEvent(d,e,g.handle);j[f]&&(delete j[f],k||"undefined"==typeof d.removeAttribute?d[i]=void 0:d.removeAttribute(i),c.push(f))}}}),n.fn.extend({domManip:Ha,detach:function(a){return Ia(this,a,!0)},remove:function(a){return Ia(this,a)},text:function(a){return Y(this,function(a){return void 0===a?n.text(this):this.empty().append((this[0]&&this[0].ownerDocument||d).createTextNode(a))},null,a,arguments.length)},append:function(){return Ha(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=Ca(this,a);b.appendChild(a)}})},prepend:function(){return Ha(this,arguments,function(a){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var b=Ca(this,a);b.insertBefore(a,b.firstChild)}})},before:function(){return Ha(this,arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this)})},after:function(){return Ha(this,arguments,function(a){this.parentNode&&this.parentNode.insertBefore(a,this.nextSibling)})},empty:function(){for(var a,b=0;null!=(a=this[b]);b++){1===a.nodeType&&n.cleanData(ea(a,!1));while(a.firstChild)a.removeChild(a.firstChild);a.options&&n.nodeName(a,"select")&&(a.options.length=0)}return this},clone:function(a,b){return a=null==a?!1:a,b=null==b?a:b,this.map(function(){return n.clone(this,a,b)})},html:function(a){return Y(this,function(a){var b=this[0]||{},c=0,d=this.length;if(void 0===a)return 1===b.nodeType?b.innerHTML.replace(ta,""):void 0;if("string"==typeof a&&!wa.test(a)&&(l.htmlSerialize||!ua.test(a))&&(l.leadingWhitespace||!aa.test(a))&&!da[($.exec(a)||["",""])[1].toLowerCase()]){a=n.htmlPrefilter(a);try{for(;d>c;c++)b=this[c]||{},1===b.nodeType&&(n.cleanData(ea(b,!1)),b.innerHTML=a);b=0}catch(e){}}b&&this.empty().append(a)},null,a,arguments.length)},replaceWith:function(){var a=[];return Ha(this,arguments,function(b){var c=this.parentNode;n.inArray(this,a)<0&&(n.cleanData(ea(this)),c&&c.replaceChild(b,this))},a)}}),n.each({appendTo:"append",prependTo:"prepend",insertBefore:"before",insertAfter:"after",replaceAll:"replaceWith"},function(a,b){n.fn[a]=function(a){for(var c,d=0,e=[],f=n(a),h=f.length-1;h>=d;d++)c=d===h?this:this.clone(!0),n(f[d])[b](c),g.apply(e,c.get());return this.pushStack(e)}});var Ja,Ka={HTML:"block",BODY:"block"};function La(a,b){var c=n(b.createElement(a)).appendTo(b.body),d=n.css(c[0],"display");return c.detach(),d}function Ma(a){var b=d,c=Ka[a];return c||(c=La(a,b),"none"!==c&&c||(Ja=(Ja||n("