Commit Graph

47 Commits

Author SHA1 Message Date
Roberto Rosario
0699ad0556 Add support for new document page structure
Documents now have their own dedicated DocumentPage
submodel. The old DocumentPage is now called DocumentVersionPage.
This allows mappings between document pages and document version
pages, allowing renumbering, appending pages.
DocumentPages have a content_object to map them to any other
object. For now they only map to DocumentVersionPages.
New option added to the version upload form to append the
pages of the new version.
A new view was added to just append new pages with wraps the
new document version upload form and hides the append pages
checkbox set to True.
Add a new action, reset_pages to reset the pages of the
document to those of the latest version.

Missing: appending tests, checks for proper content_object in OCR and
document parsing.

Author: Roberto Rosario <roberto.rosario@mayan-edms.com>
Date:   Thu Oct 11 12:00:25 2019 -0400
2019-10-10 11:55:42 -04:00
Roberto Rosario
80ebe4ecce Support passing a queryset to the search model
Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
2019-06-10 03:11:56 -04:00
Roberto Rosario
a008607d40 Support search model list mode
Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
2019-06-10 02:59:33 -04:00
Roberto Rosario
3e48a422b7 Return sorted search models
Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
2019-06-10 02:28:33 -04:00
Roberto Rosario
c7474cae1b Add support for search field transformations
Add search transformation to the document UUID field
to remove dashes.

Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
2019-06-08 20:52:59 -04:00
Roberto Rosario
74f333d16c Improve search negation logic
Only dashes at the start of terms and outside of quotes are now
interpreted as negation.

Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
2019-06-08 20:47:20 -04:00
Roberto Rosario
5e4518211f Remove related attribute of check_access
Remove filter_by_access. Replaced by restrict_queryset.

Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
2019-05-07 02:26:50 -04:00
Roberto Rosario
74c97314d7 Code style cleanups
Add keyword arguments. Sort arguments and models.
Move literals to their own module. Prepend handler_ to
signal handlers.

Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
2019-04-26 03:32:35 -04:00
Roberto Rosario
20acc24c7f Backport search improvements, remove SEARCH_LIMIT
Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
2019-04-26 00:35:55 -04:00
Roberto Rosario
7fb13a5888 Return a proper list of SearchModel instances (Python 3).
Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
2018-10-06 22:20:13 -04:00
Roberto Rosario
e0b7f31111 Improve search app. Refactored to resolve search queries by terms first then by field.
Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
2018-10-04 03:29:03 -04:00
Michael Price
3159a6bf1f Remove ununsed library. Remove unused code. Fix formatting.
Signed-off-by: Michael Price <loneviking72@gmail.com>
2018-04-01 20:25:05 -04:00
Michael Price
53b47455d3 Add support for OR type searches. Use the "OR" string between the terms. Example: term1 OR term2.
Signed-off-by: Michael Price <loneviking72@gmail.com>
2018-04-01 20:23:01 -04:00
Michael Price
702618b924 SearchModel no longer returns result_set. It is unfiltered and unused.
Signed-off-by: Michael Price <loneviking72@gmail.com>
2018-04-01 18:38:53 -04:00
Roberto Rosario
6c6ca38374 Replace all instances of unicode only handling to use force_text.
Replace all __unicode__ methods to __str__ and the
@python_2_unicode_compatible decorator.
Replace all instance of smart_str, smart_unicode, force_uncode
with force_text.

Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
2017-07-05 15:03:24 -04:00
Roberto Rosario
ca12bdcced Add API endpoint to show all available search models.
Signed-off-by: Roberto Rosario <roberto.rosario.gonzalez@gmail.com>
2017-06-07 13:54:32 -04:00
Roberto Rosario
621c988809 Simplify filter_by_access boilerplate code 2016-11-02 03:48:16 -04:00
Roberto Rosario
24ef702e9c Update some direct model importing to use Django's apps.get_model instead. 2016-10-30 02:46:36 -04:00
Roberto Rosario
c10637aaa4 Update dynamic_search app API to support document page searches. 2016-10-28 02:44:02 -04:00
Roberto Rosario
aef395f4df Remove support for recent searches 2016-10-27 03:59:14 -04:00
Roberto Rosario
b8b2e0e929 Initial commit to support per page search. 2016-10-27 02:48:40 -04:00
Roberto Rosario
1e746c700a PEP8 cleanups. 2015-07-27 23:53:14 -04:00
Roberto Rosario
c2a0990e57 Change deprecated import of get_model. 2015-07-12 02:58:31 -04:00
Roberto Rosario
f0cfe314f0 PEP8 cleanups 2015-07-01 16:45:33 -04:00
Roberto Rosario
ace76fc69c Update apps for new ACLs refactor. 2015-07-01 16:36:20 -04:00
Roberto Rosario
1c084aa07b Split Permission and StoredPermission class and model into different modules. Simplified the Permission class. 2015-06-28 01:03:29 -04:00
Roberto Rosario
579b369d07 Preserve search field order 2015-06-24 15:17:01 -04:00
Roberto Rosario
5506c33ce5 Lazy loading of model to search 2015-06-24 15:16:00 -04:00
Roberto Rosario
00427da11e Fix search app settings variables' casing 2015-06-24 13:07:36 -04:00
Roberto Rosario
78198f3398 Smart settings refactor 2015-06-22 21:04:06 -04:00
Roberto Rosario
2044c94893 Replace custom 'load_backend' with Django's 'import_string'. 2015-04-07 16:29:43 -04:00
Roberto Rosario
d59ea3ede2 Add from __future__ import unicode_literals, issue #37 2015-01-19 04:06:40 -04:00
Roberto Rosario
ff0e9b0d42 Hide import to allow tests to run 2015-01-03 23:46:02 -04:00
Roberto Rosario
d0aaa256cd Don't search blindly for all the fields passed in the advanced search, use the defined fields, avoid hard coded rejection of &page arguments in the query string. The SearchModel class is now responsible for storing the search in the recent entries instead of the view. 2014-12-11 19:52:24 -04:00
Roberto Rosario
030d0e8806 Merge new document API view with the document list API view (as a POST action). Move search result filtering to clases module, this way it filters results from the API too. 2014-12-11 19:16:29 -04:00
Roberto Rosario
ba1729106f Pass arguments to the logger the correct way 2014-11-02 20:55:21 -04:00
Roberto Rosario
593fd56489 Cache serializer class 2014-10-30 13:50:05 -04:00
Roberto Rosario
78b2dc21f9 Move the actual loading of the serializer when it actually needed 2014-10-30 13:44:35 -04:00
Roberto Rosario
1b52b4ced8 Update search model serializer registration to be lazy 2014-10-30 13:18:40 -04:00
Roberto Rosario
733dfc3cf7 Encapsulate and properly report invalid requested fields during search 2014-10-14 04:45:37 -04:00
Roberto Rosario
bc13129e3b Close issue #77, add document view permission to the search app 2014-10-14 04:00:14 -04:00
Roberto Rosario
780c55e255 Add dynamic_search app API endpoints, simplify ModelSearch class and search views 2014-10-14 03:40:46 -04:00
Mathias Behrle
73e1650554 Skip page key in advanced search (#46). 2014-09-23 00:28:25 +02:00
Roberto Rosario
b761037d99 Move all settings files from <app>/conf/settings.py to <app>/settings.py 2014-09-11 05:02:40 -04:00
Roberto Rosario
41d0cfb7bf Code cleanups 2014-06-29 20:35:36 -04:00
Roberto Rosario
ecb6733cd4 PEP8 cleanups, unused imports cleanups 2014-06-29 14:14:27 -04:00
Roberto Rosario
ec1745b50b Initial changes to support the new Django 1.6 project structure 2014-06-15 13:13:21 +02:00