Commit graph

13 commits

Author SHA1 Message Date
Scot Hacker
276ead54e7 Modeling and admin for attachment support 2019-04-06 16:30:01 -07:00
Scot Hacker
4a99d90d1e
Import tasks via CSV (#51)
* Bare start on CSV support

* Move core of CSV importer to operations

* More validations, break out validation function

* Validate dates and TaskList; convert errors to list of dictionaries

* Finish upsert code, and documentation

* Print msgs from the mgmt command, not the operations module

* Handle BOM marks

* Handle both in-memory and local file objects

* Update readme

* Working browser-upload view

* Bail on incorrect headers

* Fix default values and finish example spreadsheet

* Change column order, update docs

* Update index.md for RTD

* First round of responses to PR feedback

* Restore independent summaries/errors/upserts properties

* PR responses

* Split off reusable date validator into separate function

* Fix URLs append

* General test suite for CSV importer
2019-03-25 23:19:11 -07:00
Scot Hacker
f6d79879ae
Fix MySQL migration (#57)
* Use CharField, not TextField for MySQL compat.

* black formatting
2019-03-25 07:43:53 -07:00
multun
c7ad961ef3 Implement mail tracker system
* Implement mail tracking

Signed-off-by: Victor "multun" Collod <victor.collod@prologin.org>

* Implement task merging

* Add a mail tracker title format pattern

* Autocomplete task names

* Fix comment display

* Track notification answers

* Add a socket timeout for the mail worker

A mail worker is a long running application. And sometimes, the IMAP server
just hangs for hours for no apparent reason. imaplib doesn't enable setting
a timeout, and setting it globally seems fine.

* Only validate the merge form when submitted

* Redirect to the new form when merging

* Prettier task edit UI

* Make task merging optional

* Test mail tracking

* Update documentation for mail tracking

* Update dependencies

* Add the TODO_COMMENT_CLASSES setting

* Fix dependencies install order

* Remove debug leftovers, improve documentation

* Fail on missing from_address
2019-03-11 00:04:19 -07:00
Scot Hacker
1f27688aa4 Complete fake data loading via hopper
- Includes mods to task.created_date to allow overrides
2018-04-05 00:27:53 -07:00
Scot Hacker
ff49d5cba2 Just enough infrastructure to get tests to pass as standalone app 2018-03-29 23:05:49 -07:00
Scot Hacker
d3d8d5e46c Rename Item model to Task
- With matching model, view, template changes
2018-03-28 22:51:10 -07:00
Scot Hacker
cc1a48ee6f Completed field on Item should default to False 2018-02-12 23:38:03 -08:00
Scot Hacker
efc2dbe11a Rename List model to TaskList 2018-02-10 00:25:28 -08:00
Scot Hacker
90c41d1f29 Django 2.0 compatibility (requirement)
- URLs to path() style
- Misc updates
- Namespaces all URL references
- Removes dependency on AutoSlugField
- Cleaner reversals
- Cleaner docstrings
2018-02-03 00:09:23 -08:00
Scot Hacker
9b6418c7b1 Allow unassigned ("anyone") tickets
- Requires a migration
2016-04-09 11:56:27 -07:00
Scot Hacker
0f0505f24d Fix field warnings for Django 1.8 (with migration) 2015-06-15 00:11:50 -07:00
Scot Hacker
30127a23de Set default value for boolean Item.completed 2014-11-07 22:04:23 -08:00