Difference between revisions of "Draft:Specification Module Public Portal"
Tag: 2017 source edit |
m (→Login) Tag: 2017 source edit |
||
Line 11: | Line 11: | ||
A table already exists to store login/pass for external portals. | A table already exists to store login/pass for external portals. | ||
It is already used to store : | It is already used to store : | ||
− | + | * login from external website (for example stripe customer key of a thirdparty). The column site contains "stripe". | |
− | + | * login from website for users of a website. The column site contains "dolibarr_website" and we store the id of website into fk_website | |
So we will also use it to store login for the external portal: | So we will also use it to store login for the external portal: | ||
− | + | * the column "site" will contains "dolibarr_portal" and fk_soc will contains the id of the thirdparty | |
On the record of a thirdparty, the module Public portal must enable the new tab will be visible to show all accounts/login (=record of table llx_societe_account) linked to this thirdparty. | On the record of a thirdparty, the module Public portal must enable the new tab will be visible to show all accounts/login (=record of table llx_societe_account) linked to this thirdparty. |
Revision as of 11:07, 17 January 2023
Specification for a module of a Public Portal
We need a new module to offer a public portal
Some requirements
- Must be a Dolibarr module called "WebPortal"
- The portal must be pages hosted into /public/webportal/
Login
A table already exists to store login/pass for external portals. It is already used to store :
- login from external website (for example stripe customer key of a thirdparty). The column site contains "stripe".
- login from website for users of a website. The column site contains "dolibarr_website" and we store the id of website into fk_website
So we will also use it to store login for the external portal:
- the column "site" will contains "dolibarr_portal" and fk_soc will contains the id of the thirdparty
On the record of a thirdparty, the module Public portal must enable the new tab will be visible to show all accounts/login (=record of table llx_societe_account) linked to this thirdparty.
Note: This tab already exists but is enabled only when WEBSITE_USE_WEBSITE_ACCOUNTS is on. We found this into core/lib/company.lib.php
if (isModEnabled('website') && (!empty($conf->global->WEBSITE_USE_WEBSITE_ACCOUNTS)) && ($user->hasRight('societe', 'lire'))) {
We must enable the tab also when the module WebPortal is on.
Setup page of the module
The setup page must allow to enable features in the portal like:
- Enable access to the membership record (Hidden / Visible or Editable)
- Enable access to the partnership record
- Enable access to the proposals (list with date, ref, status + download link)
- Enable access to the orders (list with date, ref, status + download link)
- Enable access to the invoices (list with date, ref, status + download link)
Other need will be added in the future...
The portal page
The portal web site must contains:
- A top banner similar to other public pages
- A home page
- A tab/menu with membership data in read or edit mode (if option was set)
- A tab/menu with partnership data in read or edit mode (if option was set)
- A tab/menu with list of proposals
- A tab/menu with list of orders
- A tab/menu with list of invoices