This removes api authentication with token in favor of signature method. Refactored code and clean up. It add more unit test plus code coverage in test/coverage. - Added : mardown documentation. - Changed : model Stats::getQuestionStats to pass question as route parameter - Changed : now requests need to have a signature generated with a private key (crm password) using hmac sha256 wrapping url, method and parameters - Changed : now timestamp will timeout if request is slower than "timestampTimeout", this means crm will reject the request - Changed : throw ValidationException s instead of TypeErrors - Changed : timestamp has to be send in request with a DateTime format, it also has to a UTC value - Fixed : Change WPCRM dynamic session key, this could prevent spoofing session in some cases. - Fixed : closure validation - Fixed : model mutator not catching reflectionException - Fixed : really send json request using Guzzle internal lib methods. - Removed : Api AUTH system with api token - Removed : ApiError::needAuth - Removed : composer vlucas/dotenv, .env file is not handled any more. - Removed : LoginException - Removed : memcached dependency - Removed : need of memcached - Removed : unused service provider - Removed : WpCrm::forceLogin - Removed : WpCrm::sendArcadiaMailDefault - Removed : WpCrm::sendArcadiaMailGame - Updated : PHPCS rules, phpcs fixes and refactored code
821 B
821 B
Wordpress client usage
This client is experimental. It may be used on wordpress sites.
To use it you shall create a new table :
// TABLE LDC CUSTOMERS
CREATE TABLE `ldc_wp_customers` (
`hashcode` VARCHAR(36) NOT NULL DEFAULT '' COMMENT 'Le hashcode (UUID)',
`email` VARCHAR(255) NOT NULL DEFAULT '' COMMENT 'Le customer email',
`uuid` VARCHAR(50) NOT NULL DEFAULT '' COMMENT 'Code unique (inscripton, validation, etc)',
PRIMARY KEY (`hashcode`)
)
COMMENT='Les customers sur un WP liées à la CRM'
COLLATE='utf8mb4_unicode_ci';
It will handle for you the customer session provide login and logout method but also other services provided by the crm.
For more detailed info, you may refer to the Client API DOC