Jonathan Barratt
5acd891c68
refactor all handling of attached files
...
Extract attachment processing from forms, views.staff, and management.command.get_email modules, and consolidate it into a unified lib module function.
Also refactor the affected components, most notably lib.send_templated_email, to make it easier (IMO) to reason about changes to them.
Add unit tests for attachments with UTF-8 filenames, and functional tests for submission of same, as well as ASCII versions, through the public ticket-form.
Remove unused Attachment method "get_upload_to".
2016-12-08 19:47:20 +07:00
Jonathan Barratt
7738bba2ab
remove special-case imports for legacy versions
...
standardise use, or avoidance, of timezone, template from_string, and Context
2016-11-21 10:16:03 +07:00
Jonathan Barratt
ebfea8274d
convert reverse-URL lookups to helpdesk namespace
...
in views.staff, this fixes:
-run_report's no-tickets-found redirect to report_index
-del_attachment's redirect to parent ticket view after deletion
2016-11-11 10:31:37 +07:00
Garret Wassermann
adf2b16c2c
Fix namespaces in test
2016-10-29 04:33:27 -04:00
Garret Wassermann
d791700582
Fix PEP8 errors
2016-10-29 04:08:57 -04:00
Garret Wassermann
cad174468b
Sync with namespace and other v0.2 changes
2016-10-29 03:47:15 -04:00
Alex Barcelo
89a6ae01b8
Fixing style (according to branch 'autocodestyle') + quicktest
2016-10-24 08:04:31 +02:00
Alex Barcelo
3c35473265
fixing views.py (except deprecated api)
2016-10-23 22:02:02 +02:00
Alex Barcelo
24d88be8d9
Initial general clean-up of stuff
2016-10-21 17:14:12 +02:00
Daryl
3b181e87ef
Fix inconsistent indentation
2016-10-20 11:43:22 +07:00
Alex Barcelo
91afbb9755
fixing some additional reverse stuff
2016-10-19 15:30:37 +02:00
Alex Barcelo
afd6ebad74
Merge current 'master' state into urls_app_name
2016-10-19 15:26:04 +02:00
Garret Wassermann
3f620e83a2
Update style of Ticket FollowUp list to be a timeline
2016-09-27 17:29:59 -04:00
Garret Wassermann
6a86a0106a
Updated report_index() to remove the context= so it matches the syntax of dashboard() function.
2016-09-13 00:31:56 -04:00
Garret Wassermann
00cdbcf43b
Finish CSS template changes for Ticket page and related properties; includes responsive Ticket list table; styled file input buttons but need to find way to update text for beyond the first input box; added a ticket_attachment_del page to confirm removal of attachment and styled it
2016-09-12 02:11:55 -04:00
Garret Wassermann
67f81ac252
Continue CSS cleanup for Ticket description, remove unneeded priority and button images and associated functions
2016-09-09 04:03:32 -04:00
Garret Wassermann
d66259efdc
Update dashboard and reports to new style, add more CDN support for new javascript libraries
2016-09-09 02:45:12 -04:00
Ross Poulton
f2e497c3c6
Merge pull request #415 from mhannig/fix-broken-keyword-search
...
JSON Serialization broke Keyword-Searches
2016-07-05 08:48:10 +10:00
Matthias Hannig
a37f7145ec
Serializing the query using JSON for SavedSearches unfortunately broke
...
Keyword-Searches.
Now, only the search string is serialized for saving and
the "qset" is moved from "other_filters" to apply_query.
2016-07-04 17:47:53 +02:00
Ross Poulton
03b3a70975
Merge pull request #410 from mrkiwi-nz/fix_savequery
...
Fix savequery
2016-06-30 10:36:41 +10:00
Daryl
0ac7183875
Add test for saving a query, fix shared checkbox issue
...
My browser sends 'on' when a checkbox is ticked, django ORM only
recognises '1', 'true' or 't' as valid 'True' responses.
This throws an error
ValidationError at /helpdesk/save_query/
[u"'on' value must be either True or False."]
This could be fixed with " value='1'" in the template, but testing that is harder
My fix is to add a check in the view. 2 more lines, but easier to unittest.
Core devs need to make a call as to which solution is best.
D
2016-06-30 11:36:21 +12:00
Matthias Hannig
5f0191957f
fixed python3 compat issue
2016-06-28 18:44:54 +02:00
Matthias Hannig
895a65fdb9
Fixed remote code execution through unpickling untrusted code.
2016-06-28 18:04:39 +02:00
Daryl
afbfd01fab
Fix Issue #404 : Refactor converting query string into queue:id
2016-06-26 12:45:55 +12:00
Daryl
8a7fe5fcbf
Changed the way the context is passed to render() - this was required
...
to enable django 1.7 to work (otherwise 1.8, 1.9 pass all tests, but 1.7 fails)
2016-06-21 20:56:43 +12:00
Daryl
558f140bfb
Changed render_to_response() to render() - this should work for django1.9.4 plus django1.10
...
Without this change, django1.10 is missing the 'user' object from the context, which results in
a very hard to track down bug manifesting in ;
"NoReverseMatch: Reverse for 'helpdesk_rss_user' with arguments '('',)' and keyword arguments '{}' not found."
At first glance users may think this is the dots-in-usernames bug, but the username is totally missing.
2016-06-21 17:18:06 +12:00
Bruno Tikami
978e6d5c9b
UPDATED: When notifying users about creation / updates on tickets, notify everybody using a single email message.
2016-03-17 01:12:42 -03:00
Pawel M
2b6c23db9f
(1064, "You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ')\n GROUP BY queue, name\n ORDER BY q.id' at line 9") helpdesk/views/staff.py in dashboard 149 solved. When queues is null do not add to sql q.id in ()
2016-03-01 22:53:33 +01:00
Bruno Tikami
4e32e879a8
BUGFIX: new TicketCC instances must be returned after subscribed to Ticket updates.
2016-02-20 17:36:24 -02:00
Bruno Tikami
32ee4de50b
UPDATED: Better validation before creating a duplicated TicketCC
2016-02-19 13:01:39 -02:00
Bruno Tikami
f911f92892
BUGFIX: Don't create duplicated TicketCCs when processing email messages.
2016-02-19 12:25:14 -02:00
Bruno Tikami
380723a972
UPDATED: Use <forms.TicketCCForm> when subscribing to a ticket followups.
2016-02-19 11:09:03 -02:00
Bruno Tikami
be07fdff6c
UPDATED: Finished moving Message-Id field from <Ticket> to <FollowUp> model.
2016-02-16 17:10:13 -02:00
Bruno Tikami
b5ff3f9063
UPDATED: <views.staff.subscribe_staff_member_to_ticket> to accept and validate an user email when creating linking a <TicketCC> instance for a staff member. I'm pretty sure this is NOT the best place to put this but I don't wanna mess too much around for now.
2016-02-07 15:56:30 -02:00
Alex Barcelo
3a0f08046e
using helpdesk
app_name and droping helpdesk_
prefix
2015-12-22 10:27:03 +01:00
Alex Barcelo
01598826bf
protecting through 403 several staff views
2015-12-16 22:27:06 +01:00
Alex Barcelo
fb66fea86e
change basic features of membership into permissions
2015-12-16 22:27:05 +01:00
Ross Poulton
6187b0568c
Merge pull request #358 from flinz/django-1.9-fixes
...
Django 1.9 compatibility
2015-12-16 10:24:16 +11:00
Alex Seeholzer
2da16c511c
updates to remove Django 1.10 deprecation warnings in Django 1.9:
...
- use of patterns() in urls.py is deprecated
- render() functions accept only dicts - introduced checks to ensure downward compatibility back to Django 1.7
2015-12-10 13:36:24 +01:00
Alex Seeholzer
8390125c01
fixes of python 3 test fails
2015-11-18 15:07:33 +01:00
Jonathan Barratt
0610a6645d
Fix QueueMembership bug revealed by django.test's DiscoverRunner
...
If HELPDESK_ENABLE_PER_QUEUE_STAFF_MEMBERSHIP was True but a user had
no QueueMembership entries, then restricting queue access generated
RelatedObjectDoesNotExist exceptions.
- Ask for forgiveness whenever we try to limit a queryset by the
queuemembership related object set.
- Since tests can now be run with the project's settings active,
rather than only with quicktest.py's settings, restore the initial
HELPDESK_ENABLE_PER_QUEUE_MEMBERSHIP value after having tested the
related functionality.
2015-11-16 18:45:27 +07:00
Alex Seeholzer
27c519f2ee
downwards compatibility for django < 1.8
2015-11-13 15:36:04 +01:00
Alex Seeholzer
8f585aef1c
Merge commit 'a4e6f086c8928e77baa73a25b7e8000fb6261498' into django-1.8
...
* commit 'a4e6f086c8928e77baa73a25b7e8000fb6261498':
Include attachments to cc'd users on ticket update
From gettatr to get, because dict doesn't contatin attributes. More readable if statement.
2015-11-13 13:50:11 +01:00
Scott Sadler
98ad8567b9
Include attachments to cc'd users on ticket update
2015-11-12 15:53:16 +01:00
Scott Sadler
e82c17567a
Merge branch 'master' into django-1.8
...
Conflicts:
helpdesk/tests/__init__.py
2015-11-06 14:50:33 +01:00
Alex Seeholzer
0b7e0b7f04
changes in templating engine that worked for django 1.8
2015-06-12 12:52:35 +02:00
Alex Seeholzer
0f69771164
fix for django 1.8.2, get_template_from_string was removed
2015-06-12 12:52:34 +02:00
Jonathan Barratt
bfcd8fc024
Add ability to restrict users' access by queue if so configured, and migration and tests for same.
2015-06-12 12:23:39 +07:00
Jonathan Barratt
711eb6cea2
As of at least Django 1.5, calling __str__() on a CHOICES object returns a proxy object, not the actual text of the CHOICE. Change such calls to title() instead
2015-06-11 14:31:49 +07:00
Ross Poulton
70c57f9096
Merge
2015-04-28 09:13:54 +10:00
Tom Graham
d2ac8af6c0
Improved support for custom user models
...
Support for custom user models with a non-standard username field
2014-10-22 16:18:04 +11:00
Antoine Nguyen
91628ab788
Do not use the builtin staff_member_required decorator.
...
Before 1.7, this decorator always redirects to the admin login page so the LOGIN_URL
setting is useless.
2014-09-19 15:15:42 +02:00
Ross Poulton
4c901880bc
Allow file attachments in storages other than local files (eg S3). Fixes GH-249.
2014-09-02 18:36:00 +10:00
Stefano Brentegani
b1b89d1d6f
replace all explicit uses of HELPDESK_ALLOW_NON_STAFF_TICKET_UPDATE in helpdesk.views.staff
2014-07-30 06:58:57 +02:00
Stefano Brentegani
aea940cb3f
move decorators to their own module, rename to helpdesk_*
2014-07-28 11:46:02 +02:00
Stefano Brentegani
97c317f83d
add tests, example
2014-07-28 06:47:19 +02:00
Stefano Brentegani
8666bf57e5
Merge branch 'master' into custom-staff-filter
2014-07-26 14:10:07 +02:00
Stefano Brentegani
b05c396918
User menu = User settings, Change password, Logout
2014-07-25 18:08:47 +02:00
Ross Poulton
b1b1f93e1e
speed up dashboard queries by using select_related ( fixes #233 )
2014-07-23 09:37:21 +10:00
Stefano Brentegani
fb6b35a724
Merge branch 'master' into custom-staff-filter
...
Conflicts:
docs/settings.rst
helpdesk/views/staff.py
2014-07-22 06:47:50 +02:00
Stefano Brentegani
c477f575db
use django.utils.dates.MONTHS_3 for short month names ( resolves #225 )
2014-07-21 09:12:27 +02:00
Stefano Brentegani
13830a84e5
Custom logic for determining if the user is considered helpdesk staff.
2014-07-20 10:36:24 +02:00
Issac Kelly
978c0665b8
Custom User model changes.
2014-07-15 14:02:31 -07:00
Gabriel Pichot
27217edf4a
Changed references from auth.User to get_user_model (views, forms & commands)
2014-06-18 16:21:37 +02:00
Ross Poulton
66da47205e
settings.py cleanup ( #200 ) - remove HELPDESK_DASHBOARD_BASIC_TICKET_STATS, always shows now. This resolves #201 to my satisfaction for now.
2014-01-29 22:13:42 +11:00
Ross Poulton
99e9bd33d8
Settings.py cleanup ( #200 ): Remove HELPDESK_DASHBOARD_HIDE_EMPTY_QUEUES
2014-01-29 22:09:58 +11:00
Ross Poulton
d340446feb
Remove django-tagging support, as that library is unmaintained. Closes #194 .
2014-01-29 22:00:00 +11:00
Ross Poulton
98340b524d
Fixes #181 . Thanks @AntonOfTheWoods
2013-09-16 11:54:46 +10:00
root
d177291409
Now using mail template ..._cc for informing cc addresses.
2013-04-19 08:54:24 +02:00
Ross Poulton
556cf5d302
fix tpyo - importError vs ImportError
2013-01-23 11:55:36 +11:00
Ross Poulton
53273e3794
Fix datetime/timezone handling in Django <1.4; update management commands to be timezone-aware
2013-01-23 11:35:18 +11:00
Ross Poulton
341a40b9ae
Make datetime handline offset-aware. Now requires pytz. Fixes #142 .
2013-01-23 10:59:12 +11:00
Ross Poulton
6c440f3ed0
Fix #160 - send e-mails to ticket CC list even if there is no ticket submitter
2013-01-21 17:25:14 +11:00
Ross Poulton
22b68430df
Fix from @kotowicz to fix filename encoding. Closes #162 and #149
2013-01-20 14:45:33 +11:00
digitalpbk
6405da36e4
create_ticket POST should accept all users
...
based on HELPDESK_STAFF_ONLY_TICKET_OWNERS setting, the POST part should accept all users or staff users
2012-10-07 14:14:32 +05:30
Ross Poulton
9ae358e6f8
Allow tests to run if Sites module isn't properly configured.
2012-08-08 14:31:51 +10:00
Ross Poulton
f45400e26a
show time until closed for all tickets and those that were opened in the last 60 days. By @kotowicz in 5252ad9d07
2012-08-07 23:57:34 +10:00
Ross Poulton
80a0198785
fix potential divide by zero error, by @kotowicz in 9f205552e7
2012-08-07 23:54:46 +10:00
Ross Poulton
a4f1ac9b8b
new option 'HELPDESK_DASHBOARD_BASIC_TICKET_STATS', shows quick ticket
...
stats in dashboard links to detailed 'days until ticket is closed by
month' plot.
New chart for 'days until ticket is closed'.
By @kotowicz in 0a8f4ce6d6
.
2012-08-07 23:51:52 +10:00
Ross Poulton
d7c781eae8
Make followup edit & deletion staff-only
2012-08-07 23:43:26 +10:00
Ross Poulton
a21050082a
Improve ticket CC handling. By @kotowicz in
...
4bf79ccf46
.
2012-08-07 23:41:43 +10:00
Ross Poulton
2f1b74316f
new option 'HELPDESK_SHOW_EDIT_BUTTON_FOLLOW_UP' which allows superusers
...
to delete individual followups (so you don't have to go to the admin).
(by @kotowicz in a2a5b10b2d
)
2012-08-07 23:32:45 +10:00
Ross Poulton
dc91771b96
Avoid saving empty ticket updates. Closes #99 .
2012-08-07 23:22:39 +10:00
Ross Poulton
e209793aa2
When unauthenticated users reach update view, forward to login. Addresses issue #78 .
2012-08-07 22:50:25 +10:00
Ross Poulton
ba9875af06
Merge branch 'master' of github.com:rossp/django-helpdesk
2012-08-07 20:27:14 +10:00
Ross Poulton
51fdee91ed
Unable to accept resolution of unassigned tickets
2012-08-07 20:25:21 +10:00
satyans24
30a577e18b
Update helpdesk/views/staff.py
2012-07-23 12:38:26 +05:30
satyans24
c02c2a80d7
fix the search for the cases where user search with email address like : no-reply@tigers-connect.com
2012-07-23 11:59:58 +05:30
Ross Poulton
5640e8490c
Updated SQLite check due to changed Django DB definitions. Fixes #143 .
2012-06-11 13:40:54 +10:00
Stefano Brentegani
a520e380f0
fix ticket list (sorting and status querystring)
2012-05-11 17:15:46 +02:00
Ross Poulton
9f0e07f5e6
Add Django 1.4 support - remove old feeds import (no longer required) and add Timezone support. Fixes #135 .
2012-05-11 17:02:55 +10:00
unknown
1363ba3ce1
fix ticket update with no due date set
2012-05-08 14:36:13 +02:00
Ross Poulton
4fb9ab0617
Fixes #122 - avoid exception when taking ticket.
2012-04-11 17:48:39 +10:00
Ross Poulton
230f94f6aa
Merge pull request #108 from kratorius/fix-query-filtering
...
Sanity checks against input for ticket search
2012-01-23 15:16:56 -08:00
Ross Poulton
7e72f3d8ea
Merge pull request #106 from yekibud/master
...
adding global queue email settings for get_mail and HELPDESK_KB_ENABLED_STAFF; added ticket due date
2012-01-23 15:15:44 -08:00
tschmidt
1a4c6520a6
added due_date migration and added to edit ticket form
2012-01-20 15:03:07 -08:00
tschmidt
949179ec2e
adding HELPDESK_STAFF_ONLY_TICKET_OWNERS and HELPDESK_STAFF_ONLY_TICKET_CC settings
2012-01-17 13:40:44 -08:00
Ivan Giuliani
119b951086
Sanity checks against input for ticket search
...
Currently input parameters within the ticket search view are not
validated, thus (manually) altering the parameters in the query string
issues a 500. This patch attempts to solve this problem, reverting to
the default query when the situation can't be recovered.
2012-01-17 13:14:21 +01:00
Ivan Giuliani
23a7f399d1
Save resolution when closing the ticket
2012-01-12 18:21:25 +01:00
Andreas Kotowicz
b79bb6ac10
fix /reports/usermonth/ & /reports/queuemonth/ errors
...
- indexing was wrong
- wrong first month label was used.
2011-12-08 16:49:17 +01:00