Commit Graph

213 Commits

Author SHA1 Message Date
msaelices
7b022fa1e0 If HELPDESK_ANON_ACCESS_RAISES_404 is True, it raises a 404 to anon users. It's like the helpdesk was invisible 2017-10-04 03:43:32 +02:00
Garret Wassermann
1e11e227ff Update ticket_view for Python 2 and 3, to correct a 500 error in #494 2017-08-30 10:49:56 -04:00
Garret Wassermann
043a40682f Merge pull request #494 from Heteroskedastic/issue#493
- issue #493: internal error 500 on save query
2017-08-30 10:40:46 -04:00
msaelices
f931dd4dba Fix AttributeError while staff user does a mass update in some tickets using the Close (Send E-mail) action. 2017-08-21 01:26:45 +02:00
Garret Wassermann
49aac657a9 PEP8 fixups 2017-04-16 04:44:16 -04:00
Garret Wassermann
01e87f2cb8 #72: Prevent django template tags from being executed in followup comments 2017-04-16 03:24:39 -04:00
Will Stott
fb0782294e Don't show error on initial get. 2017-04-13 11:36:38 +01:00
Will Stott
b7a97183cb Never return None from views.public.create_ticket
Would create a 500 when user omitted their email. Only a partial improve. Added a TODO: as this view still breaks if passing non-numeric characters to the ID.

I assume this needs a full overhaul really.
2017-04-13 11:30:29 +01:00
pprolancer
babc7586cf - issue #493: internal error 500 on save query
https://github.com/django-helpdesk/django-helpdesk/issues/493
2017-03-12 19:58:57 +03:30
Alex Seeholzer
645f196848 Added tests covering the usersettings_helpdesk occurrences 2017-01-13 17:37:10 +01:00
Alex Seeholzer
4e018db5a6 Added unique related_name “usersetttings_helpdesk” for the one-to-one relation to User in UserSettings. 2017-01-13 15:22:41 +01:00
Jonathan Barratt
e82e5fcd5f
urlquote email address when used as get query param 2016-12-11 06:20:03 +07:00
Pawel M
94c39cba69
solves Title changed to . (Null title) on failed attachment upload. 2016-12-11 06:00:05 +07:00
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
53ed0d3a2c Remove all the deprecated API related files and references 2016-10-29 08:50:13 +02:00
Jonathan Barratt
790f1fc003 Merge pull request #374 from alexbarcelo/urls_app_name
Set app_name as 'helpdesk' at the urls.py, and droping url prefixes
2016-10-28 15:59:29 +07:00
Alex Barcelo
f017adea63 fixing those two python files 2016-10-24 10:05:41 +02: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
Ross Poulton
138904bf8b Update project URLs per #424 2016-10-12 11:14:10 +11: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
e5a6686c6d Ticket #403 - This code changes the behaviour of lookups for tickets and
ignores the queue name. This means that queue changes on a ticket dont
break the email links which have already been sent out.
The queue name still exists in the link/url, but is not used in the
lookup
2016-06-24 13:46:37 +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
Darren Riedlinger
ac8ead52c8 getattr on usersettings.setting dict always returns False. Use settings.get() instead 2016-03-06 12:46:36 -08: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
Alex Barcelo
3a0f08046e using helpdesk app_name and droping helpdesk_ prefix 2015-12-22 10:27:03 +01:00
Ross Poulton
ca1690becb Deprecate custom API (see #198) 2015-12-22 11:28:00 +11: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
Ross Poulton
a4e6f086c8 Merge pull request #350 from ssadler/updated_cc_attachments
Include attachments to cc'd users on ticket update
2015-11-13 08:20:26 +11:00
Scott Sadler
98ad8567b9 Include attachments to cc'd users on ticket update 2015-11-12 15:53:16 +01:00
vlad.vyazovetskov
0a3171a024 From gettatr to get, because dict doesn't contatin attributes.
More readable if statement.
2015-11-12 17:31:14 +03: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
Tony Zhu
807e0c5ea9 Remove extra space line 2015-04-14 16:29:47 -04:00
Tony Zhu
11e4f1a7bd Merge upstream changes 2015-04-14 16:10:13 -04:00
Tony Zhu
dc86236136 Go back to the original helpdesk repo 2014-10-23 10:44:59 -04: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
Tony Zhu
af1a297460 Merge from origin repo 2014-10-20 14:12:40 -04: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
61f49786c0 Fixes for Django 1.7. For prior Django versions, South 1.0 must be used for
migirations. Fixes #254.
2014-09-10 09:06:50 +10: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
9c33c67d1d ticket view redirect to management form should consider generic is_helpdesk_staff definition 2014-08-01 09:28:04 +02: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
82df965d5f replace HELPDESK_ALLOW_NON_STAFF_TICKET_UPDATE in homepage view and test behaviour 2014-07-29 22:03:47 +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
Tony Zhu
fced647271 Use json instead of deprecated django.utils.simplejson 2014-03-31 14:43:59 -04: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
127d57e386 Fix timezone import for Django < 1.4 2013-01-23 12:21:54 +11: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