diff --git a/docs/admin/settings.md b/docs/admin/settings.md deleted file mode 100644 index ca845f8..0000000 --- a/docs/admin/settings.md +++ /dev/null @@ -1,27 +0,0 @@ ---- -title: InvenTree Admin Settings ---- - -## Admin Settings - -InvenTree ships with a lot of dynamic settings. While [config file settings](../start/config.md) require access to the webserver on which InvenTree is hosted these can be changed by all admins of the server. - -### User Settings - -Change how InvenTree appears to the individual user and configure login and user data. - -### Global Settings - -#### Login Settings - -Change how logins, password-forgot, signups are handled. - -| Settings Name | Type | Description | Default | -| --- | --- | --- | --- | -| Enable registration | True/False | Enable self-registration for users on the login-pages | False | -| Enable SSO | True/False | Enable SSO on the login-pages | False | -| Enable password forgot | True/False | Enable password forgot function on the login-pages.

This will let users reset their passwords on their own. For this feature to work you need to configure E-mail | True | -| E-Mail required | True/False | Require user to supply e-mail on signup.

Without a way (e-mail) to contact the user notifications and security features might not work! | False | -| Mail twice | True/False | On signup ask users twice for their mail | False | -| Password twice | True/False | On signup ask users twice for their password | True | -| Auto-fill SSO users | True/False | Automatically fill out user-details from SSO account-data.

