797 Commits

Author SHA1 Message Date
Daniel Quinn
f66d7e1c2d Drop SHARED_SECRET in favour of EMAIL_SECRET
Originally we used SHARED secret both for email and for the API.  That
was a bad idea, and now that we're only using this value for one case,
I've renamed it to reflect its actual use.
2017-06-18 22:08:42 +01:00
Daniel Quinn
6f635c74fc Fix HTTP POST of documents
After tinkering with this for about 2 hours, I'm reasonably sure this
ever worked.  This feature was added by me in haste and poked by by the
occasional contributor, and it suffered from neglect.

* Removed the requirement for signature generation in favour of simply
  requiring BasicAuth or a valid session id.
* Fixed a number of bugs in the form itself that would have ensured that
  the form never accepted anything.
* Documented it all properly so now (hopefully) people will have less
  trouble figuring it out in the future.
2017-06-11 01:23:37 +01:00
Daniel Quinn
c82d45689c Remove unused imports & comments 2017-06-11 01:23:08 +01:00
Lucas Kolstad
fde0276d65 Add django_filters to INSTALLED_APPS 2017-05-30 15:05:34 -07:00
Daniel Quinn
3d6289e4e1 Preparing for 0.5.0
I hadn't realised that I hadn't released 0.5.0 yet, so I've amended the version numbers
2017-05-27 13:23:25 +01:00
Daniel Quinn
5e55b971a8 Update changelog for 0.5.1 2017-05-27 13:21:04 +01:00
Daniel Quinn
0a43b84a96 Merge pull request #228 from ddddavidmartin/extend_email_handling
Set email inbox in config file, fetch email at consumer startup and bring documentation up to date
2017-05-27 13:07:17 +01:00
David Martin
c3a55c91dc Update version of remaining weblinks to Django documentation.
We are using Django 1.10 as per requirements.txt and should refer to its
documentation as well.
2017-05-27 08:49:03 +10:00
David Martin
482f02fbaa Update link to Django documentation in urls.py.
As per requirements.txt we are using Django version 1.10. It makes sense
to link to the documentation for that version as well.
Also, the documentation for the previous version has a notice on the top
that informs about the version being unsafe which is a bit disconcerting
when seeing it.
2017-05-25 20:22:05 +10:00
David Martin
6bf7429ef6 Refer to Paperless instead of Django in webserver pages.
It looks better to have the page titles refer to Paperless rather than
Django. The same with the login. Setting it in urls.py is based on this
stackoverflow response [0]. The proper documentation for the admin page
is under [1].

[0] https://stackoverflow.com/a/24983231
[1] https://docs.djangoproject.com/en/1.10/ref/contrib/admin/#adminsite-attributes
2017-05-25 20:16:59 +10:00
David Martin
70dceb3b37 Allow to configure the email inbox via config file.
Same as all the other parameters it makes sense to set it in the config
file as well.
2017-05-20 16:48:40 +10:00
Daniel Quinn
b876a0d0df feat: add the new reminders app 2017-03-25 16:21:46 +00:00
Daniel Quinn
27db4f7e51 refactor: code cleanup
I hate single quotes.
2017-03-25 16:20:59 +00:00
Daniel Quinn
426919fa9f refactor: break document-only stuff into the paperless app
The `SessionOrBasicAuthMixin` and `StandardPagination` classes were
living in the documents app and I needed them in the new `reminders`
app, so this commit breaks them out of `documents` and puts them in the
central `paperless` app instead.
2017-03-25 16:18:34 +00:00
Daniel Quinn
5f964830aa version bump 2017-03-25 15:10:51 +00:00
Daniel Quinn
55e81ca4bb feat: refactor for pluggable consumers
I've broken out the OCR-specific code from the consumers and dumped it
all into its own app, `paperless_tesseract`.  This new app should serve
as a sample of how to create one's own consumer for different file
types.

Documentation for how to do this isn't ready yet, but for the impatient:

* Create a new app
    * containing a `parsers.py` for your parser modelled after
      `paperless_tesseract.parsers.RasterisedDocumentParser`
    * containing a `signals.py` with a handler moddelled after
      `paperless_tesseract.signals.ConsumerDeclaration`
    * connect the signal handler to
      `documents.signals.document_consumer_declaration` in
      `your_app.apps`
* Install the app into Paperless by declaring
  `PAPERLESS_INSTALLED_APPS=your_app`.  Additional apps should be
  separated with commas.
* Restart the consumer
2017-03-25 15:10:25 +00:00
Daniel Quinn
499abd38f6 A nicer look for the documents listing
This change includes a filthy hack around how Django handles
change_list_results.html -- I'm not thrilled with it, but it's as
elegant as I could come up with.  I'm happy to field alternative ideas.
More details can be found in `documents/templatetags/hacks.py`

