Changes

m
Line 4: Line 4:  
This module can be used to receive request by a company to be a preferred partner. Validate, follow and cancel partnership.
 
This module can be used to receive request by a company to be a preferred partner. Validate, follow and cancel partnership.
 
The module is generic and it will be possible to use it for a lot of use case.
 
The module is generic and it will be possible to use it for a lot of use case.
 
+
This module will be used for example by the foundation for its Preferred Partner management program.
      Line 13: Line 13:     
The module also add a new tab "Partnership" on the record of a thirdparty or a member (depending on setup). So a logged user can make a request and see its partnership status from its own thirdparty or member record.
 
The module also add a new tab "Partnership" on the record of a thirdparty or a member (depending on setup). So a logged user can make a request and see its partnership status from its own thirdparty or member record.
 +
 +
A batch can disable the status of a partnership if partnership is based on members and if subscription has expired since x days.
    
=Setup of module=
 
=Setup of module=
Line 26: Line 28:  
*date_partnership_start
 
*date_partnership_start
 
*date_partnership_end
 
*date_partnership_end
*status            Partnershio partnership  (0=draft, 1=accepted, 2=refused, 9=canceled)
+
*status            Partnership status (0=draft, 1=accepted, 2=refused, 9=canceled)
 
*date_creat
 
*date_creat
 
*fk_user_create
 
*fk_user_create
Line 33: Line 35:  
*note_private
 
*note_private
 
*note_publice
 
*note_publice
*reason_decline
+
*count_last_url_check_error (see later)
 
+
*reason_decline_or_cancel
Allow extrafields. (For example, for the Dolibarr foundation: "Github user", "Website")
      +
Allow extrafields. (For example, for the Dolibarr foundation: "Github user")
    
=Menus=
 
=Menus=
Line 51: Line 53:  
to request to be a partner if there is no record into table llx_partnership yet.
 
to request to be a partner if there is no record into table llx_partnership yet.
   −
If there is already a record, show the status and information of membership.
+
If there is already record, show the status and information of memberships.
On this tab, e should also have a button "Cancel"
+
On this tab, we should also have a button "Manage Partnership"
 
      
=Card partnership=
 
=Card partnership=
Line 60: Line 61:     
*Send email using templates. The module must add 2 templates of email for type 'partnership': On to say partnership is refused, one to say partnership is accepted.
 
*Send email using templates. The module must add 2 templates of email for type 'partnership': On to say partnership is refused, one to say partnership is accepted.
 +
*Validate
 
*Accept -> Set to status ACCEPTED.
 
*Accept -> Set to status ACCEPTED.
 
*Refuse -> Ask a reason and set to status REFUSED and fill the "reason_decline" field.
 
*Refuse -> Ask a reason and set to status REFUSED and fill the "reason_decline" field.
Line 75: Line 77:  
We must have the mass action "Delete"
 
We must have the mass action "Delete"
   −
=Enhance module Member to creating an external user login for each new member subscription=
+
=Enhance module Member=
   −
On a new member subscription (module member), we currently send an email with invoice automaticaly after receiving the online payment.
+
== Add property "url" on the member card==
 +
Add this property on table llx_adherent, on screen and can edit it.
   −
We must also create an external account for each new member and have the login and pass of the external account included into email (A subsitution key __MEMBER_USER_LOGIN_INFORMATION__ can be used into email template).
+
== Add option in member module setup to "Create an external user login for each new member subscription validated" ==
 +
On a new member subscription (module member), we currently send an email with invoice automatically after receiving the online payment.
   −
Add a mass action "Create external user" on the member list
+
We must also create an external account for each new member and have the login and pass of the external account included into email (A substitution key __MEMBER_USER_LOGIN_INFORMATION__ can be used into email template).
 +
 
 +
Add a mass action "Create external user" on the member list.
    
=Permissions=
 
=Permissions=
Line 91: Line 97:     
=Batch=
 
=Batch=
 +
==Cancel Partnership For Expired Members==
 
We must have a cron job that cancel status of partnership when subscription is expired + x days  (x is a parameter of the cron job). This cron task must be supplied by module.  
 
We must have a cron job that cancel status of partnership when subscription is expired + x days  (x is a parameter of the cron job). This cron task must be supplied by module.  
 
If option 'PARTNERSHIP_IS_MANAGED_FOR' = 'thirdparty', this cron job does nothing.
 
If option 'PARTNERSHIP_IS_MANAGED_FOR' = 'thirdparty', this cron job does nothing.
 +
 +
==Warning of partnership if Dolibarr backlink not found on partner website==
 +
Batch not enabled by default. Every week, check that website contains a link to dolibarr.(org/fr/es) Web site. The url to check is a regex set as a parameter of module. If regex not found into the website of partner, batch increase a counter check fail (field count_last_url_check_error into table llx_partnership), if found, reset value to 0. If counter > 2, send email to partner (template email mut be defined in setup). If counter > 4, set status of partnership to canceled (set also reason of partnership cancelation).
    
=Note=
 
=Note=
Module and new managed objects must be generated with modulebuilder.
+
{{TemplateProcessOfDevelopmentBySubContract}}