If this feature is enabled the user is only asked for their username, first- and surname if those values can not be gathered from their SSO profile. This might lead to unwanted usernames bleading over. | True | diff --git a/docs/companies/customer.md b/docs/companies/customer.md index 8a72025..b875062 100644 --- a/docs/companies/customer.md +++ b/docs/companies/customer.md @@ -9,7 +9,7 @@ A customer is an external client to whom parts are sold. To access the customer page, click on the Sell navigation tab and click on Customers option in the dropdown list. !!! warning - **Viewing**, **adding**, **editing** and **deleting** customers require the corresponding [Sales Orders user permissions](../admin/permissions.md) + **Viewing**, **adding**, **editing** and **deleting** customers require the corresponding [Sales Orders user permissions](../settings/permissions.md) ### Add Customer diff --git a/docs/companies/manufacturer.md b/docs/companies/manufacturer.md index 84aa909..e6b662f 100644 --- a/docs/companies/manufacturer.md +++ b/docs/companies/manufacturer.md @@ -9,7 +9,7 @@ A manufacturer is an external **producer** of parts and raw materials. To access the manufacturer page, click on the Buy navigation tab and click on Manufacturers option in the dropdown list. !!! warning - **Viewing**, **adding**, **editing** and **deleting** manufacturers require the corresponding [Purchase Orders user permissions](../admin/permissions.md) + **Viewing**, **adding**, **editing** and **deleting** manufacturers require the corresponding [Purchase Orders user permissions](../settings/permissions.md) ### Add Manufacturer @@ -38,7 +38,7 @@ After the manufacturer details are loaded, click on the Buy navigation tab and click on Suppliers option in the dropdown list. !!! warning - **Viewing**, **adding**, **editing** and **deleting** suppliers require the corresponding [Purchase Orders user permissions](../admin/permissions.md) + **Viewing**, **adding**, **editing** and **deleting** suppliers require the corresponding [Purchase Orders user permissions](../settings/permissions.md) ### Add Supplier @@ -38,7 +38,7 @@ After the supplier details are loaded, click on the Release | Date | GitHub | Docker | | --- | --- | --- | --- | +| [0.5.2](./0.5.2.md) | 2021-10-19 | [0.5.2](https://github.com/inventree/InvenTree/releases/tag/0.5.2) | [inventree:0.5.2](https://hub.docker.com/layers/inventree/inventree/0.5.2/images/sha256-ff4f435df894c5aa5ea18ee7f3637e81a29ed356ed82dba70ecbd28da3e3d965?context=explore) | | [0.5.1](./0.5.1.md) | 2021-10-11 | [0.5.1](https://github.com/inventree/InvenTree/releases/tag/0.5.1) | [inventree:0.5.1](https://hub.docker.com/layers/inventree/inventree/0.5.1/images/sha256-3dbfb2e1bc73a0ff2bf537b56f7151c98097923cf77f5313a2a914586ab75973?context=explore) | | [0.5.0](./0.5.0.md) | 2021-10-1 | [0.5.0](https://github.com/inventree/InvenTree/releases/tag/0.5.0) | [inventree:0.5.0](https://hub.docker.com/layers/inventree/inventree/0.5.0/images/sha256-eed8b5df1512d4f1f8596d782d894f8e582c0978d0109020da3ee852bb9326ee?context=explore) | @@ -70,7 +71,7 @@ Tagged released are shown below. Click on the release notes for each version to ## Upcoming Features -In-progress and upcoming features can be viewed on [GitHub](https://github.com/inventree/inventree/pulls), where the InvenTree source code is hosted. +In-progress and upcoming features can be viewed on [GitHub](https://github.com/inventree/inventree/pulls), where the InvenTree source code is hosted. Main roadmap items are highlighted in [In Development](../upcoming.md). ## Suggest Something New diff --git a/docs/report/report.md b/docs/report/report.md index 733a089..a0cce35 100644 --- a/docs/report/report.md +++ b/docs/report/report.md @@ -89,7 +89,7 @@ Setting the *Debug Mode* option renders the template as raw HTML instead of PDF, ## Uploading Templates -Custom report templates can be uploaded using the [Admin Interface(../admin/admin.md). Only users with admin access can upload and/or edit report template files. +Custom report templates can be uploaded using the [Admin Interface(../settings/admin.md). Only users with admin access can upload and/or edit report template files. ## Report Assets diff --git a/docs/admin/SSO.md b/docs/settings/SSO.md similarity index 77% rename from docs/admin/SSO.md rename to docs/settings/SSO.md index e1353ed..d85449c 100644 --- a/docs/admin/SSO.md +++ b/docs/settings/SSO.md @@ -9,9 +9,10 @@ InvenTree provides the possibility to use 3rd party services to authenticate use ### Configuration To use SSO you have to: -1. Enable the needed providers in the [config file](../start/config.md#Single-Sign-on). -1. Add the required client configurations in the `SocialApp` app in the [admin interface](../admin/admin.md). -1. Enable SSO for the users in the [dynamic settings](../admin/settings.md). + +1. Enable the required providers in the [config file](../start/config.md#Single-Sign-on). +1. Add the required client configurations in the `SocialApp` app in the [admin interface](../settings/admin.md). +1. Enable SSO for the users in the [global settings](../settings/global.md). ### Security Consideration @@ -21,5 +22,5 @@ Tokens for authenticating the users to the providers they registered with are sa So ensure your database is protected and not open to the internet. Make sure all users with admin privileges have sufficient passwords - they can read out your client configurations with providers and all auth-tokens from users. -Never share your installs secret key! - +!!! warning "It's a secret!" + Never share your installs secret key! diff --git a/docs/admin/admin.md b/docs/settings/admin.md similarity index 100% rename from docs/admin/admin.md rename to docs/settings/admin.md diff --git a/docs/admin/email.md b/docs/settings/email.md similarity index 100% rename from docs/admin/email.md rename to docs/settings/email.md diff --git a/docs/admin/export.md b/docs/settings/export.md similarity index 100% rename from docs/admin/export.md rename to docs/settings/export.md diff --git a/docs/settings/global.md b/docs/settings/global.md new file mode 100644 index 0000000..1b39a24 --- /dev/null +++ b/docs/settings/global.md @@ -0,0 +1,70 @@ +--- +title: Global Settings +--- + +## Global Settings + +InvenTree ships with a lot of dynamic settings which can be configured at run-time. These settings are stored in the InvenTree database itself. + +The following settings are *global* settings which affect all users. + +!!! info "Staff Status Required" + Only users with *staff* status can view and edit global settings + +To edit global settings, select *Settings* from the menu in the top-right corner of the screen. + +Global settings are arranged in the following categories: + +### Server Settings + +Configuration of basic server settings + +### Login Settings + +Change how logins, password-forgot, signups are handled. + +| Setting | Type | Description | Default | +| --- | --- | --- | --- | +| Enable registration | Boolean | Enable self-registration for users on the login-pages | False | +| Enable SSO | Boolean | Enable SSO on the login-pages | False | +| Enable password forgot | Boolean | Enable password forgot function on the login-pages.