Specifically, this merge includes a significant facelift to the
documents listing page, moving away from the tabular layout and toward a
tileset look.  I tried fiddling with the colours, but I just don't have
any skills in that area, so we're all stuck with Django'd default
colours until someone with an eye for colour can submit a better CSS.
2017-02-12 17:52:01 +00:00
Dashie
7699a881d0
Add check for PAPERLESS_MEDIADIR 2017-02-01 00:28:37 +01:00
Dashie
425f87618a
Add config option to override STATIC_ROOT 2017-02-01 00:22:32 +01:00
Enno Lohmeier
ce5c5f0837 include flat responsive theme 2017-01-23 08:26:47 +01:00
Daniel Quinn
75884285cf Added checks for expected binaries in the PATH
Fixes #112
2017-01-14 18:04:15 +00:00
Daniel Quinn
d7d9c1edc0 Moved the dotenv loading above everything else 2017-01-14 18:03:42 +00:00
Daniel Quinn
92db3fec2e Allow users to set their own SECRET_KEY value
Fixes #171
Negates #174
2017-01-14 17:21:43 +00:00
Daniel Quinn
69ea039e31 Adds the ability for the user to configure the number of items per page.
Specifically requested by @ekw here:
https://github.com/danielquinn/paperless/issues/180#issuecomment-271665682
2017-01-14 17:09:48 +00:00
Eric Wong
855e9f6c83 Remove django-suit 2017-01-09 23:31:56 -08:00
Daniel Quinn
c646cd4977 Update for 0.3.4 2017-01-08 19:40:50 +00:00
Daniel Quinn
4121876116 Update for version 0.3.3 2017-01-08 19:13:52 +00:00
Daniel Quinn
92e178cc59 Fixing some style bits for my own OCD 2017-01-08 19:05:31 +00:00
Eric Wong
a32625ca04 Make OCR_LANGUAGE configurable (Fix #176) 2017-01-07 23:27:10 -08:00
Eric Wong
3c08fa9b33 Make number of list items per page configurable 2017-01-07 23:15:59 -08:00
Eric Wong
e6526d3fd4 Make timezone configurable 2017-01-07 15:12:45 -08:00
Eric Wong
bee0867a2a Add document thumbnail images; use django-suit theme for admin 2017-01-07 14:57:25 -08:00
Daniel Quinn
7b586e6857 Fixes #172
Introduce some creative code around setting of ALLOWED_HOSTS that defaults to ['*'].  Also added PAPERLESS_ALLOWED_HOSTS to paperless.conf.example with an explanation as to what it's for
2017-01-03 09:57:27 +00:00
Daniel Quinn
350d2fb747 Version bump for convert binary fix 2017-01-01 22:46:29 +00:00
Daniel Quinn
5b53cc2139 Add a default value for CONVERT_BINARY 2017-01-01 22:44:04 +00:00
Daniel Quinn
0ca5373f6d Version 0.3.0! 2017-01-01 18:41:23 +00:00
Daniel Quinn
23bd887f16 Consumer loop time is now configurable 2017-01-01 18:41:06 +00:00
Daniel Quinn
db7810a9d2 Fixed bad indentation 2017-01-01 18:40:23 +00:00
Daniel Quinn
30be13ae33 Added system checks to warn people of misconfigurations 2017-01-01 18:39:34 +00:00
Daniel Quinn
294b8abc3f Fixes #164
There appears to be quite the mess out there with regard to how DRF
handles filtering.  DRF has its own built-in stuff, but recommends
django_filter for the advanced stuff, which has its own overriding
module that explodes with this message when used as per the
documentation:

  AttributeError: 'NoneType' object has no attribute 'DjangoFilterBackend'

Then there's djangorestframework-filter, another package that claims to
do the same thing, that does everything just differently enough that
nothing worked while I had it enabled.

I ended up using django_filter, but doing so importing each element
explicitly, rather than just using the recommended (and broken, at least
in this project) method of:

    import django_filter.restframework as fitlers

Anyway, this should bring the dependencies up to date, and strips out a
lot of redundant code.
2017-01-01 16:36:42 +00:00
Jeff Bogatay
6436e02923 Allow overriding default media directory 2016-08-23 14:48:13 -04:00
Jeff Bogatay
a1cd05f9e2 Prettify code, change ENV variable name 2016-08-23 13:28:08 -04:00
Jeff Bogatay
fc00416e32 Remove debug stuff 2016-08-23 12:22:36 -04:00
Jeff Bogatay
93fb1be253 Make database location variable 2016-08-23 12:18:28 -04:00
Jeff Bogatay
2a1818d09a Secure document fetching 2016-08-23 11:31:54 -04:00
Lenz Weber
e7566d2b1c style changes, variable renames
* PEP8 conformity
* rename run_post_consume_external_script to run_post_consume_script
* rename run_pre_consume_external_script to run_pre_consume_script
* change order of declaration and use from post...pre to pre...post
2016-06-24 16:53:55 +02:00
Lenz Weber
c728b1dd21 add pre-consume hook
a script hook can be defined in /etc/paperless.conf as
PAPERLESS_PRE_CONSUME_SCRIPT
2016-06-23 21:57:17 +02:00
Brian Martin
52c5aafb3f Convert Density
Add settings variable for the convert density setting.
If no variable is set, default to 300.
2016-05-13 22:47:40 -04:00
Daniel Quinn
3c79b55ae6 Allow USE_SSL to be set via an environment var. 2016-04-28 06:03:39 +01:00
Daniel Quinn
cb2df58b27 Everything appears to be working 2016-03-28 19:47:11 +01:00