This will let users reset their passwords on their own. For this feature to work you need to configure E-mail | True | +| E-Mail required | Boolean | Require user to supply e-mail on signup.

Without a way (e-mail) to contact the user notifications and security features might not work! | False | +| Mail twice | Boolean | On signup ask users twice for their mail | False | +| Password twice | Boolean | On signup ask users twice for their password | True | +| Auto-fill SSO users | Boolean | Automatically fill out user-details from SSO account-data.

If this feature is enabled the user is only asked for their username, first- and surname if those values can not be gathered from their SSO profile. This might lead to unwanted usernames bleading over. | True | + +### Barcodes + +Configuration of barcode functionality + +### Currencies + +Configuration of currency support + +### Reporting + +Configuration of report generation + +### Parts + +Configuration of Part options + +### Categories + +Configuration of Part Category options + +### Stock + +Configuration of Stock Item options + +### Build Orders + +Options for build orders + +### Purchase Orders + +Options for purchase orders + +### Sales orders + +Options for sales orders \ No newline at end of file diff --git a/docs/admin/import.md b/docs/settings/import.md similarity index 100% rename from docs/admin/import.md rename to docs/settings/import.md diff --git a/docs/admin/logs.md b/docs/settings/logs.md similarity index 100% rename from docs/admin/logs.md rename to docs/settings/logs.md diff --git a/docs/admin/permissions.md b/docs/settings/permissions.md similarity index 100% rename from docs/admin/permissions.md rename to docs/settings/permissions.md diff --git a/docs/admin/shell.md b/docs/settings/shell.md similarity index 91% rename from docs/admin/shell.md rename to docs/settings/shell.md index 6bdd259..253620a 100644 --- a/docs/admin/shell.md +++ b/docs/settings/shell.md @@ -4,7 +4,7 @@ title: Admin Shell ## Python Shell -A Python shell interface is provided at /admin/shell/. +A Python shell interface is provided at the URL `/admin/shell/`. This interface allows advanced users direct access to the underlying database objects using Python. diff --git a/docs/admin/tasks.md b/docs/settings/tasks.md similarity index 100% rename from docs/admin/tasks.md rename to docs/settings/tasks.md diff --git a/docs/settings/user.md b/docs/settings/user.md new file mode 100644 index 0000000..415a1f6 --- /dev/null +++ b/docs/settings/user.md @@ -0,0 +1,33 @@ +--- +title: User Settings +--- + +## User Settings + +The various user settings described below can be configured for an individual user, to provide an InvenTree user experienced customized to their preferences. + +User settings are arranged in the following categories: + +### Account + +User account configuration + +### Home Page + +Customize display of items on the InvenTree home page + +### Search + +Customize settings for search results + +### Labels + +Settings for label printing + +### Reports + +Settings for report generation + +### Forms + +Customize behavior of modal forms diff --git a/docs/start/config.md b/docs/start/config.md index f7a1c5b..91612c0 100644 --- a/docs/start/config.md +++ b/docs/start/config.md @@ -84,7 +84,7 @@ The following database options can be configured: ## Email Settings -To enable [email functionality](../admin/email.md), email settings must be configured here, either via environment variables or within the configuration file. +To enable [email functionality](../settings/email.md), email settings must be configured here, either via environment variables or within the configuration file. The following email settings are available: @@ -131,7 +131,7 @@ SSO backends for all wanted providers need to be added to the config file as a l If the selected providers need additional settings they must be added as dicts under the key `social_providers`. The correct settings can be found in the django-allauths [provider documentation](https://django-allauth.readthedocs.io/en/latest/providers.html). !!! note "You are not done" - SSO still needs credentials for all providers and has to be enabled in the [settings](../admin/settings.md)! + SSO still needs credentials for all providers and has to be enabled in the [global settings](../settings/global.md)! ### Login Options diff --git a/docs/start/docker.md b/docs/start/docker.md index 6508ea1..6358e8a 100644 --- a/docs/start/docker.md +++ b/docs/start/docker.md @@ -8,6 +8,24 @@ The most convenient method of installing and running InvenTree is to use the off The InvenTree docker image contains all the required system packages, python modules, and configuration files for running a containerised InvenTree web server. +### Tagged Images + +Docker images are available with the following tags: + +- **inventree:stable** - represents the most recent stable release version of InvenTree +- **inventree:latest** - represents the most up-to-date *development* version of InvenTree. +- **inventree:tag** - specific tagged images are built for each tagged release of InvenTree + +### Docker Compose + +InvenTree provides sample docker-compose files to get you up and running. + +- A *production* compose file is intended to be used in a production environment, running the web server behind a nginx proxy. +- A *development* compose file provides a simple way to spin up a development environment + +!!! warning "Docker Compose Version" + Tthe following guide is designed to work with docker-compose v1.x. There are currently known issues with [docker-compose v2 support](https://github.com/docker/compose/releases/tag/v2.0.0). If you are having issues with the docker installation guide, check the version of docker-compose you are running with the command `docker-compose --version`. + ### Environment Variables InvenTree run-time configuration options described in the [configuration documentation](./config.md) can be passed to the InvenTree container as environment variables. diff --git a/docs/start/docker_prod.md b/docs/start/docker_prod.md index f2dca15..7f749fc 100644 --- a/docs/start/docker_prod.md +++ b/docs/start/docker_prod.md @@ -214,11 +214,20 @@ docker-compose pull This ensures that the InvenTree containers will be running the latest version of the InvenTree source code. +!!! info "Tagged Version" + If you are targetting a particular "tagged" version of InvenTree, you may wish to edit your docker-compose file before issuing the `docker-compose pull` command + +### Update Database + +Run the following command to ensure that the InvenTree database is updated: + +``` +docker-compose run inventree-server invoke update +``` + ### Start Containers -Now restart the containers. - -As part of the server initialization process, data migrations and static file updates will be performed automatically. +Now restart the docker containers: ``` docker-compose up -d diff --git a/docs/start/intro.md b/docs/start/intro.md index 12dccf8..ab39623 100644 --- a/docs/start/intro.md +++ b/docs/start/intro.md @@ -35,7 +35,7 @@ Once a database is setup, you need a way of accessing the data. InvenTree provid ### Background Tasks -A separate application handles management of [background tasks](../admin/tasks.md), separate to user-facing web requests. +A separate application handles management of [background tasks](../settings/tasks.md), separate to user-facing web requests. ## OS Requirements diff --git a/docs/start/migrate.md b/docs/start/migrate.md index e45a9d8..d41842f 100644 --- a/docs/start/migrate.md +++ b/docs/start/migrate.md @@ -43,6 +43,9 @@ This ensures that the required database tables exist, which must be the case bef The new database should now be correctly initialized with the correct table structures requried to import the data. Run the following command to load the databased dump file into the new database. +!!! warning "Empty Database" + If the database is not *empty* (i.e. it contains data records) then the data import process will fail. If errors occur during the import process, run `invoke delete-data` to clear all existing data from the database. + ``` inv import-records -f data.json ``` diff --git a/docs/stock/owner.md b/docs/stock/owner.md index a940542..f0e5381 100644 --- a/docs/stock/owner.md +++ b/docs/stock/owner.md @@ -17,7 +17,7 @@ The stock ownership feature is disabled by default, and must be enabled via the ### Owner: Group vs User -There are two types of owners in InvenTree: [groups](../admin/permissions.md#group) and [users](../admin/permissions.md#user). +There are two types of owners in InvenTree: [groups](../settings/permissions.md#group) and [users](../settings/permissions.md#user). * If a group is selected as owner, **all** users linked to the specified group will be able to edit the stock location or item. * If a user is selected as owner, only the specified user will be able to edit the stock location or item. @@ -33,7 +33,7 @@ When selecting an owner, in the drop-down list, groups are annotated with the `( To specify the owner of a stock location, navigate to the stock location detail page. Click on the icon under the location's name then click on "Edit Location". !!! warning - If you cannot see the icon, it means that you do **not** have permissions to edit stock locations. Refer to [the permissions documentation/../admin/permissions.md#roles) and/or contact your InvenTree administrator. + If you cannot see the icon, it means that you do **not** have permissions to edit stock locations. Refer to [the permissions documentation/../settings/permissions.md#roles) and/or contact your InvenTree administrator. In the "Edit Stock Location" form, select the owner and click the "Submit" button: @@ -54,7 +54,7 @@ Setting the owner of stock location will automatically: To specify the owner of a stock item, navigate to the stock item detail page. Click on the icon under the item's name then click on "Edit stock item". !!! warning - If you cannot see the icon, it means that you do **not** have permissions to edit stock items. Refer to [the permissions documentation](../../admin/permissions/#roles) and/or contact your InvenTree administrator. + If you cannot see the icon, it means that you do **not** have permissions to edit stock items. Refer to [the permissions documentation](../../settings/permissions/#roles) and/or contact your InvenTree administrator. In the "Edit Stock Item" form, select the owner and click the "Save" button: diff --git a/docs/upcoming.md b/docs/upcoming.md index 2f4ec03..9f7d995 100644 --- a/docs/upcoming.md +++ b/docs/upcoming.md @@ -23,12 +23,6 @@ There are a lot of planned features / improvements for integrated barcode suppor Work is planned on a plugin system to allow integration with third party applications (such as Xero, Open Cart etc). -### SSO Login - -Allow SSO integration and login support - References: -- [#625](https://github.com/inventree/InvenTree/issues/625) -- [#634](https://github.com/inventree/InvenTree/issues/634) -- [#1693](https://github.com/inventree/InvenTree/issues/1693) \ No newline at end of file +- [#2037](https://github.com/inventree/InvenTree/issues/2037) diff --git a/mkdocs.yml b/mkdocs.yml index cb8a013..cb607f0 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -94,17 +94,18 @@ nav: - Order: report/order.md - Barcodes: report/barcodes.md - Context Variables: report/context_variables.md - - Admin: - - Admin Interface: admin/admin.md - - Settings: admin/settings.md - - User Permissions: admin/permissions.md - - Single Sign on: admin/SSO.md - - Export Data: admin/export.md - - Import Data: admin/import.md - - Python Shell: admin/shell.md - - Error Logs: admin/logs.md - - Email: admin/email.md - - Background Tasks: admin/tasks.md + - Settings: + - Global Settings: settings/global.md + - User Settings: settings/user.md + - Admin Interface: settings/admin.md + - User Permissions: settings/permissions.md + - Single Sign on: settings/SSO.md + - Export Data: settings/export.md + - Import Data: settings/import.md + - Python Shell: settings/shell.md + - Error Logs: settings/logs.md + - Email: settings/email.md + - Background Tasks: settings/tasks.md - Extend: - API: extend/api.md - Python Interface: extend/python.md