Compare commits

..

1 commit

Author SHA1 Message Date
Vincent BRIDIER
13bf55ffc3 wip cicd 2023-12-22 11:28:24 +01:00
510 changed files with 258977 additions and 14318 deletions

2
.dockerignore Normal file
View file

@ -0,0 +1,2 @@
.git
*.md

View file

@ -9,7 +9,7 @@ LOG_DEPRECATIONS_CHANNEL=null
LOG_LEVEL=debug
DB_CONNECTION=mysql
DB_HOST=dev-mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
@ -29,21 +29,38 @@ REDIS_PASSWORD=null
REDIS_PORT=6379
MAIL_MAILER=smtp
MAIL_HOST=dev-mailpit
MAIL_HOST=dev-mailhog
MAIL_PORT=1025
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS=null
MAIL_FROM_NAME="${APP_NAME}"
MAIL_ADMIN=digital@ldc.fr
MAIL_ADMIN=equipe.web@ldc.fr
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=
AWS_USE_PATH_STYLE_ENDPOINT=false
PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
PUSHER_HOST=
PUSHER_PORT=443
PUSHER_SCHEME=https
PUSHER_APP_CLUSTER=mt1
VITE_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
VITE_PUSHER_HOST="${PUSHER_HOST}"
VITE_PUSHER_PORT="${PUSHER_PORT}"
VITE_PUSHER_SCHEME="${PUSHER_SCHEME}"
VITE_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"
# Sentry
SENTRY_LARAVEL_DSN=
# MATOMO
MATOMO_SITE_ID=
# CRM
CRM_ENDPOINT=
CRM_TOKEN=
@ -51,14 +68,6 @@ CRM_PASSWORD=
# MESBR
MESBR_ENDPOINT=
# ADMIN SECURE
# - API ENDPOINT (Optional)
LDC_WEB_API_ENDPOINT=""
# - API KEY
LDC_WEB_API_KEY=""
# - LIST SEPARATED WITH ',' (Optional)
LDC_WEB_CIDR_MANUAL_ALLOWED_LIST=""
# Export pagination config, defaut 65530.
CODE_PAGINATE=
# Dictionnary of chars to use fo generating unique codes.

61
.eslintrc.json Normal file
View file

@ -0,0 +1,61 @@
{
"env": {
"browser": true,
"es2021": true
},
"extends": [
"eslint:recommended",
"plugin:vue/vue3-strongly-recommended",
"@vue/eslint-config-typescript"
],
"overrides": [
{
"files": ["*.ts", "*.vue"],
"rules": {
"no-undef": "off"
}
},
{
"files": ["*.vue"],
"rules": {
"indent": "off"
}
}
],
"parser": "vue-eslint-parser",
"parserOptions": {
"parser": "@typescript-eslint/parser",
"ecmaVersion": "latest",
"sourceType": "module"
},
"plugins": ["vue", "@typescript-eslint"],
"ignorePatterns": [
"**/*.php",
"**/*.svg",
"**/vendor/*.js",
"**/vendor/**/*.js",
"**/vendor/**/*.scss"
],
"rules": {
"indent": ["error", 4, { "SwitchCase": 1 }],
"linebreak-style": ["error", "unix"],
"quotes": ["error", "double"],
"semi": ["error", "always"],
"vue/script-indent": ["error", 2, { "baseIndent": 0, "switchCase": 1 }],
"vue/one-component-per-file": "off"
},
"settings": {
"import/resolver": {
"node": {
"extensions": [".js", ".vue", ".ts", ".d.ts"]
},
"alias": {
"extensions": [".vue", ".js", ".ts", ".scss", ".d.ts"],
"map": [
["~", "./resources/assets"],
["@", "./node_modules"]
]
}
}
}
}

3
.gitignore vendored
View file

@ -28,9 +28,6 @@ yarn-error.log
public/fichiers
storage
resources/theme
.npm/
.composer/
.zshrc
# Ignore public favicon
/public/android-chrome-192x192.png

View file

@ -1,11 +1,84 @@
include:
- project: 'ldc-web/shared-ci'
ref: 'main'
file: 'lint/lint.yml'
- project: 'ldc-web/shared-ci'
ref: 'main'
file: 'security/security.yml'
composer-build:
stage: build
image: $CI_REGISTRY/ldc-web/projets/ldc-web-images-docker/ldcweb-qa-8.2:latest
before_script:
- composer config gitlab-token.lab.s-web.fr $CI_DEPLOY_USER $CI_DEPLOY_PASSWORD
cache:
paths:
- vendor/
script:
- composer install --no-dev --optimize-autoloader --classmap-authoritative --no-scripts
artifacts:
expose_as: 'vendor'
paths:
- vendor
allow_failure: false
rules:
- if: $CI_COMMIT_TAG != null && $APP_ENV != null
npm-build:
stage: build
image: $CI_REGISTRY/ldc-web/projets/ldc-web-images-docker/ldcweb-qa-8.2:latest
before_script:
- git submodule update init --recursive
- php artisan theme:switch $APP_THEME_NAME
- npm config set @ldc-web:registry https://${CI_SERVER_HOST}/api/v4/packages/npm/
- npm config set -- '//${CI_SERVER_HOST}/api/v4/packages/npm/:_authToken' "${CI_DEPLOY_PASSWORD}"
- npm install
cache:
paths:
- public/
script:
- npm run prod
artifacts:
expose_as: 'front-build'
paths:
- public/
allow_failure: false
dependencies:
- composer-build
needs:
- job: composer-build
optional: true
rules:
- if: $CI_COMMIT_TAG != null && $APP_ENV != null
.docker-build:
stage: build
image:
name: gcr.io/kaniko-project/executor:v1.9.1-debug
entrypoint: [""]
script:
- /kaniko/executor
--context "${CI_PROJECT_DIR}"
--dockerfile "${CI_PROJECT_DIR}/Dockerfile"
--destination "${IMAGE_TAG}"
allow_failure: false
dependencies:
- npm-build
- composer-build
needs:
- job: npm-build
optional: true
- job: composer-build
optional: true
docker-build:staging:
extends: .docker-build
variables:
IMAGE_TAG: "${CI_REGISTRY_IMAGE}:s-${APP_THEME_NAME}-${CI_PIPELINE_IID}"
rules:
- if: $CI_COMMIT_TAG != null && $APP_ENV == "staging"
docker-build:production:
extends: .docker-build
variables:
IMAGE_TAG: "${CI_REGISTRY_IMAGE}:p-${APP_THEME_NAME}-${CI_PIPELINE_IID}"
rules:
- if: $CI_COMMIT_TAG != null && $APP_ENV == "production"
stages:
- lint
- security
- build
- deploy

View file

@ -1,2 +0,0 @@
#!/bin/sh
npx commitlint --config node_modules/@uwil/husky-config/commitlint.config.js --edit $1

View file

@ -23,12 +23,14 @@
],
"customSyntax": "postcss-scss",
"rules": {
"declaration-property-value-no-unknown": null,
"declaration-property-value-no-unknown": true,
"selector-max-id": null,
"color-no-invalid-hex": true,
"order/properties-alphabetical-order": null,
"max-nesting-depth": 5,
"selector-max-compound-selectors": 5,
"declaration-colon-newline-after": null,
"value-list-comma-newline-after": null,
"scss/double-slash-comment-empty-line-before": [
"always",
{
@ -40,4 +42,4 @@
}
]
}
}
}

View file

@ -1,5 +1,5 @@
FROM registry.s-web.fr/ldc-web/projets/ldc-web-images-docker/ldcweb-production-8.2:latest
COPY --chown=www-data:www-data ./ggw /app/srcs
COPY --chown=www-data:www-data . /app/srcs
USER root
RUN chmod -R 755 /app/srcs/storage
USER www-data

View file

@ -36,9 +36,9 @@ sur le job de generation des codes.
### Instalation
Pour installer le theme bien **mettre à jour les submodules avec git**,
`git submodule update --init --recursive`
`git submodule update init --recursive`
puis utiliser la commande `php artisan uwil:theme:switch NOM_DU_THEME` et `php artisan optimize:clear && php artisan optimize`
puis utiliser la commande `php artisan theme:switch NOM_DU_THEME` et `php artisan optimize:clear && php artisan optimize`
Pour mettre a jour la liste des themes :

View file

@ -38,10 +38,10 @@ class CrmUserProvider extends EloquentUserProvider implements UserProviderContra
{
// * Let laravel find a model
$model = parent::retrieveByCredentials($credentials) ??
self::retrieveTrashed($credentials);
static::retrieveTrashed($credentials);
try {
/** @var \LDC\LDCCRM\CrmApiV4 */
/** @var \LDC\LDCCRM\CrmApiV2 */
$crm = app('crmAPI');
// Si pas de compte local.
@ -58,11 +58,11 @@ class CrmUserProvider extends EloquentUserProvider implements UserProviderContra
return $model;
} catch (ApiErrorException $e) {
// * Customer is not found.
if ($e->getApiError()->equals(ApiError::modelNotFound)) {
if ($e->getApiError()->equals(ApiError::modelNotFound())) {
return null;
}
report($e);
Log::error('Unhandled response ' . $e->getApiError()->label());
Log::error('Unhandled response ' . $e->getApiError()->label);
} catch (CrmException | \Exception $e) {
report($e);
// Une erreur critique est survenue avec la CRM.
@ -77,20 +77,20 @@ class CrmUserProvider extends EloquentUserProvider implements UserProviderContra
*
* @param UserContract $model
* @param array $credentials
* @return boolean|null
* @return boolean
* @throws \RuntimeException If model provided is not a Customer or connection to server fails.
* @throws \LDC\LDCCRM\Exceptions\CrmException On CRM call error.
* @throws \Exception On CRM call error.
*/
public function validateCredentials(UserContract $model, array $credentials): bool|null
public function validateCredentials(UserContract $model, array $credentials)
{
/** @var \App\Models\Customer $model */
/** @var \Illuminate\Database\Eloquent\Model $model */
if (\get_class($model) !== $this->usedModel) {
throw new \RuntimeException('Cannot authenticate any thing else than ' . $this->usedModel);
}
try {
/** @var \LDC\LDCCRM\CrmApiV4 */
/** @var \LDC\LDCCRM\CrmApiV2 */
$crm = app('crmAPI');
// * If has trait soft delete and customer trashed, then restore customer.
@ -104,22 +104,16 @@ class CrmUserProvider extends EloquentUserProvider implements UserProviderContra
// * Ne devrait pas survenir, $crm->login throws ApiError::authFailed()
return $crm->login($credentials['email'], $credentials['password']);
} catch (ApiErrorException $e) {
if (
$e->getApiError()->equals(ApiError::modelNotFound) ||
($e->getApiError()->equals(ApiError::authFailed) && !$model->existsInCrm())
) {
$model->delete();
if (!$model->hashcode or !CrmCustomer::find($model->hashcode)) {
$model->forceDelete();
return false;
}
if ($e->getApiError()->equals(ApiError::authFailed)) {
if ($e->getApiError()->equals(ApiError::authFailed())) {
return false;
}
// ! Assert Authenticable model must be valided (MustValidate trait).
if ($e->getApiError()->equals(ApiError::customerNotActivated)) {
$model->email_verified_at = null;
$model->save();
$model->sendEmailVerificationNotification();
Session::flash('warning', \trans('front.messages.account_not_activated'));
if ($e->getApiError()->equals(ApiError::customerNotActivated())) {
Session::flash('warning', \trans('Vous devez activer votre compte'));
return true;
}
} catch (CrmException | \Exception $e) {
@ -143,15 +137,12 @@ class CrmUserProvider extends EloquentUserProvider implements UserProviderContra
*/
private function createLocalCustomer(\LDC\LDCCRM\Models\Customer $crmCustomer): Model
{
/** @var \App\Models\Customer $model */
$model = $this->usedModel::withTrashed()->firstOrNew([
/** @var \Illuminate\Database\Eloquent\Model $model */
$model = $this->usedModel::firstOrNew([
'email' => $crmCustomer->email
]);
$model->hashcode = $crmCustomer->hashcode;
$model->email_verified_at = $crmCustomer->status ? now() : null;
if ($model->trashed()) {
$model->restore();
}
$model->saveOrFail();
return $model;
@ -182,7 +173,7 @@ class CrmUserProvider extends EloquentUserProvider implements UserProviderContra
}
}
/** @var \App\Models\Customer|null $query */
/** @var \App\Models\Customer|null $customer */
return $query->withTrashed()->first();
}
}

View file

@ -0,0 +1,71 @@
<?php
namespace App\Auth;
use App\Models\Customer;
use Illuminate\Support\Str;
use Illuminate\Auth\EloquentUserProvider;
use Illuminate\Contracts\Auth\Authenticatable;
use Illuminate\Contracts\Auth\UserProvider;
/**
* Overload EloquentUserProvider to handle
* Soft deleted Customers
*/
class ReactivateCustomerProvider extends EloquentUserProvider implements UserProvider
{
/**
* Retrieve a customer by the given credentials.
*
* @param array $credentials
* @return \Illuminate\Contracts\Auth\Authenticatable|null
* @throws \ErrorException If cannot connect to LDAP.
*/
public function retrieveByCredentials(array $credentials)
{
// * Make changes
if (empty($credentials)) {
return null;
}
// First we will add each credential element to the query as a where clause.
// Then we can execute the query and, if we found a customer, return it in a
// Eloquent User "model" that will be utilized by the Guard instances.
$query = $this->createModel()->newQuery();
foreach ($credentials as $key => $value) {
if (!Str::contains($key, 'password')) {
$query->where($key, $value);
}
}
/** @var \App\Models\Customer|null $customer */
return $query->withTrashed()->first();
}
/**
* Validate a customer against the given credentials.
*
* @param \Illuminate\Contracts\Auth\Authenticatable $customer
* @param array $credentials
* @return boolean
* @throws \ErrorException If model provided is not a Customer or connection to server fails.
*/
public function validateCredentials(Authenticatable $customer, array $credentials)
{
/** @var \App\Models\Customer $customer */
if ($customer instanceof Customer) {
throw new \ErrorException('Cannot authenticate any thing else than ' . Customer::class);
}
$plain = $credentials['password'];
/** @var \App\Models\Customer $customer */
if ($this->hasher->check($plain, $customer->getAuthPassword())) {
// * Restore customer
return boolval($customer->restore());
}
return false;
}
}

View file

@ -22,6 +22,8 @@ class AsDiscount implements CastsAttributes
public function get($model, string $key, $value, array $attributes): Discount
{
// phpcs:enable
/** @var string $class */
/** @var array<integer|string> $data */
$inputData = \json_decode($value, true);
return Discount::make(...\array_values($inputData));
}

View file

@ -18,7 +18,7 @@ class Ip implements CastsAttributes
* @param string $key
* @param mixed $value
* @param array<string,mixed> $attributes
* @return \IPLib\Address\AddressInterface|null
* @return \TGet|null
* @phpcs:disable Generic.CodeAnalysis.UnusedFunctionParameter.FoundInImplementedInterfaceBeforeLastUsed
* @phpcs:disable Generic.CodeAnalysis.UnusedFunctionParameter.FoundInImplementedInterfaceAfterLastUsed
*/
@ -31,10 +31,10 @@ class Ip implements CastsAttributes
/**
* Transform the attribute to its underlying model values.
*
* @param \Illuminate\Database\Eloquent\Model $model
* @param string $key
* @param \IPLib\Address\AddressInterface|string|null $value
* @param array<string,mixed> $attributes
* @param \Illuminate\Database\Eloquent\Model $model
* @param string $key
* @param \TSet|null $value
* @param array<string,mixed> $attributes
* @return mixed
* @throws \RuntimeException If value is not or instance of \IPLib\Address\AddressInterface.
* @phpcs:disable Generic.CodeAnalysis.UnusedFunctionParameter.FoundInImplementedInterfaceAfterLastUsed

View file

@ -21,42 +21,42 @@ class UserCreate extends Command
/**
* The console command description.
*
* @var string|null
* @var string
*/
protected $description = 'Create a backend admin user';
/**
* The first name of the new user.
*
* @var string|null
* @var string
*/
protected $first_name;
/**
* The last name of the new user.
*
* @var string|null
* @var string
*/
protected $last_name;
/**
* The email of the new user.
*
* @var string|null
* @var string
*/
protected $email;
/**
* The password of the new user.
*
* @var string|null
* @var string
*/
protected $password;
/**
* The role of the new user.
*
* @var string|null
* @var string
*/
protected $role;
@ -221,7 +221,7 @@ class UserCreate extends Command
$this->role = $tmp;
} catch (ValidationException $e) {
$this->error(sprintf(
'Please choose from the selection %s',
'Please choose from the selection',
\implode(',', collect($e->errors())->flatten()->all())
));
continue;

View file

@ -2,7 +2,6 @@
namespace App\Console;
use App\Jobs\DeleteOlds\DeleteOldCustomers;
use Illuminate\Console\Scheduling\Schedule;
use Illuminate\Foundation\Console\Kernel as ConsoleKernel;
@ -23,9 +22,7 @@ class Kernel extends ConsoleKernel
*/
protected function schedule(Schedule $schedule)
{
// ! ATTENTION: Le job DeleteOldCustomers a été désactivé, car il n'est pas applicable pour l'instant.
// ! Il faudra décorreler les customers des gains et participations via les FK.
// $schedule->job(DeleteOldCustomers::class)->dailyAt('22:50');
$schedule->job(DeleteOldCustomers::class)->dailyAt('22:50');
}
/**

View file

@ -15,8 +15,6 @@ enum ActivityLogsEventEnum: int
/**
* Optionnal labels definition
*
* @phpstan-ignore-next-line
*/
private const LABELS = [
self::created->name => 'Création',

View file

@ -1,25 +0,0 @@
<?php
namespace App\Enums;
use App\Traits\Enums\BaseEnum;
enum CodeType: int
{
use BaseEnum;
case unique = 1;
case ean = 2;
case both = 3;
/**
* Optionnal labels definition.
*
* @phpstan-ignore-next-line
*/
private const LABELS = [
self::unique->name => 'Codes uniques',
self::ean->name => 'Codes EAN',
self::both->name => 'Codes uniques et codes EAN'
];
}

View file

@ -14,8 +14,6 @@ enum StaticPageType: int
/**
* Optionnal labels definition.
*
* @phpstan-ignore-next-line
*/
private const LABELS = [
self::legals->name => 'Mentions légales',

View file

@ -13,8 +13,6 @@ enum BootstrapThemeEnum: int
/**
* Optionnal labels definition
*
* @phpstan-ignore-next-line
*/
private const LABELS = [
self::light->name => 'Light',

View file

@ -14,8 +14,6 @@ enum RoleEnum: int
/**
* Optionnal labels definition
*
* @phpstan-ignore-next-line
*/
private const LABELS = [
self::conceptor->name => 'Concepteur',

View file

@ -51,7 +51,7 @@ class ActivityLogController extends Controller
/**
* Show the form for editing the specified resource.
*
* @param \App\Models\ActivityLog $activity_log
* @param App\Models\ActivityLog $activity_log
* @return \Illuminate\Contracts\View\View
*/
public function show(ActivityLog $activity_log): \Illuminate\Contracts\View\View

View file

@ -27,7 +27,7 @@ class CodeController extends Controller
$this->authorize('generate', Code::class);
/** @var \App\Models\Settings */
$settings = app(Settings::class);
$nbCodeBase = Code::query()->max('id');
$nbCodeBase = Code::query()->count();
$nbCodeUsed = Code::query()->whereHas(
'participations',
operator: '>',
@ -47,7 +47,7 @@ class CodeController extends Controller
/**
* Run generate codes action
*
* @param \App\Http\Requests\Bo\Codes\GenerateCodesRequest $request
* @param \App\Http\Controllers\Bo\Codes\GenerateCodesRequest $request
* @return \Illuminate\Http\RedirectResponse
*/
public function generate(GenerateCodesRequest $request): \Illuminate\Http\RedirectResponse
@ -92,9 +92,10 @@ class CodeController extends Controller
return back()->with(
'success',
// phpcs:ignore Generic.Files.LineLength.TooLong
__('L\'export des codes à commencé, un mail de notification sera envoyé à l\'adresse :emaillorsque le traitement sera terminé.', [
'L\'export des codes à commencé, un mail de notification sera envoyé à l\'adresse :email lorsque le traitement sera terminé.',
[
'email' => config('mail.admin')
])
]
);
}
@ -126,7 +127,7 @@ class CodeController extends Controller
$used_counter = null;
if ($code) {
$used_counter = Participation::query()
->whereHas('code', fn(Builder $q) => $q->where('id', $code->id))
->whereHas('code', fn (Builder $q) => $q->where('id', $code->id))
->count();
}

View file

@ -49,9 +49,8 @@ class DashboardController extends Controller
/** @var \Illuminate\Support\Collection<object> 3 codes EAN les plus utilisés */
$codesEan = (clone $query)
->selectRaw('COUNT(product_id) AS nb_usage, product_id, ean_code')
->join('products', 'product_id', '=', 'products.id')
->groupBy('product_id', 'ean_code')
->selectRaw('COUNT(product_id) AS nb_usage, product_id')
->groupBy('product_id')
->orderByDesc('nb_usage')->limit(3)->get();
$participationsUniquePerDay->each(function (object $row) use (&$statsUnique) {

View file

@ -170,7 +170,7 @@ class WinTimeElement extends \stdClass
}
/**
* @property \Carbon\Carbon|\Carbon\CarbonInterface $time
* @property \Carbon\Carbon $time
* Un jour dans le temps.
* @property \Illuminate\Support\Collection<array-key,\App\Http\Controllers\Bo\WinTimeElement> $lots
* Liste des lots tombant ce jour.

View file

@ -26,8 +26,8 @@ class ParticipationController extends Controller
{
$this->authorize('viewWinnerList', Participation::class);
/** @var \Illuminate\Database\Eloquent\Builder $participationModels */
$participationModels = Participation::query()->with(['customer', 'code', 'instantWin', 'product'])->whereHas('instantWin');
/** @var \Illuminate\Database\Eloquent\Builder $rangeModels */
$participationModels = Participation::query()->with(['customer', 'code', 'instantWin'])->whereHas('instantWin');
/** Sort columns with a query */
$this->sortQuery($participationModels);

View file

@ -9,7 +9,7 @@ use App\Mail\Won\PrizeWonMail;
use App\Mail\Won\WinningProofSubmitedMail;
use App\Models\Prize;
use App\Models\Settings;
use App\Lib\Discount;
use App\Models\Discount;
use App\Models\Participation;
use Illuminate\Contracts\View\View;
use Illuminate\Http\Request;
@ -62,26 +62,6 @@ class Re7Controller extends Controller
return view('theme::pages.end-game');
}
/**
* Show code input page
*
* @return \Illuminate\Contracts\View\View
*/
public function participate(): View
{
return view('theme::pages.participation.participate');
}
/**
* Show code input page
*
* @return \Illuminate\Contracts\View\View
*/
public function participationExhausted(): View
{
return view('theme::pages.participation.participation-exhausted');
}
// * -- Participation
/**
@ -230,8 +210,7 @@ class Re7Controller extends Controller
),
$settings->name,
$discount,
config('app.url'),
$settings->company,
config('app.url')
))->render());
case 'prize':
return response((new PrizeWonMail(
@ -241,8 +220,7 @@ class Re7Controller extends Controller
),
$settings->name,
$prize,
config('app.url'),
$settings->company,
config('app.url')
))->render());
case 'prize-sent':
return response((new PrizeIsSentMail(
@ -250,8 +228,7 @@ class Re7Controller extends Controller
$user->email,
$user->first_name
),
$settings->name,
$settings->company,
$settings->name
))->render());
case 'proof':
return response((new WinningProofSubmitedMail(
@ -259,8 +236,7 @@ class Re7Controller extends Controller
$user->email,
$user->first_name
),
$settings->name,
$settings->company,
$settings->name
))->render());
default:
return response('', 404);

View file

@ -90,11 +90,11 @@ class SettingsController extends Controller
}
try {
return Discount::make(
$picture,
Arr::get($coupon, 'valid_on'),
Arr::get($coupon, 'face_value'),
Arr::get($coupon, 'percentage'),
Arr::get($coupon, 'web_coupon_identifiant'),
Arr::get($coupon, 'percentage'),
Arr::get($coupon, 'face_value'),
Arr::get($coupon, 'valid_on'),
$picture,
);
} catch (\RuntimeException | \TypeError) {
return null;

View file

@ -56,7 +56,7 @@ class StaticPageController extends Controller
/**
* Show the form for editing the specified resource.
*
* @param \App\Models\StaticPage $static_page
* @param App\Models\StaticPage $static_page
* @return \Illuminate\Contracts\View\View
*/
public function edit(StaticPage $static_page): \Illuminate\Contracts\View\View

View file

@ -103,7 +103,7 @@ class UserController extends Controller
/**
* Show the form for editing the specified resource.
*
* @param \App\Models\User $user
* @param App\Models\User $user
* @return \Illuminate\Contracts\View\View
*/
public function edit(User $user): \Illuminate\Contracts\View\View

View file

@ -37,7 +37,7 @@ class Controller extends BaseController
protected function getRandomWeightedElementIndex(array $weightedValues): int
{
mt_srand(time());
$rand = mt_rand(1, max((int) collect($weightedValues)->sum('percentage'), 1));
$rand = mt_rand(1, max((int)collect($weightedValues)->sum('percentage'), 1));
foreach ($weightedValues as $key => $value) {
$rand -= $value->percentage;
@ -45,7 +45,6 @@ class Controller extends BaseController
return $key;
}
}
return $rand;
}
/**
@ -132,7 +131,7 @@ class Controller extends BaseController
return $query;
}
// Get models with relation's name/label.
if (Str::endsWith($field, '_id')) {
if (Str::endsWith($field, '_id') && $query->getModel()->has(Str::remove('_id', $field))) {
$query->orWhereHas(Str::remove('_id', $field), function ($queryRelation) use ($field, $search) {
if (Schema::hasColumn(Str::remove('_id', $field) . 's', 'name')) {
$queryRelation->where('name', 'like', '%' . $search . '%');
@ -160,14 +159,12 @@ class Controller extends BaseController
*/
protected function getSearchValue(Builder $query, string $search, string $field): string|array
{
$cast = $query->getModel()->getCasts()[$field] ?? null;
if (
count($query->getModel()->getCasts()) and // Check if the model has casts.
$cast and // Check if there is cast about specific field.
enum_exists($cast) // Check if the cast is an enum.
isset($query->getModel()->getCasts()[$field]) and // Check if there is cast about specific field.
enum_exists($query->getModel()->getCasts()[$field]) // Check if the cast is an enum.
) {
// @phpstan-ignore-next-line
$cases = collect($cast::toArray());
$cases = collect($query->getModel()->getCasts()[$field]::toArray());
$enum = $cases->filter(function ($item) use ($search) {
return preg_match('/' . Str::lower($search) . '/', Str::lower($item->label));
});
@ -202,7 +199,10 @@ class Controller extends BaseController
Session::remove("$rName.sort_way");
}
if (request()->sort_col and request()->sort_way and Schema::hasColumn($table, request()->sort_col)) {
if (!in_array(request()->sort_col, $ignore)) {
if (
!isset($ignore) or
(isset($ignore) and !in_array(request()->sort_col, $ignore))
) {
$query = $query->orderBy(\sprintf("$table.%s", request()->sort_col), request()->sort_way);
}
} elseif (Schema::hasColumn($table, 'order')) {

View file

@ -3,6 +3,7 @@
namespace App\Http\Controllers\Fo\Auth;
use App\Http\Controllers\Controller;
use Illuminate\Contracts\View\View;
use Illuminate\Foundation\Auth\ConfirmsPasswords;
use Illuminate\Support\Facades\Auth;
@ -24,9 +25,9 @@ class ConfirmPasswordController extends Controller
/**
* Display the password confirmation view.
*
* @return \Illuminate\View\View|\Illuminate\Http\RedirectResponse
* @return \Illuminate\View\View
*/
public function showConfirmForm(): \Illuminate\View\View|\Illuminate\Http\RedirectResponse
public function showConfirmForm(): View
{
if (Auth::guard('frontend')->check()) {
return \response()->redirectToRoute('home');

View file

@ -19,7 +19,7 @@ class ForgotPasswordController extends Controller
* @var string
* @phpcs:disable Generic.Files.LineLength.TooLong
*/
private $message = 'front.messages.password_reset_email_sent';
private $message = 'Si votre compte existe vous devriez recevoir un message avec un lien pour réinitialiser votre mot de passe';
//phpcs:enable
/**

View file

@ -3,11 +3,10 @@
namespace App\Http\Controllers\Fo\Auth;
use App\Http\Controllers\Controller;
use App\Models\Customer;
use App\Models\Settings;
use App\Providers\RouteServiceProvider;
use Illuminate\Contracts\Auth\StatefulGuard;
use Illuminate\Contracts\View\View;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Foundation\Auth\AuthenticatesUsers;
use Illuminate\Foundation\Auth\ThrottlesLogins;
use Illuminate\Http\Request;
@ -57,30 +56,18 @@ class LoginController extends Controller
}
/**
* Check if the authenticated user can access the game
* The user has been authenticated.
*
* @param \Illuminate\Http\Request $request
* @param \App\Models\Customer $user
* @param \Illuminate\Http\Request $request
* @param \Illuminate\Database\Eloquent\Model $user
* @return void
* @phpcs:disable Squiz.Commenting.FunctionComment.TypeHintMissing, Generic.CodeAnalysis.UnusedFunctionParameter.FoundInExtendedClassBeforeLastUsed
*/
protected function authenticated(Request $request, Customer $user): void
protected function authenticated(Request $request, Model $user): void
{
/** @var \LDC\LDCCRM\Models\Customer $crmCustomer */
$crmCustomer = $user->api_data;
/** @var \App\Models\Settings */
$settings = app(Settings::class);
$countries = $settings->authorized_countries;
if (count($countries) && !in_array($crmCustomer->country->value, $countries)) {
$this->logout($request);
Session::flash('info', trans('front.messages.game_not_available_in_country'));
} else {
$user->last_connection = \now();
$user->saveOrFail();
Session::flash('info', trans('front.messages.login_success'));
}
$user->last_connection = \now();
$user->saveOrFail();
Session::flash('info', trans('Vous êtes à présent connecté'));
}
/**
@ -92,7 +79,7 @@ class LoginController extends Controller
*/
protected function loggedOut(Request $request): void
{
Session::flash('info', trans('front.messages.logout_success'));
Session::flash('info', trans('Vous êtes à présent déconnecté'));
}
/**

View file

@ -106,31 +106,27 @@ class RegisterController extends Controller
// * Enregistrement du Hashcode
/** @var \App\Models\Customer $customer */
$customer = Customer::withTrashed()->firstOrNew([
'email' => $data['email']
]);
$customer->fill(Arr::only($data, $customer->getFillable()));
$customer = new Customer(
Arr::only($data, (new \ReflectionClass(\App\Models\Customer::class))
->getProperty('fillable')->getDefaultValue())
);
$customer->hashcode = $crmCustomer->hashcode;
if ($customer->trashed()) {
$customer->restore();
}
$customer->email_verified_at = $crmCustomer->status ? now() : null;
// ! Last connection sera null, pour identifier la deuxième connexion,
// ! Pour accéder au partie du Klub.
if ($customer->saveOrFail()) {
// phpcs:ignore Generic.Files.LineLength.TooLong
Session::flash('success', trans('front.messages.account_created_email_confirmation_sent'));
Session::flash('success', trans('Votre compte à bien été crée, vous devez valider votre adresse email, un email de confirmation vous à été envoyé.'));
}
return $customer;
});
} catch (ApiErrorException $e) {
if ($e->getApiError()->equals(ApiError::customerExists)) {
if ($e->getApiError()->equals(ApiError::customerExists())) {
throw IlluminateValidationException::withMessages([
'error' => trans('front.messages.email_already_in_use')
'error' => trans('Un compte est déjà associé à cette adresse email.')
]);
}
if ($e->getApiError()->equals(ApiError::validationFailed)) {
if ($e->getApiError()->equals(ApiError::validationFailed())) {
throw IlluminateValidationException::withMessages([
'error' => $e->getMessage()
]);

View file

@ -6,6 +6,7 @@ use App\Http\Controllers\Controller;
use Illuminate\Auth\Events\PasswordReset;
use Illuminate\Contracts\Auth\PasswordBroker;
use Illuminate\Contracts\Auth\StatefulGuard;
use Illuminate\Contracts\View\View;
use Illuminate\Foundation\Auth\ResetsPasswords;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;
@ -28,8 +29,6 @@ class ResetPasswordController extends Controller
public function __construct()
{
$this->middleware('guest:frontend');
$this->middleware('signed')->only('showResetForm');
$this->middleware('throttle:6,1')->only('showResetForm');
}
/**
@ -48,9 +47,9 @@ class ResetPasswordController extends Controller
* If no token is present, display the link request form.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Contracts\View\View
* @return \Illuminate\Contracts\View\Factory|\Illuminate\View\View
*/
public function showResetForm(Request $request): \Illuminate\Contracts\View\View
public function showResetForm(Request $request): View
{
$token = $request->route()->parameter('token');
@ -62,14 +61,17 @@ class ResetPasswordController extends Controller
/**
* Reset the given user's password.
*
* @param \App\Models\Customer $customer
* @param string $password
* @param mixed $customer
* @param mixed $password
* @return void
* @throws \Illuminate\Validation\ValidationException If something goes wrong.
*/
protected function resetPassword(\App\Models\Customer $customer, string $password): void
protected function resetPassword(mixed $customer, mixed $password): void
{
/** @var \LDC\LDCCRM\CrmApiV4 */
/** @var \App\Models\Customer $customer */
/** @var string $password */
/** @var \LDC\LDCCRM\CrmApiV2 */
$crm = app('crmAPI');
try {
@ -83,7 +85,7 @@ class ResetPasswordController extends Controller
} catch (\TypeError | CrmException | ApiErrorException $e) {
report($e);
throw ValidationException::withMessages([
'error' => trans('front.messages.unexpected_error_try_later')
'error' => trans('Une erreur est survenue, merci de réessayer ultérieurement.')
]);
} catch (ExceptionsValidationException $e) {
throw ValidationException::withMessages([

View file

@ -28,7 +28,7 @@ class VerificationController extends Controller
*/
public function __construct()
{
$this->middleware('auth:frontend')->except('verify');
$this->middleware('auth:frontend');
$this->middleware('signed')->only('verify');
$this->middleware('throttle:6,1')->only('verify', 'resend');
}
@ -58,13 +58,13 @@ class VerificationController extends Controller
public function verify(Request $request): JsonResponse|RedirectResponse
{
/** @var \App\Models\Customer */
$user = Customer::findOrFail($request->route('id'));
$user = $request->user('frontend');
if (!hash_equals((string) $request->route('id'), (string) $user->getKey())) {
if (!hash_equals((string)$request->route('id'), (string)$user->getKey())) {
throw new AuthorizationException();
}
if (!hash_equals((string) $request->route('hash'), sha1($user->getEmailForVerification()))) {
if (!hash_equals((string)$request->route('hash'), sha1($user->getEmailForVerification()))) {
throw new AuthorizationException();
}
@ -101,7 +101,7 @@ class VerificationController extends Controller
{
// phpcs:enable
return redirect($this->redirectPath())->with('success', trans(
'front.messages.account_activated_can_play'
'Votre compte est bien activé, vous pouvez à présent participer au jeu'
));
}
@ -131,16 +131,16 @@ class VerificationController extends Controller
$customer->clearApiDataCache();
} catch (ValidationException) {
redirect($this->redirectPath())->with('error', trans(
'front.messages.unexpected_error_try_later'
'Une erreur est survenue'
))->throwResponse();
} catch (CrmException | ApiErrorException $e) {
if ($e->getApiError()->equals(ApiError::customerAlreadyActive)) {
if ($e->getApiError()->equals(ApiError::customerAlreadyActive())) {
// * Ignore this and continue, as it may be activated via another CRM service.
return;
} else {
report($e);
redirect($this->redirectPath())->with('error', trans(
'front.messages.unexpected_error_try_later'
'Une erreur est survenue'
))->throwResponse();
}
}

View file

@ -4,8 +4,6 @@ namespace App\Http\Controllers\Fo;
use App\Http\Controllers\Controller;
use App\Http\Requests\Fo\Customers\VerifyInformationsRequest;
use App\Http\Requests\Fo\Customers\SingleOptinRequest;
use App\Repositories\Fo\CrmRepository;
use Illuminate\Contracts\Database\Eloquent\Builder;
use Illuminate\Contracts\View\View;
use Illuminate\Http\RedirectResponse;
@ -18,23 +16,9 @@ use LDC\LDCCRM\Enums\ApiError;
use LDC\LDCCRM\Exceptions\ApiErrorException;
use LDC\LDCCRM\Exceptions\CrmException;
use LDC\LDCCRM\Exceptions\ValidationException as CrmValidationException;
use LDC\LDCCRM\Models\SingleOptin;
class CustomerController extends Controller
{
/** @var \App\Repositories\Fo\CrmRepository $crmRepository */
private $crmRepository;
/**
* ParticipateController
*
* @return void
*/
public function __construct()
{
$this->crmRepository = new CrmRepository();
}
/**
* Verify profil info form
*
@ -72,17 +56,12 @@ class CustomerController extends Controller
$customer->updateApiData(\array_merge(Arr::only(
$request->validated(),
[
'firstname',
'lastname',
'birth_date',
'address',
'country',
'city',
'phone',
'opt_in',
'firstname', 'lastname', 'birth_date', 'address',
'country', 'city', 'phone',
'email', 'password', 'opt_in',
]
), ['postcode' => $request->input('postal_code')]));
Session::flash('success', trans('front.messages.profile_updated_success'));
Session::flash('success', trans('Vos informations ont bien été mis à jour'));
return response()->redirectToRoute('fo.participate');
});
@ -92,7 +71,7 @@ class CustomerController extends Controller
'error' => $e->getMessage()
]);
} catch (ApiErrorException $e) {
if ($e->getApiError()->equals(ApiError::validationFailed)) {
if ($e->getApiError()->equals(ApiError::validationFailed())) {
throw IlluminateValidationException::withMessages([
'error' => $e->getMessage()
]);
@ -106,7 +85,6 @@ class CustomerController extends Controller
'error' => trans('Une erreur est survenue, veuillez réssayer plus tard')
]);
} //end try
return back()->withInput()->withErrors(trans('front.messages.unexpected_error_try_later'));
}
/**
@ -121,55 +99,10 @@ class CustomerController extends Controller
/** @var \App\Models\Customer */
$customer = auth('frontend')->user();
// * Recupération des informations CRM
/** @var \LDC\LDCCRM\Models\Customer*/
$crmUser = $this->crmRepository->fetchCrmCustomer($customer);
/** @var \LDC\MESBR\MesBr */
$mesBr = app('mesBrAPI');
$brBasket = $mesBr->getBasket($crmUser);
if (!empty($brBasket['coupons'])) {
$canPrint = (collect($brBasket['coupons'])->sum('quantity') - collect($brBasket['coupons'])->sum('printed'));
}
$winningList = $customer->participations()
->with(['instantWin'])->where(function (Builder $q) {
$q->whereHas('instantWin');
})->get();
->with(['instantWin', 'discount'])->where(fn (Builder $q) =>
$q->whereHas('instantWin')->orWhereHas('discount'))->get();
return view('theme::pages.participation.winning-participations', [
'winningList' => $winningList,
'canPrint' => $canPrint ?? null
]);
}
/**
* Call the CRM to add a single optin
*
* @param \App\Http\Requests\Fo\Customers\SingleOptinRequest $request
* @return string|array|null|\Illuminate\Contracts\Translation\Translator
* @throws \LDC\LDCCRM\Exceptions\ValidationException ValidationException.
* @throws \Illuminate\Contracts\Container\BindingResolutionException BindingResolutionException.
*/
public function addOptIn(SingleOptinRequest $request)
{
try {
SingleOptin::setStatus($request->email, true);
return \response(trans("front.messages.newsletter_subscription_success"), 200);
} catch (ApiErrorException $e) {
// Il y a deja un customerInfo avec optin a true pour ce customer.
if ($e->getApiError()->equals(ApiError::singleOptinCustomerExists)) {
return trans('front.messages.newsletter_email_already_subscribed');
}
if (app()->bound('sentry')) {
app('sentry')->captureException($e);
}
return \response(trans('front.messages.unexpected_error_try_later'), 404);
} catch (CrmException $e) {
if (app()->bound('sentry')) {
app('sentry')->captureException($e);
}
return \response(trans('front.messages.unexpected_error_try_later'), 404);
}
return view('theme::pages.participation.winning-participations', compact('winningList'));
}
}

View file

@ -1,90 +0,0 @@
<?php
namespace App\Http\Controllers\Fo;
use App\Http\Controllers\Controller;
use App\Models\Customer;
use Illuminate\Support\Arr;
class DiscountController extends Controller
{
/**
* Fetch PDF BR.
*
* @return \Illuminate\Http\RedirectResponse
*/
public function fetchBrPdf(): \Illuminate\Http\RedirectResponse
{
/** @var \App\Models\Customer $customer */
$customer = auth('frontend')->user();
$pdf = $this->fetchBrPdfFromMesBr($customer);
if ($pdf === null) {
\back()->withErrors([
'coupon' => trans('front.messages.pdf_download_error')
])->throwResponse();
}
return redirect()->to(
sprintf(
"%s/basket/%s/print",
config('mesbr.endpoint'),
$pdf
)
);
}
/**
* Fetch coupons PDF.
*
* @param \App\Models\Customer $customer
* @return string|null
* @phpcs:disable Generic.Metrics.CyclomaticComplexity.TooHigh
*/
private function fetchBrPdfFromMesBr(Customer $customer): ?string
{
// phpcs:enable
// * Phase - 1 Recupération des informations CRM
/** @var \App\Models\Customer $customer */
$customer = auth('frontend')->user();
/** @var \LDC\LDCCRM\Models\Customer $crmCustomer */
$crmCustomer = $customer->api_data;
try {
/** @var \LDC\MESBR\MesBr */
$mesBr = app('mesBrAPI');
$result = $mesBr->getBasket($crmCustomer);
$result = \is_object($result) ? (array) $result : $result;
if (Arr::get($result, 'status') !== "OK") {
report(new \RuntimeException(
\sprintf(
'MESBR : Une erreur est survenue. Code : %s Message : %s',
Arr::get($result, 'code') ?? 'Undefined',
Arr::get($result, 'message') ?? 'Undefined',
)
));
return null;
}
// * La réponse est conforme ?
$needed_fields = ['uuid'];
if (!Arr::has($result, $needed_fields)) {
report(new \RuntimeException(sprintf(
'MESBR : Il manques des champs dans la réponse, attendu => %s, donné => %s',
json_encode($needed_fields),
json_encode($result),
)));
return null;
}
// * Tout est OK
return Arr::get($result, 'uuid') ?: null;
} catch (\RuntimeException $e) {
report($e);
// * Retenter ?
return null;
} //end try
}
}

View file

@ -7,6 +7,8 @@ use App\Models\FaqQuestion;
use App\Models\FaqTheme;
use App\Models\Range;
use App\Models\Settings;
use Illuminate\Contracts\View\View;
use Illuminate\Http\RedirectResponse;
use Illuminate\Support\Facades\Gate;
class HomeController extends Controller
@ -16,10 +18,10 @@ class HomeController extends Controller
*
* @return \Illuminate\Contracts\View\View
*/
public function home(): \Illuminate\Contracts\View\View
public function home(): View
{
if (!Gate::check('fo.gameEnabled')) {
\session()->flash('warning', trans('front.messages.game_missing_required_elements'));
\session()->flash('warning', trans('Il manque des éléments pour que le jeu soit jouable'));
}
return view('theme::pages.home');
}
@ -31,7 +33,7 @@ class HomeController extends Controller
* @phpcs:ignore Squiz.Commenting.FunctionComment.EmptyThrows
* @throws \Illuminate\Http\Exceptions\HttpResponseException
*/
public function showProducts(): \Illuminate\Contracts\View\View
public function showProducts(): View
{
// ? Show product list authorized ?
if (!Gate::allows('fo.showProducts')) {
@ -47,7 +49,7 @@ class HomeController extends Controller
*
* @return \Illuminate\Contracts\View\View
*/
public function showFaq(): \Illuminate\Contracts\View\View
public function showFaq(): View
{
// ? Show QA authorized ?
if (!Gate::allows('fo.showFaq')) {
@ -66,9 +68,9 @@ class HomeController extends Controller
/**
* Show the teaser page if it is activated
*
* @return \Illuminate\Contracts\View\View|\Illuminate\Http\RedirectResponse
* @return \Illuminate\Contracts\View\View|\Illuminate\Contracts\View\Factory|\Illuminate\Http\RedirectResponse
*/
public function teaser(): \Illuminate\Contracts\View\View|\Illuminate\Http\RedirectResponse
public function teaser(): View | RedirectResponse
{
/** @var \App\Models\Settings */
$settings = app(Settings::class);
@ -81,9 +83,9 @@ class HomeController extends Controller
/**
* Show the end game page if it is activated
*
* @return \Illuminate\Contracts\View\View|\Illuminate\Http\RedirectResponse
* @return \Illuminate\Contracts\View\View|\Illuminate\Contracts\View\Factory|Illuminate\Http\RedirectResponse
*/
public function endGame(): \Illuminate\Contracts\View\View|\Illuminate\Http\RedirectResponse
public function endGame(): View | RedirectResponse
{
/** @var \App\Models\Settings */
$settings = app(Settings::class);

View file

@ -10,23 +10,27 @@ use App\Mail\Won\PrizeWonAdminMail;
use App\Models\Customer;
use App\Models\InstantWin;
use App\Models\Participation;
use App\Models\Discount;
use App\Models\Settings;
use App\Notifications\Customer\HasWonDiscount;
use App\Notifications\Customer\HasWonInstantWin;
use App\Repositories\Fo\CrmRepository;
use Illuminate\Contracts\View\View;
use Illuminate\Http\Exceptions\HttpResponseException;
use Illuminate\Http\Request;
use Illuminate\Support\Arr;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Gate;
use Illuminate\Support\Facades\Log;
use Illuminate\Support\Facades\Mail;
use Illuminate\Support\Facades\Session;
use Illuminate\Support\Facades\Validator;
use Illuminate\Validation\ValidationException;
use LDC\LDCCRM\Enums\ApiError;
use LDC\LDCCRM\Exceptions\ApiErrorException;
use LDC\LDCCRM\Exceptions\CrmException;
class ParticipateController extends Controller
{
/** @var \App\Repositories\Fo\CrmRepository $crmRepository */
private $crmRepository;
/**
* ParticipateController
*
@ -34,7 +38,6 @@ class ParticipateController extends Controller
*/
public function __construct()
{
$this->crmRepository = new CrmRepository();
$this->middleware(function (Request $request, callable $next) {
$this->authorize('fo.gameEnabled');
$this->assertUserHasEnoughInfoToUseMesBr();
@ -47,7 +50,7 @@ class ParticipateController extends Controller
*
* @return \Illuminate\Contracts\View\View
*/
public function participate(): \Illuminate\Contracts\View\View
public function participate(): View
{
if (!Gate::check('participate', Participation::class)) {
return view('theme::pages.participation.participation-exhausted');
@ -61,7 +64,7 @@ class ParticipateController extends Controller
* @param \App\Http\Requests\Fo\ParticipateRequest $request
* @return \Illuminate\Contracts\View\View
*/
public function participateSubmit(ParticipateRequest $request): \Illuminate\Contracts\View\View
public function participateSubmit(ParticipateRequest $request): View
{
return DB::transaction(function () use ($request) {
// ! On verrouille le ou les instants gagnant
@ -77,7 +80,7 @@ class ParticipateController extends Controller
/** @var \App\Models\Customer */
$customer = auth('frontend')->user();
/** @var \App\Models\Code|null */
/** @var \App\Models\Code */
$code = $request->post('unique_code');
/** @var \App\Models\Product|null */
$product = $request->post('product');
@ -110,21 +113,22 @@ class ParticipateController extends Controller
$this->getRandomWeightedElementIndex($settings->web_coupons)
);
$this->setDiscountAsWon($customer, $discount);
$mesBrDiscount = $this->setDiscountAsWon($customer, $discount);
// * Le joueur à remporté un coupon
$participation->discount_code = (string) $discount->web_coupon_identifiant;
$participation->discount()->associate($mesBrDiscount);
// * On enregistre la participation du joueur.
$participation->save();
$crmCustomer = $this->crmRepository->fetchCrmCustomer($customer);
$crmCustomer = $this->fetchCrmCustomer($customer);
$customer->notify(new HasWonDiscount(
$discount,
$mesBrDiscount,
$crmCustomer->firstname
));
return view('theme::pages.participation.won', compact('discount'));
return view('theme::pages.participation.won', compact('discount', 'mesBrDiscount'));
} //end if
// * --- INSTANT WIN ---
@ -134,7 +138,7 @@ class ParticipateController extends Controller
$instantWin->participation()->associate($participation);
$instantWin->save();
$crmCustomer = $this->crmRepository->fetchCrmCustomer($customer);
$crmCustomer = $this->fetchCrmCustomer($customer);
// * Notify customer for his win
$customer->notify(new HasWonInstantWin(
@ -148,7 +152,7 @@ class ParticipateController extends Controller
$participation->created_at,
$instantWin->prize->label,
$crmCustomer,
optional($code)->code_unique,
$code->code_unique,
optional($product)->ean_code
));
@ -167,16 +171,16 @@ class ParticipateController extends Controller
*
* @param \App\Models\Customer $customer
* @param LibDiscount $discount
* @return void
* @return \App\Models\Discount
* @throws \Illuminate\Http\Exceptions\HttpResponseException If Any error occurs.
* @phpcs:disable Squiz.Commenting.FunctionCommentThrowTag.WrongNumber
*/
private function setDiscountAsWon(Customer $customer, LibDiscount $discount): void
private function setDiscountAsWon(Customer $customer, LibDiscount $discount): Discount
{
// phpcs:enable
// * Phase - 1 Recupération des informations CRM
/** @var \LDC\LDCCRM\Models\Customer*/
$crmUser = $this->crmRepository->fetchCrmCustomer($customer);
$crmUser = $this->fetchCrmCustomer($customer);
// * Phase - 2 Mise à jour du coupon dans MesBr
try {
@ -187,15 +191,15 @@ class ParticipateController extends Controller
$mesBr = app('mesBrAPI');
// * MaJ Customer
/** @var string */
$crm_customer_hashcode = retry(3, function () use ($mesBr, $crmUser) {
/** @var integer */
$crm_customer_id = retry(3, function () use ($mesBr, $crmUser) {
/**
* Parce que MesBr n'est pas fiable il faut retenter pour avoir
* l'id client, des fois cet id sera dans hashcode...
*
* Id est necessaire pour update panier..
*/
$result = $mesBr->updateCustomer($crmUser->hashcode, $crmUser->email, $crmUser->country->label());
$result = $mesBr->updateCustomer($crmUser->hashcode, $crmUser->email, $crmUser->country);
if (optional($result)->status !== "OK") {
throw new \RuntimeException(
\sprintf(
@ -207,24 +211,26 @@ class ParticipateController extends Controller
}
/** @var object|null */
$crm_customer = optional($result)->customer;
if (empty(optional($crm_customer)->hashcode)) {
if (empty(optional($crm_customer)->id)) {
throw new \RuntimeException(
'MESBR : Une erreur est survenue. Update Customer n\'as pas retourné le customer hashcode'
'MESBR : Une erreur est survenue. Update Customer n\'as pas retourné le customer id'
);
}
return $crm_customer->hashcode;
return intval($crm_customer->id);
}, 100);
// * Maj Panier
$result = $mesBr->updateBasket(
$result = $mesBr->updatePanier(
$crmUser,
strval($discount->web_coupon_identifiant)
$crm_customer_id,
$settings->discounts_site,
$discount->web_coupon_identifiant
);
if (Arr::get($result, 'status') === "OK") {
// * La réponse est conforme ?
$needed_fields = ['ref'];
$needed_fields = ['link', 'verif', 'basketId'];
if (!Arr::has($result, $needed_fields)) {
throw new \RuntimeException(sprintf(
'MESBR : Il manques des champs dans la réponse, attendu => %s, donné => %s',
@ -233,8 +239,14 @@ class ParticipateController extends Controller
));
}
$discountModel = new Discount();
$discountModel->link = Arr::get($result, 'link');
$discountModel->verification = Arr::get($result, 'verif');
$discountModel->basket_id = Arr::get($result, 'basketId');
$discountModel->save();
// * Tout est OK
return;
return $discountModel;
}
throw new \RuntimeException(
@ -247,12 +259,55 @@ class ParticipateController extends Controller
} catch (\RuntimeException $e) {
report($e);
// * Retenter ?
back()->with('error', trans('front.messages.unexpected_error_try_later'))->throwResponse();
back()->with('error', trans('Une erreur est survenue, veuillez réssayer.'))->throwResponse();
} //end try
throw new \Error('Should not reach this point');
}
/**
* Fetch Crm Customer
*
* @param \App\Models\Customer $customer
* @return \LDC\LDCCRM\Models\Customer
* @throws \Illuminate\Http\Exceptions\HttpResponseException In case of failure or customer not activated.
*/
private function fetchCrmCustomer(Customer $customer): \LDC\LDCCRM\Models\Customer
{
try {
$crmUser = $customer->api_data;
// ? Le compte du joueur est vérifié ?
if (!$crmUser->status) {
// * Le joueur doit avoir un compte vérifié pour participer.
response()->redirectToRoute('fo.verification.notice')
->with('error', trans('Pour participer votre compte doit être activé'))
->throwResponse();
}
return $crmUser;
} catch (ApiErrorException $e) {
// * Customer is not found.
if ($e->getApiError()->equals(ApiError::modelNotFound())) {
// * Déconnexion immédiate et retour maison.
auth('frontend')->logout();
response()->redirectToRoute('fo.home')
->with('error', trans('Une erreur est survenue, compte introuvable.'))
->throwResponse();
}
report($e);
Log::error('Unhandled response ' . $e->getApiError()->label);
// * Retenter ?
back()->with('error', trans('Une erreur est survenue, veuillez réssayer.'))->throwResponse();
} catch (HttpResponseException $e) {
// * continue this
throw $e;
} catch (CrmException | \Exception $e) {
report($e);
// * Retenter ?
back()->with('error', trans('Une erreur est survenue, veuillez réssayer.'))->throwResponse();
} //end try
}
/**
* Assert that user has enough info filled on his profile to win a Discount
* Or redirect him to the fill form
@ -262,14 +317,13 @@ class ParticipateController extends Controller
* @throws \Illuminate\Http\Exceptions\HttpResponseException If customer data doest not validate
* or and error occurs.
*/
private function assertUserHasEnoughInfoToUseMesBr(): void
private function assertUserHasEnoughInfoToUseMesBr()
{
// * Valider que le client dispose des donnés requises pour MesBr
try {
/** @var \App\Models\Customer */
$authUser = auth('frontend')->user();
$crmCustomer = $this->crmRepository->fetchCrmCustomer($authUser);
$crmCustomer = $this->fetchCrmCustomer($authUser);
// * On valide les données selon les critères du site
$rules = collect((new CreateAccountRequest())->rules());
@ -293,13 +347,13 @@ class ParticipateController extends Controller
} catch (ValidationException) {
response()->redirectToRoute('fo.profil.verify')
->with('warning', trans(
'front.messages.profile_incomplete_cannot_play'
'Vous devez compléter des informations sur votre profil pour pouvoir participer.'
))->throwResponse();
} catch (\Exception $e) {
report($e);
// * Retenter ?
response()->redirectToRoute('fo.homepage')
->with('error', trans('front.messages.unexpected_error_try_later'))
->with('error', trans('Une erreur est survenue, veuillez réssayer.'))
->throwResponse();
} //end try
}

View file

@ -101,24 +101,15 @@ class WinningProofController extends Controller
$customer->updateApiData(Arr::only(
$data,
[
'firstname',
'lastname',
'birth_date',
'address',
'address2',
'postcode',
'country',
'city',
'phone',
'firstname', 'lastname', 'birth_date', 'address',
'address2', 'postcode', 'country', 'city', 'phone',
'email',
]
));
// * --- PHASE 2 Update participation ---
$participation->fill(Arr::only($request->validated(), [
'barcode',
'ticket',
'sticker'
'barcode', 'ticket', 'sticker'
]));
$participation->save();
@ -130,7 +121,7 @@ class WinningProofController extends Controller
$participation->created_at,
$participation->instantWin->prize->label,
$crmCustomer,
optional($participation->code)->code_unique,
$participation->code->code_unique,
optional($participation->product)->ean_code,
$participation->sticker,
$participation->ticket,
@ -139,11 +130,11 @@ class WinningProofController extends Controller
return response()->redirectToRoute('fo.homepage')
->with('success', trans(
'front.messages.winning_proof_submitted_will_be_contacted'
'Nous avons bien pris en compte vos preuve de gains, vous serez contactés prochainement'
));
});
} catch (ApiErrorException $e) {
if ($e->getApiError()->equals(ApiError::validationFailed)) {
if ($e->getApiError()->equals(ApiError::validationFailed())) {
throw IlluminateValidationException::withMessages([
'error' => $e->getMessage()
]);

View file

@ -11,7 +11,7 @@ class Kernel extends HttpKernel
*
* These middleware are run during every request to your application.
*
* @var array<int, string>
* @var array
*/
protected $middleware = [
\App\Http\Middleware\TrustHosts::class,
@ -26,7 +26,7 @@ class Kernel extends HttpKernel
/**
* The application's route middleware groups.
*
* @var array<string, array<int, string>>
* @var array
*/
protected $middlewareGroups = [
'web' => [
@ -52,7 +52,7 @@ class Kernel extends HttpKernel
*
* These middleware may be assigned to groups or used individually.
*
* @var array<string, string>
* @var array
*/
protected $routeMiddleware = [
'auth' => \App\Http\Middleware\Authenticate::class,

View file

@ -6,7 +6,6 @@ use Illuminate\Http\Request;
use Illuminate\Support\Arr;
use Illuminate\Support\Facades\Cache;
use Illuminate\Support\Facades\Session;
use Illuminate\Support\Facades\File;
use Illuminate\Support\Str;
use Symfony\Component\HttpFoundation\Response;
@ -24,23 +23,19 @@ class CheckThemeVersion
{
// phpcs:enable
if (!app()->runningInConsole()) {
$appInfos = Cache::remember('composer', 84600, function () {
return json_decode(File::get(\app_path('../composer.json')));
});
// * Assert theme version does not diverge more than minor
$appVer = Str::of($appInfos->version)->explode('.');
$themeVer = Str::of(config('theme.version'))->explode('.');
if (
// * Major check
Arr::get($appVer, 0) !== Arr::get($themeVer, 0) or
// * Patch check
Arr::get($appVer, 1) !== Arr::get($themeVer, 1)
) {
Session::flash('warning', trans(
'Ce thème n\'a semble t-il pas été vérifié pour cette version du moteur'
));
}
$appInfos = Cache::get('composer');
// * Assert theme version does not diverge more than minor
$appVer = Str::of($appInfos->version)->explode('.');
$themeVer = Str::of(config('theme.version'))->explode('.');
if (
// * Major check
Arr::get($appVer, 0) !== Arr::get($themeVer, 0) or
// * Patch check
Arr::get($appVer, 1) !== Arr::get($themeVer, 1)
) {
Session::flash('warning', trans(
'Ce thème n\'a semble t-il pas été vérifié pour cette version du moteur'
));
}
return $next($request);

View file

@ -29,7 +29,7 @@ class RedirectIfAuthenticated
return \redirect()->route('fo.homepage');
case 'backend':
if (!$request->routeIs('bo.*')) {
continue 2;
continue;
}
return \redirect()->route('bo.dashboard');
default:

View file

@ -11,72 +11,92 @@ use Symfony\Component\HttpFoundation\Response;
class SecureHeaders
{
/**
* Enumerate headers which you do not want in your application's responses.
* Great starting point would be to go check out @Scott_Helme's:
* https://securityheaders.com/
*
* @var array
*/
private $unwantedHeaderList = [
'X-Powered-By',
'Server',
];
/**
* Handle an incoming request.
*
* @param \Illuminate\Http\Request $request
* @param \Closure(\Illuminate\Http\Request): (\Symfony\Component\HttpFoundation\Response) $next
* @return \Symfony\Component\HttpFoundation\Response
* @phpcs:disable Squiz.Commenting.FunctionComment.IncorrectTypeHint
*/
public function handle(Request $request, Closure $next): Response
{
// phpcs:enable
// * For Vite DEV
$host = \parse_url((string) \config('app.url'), \PHP_URL_HOST);
$viteDevOrigin = config('app.debug') && \is_string($host) && $host !== '' ? "https://{$host}:4443" : null;
$viteDevSocket = config('app.debug') && \is_string($host) && $host !== '' ? "wss://{$host}:4443" : null;
$host = \parse_url(\config('app.url'), \PHP_URL_HOST);
View::share('nonce', $nonce = Vite::useCspNonce());
// * For VueJS dev tool to execute
$jsDev = config('app.debug') ? "'unsafe-eval' 'unsafe-inline'" : "'nonce-{$nonce}' 'strict-dynamic'";
$scheme = config('app.env') === 'local' ? 'http' : 'https';
$reportUri = Route::has('cspReportUri') ? \sprintf(' report-uri %s ;', \parse_url(route('cspReportUri'), \PHP_URL_PATH)) : '';
$reportUri = Route::has('cspReportUri') ?
\sprintf(' report-uri %s ;', \parse_url(route('cspReportUri'), \PHP_URL_PATH)) : '';
$this->removeUnwantedHeaders($this->unwantedHeaderList);
$response = $next($request);
$response->headers->set('Referrer-Policy', 'no-referrer-when-downgrade');
$response->headers->set('X-Content-Type-Options', 'nosniff');
$response->headers->set('X-XSS-Protection', '1; mode=block');
$response->headers->set('X-Frame-Options', 'SAMEORIGIN');
$response->headers->set('Strict-Transport-Security', 'max-age=31536000; includeSubDomains;');
// Utilisation de array_filter pour ne pas inclure les valeurs null en production
$cspPolicies = [
"default-src 'none';",
"manifest-src 'self';",
"connect-src 'self' blob: " . implode(' ', array_filter([
$viteDevSocket,
$viteDevOrigin,
// * CKEDITOR Specific https://ckeditor.com/docs/ckeditor5/latest/installation/advanced/csp.html
"connect-src 'self' blob: " . implode(' ', [
// * VITE DEV
config('app.debug') ? "wss://{$host}:4443" : '',
config('app.debug') ? "https://{$host}:4443" : '',
'https://yl.s-web.fr'
])) . ';',
"img-src 'self' data: blob: " . implode(' ', array_filter([
$viteDevOrigin,
])) . ';',
"object-src 'self';",
]) . ';',
"img-src 'self' data: blob: " . implode(' ', [
// * VITE DEV
config('app.debug') ? "https://{$host}:4443" : '',
]) . ';',
"object-src 'self' " . implode(' ', []) . ';',
"frame-src 'self' " . implode(' ', [
'https://www.google.com/recaptcha/',
'https://recaptcha.google.com/recaptcha/',
'https://www.google.com/maps/'
]) . ';',
"font-src 'self' data: " . implode(' ', array_filter([
$viteDevOrigin,
'https://fonts.gstatic.com' // <-- Point-virgule retiré ici
])) . ';',
"style-src 'self' 'unsafe-inline' " . implode(' ', array_filter([
"font-src 'self' data: " . \implode(' ', [
// * VITE DEV
config('app.debug') ? "https://{$host}:4443" : '',
'https://fonts.gstatic.com;'
]) . ';',
// ! Using CKEditor will must have unsafe-inline style
// phpcs:ignore Generic.Files.LineLength.TooLong
"style-src 'self' 'unsafe-inline' " . \implode(' ', [
'https://cdnjs.cloudflare.com',
// * File Manager
'https://fonts.googleapis.com',
'https://cdn.jsdelivr.net',
'https://use.fontawesome.com',
$viteDevOrigin,
])) . ';',
"script-src 'self' {$jsDev} " . implode(' ', array_filter([
'https:',
'blob:',
'https://fonts.googleapis.com',
// * VITE DEV
config('app.debug') ? "https://{$host}:4443" : '',
]) . ';',
// ! If you dont use ckeditor use this
// "style-src 'self' 'nonce-$nonce';",
// phpcs:ignore Generic.Files.LineLength.TooLong
"script-src 'self' {$jsDev} " . \implode(' ', [
'https: blob:',
'https://www.googletagmanager.com',
'https://cdnjs.cloudflare.com',
"$scheme://www.google-analytics.com",
$viteDevOrigin,
])) . ';'
// * VITE DEV
config('app.debug') ? "https://{$host}:4443" : '',
]) . ';'
];
$response->headers->set(
@ -84,10 +104,15 @@ class SecureHeaders
implode(' ', $cspPolicies) . $reportUri
);
$response->headers->set('Feature-Policy', 'fullscreen \'self\';');
return $response;
}
/**
* Remove unwanted headers
*
* @param array $headerList
* @return void
*/
private function removeUnwantedHeaders(array $headerList): void
{
foreach ($headerList as $header) {

View file

@ -12,7 +12,7 @@ class TrustProxies extends Middleware
*
* @var array<int, string>|string|null
*/
protected $proxies = '*';
protected $proxies;
/**
* The headers that should be used to detect proxies.

View file

@ -24,13 +24,11 @@ class UpdateBannedIpRequest extends StoreBannedIpRequest
*/
public function rules()
{
/** @var \App\Models\BannedIp */
$ipToBanModel = $this->route('banned_ip');
return [
'ip' => [
'required', 'ip',
Rule::unique('banned_ips', 'ip')
->ignore($ipToBanModel->ip, 'ip')
->ignore($this->route('banned_ip')->ip, 'ip')
],
];
}

View file

@ -2,7 +2,6 @@
namespace App\Http\Requests\Bo\Codes;
use App\Models\Code;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Support\Facades\Gate;

View file

@ -40,7 +40,7 @@ class StorePrizeRequest extends FormRequest
*/
public function rules()
{
$rules = [
$rules = [
'label' => 'required|string|min:3|max:255',
'picture_alt' => 'required|string|between:3,255',
'picture_title' => 'required|string|between:3,255',
@ -50,13 +50,11 @@ class StorePrizeRequest extends FormRequest
'quantity' => 'required|numeric|min:1',
'pdf_winning_proof' => 'nullable|file|mimes:pdf',
];
$min_width = config('theme.models.prizes.picture_min_width');
$min_height = config('theme.models.prizes.picture_min_height');
$max_width = config('theme.models.prizes.picture_max_width');
$max_height = config('theme.models.prizes.picture_max_height');
$width = config('theme.models.prizes.picture_max_width');
$height = config('theme.models.prizes.picture_max_height');
return \array_merge(
$rules,
$this->pictureRules('picture', $min_width, $min_height, $max_width, $max_height),
$this->pictureRules('picture', $width, $height, $width, $height),
);
}

View file

@ -43,11 +43,12 @@ class StoreProductRequest extends FormRequest
'name' => 'required|string|min:3|max:255',
'ean_code' => [
'required',
'numeric',
'unique:products,ean_code',
'regex:/^[0-9]{7}$|^[0-9]{8}$|^[0-9]{13}$/',
],
'picture_alt' => 'nullable|required_with:picture|string|between:3,255',
'picture_title' => 'nullable|required_with:picture|string|between:3,255',
'picture_alt' => 'required_with:picture|string|between:3,255',
'picture_title' => 'required_with:picture|string|between:3,255',
'range_id' => 'exists:ranges,id'
];
$width = config('theme.models.products.picture_max_width');

View file

@ -24,12 +24,11 @@ class UpdateProductRequest extends StoreProductRequest
*/
public function rules()
{
/** @var \App\Models\Product */
$productModel = $this->route('product');
return array_merge(parent::rules(), [
'ean_code' => [
'required',
Rule::unique('products', 'ean_code')->ignore($productModel->id),
'numeric',
Rule::unique('products', 'ean_code')->ignore($this->route('product')->id),
'regex:/^[0-9]{7}$|^[0-9]{8}$|^[0-9]{13}$/',
],
]);

View file

@ -39,9 +39,7 @@ class StoreRangeRequest extends FormRequest
public function rules()
{
$rules = [
'name' => 'required|string|min:2|max:255',
'picture_alt' => 'nullable|required_with:picture|string|between:3,255',
'picture_title' => 'nullable|required_with:picture|string|between:3,255',
'name' => 'required|string|min:2|max:255',
];
$width = config('theme.models.ranges.picture_max_width');
$height = config('theme.models.ranges.picture_max_height');

View file

@ -2,14 +2,10 @@
namespace App\Http\Requests\Bo\Settings;
use App\Enums\CodeType;
use App\Lib\Helpers\ToolboxHelper;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Support\Arr;
use Illuminate\Support\Facades\Gate;
use Illuminate\Validation\Rule;
use LDC\LDCCRM\Enums\Country;
use Illuminate\Validation\Rules\Enum;
class UpdateSettingsRequest extends FormRequest
{
@ -18,7 +14,7 @@ class UpdateSettingsRequest extends FormRequest
*
* @return boolean
*/
public function authorize(): bool
public function authorize()
{
return Gate::check('update', $this->route('settings'));
}
@ -27,28 +23,28 @@ class UpdateSettingsRequest extends FormRequest
* Prepare the data for validation.
*
* @return void
* @phpcs:disable Generic.Metrics.CyclomaticComplexity.TooHigh
*/
protected function prepareForValidation(): void
protected function prepareForValidation()
{
// phpcs:enable
$this->merge([
// Checkboxes.
'notify_prize_sent' => $this->boolean('notify_prize_sent'),
'use_ean_codes' => $this->boolean('use_ean_codes'),
'activated_teaser' => $this->boolean('activated_teaser'),
'activated_close_page' => $this->boolean('activated_close_page'),
'discounts_activated' => $this->boolean('discounts_activated'),
'winning_proof' => $this->boolean('winning_proof'),
'notify_prize_sent' => $this->boolean('notify_prize_sent'),
'use_ean_codes' => $this->boolean('use_ean_codes'),
'activated_teaser' => $this->boolean('activated_teaser'),
'activated_close_page' => $this->boolean('activated_close_page'),
'discounts_activated' => $this->boolean('discounts_activated'),
'winning_proof' => $this->boolean('winning_proof'),
// Arrays.
'notification_emails' => collect($this->input('notification_emails'))->filter()->all(),
'authorized_countries' => collect($this->input('authorized_countries'))->filter()->all(),
'notification_emails' => collect($this->input('notification_emails'))->filter()->all(),
// Remove some dates if the checkbox is uncheck.
'close_page_active_date' => $this->input('activated_close_page') ?
$this->input('close_page_active_date') : null,
// Remove discounts datas if the discount checkbox is uncheck.
'discounts_site' => $this->input('discounts_activated') ? $this->input('discounts_site') : null,
'discounts_campaign' => $this->input('discounts_activated') ? $this->input('discounts_campaign') : null,
'web_coupons' => collect($this->input('web_coupons'))->filter()->all(),
'discounts_site' => $this->input('discounts_activated') ? $this->input('discounts_site') : null,
'discounts_campaign' => $this->input('discounts_activated') ? $this->input('discounts_campaign') : null,
'web_coupons' => collect($this->input('web_coupons'))->filter()->all(),
]);
}
@ -57,30 +53,29 @@ class UpdateSettingsRequest extends FormRequest
*
* @return array
*/
public function rules(): array
public function rules()
{
return [
'name' => 'required|string|min:3|max:255',
'company' => 'required|string|min:3|max:255',
'start_date' => 'required|date',
'end_date' => 'required|date',
'nb_participation_player' => 'required|numeric|min:0',
'nb_participation_ip' => 'required|numeric|min:0',
'nb_unique_code_use' => 'required|numeric|min:0',
'code_type' => ['required', new Enum(CodeType::class)],
'use_ean_codes' => 'required|boolean',
'activated_teaser' => 'required|boolean',
'activated_close_page' => 'required|boolean',
'close_page_active_date' => [
'nullable',
'required_if:activated_close_page,true,1',
'date',
'after_or_equal:end_date'
],
// phpcs:ignore Generic.Files.LineLength.TooLong
'close_page_active_date' => 'nullable|required_if:activated_close_page,true,1|date|after_or_equal:end_date',
'redirect_close' => 'required|url:http,https',
'notify_prize_sent' => 'required|boolean',
'discounts_activated' => 'required|boolean',
'discounts_site' => 'nullable|required_if:discounts_activated,true,1|string|min:3|max:255',
'discounts_campaign' => 'nullable|required_if:discounts_activated,true,1|string|min:3|max:255',
'web_coupons' => [
'present', 'array', function ($attribute, $value, $fail) {
if ($this->post('discounts_activated') and !collect($value)->filter()->count()) {
@ -108,22 +103,18 @@ class UpdateSettingsRequest extends FormRequest
$attribute,
$value,
$fail,
(object) [
(object)[
'maxHeight' => 409,
'maxWith' => 920,
'maxWith' => 920,
'minHeight' => 409,
'minWith' => 920
'minWith' => 920
]
);
}
],
'notification_emails' => 'required|array|min:1',
'notification_emails.*' => 'email:rfc,spoof,dns',
'authorized_countries' => 'sometimes|array|max:' . count(Country::getValidCountries()),
'authorized_countries.*' => [
'sometimes',
Rule::in(Country::getValidCountries())
],
'winning_proof' => 'required|boolean',
];
@ -137,33 +128,33 @@ class UpdateSettingsRequest extends FormRequest
public function attributes(): array
{
return [
'name' => trans('validation.attributes.name'),
'company' => trans('validation.custom.company'),
'start_date' => trans('validation.custom.start_date'),
'end_date' => trans('validation.custom.end_date'),
'nb_participation_player' => trans('validation.custom.nb_participation_player'),
'nb_participation_ip' => trans('validation.custom.nb_participation_ip'),
'nb_unique_code_use' => trans('validation.custom.nb_unique_code_use'),
'code_type' => trans('validation.custom.code_type'),
'activated_teaser' => trans('validation.custom.activated_teaser'),
'activated_close_page' => trans('validation.custom.activated_close_page'),
'close_page_active_date' => trans('validation.custom.close_page_active_date'),
'redirect_close' => trans('validation.custom.redirect_close'),
'winning_proof' => trans('validation.custom.winning_proof'),
'discounts_activated' => trans('validation.custom.discounts_activated'),
'discounts_site' => trans('validation.custom.discounts_site'),
'discounts_campaign' => trans('validation.custom.discounts_campaign'),
'notify_prize_sent' => trans('validation.custom.notify_prize_sent'),
'web_coupons' => trans('Tableau des coupons'),
'name' => trans('validation.attributes.name'),
'company' => trans('validation.custom.company'),
'start_date' => trans('validation.custom.start_date'),
'end_date' => trans('validation.custom.end_date'),
'nb_participation_player' => trans('validation.custom.nb_participation_player'),
'nb_participation_ip' => trans('validation.custom.nb_participation_ip'),
'nb_unique_code_use' => trans('validation.custom.nb_unique_code_use'),
'use_ean_codes' => trans('validation.custom.use_ean_codes'),
'activated_teaser' => trans('validation.custom.activated_teaser'),
'activated_close_page' => trans('validation.custom.activated_close_page'),
'close_page_active_date' => trans('validation.custom.close_page_active_date'),
'redirect_close' => trans('validation.custom.redirect_close'),
'winning_proof' => trans('validation.custom.winning_proof'),
'discounts_activated' => trans('validation.custom.discounts_activated'),
'discounts_site' => trans('validation.custom.discounts_site'),
'discounts_campaign' => trans('validation.custom.discounts_campaign'),
'notify_prize_sent' => trans('validation.custom.notify_prize_sent'),
'web_coupons' => trans('Tableau des coupons'),
'web_coupons.*.web_coupon_identifiant' => trans('Identifiant coupon :index'),
'web_coupons.*.percentage' => trans('Pourcentage :index'),
'web_coupons.*.face_value' => trans('Valeur faciale :index'),
'web_coupons.*.valid_on' => trans('Valable sur :index'),
'web_coupons.*.img_name' => trans('Nom image :index'),
'notification_emails' => trans('Tableau des email à notifier'),
'notification_emails.*.email' => trans('validation.attributes.email'),
'authorized_countries' => trans('Tableau des pays éligibles au jeu'),
'authorized_countries.*' => trans('validation.custom.authorized_countries'),
'notification_emails' => trans('Tableau des email à notifier'),
'notification_emails.*.email' => trans('validation.attributes.email')
];
}
}

View file

@ -26,7 +26,7 @@ class UpdateStaticPageRequest extends FormRequest
public function prepareForValidation(): void
{
$this->merge([
'content' => (string) Str::of($this->input('content'))
'content' => (string)Str::of($this->input('content'))
]);
}
@ -38,10 +38,10 @@ class UpdateStaticPageRequest extends FormRequest
public function rules(): array
{
return [
'seo_title' => 'required|min:45|max:70',
'seo_title' => 'required|min:45|max:70',
'seo_description' => 'required|min:50|max:160',
'title' => 'required|min:3|max:255',
'content' => 'present',
'title' => 'required|min:3|max:255',
'content' => 'present',
];
}
@ -53,10 +53,10 @@ class UpdateStaticPageRequest extends FormRequest
public function attributes(): array
{
return [
'seo_title' => trans('validation.custom.seo_title'),
'seo_title' => trans('validation.custom.seo_title'),
'seo_description' => trans('validation.custom.seo_description'),
'name' => trans('validation.attributes.title'),
'content' => trans('validation.attributes.content'),
'name' => trans('validation.attributes.title'),
'content' => trans('validation.attributes.content'),
];
}
}

View file

@ -1,42 +0,0 @@
<?php
namespace App\Http\Requests\Bo;
use Illuminate\Foundation\Http\FormRequest;
class UpdateChangeOrderRequest extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return boolean
*/
public function authorize(): bool
{
return auth()->check();
}
/**
* Prepare the data for validation.
*
* @return void
*/
protected function prepareForValidation(): void
{
$this->merge([
'direction' => $this->route('direction') === 'up' ? true : false
]);
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules(): array
{
return [
'direction' => 'required|boolean',
];
}
}

View file

@ -3,7 +3,6 @@
namespace App\Http\Requests\Bo\Users;
use App\Enums\Users\RoleEnum;
use App\Models\User;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Support\Facades\Gate;
use Illuminate\Validation\Rules\Enum;

View file

@ -25,16 +25,14 @@ class UpdateUserRequest extends StoreUserRequest
*/
protected function prepareForValidation()
{
/** @var \App\Models\User */
$userModel = $this->route('user');
$this->merge([
'published' => $this->boolean('published'),
'password' => $this->input(
'password',
) ?? $userModel->password,
) ?? $this->route('user')->password,
'password_confirmation' => $this->input(
'password_confirmation'
) ?? $userModel->password
) ?? $this->route('user')->password
]);
}
@ -45,13 +43,11 @@ class UpdateUserRequest extends StoreUserRequest
*/
public function rules(): array
{
/** @var \App\Models\User */
$userModel = $this->route('user');
return array_merge(parent::rules(), [
'email' => [
'required',
'email:rfc,strict,dns,spoof,filter',
Rule::unique('users', 'email')->ignore($userModel->getRouteKey())
Rule::unique('users', 'email')->ignore($this->route('user')->getRouteKey())
],
'password' => [
'required', 'required_with:password_confirmation', 'confirmed', 'max:255', Password::min(8)

View file

@ -2,15 +2,12 @@
namespace App\Http\Requests\Fo\Customers;
use App\Models\Settings;
use App\Repositories\Fo\CrmRepository;
use App\Rules\IsAdult;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Support\Arr;
use Illuminate\Support\Facades\Auth;
use Illuminate\Validation\Rule;
use Illuminate\Validation\Rules\Enum;
use Illuminate\Validation\Rules\Password;
use Kwaadpepper\Enum\Rules\EnumIsValidRule;
use LDC\LDCCRM\Enums\Country;
use LDC\LDCCRM\Models\Customer as CrmCustomer;
@ -21,7 +18,7 @@ class CreateAccountRequest extends FormRequest
*
* @return boolean
*/
public function authorize(): bool
public function authorize()
{
return Auth::guard('frontend')->check();
}
@ -31,10 +28,10 @@ class CreateAccountRequest extends FormRequest
*
* @return void
*/
public function prepareForValidation(): void
public function prepareForValidation()
{
$this->merge([
'phone' => $this->input('phone'),
'phone' => $this->input('phone'),
'opt_in' => $this->boolean('opt_in'),
'ok_cgv' => $this->boolean('ok_cgv')
]);
@ -45,88 +42,38 @@ class CreateAccountRequest extends FormRequest
*
* @return array
*/
public function rules(): array
public function rules()
{
/** @var \App\Models\Settings $settings */
$settings = app(Settings::class);
/** @var \App\Models\Customer|null */
$authUser = auth('frontend')->user();
$countryCode = null;
$countryCode = $this->integer('country') != 0 ?
$this->integer('country') : ($authUser ?
(new CrmRepository())->fetchCrmCustomer($authUser)->country->value : 0);
$countryRules = match ($countryCode) {
Country::belgium->value => [
'phone' => 'phone:BE',
'postal_code' => 'postal_code:BE',
],
Country::luxembourg->value => [
'phone' => 'phone:LU',
'postal_code' => 'postal_code:LU',
],
Country::germany->value => [
'phone' => 'phone:DE',
'postal_code' => 'postal_code:DE',
],
default => [
'phone' => 'phone:FR',
'postal_code' => 'postal_code:FR',
]
};
return [
'lastname' => 'required|string|max:255',
'firstname' => 'required|string|max:255',
'phone' => [
'nullable',
'max:255',
$countryRules['phone'],
'lastname' => 'required|string|max:255',
'firstname' => 'required|string|max:255',
'phone' => 'nullable|max:255|phone:FR',
'address' => 'required|string|min:1|max:255',
'address2' => 'nullable|string|min:1|max:255',
'postal_code' => 'required|string|min:1|postal_code:FR',
'city' => 'required|string|min:2|max:255',
'birth_date' => ['required', new IsAdult(trans('Vous devez être majeur pour vous inscrire.'))],
'country' => [
'required', new EnumIsValidRule(Country::class),
Rule::in(Country::getValidCountries())
],
'address' => 'required|string|min:1|max:255',
'address2' => 'nullable|string|min:1|max:255',
'postal_code' => [
'required',
'string',
'min:1',
$countryRules['postal_code'],
],
'city' => 'required|string|min:2|max:255',
'birth_date' => ['required', new IsAdult(trans('Vous devez être majeur pour vous inscrire.'))],
'country' => [
'required',
new Enum(Country::class),
Rule::in($settings->getAuthorizedCountries()->pluck('value')->toArray()),
],
'email' => [
'required',
'email:rfc,dns,spoof',
'max:255',
'email' => [
'required', 'email:rfc,dns,spoof', 'max:255',
// * Does email already exists in CRM ?
// phpcs:ignore Generic.CodeAnalysis.UnusedFunctionParameter.FoundBeforeLastUsed
// phpcs:ignore Generic.CodeAnalysis.UnusedFunctionParameter.FoundInExtendedClassBeforeLastUsed
function (string $attribute, $value, \Closure $fail) {
if (CrmCustomer::findWithEmail(\strval($value))) {
$fail('Un compte existe déjà avec cette adresse.');
} else {
// ! Si le compte n'existe pas en CRM mais existe en local.
// ! On le soft-delete pour permettre l'inscription et la restauration propre.
$localCustomer = \App\Models\Customer::where('email', \strval($value))->first();
if ($localCustomer) {
$localCustomer->delete();
}
}
},
Rule::unique('customers', 'email')->withoutTrashed(),
'unique:customers,email',
],
'password' => [
'required',
'confirmed',
Password::min(8)->mixedCase()
'password' => [
'required', 'confirmed', Password::min(8)->mixedCase()
->numbers()->symbols()->uncompromised()
],
'ok_cgv' => 'accepted',
'opt_in' => 'required|boolean',
'ok_cgv' => 'accepted',
'opt_in' => 'required|boolean',
];
}
@ -135,23 +82,23 @@ class CreateAccountRequest extends FormRequest
*
* @return array
*/
public function attributes(): array
public function attributes()
{
return [
'lastname' => trans('validation.attributes.first_name'),
'firstname' => trans('validation.attributes.first_name'),
'phone' => trans('validation.attributes.phone'),
'address' => trans('validation.attributes.line_address_1'),
'address2' => trans('validation.attributes.line_address_2'),
'country' => trans('validation.attributes.country'),
'postal_code' => trans('validation.attributes.postal_code'),
'city' => trans('validation.attributes.city'),
'birth_date' => trans('validation.attributes.date_of_birth'),
'email' => trans('validation.attributes.email'),
'password' => trans('validation.attributes.password'),
'lastname' => trans('validation.attributes.first_name'),
'firstname' => trans('validation.attributes.first_name'),
'phone' => trans('validation.attributes.phone'),
'address' => trans('validation.attributes.line_address_1'),
'address2' => trans('validation.attributes.line_address_2'),
'country' => trans('validation.attributes.country'),
'postal_code' => trans('validation.attributes.postal_code'),
'city' => trans('validation.attributes.city'),
'birth_date' => trans('validation.attributes.date_of_birth'),
'email' => trans('validation.attributes.email'),
'password' => trans('validation.attributes.password'),
'password_confirmation' => trans('validation.attributes.password_confirmation'),
'ok_cgv' => trans('conditions d\'utilisation'),
'opt_in' => trans('newsletter'),
'ok_cgv' => trans('conditions d\'utilisation'),
'opt_in' => trans('newsletter'),
];
}
@ -160,66 +107,17 @@ class CreateAccountRequest extends FormRequest
*
* @return array
*/
public function messages(): array
public function messages()
{
$messages = [
'postal_code' => trans('validation.postal_code', [
'countries' => \implode(', ', Country::getValidCountriesLabel()),
'examples' => 72000
return [
'postal_code' => trans('validation.postal_code', [
'countries' => \implode(', ', Country::getValidCountriesLabel()), 'examples' => 72000
]),
'phone.phone' => trans('validation.phone', [
'phone.phone' => trans('validation.phone', [
'countries' => \implode(', ', Country::getValidCountriesLabel())
]),
'email.unique' => trans('Un compte existe déjà avec cette adresse.'),
'email.unique' => trans('Un compte existe déjà avec cette adresse.'),
'ok_cgv.accepted' => trans('Vous devez accepter les conditions d\'utilisation du site pour continuer.')
];
$messages = match ($this->integer('country')) {
Country::belgium->value => array_merge(
$messages,
[
'postal_code' => trans('validation.postal_code', [
'countries' => Country::belgium->label(),
'examples' => 1000
]),
]
),
Country::luxembourg->value => array_merge(
$messages,
[
'postal_code' => trans('validation.postal_code', [
'countries' => Country::luxembourg->label(),
'examples' => 1111
]),
]
),
Country::germany->value => array_merge(
$messages,
[
'postal_code' => trans('validation.postal_code', [
'countries' => Country::germany->label(),
'examples' => 10115
]),
]
),
default => array_merge(
$messages,
[
'postal_code' => trans('validation.postal_code', [
'countries' => \implode(', ', Arr::except(
Country::getValidCountriesLabel(),
[
array_search(Country::belgium->label(), Country::getValidCountriesLabel()),
array_search(Country::luxembourg->label(), Country::getValidCountriesLabel()),
array_search(Country::germany->label(), Country::getValidCountriesLabel()),
]
)),
'examples' => 72000
]),
]
),
}; //end match
return $messages;
}
}

View file

@ -1,30 +0,0 @@
<?php
namespace App\Http\Requests\Fo\Customers;
use Illuminate\Foundation\Http\FormRequest;
class SingleOptinRequest extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return boolean
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'email' => 'required|email:rfc,dns,spoof',
];
}
}

View file

@ -2,12 +2,11 @@
namespace App\Http\Requests\Fo;
use App\Enums\CodeType;
use App\Models\Code;
use App\Models\Participation;
use App\Models\Product;
use App\Models\Settings;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Contracts\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Support\Facades\Gate;
@ -41,27 +40,29 @@ class ParticipateRequest extends FormRequest
*/
protected function prepareForValidation(): void
{
try {
$this->merge([
'unique_code' => Code::query()->where('id', Code::serialToInt(
Str::upper(\strval($this->input('unique_code')))
))->first() ?? false,
]);
} catch (SerialCasterException) {
// * Provoquer l'affichage code incorrect.
$this->merge([
'unique_code' => false,
]);
} finally {
$this->merge([
'ean_code' => (string)$this->string('ean_code')->padLeft(13, '0'),
'game_rules' => $this->boolean('game_rules')
]);
}
/** @var \App\Models\Settings */
$settings = app(Settings::class);
if ($settings->code_type->equals(CodeType::unique) || $settings->code_type->equals(CodeType::both)) {
try {
$this->merge([
'unique_code' => Code::query()->where('id', Code::serialToInt(
Str::upper(\strval($this->input('unique_code')))
))->first() ?? false,
]);
} catch (SerialCasterException) {
// * Provoquer l'affichage code incorrect.
$this->merge([
'unique_code' => false,
]);
} finally {
$this->merge([
'game_rules' => $this->boolean('game_rules'),
]);
}
}
if ($settings->code_type->equals(CodeType::ean) || $settings->code_type->equals(CodeType::both)) {
// ? Does the game use EAN Codes ?
if ($settings->use_ean_codes) {
/**
* * Check si les codes ean sont utilisés, auquel cas
* * on test celui envoyé pour savoir s'il est correct.
@ -74,14 +75,12 @@ class ParticipateRequest extends FormRequest
* càd que les code ean 8 sont de longueur 8, 7 de longueur7 et 13 de longueur 13.
*/
$this->merge([
'ean_code' => (string) $this->string('ean_code')->padLeft(13, '0'),
// * Union pour faire des recherches séparée en une seule requête.
// ! ean_code is already str_padded to 13
'product' => Product::query()->where('ean_code', $this->post('ean_code'))
'product' => Product::query()->where('ean_code', $this->post('ean_code'))
->union(Product::query()->where('ean_code', Str::limit($this->post('ean_code'), 8, '')))
->union(Product::query()->where('ean_code', Str::limit($this->post('ean_code'), 7, '')))
->first(),
'game_rules' => $this->boolean('game_rules'),
->first()
]);
} //end if
}
@ -97,32 +96,28 @@ class ParticipateRequest extends FormRequest
$settings = app(Settings::class);
$rules = [
'game_rules' => 'required|boolean|accepted',
];
// ? Does the game use unique Codes ?
if ($settings->code_type->equals(CodeType::unique) || $settings->code_type->equals(CodeType::both)) {
$rules = \array_merge($rules, ['unique_code' => [
'game_rules' => 'required|boolean|accepted',
'unique_code' => [
'required',
// phpcs:ignore Generic.CodeAnalysis.UnusedFunctionParameter.FoundBeforeLastUsed
function (string $attribute, $value, callable $fail) {
// phpcs:ignore Generic.CodeAnalysis.UnusedFunctionParameter.FoundInExtendedClassBeforeLastUsed
function (string $attribute, $value, callable $fail) use ($settings) {
// ? Le Code unique est resolved ?
if ($value === false or !\is_object($value) or \get_class($value) !== Code::class) {
$fail(trans('front.messages.unique_code_invalid'));
$fail(trans('Code unique incorrect, veuillez réessayer.'));
return;
}
/** @var \App\Models\Code $value */
/** @var \App\Models\Customer */
$customer = auth('frontend')->user();
/** @var \App\Models\Code $value */
// * Check si l'utilisateur n'a pas déjà utilisé ce code.
$query = Participation::query()
->whereHas('code', fn (Builder $q) => $q->where('id', $value->id))
->whereHas('customer', fn (Builder $q) => $q->where('id', $customer->id));
// ! Une seule participation avec un code donné par joueur
if ($query->exists()) {
$fail(trans('front.messages.unique_code_already_used'));
$fail(trans('Vous avez déjà utilisé ce code unique.'));
return;
}
@ -130,18 +125,19 @@ class ParticipateRequest extends FormRequest
// ? Le code unique à été trop utilisé ?
if ($value->has_been_used_too_many_times) {
// * Ne pas laisser d'indices, message générique
$fail(trans('front.messages.unique_code_invalid'));
$fail(trans('Code unique incorrect, veuillez réessayer.'));
return;
}
}
]]);
} //end if
]
];
// ? Does the game use EAN Codes ?
if ($settings->code_type->equals(CodeType::ean) || $settings->code_type->equals(CodeType::both)) {
if ($settings->use_ean_codes) {
$rules = \array_merge($rules, ['ean_code' => [
'required',
// phpcs:ignore Generic.CodeAnalysis.UnusedFunctionParameter.FoundBeforeLastUsed
// phpcs:ignore Generic.CodeAnalysis.UnusedFunctionParameter.FoundInExtendedClassBeforeLastUsed
function ($attribute, $value, $fail) {
// phpcs:enable
/** @var \App\Models\Produt|mixed */
@ -150,7 +146,7 @@ class ParticipateRequest extends FormRequest
empty($product) or !is_object($product) or
!($product instanceof Model) or !$product->exists
) {
$fail(trans('front.messages.barcode_invalid'));
$fail(trans('Le code barre entré est incorrect, veuillez réessayer.'));
}
}
]]);
@ -166,9 +162,9 @@ class ParticipateRequest extends FormRequest
public function attributes(): array
{
return [
'unique_code' => \trans('validation.custom.unique_code'),
'ean_code' => \trans('validation.custom.ean_code'),
'game_rules' => \trans('validation.custom.game_rules'),
'unique_code' => \trans('validation.custom.unique_code'),
'ean_code' => \trans('validation.custom.ean_code'),
'game_rules' => \trans('validation.custom.game_rules'),
];
}
}

View file

@ -3,10 +3,8 @@
namespace App\Http\Requests\Fo;
use App\Http\Requests\Fo\Customers\CreateAccountRequest;
use App\Repositories\Fo\CrmRepository;
use Illuminate\Support\Arr;
use Illuminate\Support\Facades\Gate;
use LDC\LDCCRM\Enums\Country;
class SubmitWinningProofRequest extends CreateAccountRequest
{
@ -17,7 +15,7 @@ class SubmitWinningProofRequest extends CreateAccountRequest
*/
public function authorize(): bool
{
return auth('frontend')->check() &&
return auth('frontend')->check() and
Gate::check('submitProof', $this->route('participation'));
}
@ -28,55 +26,24 @@ class SubmitWinningProofRequest extends CreateAccountRequest
*/
public function rules(): array
{
$authUser = auth('frontend')->user();
$countryCode = $this->integer('country') != 0 ?
$this->integer('country') : ($authUser ?
(new CrmRepository())->fetchCrmCustomer($authUser)->country->value : 0);
$countryRules = match ($countryCode) {
Country::belgium->value => ['phone' => 'phone:BE'],
Country::luxembourg->value => ['phone' => 'phone:LU'],
Country::germany->value => ['phone' => 'phone:DE'],
default => ['phone' => 'phone:FR'],
};
return \array_merge(
Arr::only(
parent::rules(),
[
'lastname',
'firstname',
'address',
'address2',
'postal_code',
'city',
'country',
]
),
return \array_merge(Arr::only(
parent::rules(),
[
'phone' => [
'required',
'max:255',
$countryRules['phone'],
],
],
$this->proofRules()
);
}
/**
* Rules of winning proof.
*
* @return array<string, string>
*/
private function proofRules(): array
{
// * Min 10 KB, Max 2MB
$fileRules = 'required|mimes:jpeg,jpg,png,pdf|min:10|max:2048';
return collect(['sticker', 'ticket', 'barcode'])
->filter(fn (string $proof) => config("proofs.$proof"))
->mapWithKeys(fn (string $proof) => [$proof => $fileRules])
->all();
'lastname',
'firstname',
'address',
'address2',
'postal_code',
'city',
'country'
]
), [
'phone' => 'required|phone:FR',
// * Min 10 KB, Max 2MB
'sticker' => 'required|mimes:jpeg,jpg,png,pdf|min:10|max:2048',
'ticket' => 'required|mimes:jpeg,jpg,png,pdf|min:10|max:2048',
'barcode' => 'required|mimes:jpeg,jpg,png,pdf|min:10|max:2048',
]);
}
/**

View file

@ -25,11 +25,11 @@ class ProcessExportCodesUniques implements ShouldQueue, ShouldBeUnique
/**
* The number of seconds the job can run before timing out.
*
* 28800 seconds (8 hours)
* 7200 seconds (2 hours)
*
* @var integer
*/
public $timeout = 28800;
public $timeout = 7200;
/**
* The export file name

View file

@ -9,13 +9,13 @@ use Illuminate\Support\Arr;
/**
* Ligne de Coupon stocké dans settings
*
* @property integer $web_coupon_identifiant EAN 13 format (Mais ne représente pas un EAN 13),
* @property-read integer $web_coupon_identifiant EAN 13 format (Mais ne représente pas un EAN 13),
* Format utilisé dans MesBr.
* @property integer $percentage Pourcentage de chance de gagner le lot nombre de 1 à 100.
* @property integer $face_value Valeur faciale en centimes.
* @property string $valid_on Text valable sur.. (duplicat de ce qui est inscrit dans MesBr)
* @property-read integer $percentage Pourcentage de chance de gagner le lot nombre de 1 à 100.
* @property-read integer $face_value Valeur faciale en centimes.
* @property-read string $valid_on Text valable sur.. (duplicat de ce qui est inscrit dans MesBr)
* Pour affichage sur la page de gain est dans le mail.
* @property string $picture Image locale du Coupon.
* @property-read string $picture Image locale du Coupon.
* @package App\Lib\Inputs
*/
class Discount extends \stdClass implements Jsonable, Arrayable, \JsonSerializable
@ -26,11 +26,11 @@ class Discount extends \stdClass implements Jsonable, Arrayable, \JsonSerializab
* @var array<string>
*/
private static array $propertiesList = [
'picture',
'valid_on',
'face_value',
'percentage',
'web_coupon_identifiant',
'percentage',
'face_value',
'valid_on',
'picture',
];
/**
@ -53,23 +53,23 @@ class Discount extends \stdClass implements Jsonable, Arrayable, \JsonSerializab
/**
* Make and instance
*
* @param string $picture Image locale du Coupon.
* @param string $valid_on Text valable sur.. (duplicat de ce qui est inscrit dans MesBr)
* Pour affichage sur la page de gain est dans le mail.
* @param integer $face_value Valeur faciale en centimes.
* @param integer $percentage Pourcentage de chance de gagner le lot nombre de 1 à 100.
* @param integer $web_coupon_identifiant EAN 13 format (Mais ne représente pas un EAN 13),
* format utilisé dans MesBr.
* Format utilisé dans MesBr.
* @param integer $percentage Pourcentage de chance de gagner le lot nombre de 1 à 100.
* @param integer $face_value Valeur faciale en centimes.
* @param string $valid_on Text valable sur.. (duplicat de ce qui est inscrit dans MesBr)
* Pour affichage sur la page de gain est dans le mail.
* @param string $picture Image locale du Coupon.
*
* @return \App\Lib\Discount
* @throws \RuntimeException If $type or $data is wrong.
*/
public static function make(
string $picture,
string $valid_on,
int $face_value,
int $percentage,
int $web_coupon_identifiant,
int $percentage,
int $face_value,
string $valid_on,
string $picture
): self {
$ipTypeData = new self();
$ipTypeData->web_coupon_identifiant = $web_coupon_identifiant;

View file

@ -145,7 +145,7 @@ class ExceptionsHelper
$traceStr .= self::handleArgs($stack);
}
$traceStr .= ")\n";
} else {
} elseif (isset($stack['function'])) {
$traceStr .= "{$stack['function']}(";
if (isset($stack['args'])) {
$traceStr .= self::handleArgs($stack);

View file

@ -323,6 +323,7 @@ class FileStorageHelper
$private ? 'app/private/modelfiles' : 'app/public/modelfiles',
$tableName,
$filename,
$private
);
$filename = self::getFileUniqueName($folderPath, $filename);
return "{$folderPath}/{$filename}";
@ -417,7 +418,7 @@ class FileStorageHelper
$filename = Str::of($filename)->ltrim('.-');
// * Optional beautification
if ($beautify) {
$filename = self::beautifyFilename($filename);
$filename = static::beautifyFilename($filename);
}
// * Maximize filename length to 255 bytes http://serverfault.com/a/9548/44086
/** @var string */

View file

@ -4,7 +4,7 @@ namespace App\Lib\Helpers;
use App\Models\Settings;
use Carbon\Carbon;
use Illuminate\Database\Eloquent\Builder;
use Illuminate\Contracts\Database\Eloquent\Builder;
use Illuminate\Database\Eloquent\Model;
use Illuminate\Http\Request;
use Illuminate\Support\Str;
@ -220,10 +220,11 @@ class ToolboxHelper
$url = $match;
try {
$request = Request::create($url);
// Assert route matches existing routes.
$routes->match($request);
// ? Is url internal ?
if (\parse_url(config('app.url'), \PHP_URL_HOST) === \parse_url($url, \PHP_URL_HOST)) {
// If a route is match then it do not throws exception.
if (
\parse_url(config('app.url'), \PHP_URL_HOST) === \parse_url($url, \PHP_URL_HOST) &&
$routes->match($request)
) {
// Removes the matched url.
throw ValidationException::withMessages([
$field => trans(
@ -249,14 +250,14 @@ class ToolboxHelper
* @param array|string $replace
* @param array|string $subject
* @param integer $count
* @return array|string|false
* @return array|string
*/
public static function mbReplace(
array|string $search,
array|string $replace,
array|string $subject,
int &$count = 0
): array|string|false {
): array|string {
if (!is_array($search) && is_array($replace)) {
return false;
}
@ -333,12 +334,9 @@ class ToolboxHelper
public static function getOriginal(Model $model, string $attribute): mixed
{
if (\in_array('Spatie\Translatable\HasTranslations', \class_uses_recursive($model))) {
// @phpstan-ignore-next-line
return $model->getTranslation(
$attribute,
// @phpstan-ignore-next-line
$model->getLocale(),
// @phpstan-ignore-next-line
$model->useFallbackLocale()
);
}
@ -348,11 +346,11 @@ class ToolboxHelper
/**
* Dynamic model query
*
* @param string $defaultLocale
* @param \Illuminate\Database\Eloquent\Builder $q
* @param string $column
* @param string $value
* @return \Illuminate\Database\Eloquent\Builder
* @param string $defaultLocale
* @param \Illuminate\Contracts\Database\Eloquent\Builder $q
* @param string $column
* @param string $value
* @return \Illuminate\Contracts\Database\Eloquent\Builder
*/
public static function queryColumnWithLocales(
string $defaultLocale,
@ -408,54 +406,55 @@ class ToolboxHelper
/**
* Convert deeply an object to array
*
* @param mixed $input
* @param array|object $input
* @return array
* @throws \RuntimeException If $input var is a scalar value.
*/
public static function objectToArray(mixed $input): array
public static function objectToArray($input): array
{
// Only process if it's an object or array being passed to the function.
if (!(is_object($input) or is_array($input))) {
if (is_object($input) or is_array($input)) {
$ret = (array)$input;
foreach ($ret as &$item) {
// Recursively process EACH element only if not scalar.
$item = (is_object($item) or is_array($item)) ?
self::objectToArray($item) : $item;
}
return $ret;
} else {
throw new \RuntimeException('Cannot handle $input of type ' . \gettype($input));
}
$ret = (array) $input;
foreach ($ret as &$item) {
// Recursively process EACH element only if not scalar.
$item = (is_object($item) or is_array($item)) ?
self::objectToArray($item) : $item;
}
return $ret;
}
/**
* Convert deeply an array to object
*
* @param mixed $input
* @param array|object $input
* @return object
* @throws \RuntimeException If $input var is a scalar value.
*/
public static function arrayToObject(mixed $input): object
public static function arrayToObject($input): object
{
// Only process if it's an object or array being passed to the function.
if (!(is_object($input) or is_array($input))) {
if (is_object($input) or is_array($input)) {
$ret = (object)$input;
foreach ($ret as &$item) {
// Recursively process EACH element only if not scalar.
$item = (is_object($item) or is_array($item)) ?
self::arrayToObject($item) : $item;
}
return $ret;
} else {
throw new \RuntimeException('Cannot handle $input of type ' . \gettype($input));
}
$ret = (object) $input;
foreach ($ret as &$item) {
// Recursively process EACH element only if not scalar.
$item = (is_object($item) or is_array($item)) ?
self::arrayToObject($item) : $item;
}
return $ret;
}
/**
* Validate picture
*
* @param string $attribute
* @param string|null $value
* @param callable $fail
* @param callback $fail
* @param object $sizes
* @return void
*/
@ -478,7 +477,7 @@ class ToolboxHelper
'attribute' => $attribute
]));
}
if (!($dimensions = \getimagesize($fileFullPath))) {
if (!($dimensions = \getimagesize($fileFullPath)) or !isset($dimensions[0]) or !isset($dimensions[1])) {
$fail(trans(':attribute impossible de valider les dimensions', [
'attribute' => $attribute
]));
@ -493,10 +492,10 @@ class ToolboxHelper
$xMessage = trans(":attribute la largeur doit être de {$sizes->minWith}px");
}
$yMessage = trans(
":attribute la hauteur doit être comprise entre {$sizes->minHeight}px et {$sizes->maxHeight}px"
":attribute la hauteur doit être comprise entre {$sizes->minWith}px et {$sizes->maxWith}px"
);
if ($sizes->minHeight === $sizes->maxHeight) {
$yMessage = trans(":attribute la hauteur doit être de {$sizes->minHeight}px");
$yMessage = trans(":attribute la hauteur doit être de {$sizes->minWith}px");
}
if (($width < $sizes->minWith) or ($width > $sizes->maxWith)) {

View file

@ -11,13 +11,10 @@ class MesBr
private $refCamp;
private $refSite;
public function __construct($endpoint, $refCamp, $refSite)
public function __construct($endpoint, $refCamp)
{
$this->endpoint = $endpoint;
$this->refCamp = $refCamp;
$this->refSite = $refSite;
}
public function createCustomer(string $hashcode, string $email, string $country)
@ -36,16 +33,10 @@ class MesBr
{
return $this->callApi("GET", '/mur', ['refcamp' => $this->refCamp]);
}
public function printBasketCustomer(string $hashcode)
{
return $this->callApi("GET", '/customer/basket/print', ['refcamp' => $this->refCamp, 'hashcode' => $hashcode]);
}
public function printCoupons(string $hashcode, array $coupons)
{
return $this->callApi("GET", '/coupons/print', [
'refcamp' => $this->refCamp,
'hashcode' => $hashcode,
'coupons' => implode(",", $coupons)
'refcamp' => $this->refCamp, 'hashcode' => $hashcode, 'coupons' => implode(",", $coupons)
]);
}
private function callApi($method, $url, $data = [], $path = '/api/v1')
@ -80,16 +71,12 @@ class MesBr
$http_code = curl_getinfo($curl, CURLINFO_HTTP_CODE);
if (!in_array($http_code, [200, 201])) {
return (object)[
'status' => 'KO',
'code' => 500,
'message' => 'Connection to API failed - Code HTTP : ' . $http_code
'status' => 'KO', 'code' => 500, 'message' => 'Connection to API failed - Code HTTP : ' . $http_code
];
}
} else {
return (object)[
'status' => 'KO',
'code' => 500,
'message' => 'Connection to API failed : ' . curl_error($curl)
'status' => 'KO', 'code' => 500, 'message' => 'Connection to API failed : ' . curl_error($curl)
];
}
curl_close($curl);
@ -102,7 +89,7 @@ class MesBr
* Update panier
*
* @param \LDC\LDCCRM\Models\Customer $crm_customer
* @param string $crm_customer_hashcode
* @param integer $crm_customer_id
* @param string $ref_site
* @param string $coupon_id
* @param integer $quantity
@ -114,7 +101,7 @@ class MesBr
*/
public function updatePanier(
Customer $crm_customer,
string $crm_customer_hashcode,
int $crm_customer_id,
string $ref_site,
string $coupon_id,
int $quantity = 1
@ -122,7 +109,7 @@ class MesBr
$res = $this->callAPI("GET", "/updatebasket", [
'refsite' => $ref_site,
'refcamp' => $this->refCamp,
'refadherent' => $crm_customer_hashcode,
'refadherent' => $crm_customer_id,
'nom' => $crm_customer->lastname,
'prenom' => $crm_customer->firstname,
'email' => $crm_customer->email,
@ -145,67 +132,6 @@ class MesBr
return ['status' => 'OK', 'link' => $panier_link, 'verif' => $panierVerification, 'basketId' => $res->Panier->Panier];
}
/** .
* Update basket
*
* @param \LDC\LDCCRM\Models\Customer $crm_customer
* @param string $coupon_id
* @param integer $quantity
* @return array<string,string>
* 'status' => 'OK',
* 'ref' => 'Basket REF'
*/
public function updateBasket(
Customer $crm_customer,
string $coupon_id,
int $quantity = 1
): array {
$res = $this->callAPI("GET", "/customer/basket/update", [
'refsite' => $this->refSite,
'refcamp' => $this->refCamp,
'customer_hashcode' => $crm_customer->hashcode,
'panier' => "({$quantity}){$coupon_id}"
]);
if (!$res) {
error_log("MESBR - CODE : 999 - MESSAGE : Cannot read API Response (non json)");
return ['status' => 'KO', 'code' => 999, 'message' => 'Cannot read API Response (non json)'];
}
if ($res->Statut === 'KO') {
error_log("MESBR - CODE : $res->Code - MESSAGE : $res->Message");
return ['status' => 'KO', 'code' => $res->Code, 'message' => $res->Message];
}
return ['status' => 'OK', 'ref' => $res->Panier->uuid];
}
/**
* Get customer basket
*
* @param \LDC\LDCCRM\Models\Customer $crm_customer
* @return array
*/
public function getBasket(
Customer $crm_customer,
): array {
$res = $this->callApi("GET", '/customer/basket', [
'refcamp' => $this->refCamp,
'hashcode' => $crm_customer->hashcode
]);
if (!$res) {
error_log("MESBR - CODE : 999 - MESSAGE : Cannot read API Response (non json)");
return ['status' => 'KO', 'code' => 999, 'message' => 'Cannot read API Response (non json)'];
}
if ($res->status === 'KO') {
error_log("MESBR - CODE : $res->code - MESSAGE : $res->message");
return ['status' => 'KO', 'code' => $res->code, 'message' => $res->message];
}
return ['status' => 'OK', 'uuid' => $res->ref, 'coupons' => $res->coupons];
}
/**
* Translate country to MesBr Country
*
@ -217,7 +143,7 @@ class MesBr
return match ($country) {
Country::belgium() => 56,
Country::luxembourg() => 442,
// * France
// * France
default => 250
};
}

View file

@ -0,0 +1,18 @@
root = true
[*]
charset = utf-8
end_of_line = lf
insert_final_newline = true
indent_style = space
indent_size = 4
trim_trailing_whitespace = true
[*.json]
indent_size = 4
[*.md]
trim_trailing_whitespace = false
[*.{yml,yaml}]
indent_size = 2

View file

@ -0,0 +1,3 @@
crm.token=qsdqsd
crm.password=qsdqsdqsds
crm.endpoint=localhost

View file

@ -0,0 +1,5 @@
workspace.code-workspace
vendor
node_modules
.phpdoc
.phive

View file

View file

@ -0,0 +1,26 @@
# This file is a template, and might need editing before it works on your project.
# To contribute improvements to CI/CD templates, please follow the Development guide at:
# https://docs.gitlab.com/ee/development/cicd/templates.html
# This specific template is located at:
# https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Composer.gitlab-ci.yml
# Publishes a tag/branch to Composer Packages of the current project
package-publish:
image: curlimages/curl:latest
stage: build
variables:
URL: "$CI_SERVER_PROTOCOL://$CI_SERVER_HOST:$CI_SERVER_PORT/api/v4/projects/$CI_PROJECT_ID/packages/composer?job_token=$CI_JOB_TOKEN"
script:
- insecure=$([ "$CI_SERVER_PROTOCOL" = "http" ] && echo "--insecure" || echo "")
- response=$(curl -s -w "\n%{http_code}" $insecure --data tag=$CI_COMMIT_TAG $URL)
- code=$(echo "$response" | tail -n 1)
- body=$(echo "$response" | head -n 1)
# Output state information
- if [ $code -eq 201 ]; then
echo "Package created - Code $code - $body";
else
echo "Could not create package - Code $code - $body";
exit 1;
fi
rules:
- if: '$CI_COMMIT_TAG =~ /^\d+.\d+.\d+/'

View file

@ -0,0 +1,22 @@
{
// Utilisez IntelliSense pour en savoir plus sur les attributs possibles.
// Pointez pour afficher la description des attributs existants.
// Pour plus d'informations, visitez : https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Listen for XDebug",
"type": "php",
"request": "launch",
"port": 9000
},
{
"name": "Launch currently open script",
"type": "php",
"request": "launch",
"program": "${file}",
"cwd": "${fileDirname}",
"port": 9000
}
]
}

View file

@ -0,0 +1,6 @@
{
"version": "3.0.6",
"timestampTimeout": 30,
"apiRequestRatePerMinute": 256,
"servicesDBCache": 10
}

View file

@ -0,0 +1,92 @@
# Changelog
### All notable changes to `CRM CLient V2` will be documented in this file.
# version 3.0.6
- Added: SingleOptin::unsetStatusWithHashcode to allow customers to unsubscribe using a hashcode, now single optins do have hashcodes.
# version 3.0.5
- Bumped to follow CRM updates
# version 3.0.4
- Added CI configuration
# version 3.0.3
- Update Country enum
- Fixed : request merge method of data to query (Request.php)
- Fixed : validate json check should check if really false (Response.php)
- Bumped composer deps
# version 3.0.2
- Regen documentation with php documentor
# version 3.0.1
- Fixed : Customer do not call update if there are no updated fields
- Fixed : WPCrm bootSessionIfNeeded trying to access $_SESSION['wpcrm'] before session was started
- Fixed : WPCrm now only returns a boolean
- Fixed : get crm info when client used in laravel
- Changed : WpCrm::makeApiV2Call Change LogLevel on error from Emerge to Critical
- Changed : WPCrm readd forceLogin()
# version 3.0.0
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 : WPCrm::login now only returns a boolean
- 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
# version 2.3.2
- Hotfixed arcadia order
# version 2.3.1
- Fixed Consider fill attributes as can be nullable
- Fixed Respect sometimes validation
# version 2.3.0
- Added Stats call by brand and by question
- Added min rule valdation for integers as well as for strings in Utils
# version 2.2.3
- Changed for bool casting for response parse field 'status' when is int 1 or 0
- Changed, properties are filled from CRM after a save or update action, this will allow for props to be set on model as it is on the crm, after all checks and casts (firstname capitalized, ... etc)
# version 2.2.2
- Fixed Arcadia mail where sending parameters as query instead of Data
# version 2.2.1
- Fixed fill methods on models to handle all enums + arrays
- Changed validation on customer, city minimum is now 2 chars,
firstname and lastname min are now 1 char, phone min 10 has been removed,
other validations are made on backend side such as limit countries,
right now limit is FR, BE, NL.
Anyway dont forget to handle ValidationException which returns crm message.
- Include Drom Com to allowed countries
- Update Country enum to remove '-' chars
# version 2.2.0
- Fixed Utils.php getResquest method
- Changed Arcadia mails, add customer parameters for these calls
# version 2.1.9
- Fixed method CrmClientModel::fill now validates data and put value to updatedValues array

View file

@ -0,0 +1,47 @@
{
"name": "ldc/ldccrmv2client",
"type": "library",
"description": "LDC CRM Client V2",
"license": "MIT",
"version": "3.0.6",
"authors": [
{
"name": "Jérémy Munsch",
"email": "jeremy.munsch@ldc.fr",
"homepage": "https://jeremydev.ovh"
}
],
"homepage": "https://github.com/kwaadpepper",
"keywords": [
"Laravel",
"CRM",
"Client",
"LDC"
],
"require": {
"kwaadpepper/enum": "^2.1",
"guzzlehttp/guzzle": "^7.4",
"respect/validation": "^2.2"
},
"require-dev": {
"phpunit/phpunit": "~9.0",
"squizlabs/php_codesniffer": "^3.5",
"orchestra/testbench": "^6.13",
"slevomat/coding-standard": "^7.0"
},
"autoload": {
"psr-4": {
"LDC\\LDCCRM\\": "src/"
}
},
"autoload-dev": {
"psr-4": {
"LDC\\LDCCRM\\Tests\\": "tests"
}
},
"config": {
"allow-plugins": {
"dealerdirect/phpcodesniffer-composer-installer": true
}
}
}

8082
app/Lib/vendor/crm-client-3.0.6/composer.lock generated vendored Normal file

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,807 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>CRM V2</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<base href="../">
<link rel="icon" href="images/favicon.ico"/>
<link rel="stylesheet" href="css/normalize.css">
<link rel="stylesheet" href="css/base.css">
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="css/template.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
<script src="js/search.js"></script>
<script defer src="js/searchIndex.js"></script>
</head>
<body id="top">
<header class="phpdocumentor-header phpdocumentor-section">
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">CRM V2</a></h1>
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
<label class="phpdocumentor-header__menu-icon" for="menu-button">
<i class="fas fa-bars"></i>
</label>
<section data-search-form class="phpdocumentor-search">
<label>
<span class="visually-hidden">Search for</span>
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
</svg>
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
</label>
</section>
<nav class="phpdocumentor-topnav">
<ul class="phpdocumentor-topnav__menu">
</ul>
</nav>
</header>
<main class="phpdocumentor">
<div class="phpdocumentor-section">
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
Menu
</label>
<aside class="phpdocumentor-column -four phpdocumentor-sidebar">
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="namespaces/ldc.html">LDC</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/ldc-ldccrm.html">LDCCRM</a>
</li>
</ul>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="packages/LDCCrmClient-enums.html">enums</a>
</li>
<li>
<a href="packages/LDCCrmClient-exceptions.html">exceptions</a>
</li>
<li>
<a href="packages/LDCCrmClient-models.html">models</a>
</li>
<li>
<a href="packages/LDCCrmClient-transport.html">transport</a>
</li>
<li>
<a href="packages/LDCCrmClient-utilities.html">utilities</a>
</li>
<li>
<a href="packages/LDCCrmClient-Wordpress.html">Wordpress</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/None.html">None</a></h4>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
</section>
</aside>
<div class="phpdocumentor-column -eight phpdocumentor-content">
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc.html">LDC</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm.html">LDCCRM</a></li>
</ul>
<article class="phpdocumentor-element -class">
<h2 class="phpdocumentor-content__title">
CrmApiV2
<div class="phpdocumentor-element__package">
in package
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></li>
</ul>
</div>
</h2>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/CrmApiV2.php"><a href="files/src-crmapiv2.html"><abbr title="src/CrmApiV2.php">CrmApiV2.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">15</span>
</aside>
<p class="phpdocumentor-summary">This is the main class to interact with the CRM</p>
<h3 id="toc">
Table of Contents
<a href="#toc" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -property -private">
<a href="classes/LDC-LDCCRM-CrmApiV2.html#property_apiInterface">$apiInterface</a>
<span>
&nbsp;: <abbr title="\LDC\LDCCRM\Transport\ApiInterface">ApiInterface</abbr> </span>
</dt>
<dd>The Api object that will handle requests and responses</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-CrmApiV2.html#method___construct">__construct()</a>
<span>
&nbsp;: mixed </span>
</dt>
<dd>CrmApiV2</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-CrmApiV2.html#method_getCustomer">getCustomer()</a>
<span>
&nbsp;: <a href="classes/LDC-LDCCRM-Models-Customer.html"><abbr title="\LDC\LDCCRM\Models\Customer">Customer</abbr></a>|null </span>
</dt>
<dd>Get a customer from its hashcode or email
If it does not exists a new instance
will be returned. You would have
to call its save method later on.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-CrmApiV2.html#method_getCustomerOrNew">getCustomerOrNew()</a>
<span>
&nbsp;: <a href="classes/LDC-LDCCRM-Models-Customer.html"><abbr title="\LDC\LDCCRM\Models\Customer">Customer</abbr></a> </span>
</dt>
<dd>Get a customer from its hashcode or email
If it does not exists a new instance
will be returned. You would have
to call its save method later on.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-CrmApiV2.html#method_login">login()</a>
<span>
&nbsp;: bool </span>
</dt>
<dd>Test a customer credentials to see if it can login</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-CrmApiV2.html#method_ping">ping()</a>
<span>
&nbsp;: bool </span>
</dt>
<dd>Use this the ping the crm and know its current status</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-CrmApiV2.html#method_setStatus">setStatus()</a>
<span>
&nbsp;: bool </span>
</dt>
<dd>Set the single optin status for an email</dd>
</dl>
<section class="phpdocumentor-properties">
<h3 class="phpdocumentor-elements__header" id="properties">
Properties
<a href="classes/LDC-LDCCRM-CrmApiV2.html#properties" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="
phpdocumentor-element
-property
-private
-static "
>
<h4 class="phpdocumentor-element__name" id="property_apiInterface">
$apiInterface
<a href="classes/LDC-LDCCRM-CrmApiV2.html#property_apiInterface" class="headerlink"><i class="fas fa-link"></i></a>
<span class="phpdocumentor-element__modifiers">
</span>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/CrmApiV2.php"><a href="files/src-crmapiv2.html"><abbr title="src/CrmApiV2.php">CrmApiV2.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">22</span>
</aside>
<p class="phpdocumentor-summary">The Api object that will handle requests and responses</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">private</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__type"><abbr title="\LDC\LDCCRM\Transport\ApiInterface">ApiInterface</abbr></span>
<span class="phpdocumentor-signature__name">$apiInterface</span>
</code>
</article>
</section>
<section class="phpdocumentor-methods">
<h3 class="phpdocumentor-elements__header" id="methods">
Methods
<a href="classes/LDC-LDCCRM-CrmApiV2.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="phpdocumentor-element
-method
-public
"
>
<h4 class="phpdocumentor-element__name" id="method___construct">
__construct()
<a href="classes/LDC-LDCCRM-CrmApiV2.html#method___construct" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/CrmApiV2.php"><a href="files/src-crmapiv2.html"><abbr title="src/CrmApiV2.php">CrmApiV2.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">31</span>
</aside>
<p class="phpdocumentor-summary">CrmApiV2</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__name">__construct</span><span>(</span><span class="phpdocumentor-signature__argument"><span>[</span><span class="phpdocumentor-signature__argument__return-type">string|null&nbsp;</span><span class="phpdocumentor-signature__argument__name">$endpoint</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">null</span><span> ]</span></span><span class="phpdocumentor-signature__argument"><span>[</span><span>, </span><span class="phpdocumentor-signature__argument__return-type">string|null&nbsp;</span><span class="phpdocumentor-signature__argument__name">$bearerToken</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">null</span><span> ]</span></span><span class="phpdocumentor-signature__argument"><span>[</span><span>, </span><span class="phpdocumentor-signature__argument__return-type">string|null&nbsp;</span><span class="phpdocumentor-signature__argument__name">$bearerPwd</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">null</span><span> ]</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$endpoint</span>
: <span class="phpdocumentor-signature__argument__return-type">string|null</span>
= <span class="phpdocumentor-signature__argument__default-value">null</span> </dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$bearerToken</span>
: <span class="phpdocumentor-signature__argument__return-type">string|null</span>
= <span class="phpdocumentor-signature__argument__default-value">null</span> </dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$bearerPwd</span>
: <span class="phpdocumentor-signature__argument__return-type">string|null</span>
= <span class="phpdocumentor-signature__argument__default-value">null</span> </dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">mixed</span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
"
>
<h4 class="phpdocumentor-element__name" id="method_getCustomer">
getCustomer()
<a href="classes/LDC-LDCCRM-CrmApiV2.html#method_getCustomer" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/CrmApiV2.php"><a href="files/src-crmapiv2.html"><abbr title="src/CrmApiV2.php">CrmApiV2.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">87</span>
</aside>
<p class="phpdocumentor-summary">Get a customer from its hashcode or email
If it does not exists a new instance
will be returned. You would have
to call its save method later on.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__name">getCustomer</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$identification</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href="classes/LDC-LDCCRM-Models-Customer.html"><abbr title="\LDC\LDCCRM\Models\Customer">Customer</abbr></a>|null</span></code>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$identification</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>The customer hashcode or email.</p>
</section>
</dd>
</dl>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-CrmException.html"><abbr title="\LDC\LDCCRM\Exceptions\CrmException">CrmException</abbr></a></span>
<section class="phpdocumentor-description"><p>If an error occurs on server side or on getting response.</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html"><abbr title="\LDC\LDCCRM\Exceptions\ApiErrorException">ApiErrorException</abbr></a></span>
<section class="phpdocumentor-description"><p>If any error or \LDC\LDCCRM\Enums\ApiError occurs.
Possibles are : - modelNotFound, If this customer hashcode could not be found.</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">phpcs:ignore</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>Squiz.Commenting.FunctionCommentThrowTag.WrongNumber</p>
</section>
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href="classes/LDC-LDCCRM-Models-Customer.html"><abbr title="\LDC\LDCCRM\Models\Customer">Customer</abbr></a>|null</span>
&mdash;
<section class="phpdocumentor-description"><p>Return null if the customer was not found</p>
</section>
</article>
<article
class="phpdocumentor-element
-method
-public
"
>
<h4 class="phpdocumentor-element__name" id="method_getCustomerOrNew">
getCustomerOrNew()
<a href="classes/LDC-LDCCRM-CrmApiV2.html#method_getCustomerOrNew" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/CrmApiV2.php"><a href="files/src-crmapiv2.html"><abbr title="src/CrmApiV2.php">CrmApiV2.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">69</span>
</aside>
<p class="phpdocumentor-summary">Get a customer from its hashcode or email
If it does not exists a new instance
will be returned. You would have
to call its save method later on.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__name">getCustomerOrNew</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$identification</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href="classes/LDC-LDCCRM-Models-Customer.html"><abbr title="\LDC\LDCCRM\Models\Customer">Customer</abbr></a></span></code>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$identification</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>The customer hashcode or email.</p>
</section>
</dd>
</dl>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-CrmException.html"><abbr title="\LDC\LDCCRM\Exceptions\CrmException">CrmException</abbr></a></span>
<section class="phpdocumentor-description"><p>If an error occurs on server side or on getting response.</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html"><abbr title="\LDC\LDCCRM\Exceptions\ApiErrorException">ApiErrorException</abbr></a></span>
<section class="phpdocumentor-description"><p>If any error or \LDC\LDCCRM\Enums\ApiError occurs.</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">phpcs:ignore</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>Squiz.Commenting.FunctionComment.EmptyThrows</p>
</section>
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href="classes/LDC-LDCCRM-Models-Customer.html"><abbr title="\LDC\LDCCRM\Models\Customer">Customer</abbr></a></span>
&mdash;
<section class="phpdocumentor-description"><p>A client Customer model.</p>
</section>
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_login">
login()
<a href="classes/LDC-LDCCRM-CrmApiV2.html#method_login" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/CrmApiV2.php"><a href="files/src-crmapiv2.html"><abbr title="src/CrmApiV2.php">CrmApiV2.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">120</span>
</aside>
<p class="phpdocumentor-summary">Test a customer credentials to see if it can login</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">login</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$email</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$password</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">bool</span></code>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$email</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$password</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-CrmException.html"><abbr title="\LDC\LDCCRM\Exceptions\CrmException">CrmException</abbr></a></span>
<section class="phpdocumentor-description"><p>If an error occurs on server side or on getting response.</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html"><abbr title="\LDC\LDCCRM\Exceptions\ApiErrorException">ApiErrorException</abbr></a></span>
<section class="phpdocumentor-description"><p>If any error or \LDC\LDCCRM\Enums\ApiError occurs.
Possibles are : - authFailed, If credentials are not valid.
- customerNotActivated, If the account is not activated.</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">phpcs:ignore</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>Squiz.Commenting.FunctionCommentThrowTag.WrongNumber</p>
</section>
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
"
>
<h4 class="phpdocumentor-element__name" id="method_ping">
ping()
<a href="classes/LDC-LDCCRM-CrmApiV2.html#method_ping" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/CrmApiV2.php"><a href="files/src-crmapiv2.html"><abbr title="src/CrmApiV2.php">CrmApiV2.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">48</span>
</aside>
<p class="phpdocumentor-summary">Use this the ping the crm and know its current status</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__name">ping</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">bool</span></code>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-CrmException.html"><abbr title="\LDC\LDCCRM\Exceptions\CrmException">CrmException</abbr></a></span>
<section class="phpdocumentor-description"><p>If an error occurs
on server side or on getting response.</p>
</section>
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_setStatus">
setStatus()
<a href="classes/LDC-LDCCRM-CrmApiV2.html#method_setStatus" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/CrmApiV2.php"><a href="files/src-crmapiv2.html"><abbr title="src/CrmApiV2.php">CrmApiV2.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">103</span>
</aside>
<p class="phpdocumentor-summary">Set the single optin status for an email</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">setStatus</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$email</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">bool&nbsp;</span><span class="phpdocumentor-signature__argument__name">$opt_in</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">bool</span></code>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$email</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$opt_in</span>
: <span class="phpdocumentor-signature__argument__return-type">bool</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-CrmException.html"><abbr title="\LDC\LDCCRM\Exceptions\CrmException">CrmException</abbr></a></span>
<section class="phpdocumentor-description"><p>If an error occurs on server side or on getting response.</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html"><abbr title="\LDC\LDCCRM\Exceptions\ApiErrorException">ApiErrorException</abbr></a></span>
<section class="phpdocumentor-description"><p>If any error or \LDC\LDCCRM\Enums\ApiError occurs.
Possibles are : - singleOptinCustomerExists, If a customer exists with this email.</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">phpcs:ignore</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>Squiz.Commenting.FunctionCommentThrowTag.WrongNumber</p>
</section>
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span>
&mdash;
<section class="phpdocumentor-description"><p>true if succeeded</p>
</section>
</article>
</section>
<script type="text/javascript">
function loadExternalCodeSnippets(line) {
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach((pre) => {
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
var language = 'php';
var code = document.createElement('code');
code.className = 'language-' + language;
pre.textContent = '';
pre.setAttribute('data-line', line)
code.textContent = 'Loading…';
pre.appendChild(code);
var xhr = new XMLHttpRequest();
xhr.open('GET', src, true);
xhr.onreadystatechange = function () {
if (xhr.readyState == 4) {
if (xhr.status < 400 && xhr.responseText) {
code.textContent = xhr.responseText;
Prism.highlightElement(code);
}
else if (xhr.status >= 400) {
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
}
else {
code.textContent = '✖ Error: File does not exist, is empty or trying to view from localhost';
}
}
};
xhr.send(null);
});
}
var modals = document.querySelectorAll("[data-modal]");
modals.forEach(function (trigger) {
trigger.addEventListener("click", function (event) {
//event.preventDefault();
const modal = document.getElementById(trigger.dataset.modal);
modal.classList.add("phpdocumentor-modal__open");
loadExternalCodeSnippets(trigger.dataset.line)
const exits = modal.querySelectorAll("[data-exit-button]");
exits.forEach(function (exit) {
exit.addEventListener("click", function (event) {
event.preventDefault();
modal.classList.remove("phpdocumentor-modal__open");
});
});
});
});
</script>
</article>
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
<section class="phpdocumentor-search-results__dialog">
<header class="phpdocumentor-search-results__header">
<h2 class="phpdocumentor-search-results__title">Search results</h2>
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
</header>
<section class="phpdocumentor-search-results__body">
<ul class="phpdocumentor-search-results__entries"></ul>
</section>
</section>
</section>
</div>
</div>
<a href="classes/LDC-LDCCRM-CrmApiV2.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main>
<script>
cssVars({});
</script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
</body>
</html>

View file

@ -0,0 +1,906 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>CRM V2</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<base href="../">
<link rel="icon" href="images/favicon.ico"/>
<link rel="stylesheet" href="css/normalize.css">
<link rel="stylesheet" href="css/base.css">
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="css/template.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
<script src="js/search.js"></script>
<script defer src="js/searchIndex.js"></script>
</head>
<body id="top">
<header class="phpdocumentor-header phpdocumentor-section">
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">CRM V2</a></h1>
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
<label class="phpdocumentor-header__menu-icon" for="menu-button">
<i class="fas fa-bars"></i>
</label>
<section data-search-form class="phpdocumentor-search">
<label>
<span class="visually-hidden">Search for</span>
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
</svg>
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
</label>
</section>
<nav class="phpdocumentor-topnav">
<ul class="phpdocumentor-topnav__menu">
</ul>
</nav>
</header>
<main class="phpdocumentor">
<div class="phpdocumentor-section">
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
Menu
</label>
<aside class="phpdocumentor-column -four phpdocumentor-sidebar">
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="namespaces/ldc.html">LDC</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/ldc-ldccrm.html">LDCCRM</a>
</li>
</ul>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="packages/LDCCrmClient-enums.html">enums</a>
</li>
<li>
<a href="packages/LDCCrmClient-exceptions.html">exceptions</a>
</li>
<li>
<a href="packages/LDCCrmClient-models.html">models</a>
</li>
<li>
<a href="packages/LDCCrmClient-transport.html">transport</a>
</li>
<li>
<a href="packages/LDCCrmClient-utilities.html">utilities</a>
</li>
<li>
<a href="packages/LDCCrmClient-Wordpress.html">Wordpress</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/None.html">None</a></h4>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
</section>
</aside>
<div class="phpdocumentor-column -eight phpdocumentor-content">
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc.html">LDC</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm.html">LDCCRM</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm-enums.html">Enums</a></li>
</ul>
<article class="phpdocumentor-element -class">
<h2 class="phpdocumentor-content__title">
ApiError
<span class="phpdocumentor-element__extends">
extends <abbr title="\Kwaadpepper\Enum\BaseEnum">BaseEnum</abbr>
</span>
<div class="phpdocumentor-element__package">
in package
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></li>
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient-enums.html">enums</a></li>
</ul>
</div>
</h2>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ApiError.php"><a href="files/src-enums-apierror.html"><abbr title="src/Enums/ApiError.php">ApiError.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">65</span>
</aside>
<p class="phpdocumentor-summary">This describes an API error.</p>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">subpackage</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>enums</p>
</section>
</dd>
</dl>
<h3 id="toc">
Table of Contents
<a href="#toc" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_apiAuthFailed">apiAuthFailed()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_authFailed">authFailed()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_authorizationException">authorizationException()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_customerAlreadyActive">customerAlreadyActive()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_customerExists">customerExists()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_customerNotActivated">customerNotActivated()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_labels">labels()</a>
<span>
&nbsp;: array&lt;string|int, mixed&gt; </span>
</dt>
<dd>Libellés des possibilités de cet énumération (label)</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_methodNotAllowed">methodNotAllowed()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_missingParameter">missingParameter()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_modelNotFound">modelNotFound()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_singleOptinCustomerExists">singleOptinCustomerExists()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_throttleRequestsException">throttleRequestsException()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_validationFailed">validationFailed()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_values">values()</a>
<span>
&nbsp;: array&lt;string|int, mixed&gt; </span>
</dt>
<dd>Valeurs des possibilités de cet énumération (value)</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_wrongTimeStamp">wrongTimeStamp()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
</dl>
<section class="phpdocumentor-methods">
<h3 class="phpdocumentor-elements__header" id="methods">
Methods
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_apiAuthFailed">
apiAuthFailed()
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_apiAuthFailed" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ApiError.php"><a href="files/src-enums-apierror.html"><abbr title="src/Enums/ApiError.php">ApiError.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">apiAuthFailed</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<section class="phpdocumentor-description"><p>The authentification to the api failed. You may have to
check into config or .env file for your service credentials</p>
</section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_authFailed">
authFailed()
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_authFailed" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ApiError.php"><a href="files/src-enums-apierror.html"><abbr title="src/Enums/ApiError.php">ApiError.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">authFailed</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<section class="phpdocumentor-description"><p>The authentification for this customer failed because of wrong credentials</p>
</section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_authorizationException">
authorizationException()
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_authorizationException" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ApiError.php"><a href="files/src-enums-apierror.html"><abbr title="src/Enums/ApiError.php">ApiError.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">authorizationException</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<section class="phpdocumentor-description"><p>You are maybe trying to access data that is out of your range.
This should not happen normally, it is here to allow you to handle this case.
If this happens fill a ticket on https://supportweb.ldc.fr
with some technical details</p>
</section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_customerAlreadyActive">
customerAlreadyActive()
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_customerAlreadyActive" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ApiError.php"><a href="files/src-enums-apierror.html"><abbr title="src/Enums/ApiError.php">ApiError.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">customerAlreadyActive</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<section class="phpdocumentor-description"><p>You have requested to activate a customer account,
but it is already active</p>
</section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_customerExists">
customerExists()
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_customerExists" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ApiError.php"><a href="files/src-enums-apierror.html"><abbr title="src/Enums/ApiError.php">ApiError.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">customerExists</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<section class="phpdocumentor-description"><p>The customer already exists</p>
</section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_customerNotActivated">
customerNotActivated()
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_customerNotActivated" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ApiError.php"><a href="files/src-enums-apierror.html"><abbr title="src/Enums/ApiError.php">ApiError.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">customerNotActivated</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<section class="phpdocumentor-description"><p>The customer account is not activated and cannot perform
this action</p>
</section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_labels">
labels()
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_labels" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ApiError.php"><a href="files/src-enums-apierror.html"><abbr title="src/Enums/ApiError.php">ApiError.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">96</span>
</aside>
<p class="phpdocumentor-summary">Libellés des possibilités de cet énumération (label)</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">labels</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">array&lt;string|int, mixed&gt;</span></code>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">array&lt;string|int, mixed&gt;</span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_methodNotAllowed">
methodNotAllowed()
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_methodNotAllowed" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ApiError.php"><a href="files/src-enums-apierror.html"><abbr title="src/Enums/ApiError.php">ApiError.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">methodNotAllowed</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<section class="phpdocumentor-description"><p>This http method is not allowed</p>
</section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_missingParameter">
missingParameter()
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_missingParameter" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ApiError.php"><a href="files/src-enums-apierror.html"><abbr title="src/Enums/ApiError.php">ApiError.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">missingParameter</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<section class="phpdocumentor-description"><p>The request is missing some parameters</p>
</section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_modelNotFound">
modelNotFound()
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_modelNotFound" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ApiError.php"><a href="files/src-enums-apierror.html"><abbr title="src/Enums/ApiError.php">ApiError.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">modelNotFound</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<section class="phpdocumentor-description"><p>The request model was not found (typically the customer)</p>
</section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_singleOptinCustomerExists">
singleOptinCustomerExists()
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_singleOptinCustomerExists" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ApiError.php"><a href="files/src-enums-apierror.html"><abbr title="src/Enums/ApiError.php">ApiError.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">singleOptinCustomerExists</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<section class="phpdocumentor-description"><p>You have requested to create a single optin for an email,
but it already exists</p>
</section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_throttleRequestsException">
throttleRequestsException()
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_throttleRequestsException" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ApiError.php"><a href="files/src-enums-apierror.html"><abbr title="src/Enums/ApiError.php">ApiError.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">throttleRequestsException</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<section class="phpdocumentor-description"><p>Too many requests have been attempted. The is a throttle security.
Normally you should not trigger this.
If this happens fill a ticket on https://supportweb.ldc.fr
with some technical details</p>
</section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_validationFailed">
validationFailed()
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_validationFailed" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ApiError.php"><a href="files/src-enums-apierror.html"><abbr title="src/Enums/ApiError.php">ApiError.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">validationFailed</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<section class="phpdocumentor-description"><p>This means some data could not be validated,
you may have to look into message to get the details</p>
</section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_values">
values()
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_values" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ApiError.php"><a href="files/src-enums-apierror.html"><abbr title="src/Enums/ApiError.php">ApiError.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">72</span>
</aside>
<p class="phpdocumentor-summary">Valeurs des possibilités de cet énumération (value)</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">values</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">array&lt;string|int, mixed&gt;</span></code>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">array&lt;string|int, mixed&gt;</span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_wrongTimeStamp">
wrongTimeStamp()
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#method_wrongTimeStamp" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ApiError.php"><a href="files/src-enums-apierror.html"><abbr title="src/Enums/ApiError.php">ApiError.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">wrongTimeStamp</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<section class="phpdocumentor-description"><p>The timestamp given is wrong. This would happen in case if
a replay attack scenario. Timestamps are provided in headers
and in the http body</p>
</section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
</section>
<script type="text/javascript">
function loadExternalCodeSnippets(line) {
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach((pre) => {
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
var language = 'php';
var code = document.createElement('code');
code.className = 'language-' + language;
pre.textContent = '';
pre.setAttribute('data-line', line)
code.textContent = 'Loading…';
pre.appendChild(code);
var xhr = new XMLHttpRequest();
xhr.open('GET', src, true);
xhr.onreadystatechange = function () {
if (xhr.readyState == 4) {
if (xhr.status < 400 && xhr.responseText) {
code.textContent = xhr.responseText;
Prism.highlightElement(code);
}
else if (xhr.status >= 400) {
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
}
else {
code.textContent = '✖ Error: File does not exist, is empty or trying to view from localhost';
}
}
};
xhr.send(null);
});
}
var modals = document.querySelectorAll("[data-modal]");
modals.forEach(function (trigger) {
trigger.addEventListener("click", function (event) {
//event.preventDefault();
const modal = document.getElementById(trigger.dataset.modal);
modal.classList.add("phpdocumentor-modal__open");
loadExternalCodeSnippets(trigger.dataset.line)
const exits = modal.querySelectorAll("[data-exit-button]");
exits.forEach(function (exit) {
exit.addEventListener("click", function (event) {
event.preventDefault();
modal.classList.remove("phpdocumentor-modal__open");
});
});
});
});
</script>
</article>
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
<section class="phpdocumentor-search-results__dialog">
<header class="phpdocumentor-search-results__header">
<h2 class="phpdocumentor-search-results__title">Search results</h2>
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
</header>
<section class="phpdocumentor-search-results__body">
<ul class="phpdocumentor-search-results__entries"></ul>
</section>
</section>
</section>
</div>
</div>
<a href="classes/LDC-LDCCRM-Enums-ApiError.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main>
<script>
cssVars({});
</script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
</body>
</html>

View file

@ -0,0 +1,357 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>CRM V2</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<base href="../">
<link rel="icon" href="images/favicon.ico"/>
<link rel="stylesheet" href="css/normalize.css">
<link rel="stylesheet" href="css/base.css">
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="css/template.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
<script src="js/search.js"></script>
<script defer src="js/searchIndex.js"></script>
</head>
<body id="top">
<header class="phpdocumentor-header phpdocumentor-section">
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">CRM V2</a></h1>
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
<label class="phpdocumentor-header__menu-icon" for="menu-button">
<i class="fas fa-bars"></i>
</label>
<section data-search-form class="phpdocumentor-search">
<label>
<span class="visually-hidden">Search for</span>
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
</svg>
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
</label>
</section>
<nav class="phpdocumentor-topnav">
<ul class="phpdocumentor-topnav__menu">
</ul>
</nav>
</header>
<main class="phpdocumentor">
<div class="phpdocumentor-section">
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
Menu
</label>
<aside class="phpdocumentor-column -four phpdocumentor-sidebar">
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="namespaces/ldc.html">LDC</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/ldc-ldccrm.html">LDCCRM</a>
</li>
</ul>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="packages/LDCCrmClient-enums.html">enums</a>
</li>
<li>
<a href="packages/LDCCrmClient-exceptions.html">exceptions</a>
</li>
<li>
<a href="packages/LDCCrmClient-models.html">models</a>
</li>
<li>
<a href="packages/LDCCrmClient-transport.html">transport</a>
</li>
<li>
<a href="packages/LDCCrmClient-utilities.html">utilities</a>
</li>
<li>
<a href="packages/LDCCrmClient-Wordpress.html">Wordpress</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/None.html">None</a></h4>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
</section>
</aside>
<div class="phpdocumentor-column -eight phpdocumentor-content">
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc.html">LDC</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm.html">LDCCRM</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm-enums.html">Enums</a></li>
</ul>
<article class="phpdocumentor-element -class">
<h2 class="phpdocumentor-content__title">
ApiStatus
<span class="phpdocumentor-element__extends">
extends <abbr title="\Kwaadpepper\Enum\BaseEnum">BaseEnum</abbr>
</span>
<div class="phpdocumentor-element__package">
in package
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></li>
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient-enums.html">enums</a></li>
</ul>
</div>
</h2>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ApiStatus.php"><a href="files/src-enums-apistatus.html"><abbr title="src/Enums/ApiStatus.php">ApiStatus.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">14</span>
</aside>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">subpackage</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>enums</p>
</section>
</dd>
</dl>
<h3 id="toc">
Table of Contents
<a href="#toc" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-ApiStatus.html#method_KO">KO()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-ApiStatus.html#method_OK">OK()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
</dl>
<section class="phpdocumentor-methods">
<h3 class="phpdocumentor-elements__header" id="methods">
Methods
<a href="classes/LDC-LDCCRM-Enums-ApiStatus.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_KO">
KO()
<a href="classes/LDC-LDCCRM-Enums-ApiStatus.html#method_KO" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ApiStatus.php"><a href="files/src-enums-apistatus.html"><abbr title="src/Enums/ApiStatus.php">ApiStatus.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">KO</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_OK">
OK()
<a href="classes/LDC-LDCCRM-Enums-ApiStatus.html#method_OK" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ApiStatus.php"><a href="files/src-enums-apistatus.html"><abbr title="src/Enums/ApiStatus.php">ApiStatus.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">OK</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
</section>
<script type="text/javascript">
function loadExternalCodeSnippets(line) {
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach((pre) => {
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
var language = 'php';
var code = document.createElement('code');
code.className = 'language-' + language;
pre.textContent = '';
pre.setAttribute('data-line', line)
code.textContent = 'Loading…';
pre.appendChild(code);
var xhr = new XMLHttpRequest();
xhr.open('GET', src, true);
xhr.onreadystatechange = function () {
if (xhr.readyState == 4) {
if (xhr.status < 400 && xhr.responseText) {
code.textContent = xhr.responseText;
Prism.highlightElement(code);
}
else if (xhr.status >= 400) {
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
}
else {
code.textContent = '✖ Error: File does not exist, is empty or trying to view from localhost';
}
}
};
xhr.send(null);
});
}
var modals = document.querySelectorAll("[data-modal]");
modals.forEach(function (trigger) {
trigger.addEventListener("click", function (event) {
//event.preventDefault();
const modal = document.getElementById(trigger.dataset.modal);
modal.classList.add("phpdocumentor-modal__open");
loadExternalCodeSnippets(trigger.dataset.line)
const exits = modal.querySelectorAll("[data-exit-button]");
exits.forEach(function (exit) {
exit.addEventListener("click", function (event) {
event.preventDefault();
modal.classList.remove("phpdocumentor-modal__open");
});
});
});
});
</script>
</article>
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
<section class="phpdocumentor-search-results__dialog">
<header class="phpdocumentor-search-results__header">
<h2 class="phpdocumentor-search-results__title">Search results</h2>
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
</header>
<section class="phpdocumentor-search-results__body">
<ul class="phpdocumentor-search-results__entries"></ul>
</section>
</section>
</section>
</div>
</div>
<a href="classes/LDC-LDCCRM-Enums-ApiStatus.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main>
<script>
cssVars({});
</script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
</body>
</html>

View file

@ -0,0 +1,397 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>CRM V2</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<base href="../">
<link rel="icon" href="images/favicon.ico"/>
<link rel="stylesheet" href="css/normalize.css">
<link rel="stylesheet" href="css/base.css">
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="css/template.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
<script src="js/search.js"></script>
<script defer src="js/searchIndex.js"></script>
</head>
<body id="top">
<header class="phpdocumentor-header phpdocumentor-section">
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">CRM V2</a></h1>
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
<label class="phpdocumentor-header__menu-icon" for="menu-button">
<i class="fas fa-bars"></i>
</label>
<section data-search-form class="phpdocumentor-search">
<label>
<span class="visually-hidden">Search for</span>
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
</svg>
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
</label>
</section>
<nav class="phpdocumentor-topnav">
<ul class="phpdocumentor-topnav__menu">
</ul>
</nav>
</header>
<main class="phpdocumentor">
<div class="phpdocumentor-section">
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
Menu
</label>
<aside class="phpdocumentor-column -four phpdocumentor-sidebar">
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="namespaces/ldc.html">LDC</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/ldc-ldccrm.html">LDCCRM</a>
</li>
</ul>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="packages/LDCCrmClient-enums.html">enums</a>
</li>
<li>
<a href="packages/LDCCrmClient-exceptions.html">exceptions</a>
</li>
<li>
<a href="packages/LDCCrmClient-models.html">models</a>
</li>
<li>
<a href="packages/LDCCrmClient-transport.html">transport</a>
</li>
<li>
<a href="packages/LDCCrmClient-utilities.html">utilities</a>
</li>
<li>
<a href="packages/LDCCrmClient-Wordpress.html">Wordpress</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/None.html">None</a></h4>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
</section>
</aside>
<div class="phpdocumentor-column -eight phpdocumentor-content">
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc.html">LDC</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm.html">LDCCRM</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm-enums.html">Enums</a></li>
</ul>
<article class="phpdocumentor-element -class">
<h2 class="phpdocumentor-content__title">
ArcadiaMailType
<span class="phpdocumentor-element__extends">
extends <abbr title="\Kwaadpepper\Enum\BaseEnum">BaseEnum</abbr>
</span>
<div class="phpdocumentor-element__package">
in package
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></li>
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient-enums.html">enums</a></li>
</ul>
</div>
</h2>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ArcadiaMailType.php"><a href="files/src-enums-arcadiamailtype.html"><abbr title="src/Enums/ArcadiaMailType.php">ArcadiaMailType.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">14</span>
</aside>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">subpackage</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>enums</p>
</section>
</dd>
</dl>
<h3 id="toc">
Table of Contents
<a href="#toc" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-ArcadiaMailType.html#method_default">default()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-ArcadiaMailType.html#method_game">game()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-ArcadiaMailType.html#method_values">values()</a>
<span>
&nbsp;: array&lt;string|int, mixed&gt; </span>
</dt>
<dd>Valeurs des possibilités de cet énumération (value)</dd>
</dl>
<section class="phpdocumentor-methods">
<h3 class="phpdocumentor-elements__header" id="methods">
Methods
<a href="classes/LDC-LDCCRM-Enums-ArcadiaMailType.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_default">
default()
<a href="classes/LDC-LDCCRM-Enums-ArcadiaMailType.html#method_default" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ArcadiaMailType.php"><a href="files/src-enums-arcadiamailtype.html"><abbr title="src/Enums/ArcadiaMailType.php">ArcadiaMailType.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">default</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_game">
game()
<a href="classes/LDC-LDCCRM-Enums-ArcadiaMailType.html#method_game" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ArcadiaMailType.php"><a href="files/src-enums-arcadiamailtype.html"><abbr title="src/Enums/ArcadiaMailType.php">ArcadiaMailType.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">game</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_values">
values()
<a href="classes/LDC-LDCCRM-Enums-ArcadiaMailType.html#method_values" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ArcadiaMailType.php"><a href="files/src-enums-arcadiamailtype.html"><abbr title="src/Enums/ArcadiaMailType.php">ArcadiaMailType.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">21</span>
</aside>
<p class="phpdocumentor-summary">Valeurs des possibilités de cet énumération (value)</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">values</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">array&lt;string|int, mixed&gt;</span></code>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">array&lt;string|int, mixed&gt;</span>
&mdash;
</article>
</section>
<script type="text/javascript">
function loadExternalCodeSnippets(line) {
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach((pre) => {
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
var language = 'php';
var code = document.createElement('code');
code.className = 'language-' + language;
pre.textContent = '';
pre.setAttribute('data-line', line)
code.textContent = 'Loading…';
pre.appendChild(code);
var xhr = new XMLHttpRequest();
xhr.open('GET', src, true);
xhr.onreadystatechange = function () {
if (xhr.readyState == 4) {
if (xhr.status < 400 && xhr.responseText) {
code.textContent = xhr.responseText;
Prism.highlightElement(code);
}
else if (xhr.status >= 400) {
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
}
else {
code.textContent = '✖ Error: File does not exist, is empty or trying to view from localhost';
}
}
};
xhr.send(null);
});
}
var modals = document.querySelectorAll("[data-modal]");
modals.forEach(function (trigger) {
trigger.addEventListener("click", function (event) {
//event.preventDefault();
const modal = document.getElementById(trigger.dataset.modal);
modal.classList.add("phpdocumentor-modal__open");
loadExternalCodeSnippets(trigger.dataset.line)
const exits = modal.querySelectorAll("[data-exit-button]");
exits.forEach(function (exit) {
exit.addEventListener("click", function (event) {
event.preventDefault();
modal.classList.remove("phpdocumentor-modal__open");
});
});
});
});
</script>
</article>
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
<section class="phpdocumentor-search-results__dialog">
<header class="phpdocumentor-search-results__header">
<h2 class="phpdocumentor-search-results__title">Search results</h2>
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
</header>
<section class="phpdocumentor-search-results__body">
<ul class="phpdocumentor-search-results__entries"></ul>
</section>
</section>
</section>
</div>
</div>
<a href="classes/LDC-LDCCRM-Enums-ArcadiaMailType.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main>
<script>
cssVars({});
</script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
</body>
</html>

View file

@ -0,0 +1,397 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>CRM V2</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<base href="../">
<link rel="icon" href="images/favicon.ico"/>
<link rel="stylesheet" href="css/normalize.css">
<link rel="stylesheet" href="css/base.css">
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="css/template.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
<script src="js/search.js"></script>
<script defer src="js/searchIndex.js"></script>
</head>
<body id="top">
<header class="phpdocumentor-header phpdocumentor-section">
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">CRM V2</a></h1>
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
<label class="phpdocumentor-header__menu-icon" for="menu-button">
<i class="fas fa-bars"></i>
</label>
<section data-search-form class="phpdocumentor-search">
<label>
<span class="visually-hidden">Search for</span>
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
</svg>
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
</label>
</section>
<nav class="phpdocumentor-topnav">
<ul class="phpdocumentor-topnav__menu">
</ul>
</nav>
</header>
<main class="phpdocumentor">
<div class="phpdocumentor-section">
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
Menu
</label>
<aside class="phpdocumentor-column -four phpdocumentor-sidebar">
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="namespaces/ldc.html">LDC</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/ldc-ldccrm.html">LDCCRM</a>
</li>
</ul>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="packages/LDCCrmClient-enums.html">enums</a>
</li>
<li>
<a href="packages/LDCCrmClient-exceptions.html">exceptions</a>
</li>
<li>
<a href="packages/LDCCrmClient-models.html">models</a>
</li>
<li>
<a href="packages/LDCCrmClient-transport.html">transport</a>
</li>
<li>
<a href="packages/LDCCrmClient-utilities.html">utilities</a>
</li>
<li>
<a href="packages/LDCCrmClient-Wordpress.html">Wordpress</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/None.html">None</a></h4>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
</section>
</aside>
<div class="phpdocumentor-column -eight phpdocumentor-content">
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc.html">LDC</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm.html">LDCCRM</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm-enums.html">Enums</a></li>
</ul>
<article class="phpdocumentor-element -class">
<h2 class="phpdocumentor-content__title">
ArcadiaOrderType
<span class="phpdocumentor-element__extends">
extends <abbr title="\Kwaadpepper\Enum\BaseEnum">BaseEnum</abbr>
</span>
<div class="phpdocumentor-element__package">
in package
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></li>
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient-enums.html">enums</a></li>
</ul>
</div>
</h2>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ArcadiaOrderType.php"><a href="files/src-enums-arcadiaordertype.html"><abbr title="src/Enums/ArcadiaOrderType.php">ArcadiaOrderType.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">14</span>
</aside>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">subpackage</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>enums</p>
</section>
</dd>
</dl>
<h3 id="toc">
Table of Contents
<a href="#toc" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-ArcadiaOrderType.html#method_cb">cb()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-ArcadiaOrderType.html#method_check">check()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-ArcadiaOrderType.html#method_values">values()</a>
<span>
&nbsp;: array&lt;string|int, mixed&gt; </span>
</dt>
<dd>Valeurs des possibilités de cet énumération (value)</dd>
</dl>
<section class="phpdocumentor-methods">
<h3 class="phpdocumentor-elements__header" id="methods">
Methods
<a href="classes/LDC-LDCCRM-Enums-ArcadiaOrderType.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_cb">
cb()
<a href="classes/LDC-LDCCRM-Enums-ArcadiaOrderType.html#method_cb" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ArcadiaOrderType.php"><a href="files/src-enums-arcadiaordertype.html"><abbr title="src/Enums/ArcadiaOrderType.php">ArcadiaOrderType.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">cb</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_check">
check()
<a href="classes/LDC-LDCCRM-Enums-ArcadiaOrderType.html#method_check" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ArcadiaOrderType.php"><a href="files/src-enums-arcadiaordertype.html"><abbr title="src/Enums/ArcadiaOrderType.php">ArcadiaOrderType.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">check</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_values">
values()
<a href="classes/LDC-LDCCRM-Enums-ArcadiaOrderType.html#method_values" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/ArcadiaOrderType.php"><a href="files/src-enums-arcadiaordertype.html"><abbr title="src/Enums/ArcadiaOrderType.php">ArcadiaOrderType.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">21</span>
</aside>
<p class="phpdocumentor-summary">Valeurs des possibilités de cet énumération (value)</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">values</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">array&lt;string|int, mixed&gt;</span></code>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">array&lt;string|int, mixed&gt;</span>
&mdash;
</article>
</section>
<script type="text/javascript">
function loadExternalCodeSnippets(line) {
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach((pre) => {
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
var language = 'php';
var code = document.createElement('code');
code.className = 'language-' + language;
pre.textContent = '';
pre.setAttribute('data-line', line)
code.textContent = 'Loading…';
pre.appendChild(code);
var xhr = new XMLHttpRequest();
xhr.open('GET', src, true);
xhr.onreadystatechange = function () {
if (xhr.readyState == 4) {
if (xhr.status < 400 && xhr.responseText) {
code.textContent = xhr.responseText;
Prism.highlightElement(code);
}
else if (xhr.status >= 400) {
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
}
else {
code.textContent = '✖ Error: File does not exist, is empty or trying to view from localhost';
}
}
};
xhr.send(null);
});
}
var modals = document.querySelectorAll("[data-modal]");
modals.forEach(function (trigger) {
trigger.addEventListener("click", function (event) {
//event.preventDefault();
const modal = document.getElementById(trigger.dataset.modal);
modal.classList.add("phpdocumentor-modal__open");
loadExternalCodeSnippets(trigger.dataset.line)
const exits = modal.querySelectorAll("[data-exit-button]");
exits.forEach(function (exit) {
exit.addEventListener("click", function (event) {
event.preventDefault();
modal.classList.remove("phpdocumentor-modal__open");
});
});
});
});
</script>
</article>
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
<section class="phpdocumentor-search-results__dialog">
<header class="phpdocumentor-search-results__header">
<h2 class="phpdocumentor-search-results__title">Search results</h2>
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
</header>
<section class="phpdocumentor-search-results__body">
<ul class="phpdocumentor-search-results__entries"></ul>
</section>
</section>
</section>
</div>
</div>
<a href="classes/LDC-LDCCRM-Enums-ArcadiaOrderType.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main>
<script>
cssVars({});
</script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
</body>
</html>

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,647 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>CRM V2</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<base href="../">
<link rel="icon" href="images/favicon.ico"/>
<link rel="stylesheet" href="css/normalize.css">
<link rel="stylesheet" href="css/base.css">
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="css/template.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
<script src="js/search.js"></script>
<script defer src="js/searchIndex.js"></script>
</head>
<body id="top">
<header class="phpdocumentor-header phpdocumentor-section">
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">CRM V2</a></h1>
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
<label class="phpdocumentor-header__menu-icon" for="menu-button">
<i class="fas fa-bars"></i>
</label>
<section data-search-form class="phpdocumentor-search">
<label>
<span class="visually-hidden">Search for</span>
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
</svg>
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
</label>
</section>
<nav class="phpdocumentor-topnav">
<ul class="phpdocumentor-topnav__menu">
</ul>
</nav>
</header>
<main class="phpdocumentor">
<div class="phpdocumentor-section">
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
Menu
</label>
<aside class="phpdocumentor-column -four phpdocumentor-sidebar">
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="namespaces/ldc.html">LDC</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/ldc-ldccrm.html">LDCCRM</a>
</li>
</ul>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="packages/LDCCrmClient-enums.html">enums</a>
</li>
<li>
<a href="packages/LDCCrmClient-exceptions.html">exceptions</a>
</li>
<li>
<a href="packages/LDCCrmClient-models.html">models</a>
</li>
<li>
<a href="packages/LDCCrmClient-transport.html">transport</a>
</li>
<li>
<a href="packages/LDCCrmClient-utilities.html">utilities</a>
</li>
<li>
<a href="packages/LDCCrmClient-Wordpress.html">Wordpress</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/None.html">None</a></h4>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
</section>
</aside>
<div class="phpdocumentor-column -eight phpdocumentor-content">
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc.html">LDC</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm.html">LDCCRM</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm-enums.html">Enums</a></li>
</ul>
<article class="phpdocumentor-element -class">
<h2 class="phpdocumentor-content__title">
LogLevel
<span class="phpdocumentor-element__extends">
extends <abbr title="\Kwaadpepper\Enum\BaseEnum">BaseEnum</abbr>
</span>
<div class="phpdocumentor-element__package">
in package
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></li>
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient-enums.html">enums</a></li>
</ul>
</div>
</h2>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/LogLevel.php"><a href="files/src-enums-loglevel.html"><abbr title="src/Enums/LogLevel.php">LogLevel.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">20</span>
</aside>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">subpackage</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>enums</p>
</section>
</dd>
</dl>
<h3 id="toc">
Table of Contents
<a href="#toc" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-LogLevel.html#method_ALERT">ALERT()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-LogLevel.html#method_CRIT">CRIT()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-LogLevel.html#method_DEBUG">DEBUG()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-LogLevel.html#method_EMERG">EMERG()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-LogLevel.html#method_ERR">ERR()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-LogLevel.html#method_INFO">INFO()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-LogLevel.html#method_NOTICE">NOTICE()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-LogLevel.html#method_WARNING">WARNING()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -protected">
<a href="classes/LDC-LDCCRM-Enums-LogLevel.html#method_values">values()</a>
<span>
&nbsp;: array&lt;string|int, mixed&gt; </span>
</dt>
<dd>Valeurs des possibilités de cet énumération (value)</dd>
</dl>
<section class="phpdocumentor-methods">
<h3 class="phpdocumentor-elements__header" id="methods">
Methods
<a href="classes/LDC-LDCCRM-Enums-LogLevel.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_ALERT">
ALERT()
<a href="classes/LDC-LDCCRM-Enums-LogLevel.html#method_ALERT" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/LogLevel.php"><a href="files/src-enums-loglevel.html"><abbr title="src/Enums/LogLevel.php">LogLevel.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">ALERT</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<section class="phpdocumentor-description"><p>action must be taken immediately</p>
</section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_CRIT">
CRIT()
<a href="classes/LDC-LDCCRM-Enums-LogLevel.html#method_CRIT" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/LogLevel.php"><a href="files/src-enums-loglevel.html"><abbr title="src/Enums/LogLevel.php">LogLevel.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">CRIT</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<section class="phpdocumentor-description"><p>critical conditions</p>
</section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_DEBUG">
DEBUG()
<a href="classes/LDC-LDCCRM-Enums-LogLevel.html#method_DEBUG" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/LogLevel.php"><a href="files/src-enums-loglevel.html"><abbr title="src/Enums/LogLevel.php">LogLevel.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">DEBUG</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<section class="phpdocumentor-description"><p>debug-level message</p>
</section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_EMERG">
EMERG()
<a href="classes/LDC-LDCCRM-Enums-LogLevel.html#method_EMERG" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/LogLevel.php"><a href="files/src-enums-loglevel.html"><abbr title="src/Enums/LogLevel.php">LogLevel.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">EMERG</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<section class="phpdocumentor-description"><p>system is unusable</p>
</section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_ERR">
ERR()
<a href="classes/LDC-LDCCRM-Enums-LogLevel.html#method_ERR" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/LogLevel.php"><a href="files/src-enums-loglevel.html"><abbr title="src/Enums/LogLevel.php">LogLevel.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">ERR</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<section class="phpdocumentor-description"><p>critical conditions</p>
</section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_INFO">
INFO()
<a href="classes/LDC-LDCCRM-Enums-LogLevel.html#method_INFO" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/LogLevel.php"><a href="files/src-enums-loglevel.html"><abbr title="src/Enums/LogLevel.php">LogLevel.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">INFO</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<section class="phpdocumentor-description"><p>informational message</p>
</section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_NOTICE">
NOTICE()
<a href="classes/LDC-LDCCRM-Enums-LogLevel.html#method_NOTICE" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/LogLevel.php"><a href="files/src-enums-loglevel.html"><abbr title="src/Enums/LogLevel.php">LogLevel.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">NOTICE</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<section class="phpdocumentor-description"><p>normal, but significant, condition</p>
</section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_WARNING">
WARNING()
<a href="classes/LDC-LDCCRM-Enums-LogLevel.html#method_WARNING" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/LogLevel.php"><a href="files/src-enums-loglevel.html"><abbr title="src/Enums/LogLevel.php">LogLevel.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">WARNING</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<section class="phpdocumentor-description"><p>critical conditions</p>
</section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-protected
-static "
>
<h4 class="phpdocumentor-element__name" id="method_values">
values()
<a href="classes/LDC-LDCCRM-Enums-LogLevel.html#method_values" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/LogLevel.php"><a href="files/src-enums-loglevel.html"><abbr title="src/Enums/LogLevel.php">LogLevel.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">27</span>
</aside>
<p class="phpdocumentor-summary">Valeurs des possibilités de cet énumération (value)</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">protected</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">values</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">array&lt;string|int, mixed&gt;</span></code>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">array&lt;string|int, mixed&gt;</span>
&mdash;
</article>
</section>
<script type="text/javascript">
function loadExternalCodeSnippets(line) {
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach((pre) => {
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
var language = 'php';
var code = document.createElement('code');
code.className = 'language-' + language;
pre.textContent = '';
pre.setAttribute('data-line', line)
code.textContent = 'Loading…';
pre.appendChild(code);
var xhr = new XMLHttpRequest();
xhr.open('GET', src, true);
xhr.onreadystatechange = function () {
if (xhr.readyState == 4) {
if (xhr.status < 400 && xhr.responseText) {
code.textContent = xhr.responseText;
Prism.highlightElement(code);
}
else if (xhr.status >= 400) {
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
}
else {
code.textContent = '✖ Error: File does not exist, is empty or trying to view from localhost';
}
}
};
xhr.send(null);
});
}
var modals = document.querySelectorAll("[data-modal]");
modals.forEach(function (trigger) {
trigger.addEventListener("click", function (event) {
//event.preventDefault();
const modal = document.getElementById(trigger.dataset.modal);
modal.classList.add("phpdocumentor-modal__open");
loadExternalCodeSnippets(trigger.dataset.line)
const exits = modal.querySelectorAll("[data-exit-button]");
exits.forEach(function (exit) {
exit.addEventListener("click", function (event) {
event.preventDefault();
modal.classList.remove("phpdocumentor-modal__open");
});
});
});
});
</script>
</article>
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
<section class="phpdocumentor-search-results__dialog">
<header class="phpdocumentor-search-results__header">
<h2 class="phpdocumentor-search-results__title">Search results</h2>
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
</header>
<section class="phpdocumentor-search-results__body">
<ul class="phpdocumentor-search-results__entries"></ul>
</section>
</section>
</section>
</div>
</div>
<a href="classes/LDC-LDCCRM-Enums-LogLevel.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main>
<script>
cssVars({});
</script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
</body>
</html>

View file

@ -0,0 +1,436 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>CRM V2</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<base href="../">
<link rel="icon" href="images/favicon.ico"/>
<link rel="stylesheet" href="css/normalize.css">
<link rel="stylesheet" href="css/base.css">
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="css/template.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
<script src="js/search.js"></script>
<script defer src="js/searchIndex.js"></script>
</head>
<body id="top">
<header class="phpdocumentor-header phpdocumentor-section">
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">CRM V2</a></h1>
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
<label class="phpdocumentor-header__menu-icon" for="menu-button">
<i class="fas fa-bars"></i>
</label>
<section data-search-form class="phpdocumentor-search">
<label>
<span class="visually-hidden">Search for</span>
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
</svg>
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
</label>
</section>
<nav class="phpdocumentor-topnav">
<ul class="phpdocumentor-topnav__menu">
</ul>
</nav>
</header>
<main class="phpdocumentor">
<div class="phpdocumentor-section">
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
Menu
</label>
<aside class="phpdocumentor-column -four phpdocumentor-sidebar">
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="namespaces/ldc.html">LDC</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/ldc-ldccrm.html">LDCCRM</a>
</li>
</ul>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="packages/LDCCrmClient-enums.html">enums</a>
</li>
<li>
<a href="packages/LDCCrmClient-exceptions.html">exceptions</a>
</li>
<li>
<a href="packages/LDCCrmClient-models.html">models</a>
</li>
<li>
<a href="packages/LDCCrmClient-transport.html">transport</a>
</li>
<li>
<a href="packages/LDCCrmClient-utilities.html">utilities</a>
</li>
<li>
<a href="packages/LDCCrmClient-Wordpress.html">Wordpress</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/None.html">None</a></h4>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
</section>
</aside>
<div class="phpdocumentor-column -eight phpdocumentor-content">
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc.html">LDC</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm.html">LDCCRM</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm-enums.html">Enums</a></li>
</ul>
<article class="phpdocumentor-element -class">
<h2 class="phpdocumentor-content__title">
QuestionType
<span class="phpdocumentor-element__extends">
extends <abbr title="\Kwaadpepper\Enum\BaseEnum">BaseEnum</abbr>
</span>
<div class="phpdocumentor-element__package">
in package
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></li>
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient-enums.html">enums</a></li>
</ul>
</div>
</h2>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/QuestionType.php"><a href="files/src-enums-questiontype.html"><abbr title="src/Enums/QuestionType.php">QuestionType.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">15</span>
</aside>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">subpackage</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>enums</p>
</section>
</dd>
</dl>
<h3 id="toc">
Table of Contents
<a href="#toc" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-QuestionType.html#method_checkbox">checkbox()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-QuestionType.html#method_radio">radio()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-QuestionType.html#method_select">select()</a>
<span>
&nbsp;: <a href=""><abbr title=""></abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Enums-QuestionType.html#method_values">values()</a>
<span>
&nbsp;: array&lt;string|int, mixed&gt; </span>
</dt>
<dd>Valeurs des possibilités de cet énumération (value)</dd>
</dl>
<section class="phpdocumentor-methods">
<h3 class="phpdocumentor-elements__header" id="methods">
Methods
<a href="classes/LDC-LDCCRM-Enums-QuestionType.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_checkbox">
checkbox()
<a href="classes/LDC-LDCCRM-Enums-QuestionType.html#method_checkbox" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/QuestionType.php"><a href="files/src-enums-questiontype.html"><abbr title="src/Enums/QuestionType.php">QuestionType.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">checkbox</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_radio">
radio()
<a href="classes/LDC-LDCCRM-Enums-QuestionType.html#method_radio" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/QuestionType.php"><a href="files/src-enums-questiontype.html"><abbr title="src/Enums/QuestionType.php">QuestionType.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">radio</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_select">
select()
<a href="classes/LDC-LDCCRM-Enums-QuestionType.html#method_select" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/QuestionType.php"><a href="files/src-enums-questiontype.html"><abbr title="src/Enums/QuestionType.php">QuestionType.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">select</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span></code>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href=""><abbr title=""></abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_values">
values()
<a href="classes/LDC-LDCCRM-Enums-QuestionType.html#method_values" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Enums/QuestionType.php"><a href="files/src-enums-questiontype.html"><abbr title="src/Enums/QuestionType.php">QuestionType.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">22</span>
</aside>
<p class="phpdocumentor-summary">Valeurs des possibilités de cet énumération (value)</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">values</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">array&lt;string|int, mixed&gt;</span></code>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">array&lt;string|int, mixed&gt;</span>
&mdash;
</article>
</section>
<script type="text/javascript">
function loadExternalCodeSnippets(line) {
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach((pre) => {
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
var language = 'php';
var code = document.createElement('code');
code.className = 'language-' + language;
pre.textContent = '';
pre.setAttribute('data-line', line)
code.textContent = 'Loading…';
pre.appendChild(code);
var xhr = new XMLHttpRequest();
xhr.open('GET', src, true);
xhr.onreadystatechange = function () {
if (xhr.readyState == 4) {
if (xhr.status < 400 && xhr.responseText) {
code.textContent = xhr.responseText;
Prism.highlightElement(code);
}
else if (xhr.status >= 400) {
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
}
else {
code.textContent = '✖ Error: File does not exist, is empty or trying to view from localhost';
}
}
};
xhr.send(null);
});
}
var modals = document.querySelectorAll("[data-modal]");
modals.forEach(function (trigger) {
trigger.addEventListener("click", function (event) {
//event.preventDefault();
const modal = document.getElementById(trigger.dataset.modal);
modal.classList.add("phpdocumentor-modal__open");
loadExternalCodeSnippets(trigger.dataset.line)
const exits = modal.querySelectorAll("[data-exit-button]");
exits.forEach(function (exit) {
exit.addEventListener("click", function (event) {
event.preventDefault();
modal.classList.remove("phpdocumentor-modal__open");
});
});
});
});
</script>
</article>
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
<section class="phpdocumentor-search-results__dialog">
<header class="phpdocumentor-search-results__header">
<h2 class="phpdocumentor-search-results__title">Search results</h2>
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
</header>
<section class="phpdocumentor-search-results__body">
<ul class="phpdocumentor-search-results__entries"></ul>
</section>
</section>
</section>
</div>
</div>
<a href="classes/LDC-LDCCRM-Enums-QuestionType.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main>
<script>
cssVars({});
</script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
</body>
</html>

View file

@ -0,0 +1,341 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>CRM V2</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<base href="../">
<link rel="icon" href="images/favicon.ico"/>
<link rel="stylesheet" href="css/normalize.css">
<link rel="stylesheet" href="css/base.css">
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="css/template.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
<script src="js/search.js"></script>
<script defer src="js/searchIndex.js"></script>
</head>
<body id="top">
<header class="phpdocumentor-header phpdocumentor-section">
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">CRM V2</a></h1>
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
<label class="phpdocumentor-header__menu-icon" for="menu-button">
<i class="fas fa-bars"></i>
</label>
<section data-search-form class="phpdocumentor-search">
<label>
<span class="visually-hidden">Search for</span>
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
</svg>
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
</label>
</section>
<nav class="phpdocumentor-topnav">
<ul class="phpdocumentor-topnav__menu">
</ul>
</nav>
</header>
<main class="phpdocumentor">
<div class="phpdocumentor-section">
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
Menu
</label>
<aside class="phpdocumentor-column -four phpdocumentor-sidebar">
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="namespaces/ldc.html">LDC</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/ldc-ldccrm.html">LDCCRM</a>
</li>
</ul>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="packages/LDCCrmClient-enums.html">enums</a>
</li>
<li>
<a href="packages/LDCCrmClient-exceptions.html">exceptions</a>
</li>
<li>
<a href="packages/LDCCrmClient-models.html">models</a>
</li>
<li>
<a href="packages/LDCCrmClient-transport.html">transport</a>
</li>
<li>
<a href="packages/LDCCrmClient-utilities.html">utilities</a>
</li>
<li>
<a href="packages/LDCCrmClient-Wordpress.html">Wordpress</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/None.html">None</a></h4>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
</section>
</aside>
<div class="phpdocumentor-column -eight phpdocumentor-content">
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc.html">LDC</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm.html">LDCCRM</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm-exceptions.html">Exceptions</a></li>
</ul>
<article class="phpdocumentor-element -class">
<h2 class="phpdocumentor-content__title">
AccessError
<span class="phpdocumentor-element__extends">
extends <abbr title="\Error">Error</abbr>
</span>
<div class="phpdocumentor-element__package">
in package
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></li>
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient-exceptions.html">exceptions</a></li>
</ul>
</div>
</h2>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Exceptions/AccessError.php"><a href="files/src-exceptions-accesserror.html"><abbr title="src/Exceptions/AccessError.php">AccessError.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">13</span>
</aside>
<p class="phpdocumentor-summary">This is thrown when trying to set a value on an object property that does not exist.</p>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">subpackage</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>exceptions</p>
</section>
</dd>
</dl>
<h3 id="toc">
Table of Contents
<a href="#toc" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Exceptions-AccessError.html#method___construct">__construct()</a>
<span>
&nbsp;: mixed </span>
</dt>
<dd>AccessError</dd>
</dl>
<section class="phpdocumentor-methods">
<h3 class="phpdocumentor-elements__header" id="methods">
Methods
<a href="classes/LDC-LDCCRM-Exceptions-AccessError.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="phpdocumentor-element
-method
-public
"
>
<h4 class="phpdocumentor-element__name" id="method___construct">
__construct()
<a href="classes/LDC-LDCCRM-Exceptions-AccessError.html#method___construct" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Exceptions/AccessError.php"><a href="files/src-exceptions-accesserror.html"><abbr title="src/Exceptions/AccessError.php">AccessError.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">21</span>
</aside>
<p class="phpdocumentor-summary">AccessError</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__name">__construct</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$objectName</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$propertyName</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$objectName</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>The object name where the property does not exist.</p>
</section>
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$propertyName</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>The property name that does not exist.</p>
</section>
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">mixed</span>
&mdash;
</article>
</section>
<script type="text/javascript">
function loadExternalCodeSnippets(line) {
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach((pre) => {
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
var language = 'php';
var code = document.createElement('code');
code.className = 'language-' + language;
pre.textContent = '';
pre.setAttribute('data-line', line)
code.textContent = 'Loading…';
pre.appendChild(code);
var xhr = new XMLHttpRequest();
xhr.open('GET', src, true);
xhr.onreadystatechange = function () {
if (xhr.readyState == 4) {
if (xhr.status < 400 && xhr.responseText) {
code.textContent = xhr.responseText;
Prism.highlightElement(code);
}
else if (xhr.status >= 400) {
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
}
else {
code.textContent = '✖ Error: File does not exist, is empty or trying to view from localhost';
}
}
};
xhr.send(null);
});
}
var modals = document.querySelectorAll("[data-modal]");
modals.forEach(function (trigger) {
trigger.addEventListener("click", function (event) {
//event.preventDefault();
const modal = document.getElementById(trigger.dataset.modal);
modal.classList.add("phpdocumentor-modal__open");
loadExternalCodeSnippets(trigger.dataset.line)
const exits = modal.querySelectorAll("[data-exit-button]");
exits.forEach(function (exit) {
exit.addEventListener("click", function (event) {
event.preventDefault();
modal.classList.remove("phpdocumentor-modal__open");
});
});
});
});
</script>
</article>
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
<section class="phpdocumentor-search-results__dialog">
<header class="phpdocumentor-search-results__header">
<h2 class="phpdocumentor-search-results__title">Search results</h2>
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
</header>
<section class="phpdocumentor-search-results__body">
<ul class="phpdocumentor-search-results__entries"></ul>
</section>
</section>
</section>
</div>
</div>
<a href="classes/LDC-LDCCRM-Exceptions-AccessError.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main>
<script>
cssVars({});
</script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
</body>
</html>

View file

@ -0,0 +1,630 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>CRM V2</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<base href="../">
<link rel="icon" href="images/favicon.ico"/>
<link rel="stylesheet" href="css/normalize.css">
<link rel="stylesheet" href="css/base.css">
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="css/template.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
<script src="js/search.js"></script>
<script defer src="js/searchIndex.js"></script>
</head>
<body id="top">
<header class="phpdocumentor-header phpdocumentor-section">
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">CRM V2</a></h1>
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
<label class="phpdocumentor-header__menu-icon" for="menu-button">
<i class="fas fa-bars"></i>
</label>
<section data-search-form class="phpdocumentor-search">
<label>
<span class="visually-hidden">Search for</span>
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
</svg>
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
</label>
</section>
<nav class="phpdocumentor-topnav">
<ul class="phpdocumentor-topnav__menu">
</ul>
</nav>
</header>
<main class="phpdocumentor">
<div class="phpdocumentor-section">
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
Menu
</label>
<aside class="phpdocumentor-column -four phpdocumentor-sidebar">
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="namespaces/ldc.html">LDC</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/ldc-ldccrm.html">LDCCRM</a>
</li>
</ul>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="packages/LDCCrmClient-enums.html">enums</a>
</li>
<li>
<a href="packages/LDCCrmClient-exceptions.html">exceptions</a>
</li>
<li>
<a href="packages/LDCCrmClient-models.html">models</a>
</li>
<li>
<a href="packages/LDCCrmClient-transport.html">transport</a>
</li>
<li>
<a href="packages/LDCCrmClient-utilities.html">utilities</a>
</li>
<li>
<a href="packages/LDCCrmClient-Wordpress.html">Wordpress</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/None.html">None</a></h4>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
</section>
</aside>
<div class="phpdocumentor-column -eight phpdocumentor-content">
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc.html">LDC</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm.html">LDCCRM</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm-exceptions.html">Exceptions</a></li>
</ul>
<article class="phpdocumentor-element -class">
<h2 class="phpdocumentor-content__title">
ApiErrorException
<span class="phpdocumentor-element__extends">
extends <abbr title="\Exception">Exception</abbr>
</span>
<div class="phpdocumentor-element__package">
in package
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></li>
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient-exceptions.html">exceptions</a></li>
</ul>
</div>
</h2>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Exceptions/ApiErrorException.php"><a href="files/src-exceptions-apierrorexception.html"><abbr title="src/Exceptions/ApiErrorException.php">ApiErrorException.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">22</span>
</aside>
<p class="phpdocumentor-summary">This would be thrown if any of the case
referenced in \LDC\LDCCRM\Enums\ApiError would
occur within the crm</p>
<section class="phpdocumentor-description"><p>On the client an ApiErrorException would
also be throw with the ApiError corresponding to
the situation</p>
</section>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">subpackage</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>exceptions</p>
</section>
</dd>
</dl>
<h3 id="toc">
Table of Contents
<a href="#toc" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -property -protected">
<a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html#property_error">$error</a>
<span>
&nbsp;: <a href="classes/LDC-LDCCRM-Enums-ApiError.html"><abbr title="\LDC\LDCCRM\Enums\ApiError">ApiError</abbr></a> </span>
</dt>
<dd>Api Error
This value makes the error more explicit.</dd>
<dt class="phpdocumentor-table-of-contents__entry -property -protected">
<a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html#property_httpCode">$httpCode</a>
<span>
&nbsp;: int </span>
</dt>
<dd>This is the http code returned by the crm.</dd>
<dt class="phpdocumentor-table-of-contents__entry -property -protected">
<a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html#property_message">$message</a>
<span>
&nbsp;: string </span>
</dt>
<dd>This is an explicit error message,
ou may print this to the front or not depending
on $error value</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html#method___construct">__construct()</a>
<span>
&nbsp;: mixed </span>
</dt>
<dd>Create a new exception base on ApiError enum.</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html#method_getApiError">getApiError()</a>
<span>
&nbsp;: <a href="classes/LDC-LDCCRM-Enums-ApiError.html"><abbr title="\LDC\LDCCRM\Enums\ApiError">ApiError</abbr></a> </span>
</dt>
<dd>Get the Api Error</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html#method_getStatusCode">getStatusCode()</a>
<span>
&nbsp;: int </span>
</dt>
<dd>Get the http code</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html#method_report">report()</a>
<span>
&nbsp;: void </span>
</dt>
<dd>This is used by laravel only.</dd>
</dl>
<section class="phpdocumentor-properties">
<h3 class="phpdocumentor-elements__header" id="properties">
Properties
<a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html#properties" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="
phpdocumentor-element
-property
-protected
"
>
<h4 class="phpdocumentor-element__name" id="property_error">
$error
<a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html#property_error" class="headerlink"><i class="fas fa-link"></i></a>
<span class="phpdocumentor-element__modifiers">
</span>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Exceptions/ApiErrorException.php"><a href="files/src-exceptions-apierrorexception.html"><abbr title="src/Exceptions/ApiErrorException.php">ApiErrorException.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">32</span>
</aside>
<p class="phpdocumentor-summary">Api Error
This value makes the error more explicit.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">protected</span>
<span class="phpdocumentor-signature__type"><a href="classes/LDC-LDCCRM-Enums-ApiError.html"><abbr title="\LDC\LDCCRM\Enums\ApiError">ApiError</abbr></a></span>
<span class="phpdocumentor-signature__name">$error</span>
</code>
<section class="phpdocumentor-description"><p>Handling these errors are normal as inputs or
request may be undesired or refused by the crm.</p>
</section>
</article>
<article
class="
phpdocumentor-element
-property
-protected
"
>
<h4 class="phpdocumentor-element__name" id="property_httpCode">
$httpCode
<a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html#property_httpCode" class="headerlink"><i class="fas fa-link"></i></a>
<span class="phpdocumentor-element__modifiers">
</span>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Exceptions/ApiErrorException.php"><a href="files/src-exceptions-apierrorexception.html"><abbr title="src/Exceptions/ApiErrorException.php">ApiErrorException.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">50</span>
</aside>
<p class="phpdocumentor-summary">This is the http code returned by the crm.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">protected</span>
<span class="phpdocumentor-signature__type">int</span>
<span class="phpdocumentor-signature__name">$httpCode</span>
</code>
<section class="phpdocumentor-description"><p>This value could be used to handle errors.
But please take in consideration $error first</p>
</section>
</article>
<article
class="
phpdocumentor-element
-property
-protected
"
>
<h4 class="phpdocumentor-element__name" id="property_message">
$message
<a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html#property_message" class="headerlink"><i class="fas fa-link"></i></a>
<span class="phpdocumentor-element__modifiers">
</span>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Exceptions/ApiErrorException.php"><a href="files/src-exceptions-apierrorexception.html"><abbr title="src/Exceptions/ApiErrorException.php">ApiErrorException.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">41</span>
</aside>
<p class="phpdocumentor-summary">This is an explicit error message,
ou may print this to the front or not depending
on $error value</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">protected</span>
<span class="phpdocumentor-signature__type">string</span>
<span class="phpdocumentor-signature__name">$message</span>
</code>
</article>
</section>
<section class="phpdocumentor-methods">
<h3 class="phpdocumentor-elements__header" id="methods">
Methods
<a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="phpdocumentor-element
-method
-public
"
>
<h4 class="phpdocumentor-element__name" id="method___construct">
__construct()
<a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html#method___construct" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Exceptions/ApiErrorException.php"><a href="files/src-exceptions-apierrorexception.html"><abbr title="src/Exceptions/ApiErrorException.php">ApiErrorException.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">60</span>
</aside>
<p class="phpdocumentor-summary">Create a new exception base on ApiError enum.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__name">__construct</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type"><a href="classes/LDC-LDCCRM-Enums-ApiError.html"><abbr title="\LDC\LDCCRM\Enums\ApiError">ApiError</abbr></a>&nbsp;</span><span class="phpdocumentor-signature__argument__name">$error</span></span><span class="phpdocumentor-signature__argument"><span>[</span><span>, </span><span class="phpdocumentor-signature__argument__return-type">int&nbsp;</span><span class="phpdocumentor-signature__argument__name">$httpCode</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">400</span><span> ]</span></span><span class="phpdocumentor-signature__argument"><span>[</span><span>, </span><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$message</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">&#039;&#039;</span><span> ]</span></span><span class="phpdocumentor-signature__argument"><span>[</span><span>, </span><span class="phpdocumentor-signature__argument__return-type"><abbr title="\Throwable">Throwable</abbr>|null&nbsp;</span><span class="phpdocumentor-signature__argument__name">$previous</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">null</span><span> ]</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$error</span>
: <span class="phpdocumentor-signature__argument__return-type"><a href="classes/LDC-LDCCRM-Enums-ApiError.html"><abbr title="\LDC\LDCCRM\Enums\ApiError">ApiError</abbr></a></span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$httpCode</span>
: <span class="phpdocumentor-signature__argument__return-type">int</span>
= <span class="phpdocumentor-signature__argument__default-value">400</span> </dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$message</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
= <span class="phpdocumentor-signature__argument__default-value">&#039;&#039;</span> </dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$previous</span>
: <span class="phpdocumentor-signature__argument__return-type"><abbr title="\Throwable">Throwable</abbr>|null</span>
= <span class="phpdocumentor-signature__argument__default-value">null</span> </dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">mixed</span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
"
>
<h4 class="phpdocumentor-element__name" id="method_getApiError">
getApiError()
<a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html#method_getApiError" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Exceptions/ApiErrorException.php"><a href="files/src-exceptions-apierrorexception.html"><abbr title="src/Exceptions/ApiErrorException.php">ApiErrorException.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">77</span>
</aside>
<p class="phpdocumentor-summary">Get the Api Error</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__name">getApiError</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type"><a href="classes/LDC-LDCCRM-Enums-ApiError.html"><abbr title="\LDC\LDCCRM\Enums\ApiError">ApiError</abbr></a></span></code>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type"><a href="classes/LDC-LDCCRM-Enums-ApiError.html"><abbr title="\LDC\LDCCRM\Enums\ApiError">ApiError</abbr></a></span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
"
>
<h4 class="phpdocumentor-element__name" id="method_getStatusCode">
getStatusCode()
<a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html#method_getStatusCode" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Exceptions/ApiErrorException.php"><a href="files/src-exceptions-apierrorexception.html"><abbr title="src/Exceptions/ApiErrorException.php">ApiErrorException.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">87</span>
</aside>
<p class="phpdocumentor-summary">Get the http code</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__name">getStatusCode</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">int</span></code>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">int</span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
"
>
<h4 class="phpdocumentor-element__name" id="method_report">
report()
<a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html#method_report" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Exceptions/ApiErrorException.php"><a href="files/src-exceptions-apierrorexception.html"><abbr title="src/Exceptions/ApiErrorException.php">ApiErrorException.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">99</span>
</aside>
<p class="phpdocumentor-summary">This is used by laravel only.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__name">report</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">void</span></code>
<section class="phpdocumentor-description"><p>It uses Log class to print the error.</p>
</section>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">codeCoverageIgnore</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">void</span>
&mdash;
</article>
</section>
<script type="text/javascript">
function loadExternalCodeSnippets(line) {
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach((pre) => {
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
var language = 'php';
var code = document.createElement('code');
code.className = 'language-' + language;
pre.textContent = '';
pre.setAttribute('data-line', line)
code.textContent = 'Loading…';
pre.appendChild(code);
var xhr = new XMLHttpRequest();
xhr.open('GET', src, true);
xhr.onreadystatechange = function () {
if (xhr.readyState == 4) {
if (xhr.status < 400 && xhr.responseText) {
code.textContent = xhr.responseText;
Prism.highlightElement(code);
}
else if (xhr.status >= 400) {
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
}
else {
code.textContent = '✖ Error: File does not exist, is empty or trying to view from localhost';
}
}
};
xhr.send(null);
});
}
var modals = document.querySelectorAll("[data-modal]");
modals.forEach(function (trigger) {
trigger.addEventListener("click", function (event) {
//event.preventDefault();
const modal = document.getElementById(trigger.dataset.modal);
modal.classList.add("phpdocumentor-modal__open");
loadExternalCodeSnippets(trigger.dataset.line)
const exits = modal.querySelectorAll("[data-exit-button]");
exits.forEach(function (exit) {
exit.addEventListener("click", function (event) {
event.preventDefault();
modal.classList.remove("phpdocumentor-modal__open");
});
});
});
});
</script>
</article>
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
<section class="phpdocumentor-search-results__dialog">
<header class="phpdocumentor-search-results__header">
<h2 class="phpdocumentor-search-results__title">Search results</h2>
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
</header>
<section class="phpdocumentor-search-results__body">
<ul class="phpdocumentor-search-results__entries"></ul>
</section>
</section>
</section>
</div>
</div>
<a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main>
<script>
cssVars({});
</script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
</body>
</html>

View file

@ -0,0 +1,332 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>CRM V2</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<base href="../">
<link rel="icon" href="images/favicon.ico"/>
<link rel="stylesheet" href="css/normalize.css">
<link rel="stylesheet" href="css/base.css">
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="css/template.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
<script src="js/search.js"></script>
<script defer src="js/searchIndex.js"></script>
</head>
<body id="top">
<header class="phpdocumentor-header phpdocumentor-section">
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">CRM V2</a></h1>
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
<label class="phpdocumentor-header__menu-icon" for="menu-button">
<i class="fas fa-bars"></i>
</label>
<section data-search-form class="phpdocumentor-search">
<label>
<span class="visually-hidden">Search for</span>
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
</svg>
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
</label>
</section>
<nav class="phpdocumentor-topnav">
<ul class="phpdocumentor-topnav__menu">
</ul>
</nav>
</header>
<main class="phpdocumentor">
<div class="phpdocumentor-section">
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
Menu
</label>
<aside class="phpdocumentor-column -four phpdocumentor-sidebar">
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="namespaces/ldc.html">LDC</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/ldc-ldccrm.html">LDCCRM</a>
</li>
</ul>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="packages/LDCCrmClient-enums.html">enums</a>
</li>
<li>
<a href="packages/LDCCrmClient-exceptions.html">exceptions</a>
</li>
<li>
<a href="packages/LDCCrmClient-models.html">models</a>
</li>
<li>
<a href="packages/LDCCrmClient-transport.html">transport</a>
</li>
<li>
<a href="packages/LDCCrmClient-utilities.html">utilities</a>
</li>
<li>
<a href="packages/LDCCrmClient-Wordpress.html">Wordpress</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/None.html">None</a></h4>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
</section>
</aside>
<div class="phpdocumentor-column -eight phpdocumentor-content">
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc.html">LDC</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm.html">LDCCRM</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm-exceptions.html">Exceptions</a></li>
</ul>
<article class="phpdocumentor-element -class">
<h2 class="phpdocumentor-content__title">
CrmException
<span class="phpdocumentor-element__extends">
extends <abbr title="\Exception">Exception</abbr>
</span>
<div class="phpdocumentor-element__package">
in package
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></li>
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient-exceptions.html">exceptions</a></li>
</ul>
</div>
</h2>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Exceptions/CrmException.php"><a href="files/src-exceptions-crmexception.html"><abbr title="src/Exceptions/CrmException.php">CrmException.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">17</span>
</aside>
<p class="phpdocumentor-summary">This is a critical error.</p>
<section class="phpdocumentor-description"><p>The request could not be handled. You may dump any value you can
get before submitting a ticker to https://supportweb.ldc.fr</p>
</section>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">subpackage</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>exceptions</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">codeCoverageIgnore</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
</dd>
</dl>
<h3 id="toc">
Table of Contents
<a href="#toc" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Exceptions-CrmException.html#method_report">report()</a>
<span>
&nbsp;: void </span>
</dt>
<dd>This is used by laravel only.</dd>
</dl>
<section class="phpdocumentor-methods">
<h3 class="phpdocumentor-elements__header" id="methods">
Methods
<a href="classes/LDC-LDCCRM-Exceptions-CrmException.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="phpdocumentor-element
-method
-public
"
>
<h4 class="phpdocumentor-element__name" id="method_report">
report()
<a href="classes/LDC-LDCCRM-Exceptions-CrmException.html#method_report" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Exceptions/CrmException.php"><a href="files/src-exceptions-crmexception.html"><abbr title="src/Exceptions/CrmException.php">CrmException.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">25</span>
</aside>
<p class="phpdocumentor-summary">This is used by laravel only.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__name">report</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">void</span></code>
<section class="phpdocumentor-description"><p>It uses Log class to print the error.</p>
</section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">void</span>
&mdash;
</article>
</section>
<script type="text/javascript">
function loadExternalCodeSnippets(line) {
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach((pre) => {
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
var language = 'php';
var code = document.createElement('code');
code.className = 'language-' + language;
pre.textContent = '';
pre.setAttribute('data-line', line)
code.textContent = 'Loading…';
pre.appendChild(code);
var xhr = new XMLHttpRequest();
xhr.open('GET', src, true);
xhr.onreadystatechange = function () {
if (xhr.readyState == 4) {
if (xhr.status < 400 && xhr.responseText) {
code.textContent = xhr.responseText;
Prism.highlightElement(code);
}
else if (xhr.status >= 400) {
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
}
else {
code.textContent = '✖ Error: File does not exist, is empty or trying to view from localhost';
}
}
};
xhr.send(null);
});
}
var modals = document.querySelectorAll("[data-modal]");
modals.forEach(function (trigger) {
trigger.addEventListener("click", function (event) {
//event.preventDefault();
const modal = document.getElementById(trigger.dataset.modal);
modal.classList.add("phpdocumentor-modal__open");
loadExternalCodeSnippets(trigger.dataset.line)
const exits = modal.querySelectorAll("[data-exit-button]");
exits.forEach(function (exit) {
exit.addEventListener("click", function (event) {
event.preventDefault();
modal.classList.remove("phpdocumentor-modal__open");
});
});
});
});
</script>
</article>
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
<section class="phpdocumentor-search-results__dialog">
<header class="phpdocumentor-search-results__header">
<h2 class="phpdocumentor-search-results__title">Search results</h2>
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
</header>
<section class="phpdocumentor-search-results__body">
<ul class="phpdocumentor-search-results__entries"></ul>
</section>
</section>
</section>
</div>
</div>
<a href="classes/LDC-LDCCRM-Exceptions-CrmException.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main>
<script>
cssVars({});
</script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
</body>
</html>

View file

@ -0,0 +1,267 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>CRM V2</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<base href="../">
<link rel="icon" href="images/favicon.ico"/>
<link rel="stylesheet" href="css/normalize.css">
<link rel="stylesheet" href="css/base.css">
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="css/template.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
<script src="js/search.js"></script>
<script defer src="js/searchIndex.js"></script>
</head>
<body id="top">
<header class="phpdocumentor-header phpdocumentor-section">
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">CRM V2</a></h1>
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
<label class="phpdocumentor-header__menu-icon" for="menu-button">
<i class="fas fa-bars"></i>
</label>
<section data-search-form class="phpdocumentor-search">
<label>
<span class="visually-hidden">Search for</span>
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
</svg>
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
</label>
</section>
<nav class="phpdocumentor-topnav">
<ul class="phpdocumentor-topnav__menu">
</ul>
</nav>
</header>
<main class="phpdocumentor">
<div class="phpdocumentor-section">
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
Menu
</label>
<aside class="phpdocumentor-column -four phpdocumentor-sidebar">
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="namespaces/ldc.html">LDC</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/ldc-ldccrm.html">LDCCRM</a>
</li>
</ul>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="packages/LDCCrmClient-enums.html">enums</a>
</li>
<li>
<a href="packages/LDCCrmClient-exceptions.html">exceptions</a>
</li>
<li>
<a href="packages/LDCCrmClient-models.html">models</a>
</li>
<li>
<a href="packages/LDCCrmClient-transport.html">transport</a>
</li>
<li>
<a href="packages/LDCCrmClient-utilities.html">utilities</a>
</li>
<li>
<a href="packages/LDCCrmClient-Wordpress.html">Wordpress</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/None.html">None</a></h4>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
</section>
</aside>
<div class="phpdocumentor-column -eight phpdocumentor-content">
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc.html">LDC</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm.html">LDCCRM</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm-exceptions.html">Exceptions</a></li>
</ul>
<article class="phpdocumentor-element -class">
<h2 class="phpdocumentor-content__title">
SkipValidationException
<span class="phpdocumentor-element__extends">
extends <abbr title="\Exception">Exception</abbr>
</span>
<div class="phpdocumentor-element__package">
in package
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></li>
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient-exceptions.html">exceptions</a></li>
</ul>
</div>
</h2>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Exceptions/SkipValidationException.php"><a href="files/src-exceptions-skipvalidationexception.html"><abbr title="src/Exceptions/SkipValidationException.php">SkipValidationException.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">13</span>
</aside>
<p class="phpdocumentor-summary">Used only for internal validator</p>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">subpackage</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>exceptions</p>
</section>
</dd>
</dl>
<script type="text/javascript">
function loadExternalCodeSnippets(line) {
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach((pre) => {
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
var language = 'php';
var code = document.createElement('code');
code.className = 'language-' + language;
pre.textContent = '';
pre.setAttribute('data-line', line)
code.textContent = 'Loading…';
pre.appendChild(code);
var xhr = new XMLHttpRequest();
xhr.open('GET', src, true);
xhr.onreadystatechange = function () {
if (xhr.readyState == 4) {
if (xhr.status < 400 && xhr.responseText) {
code.textContent = xhr.responseText;
Prism.highlightElement(code);
}
else if (xhr.status >= 400) {
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
}
else {
code.textContent = '✖ Error: File does not exist, is empty or trying to view from localhost';
}
}
};
xhr.send(null);
});
}
var modals = document.querySelectorAll("[data-modal]");
modals.forEach(function (trigger) {
trigger.addEventListener("click", function (event) {
//event.preventDefault();
const modal = document.getElementById(trigger.dataset.modal);
modal.classList.add("phpdocumentor-modal__open");
loadExternalCodeSnippets(trigger.dataset.line)
const exits = modal.querySelectorAll("[data-exit-button]");
exits.forEach(function (exit) {
exit.addEventListener("click", function (event) {
event.preventDefault();
modal.classList.remove("phpdocumentor-modal__open");
});
});
});
});
</script>
</article>
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
<section class="phpdocumentor-search-results__dialog">
<header class="phpdocumentor-search-results__header">
<h2 class="phpdocumentor-search-results__title">Search results</h2>
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
</header>
<section class="phpdocumentor-search-results__body">
<ul class="phpdocumentor-search-results__entries"></ul>
</section>
</section>
</section>
</div>
</div>
<a href="classes/LDC-LDCCRM-Exceptions-SkipValidationException.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main>
<script>
cssVars({});
</script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
</body>
</html>

View file

@ -0,0 +1,330 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>CRM V2</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<base href="../">
<link rel="icon" href="images/favicon.ico"/>
<link rel="stylesheet" href="css/normalize.css">
<link rel="stylesheet" href="css/base.css">
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="css/template.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
<script src="js/search.js"></script>
<script defer src="js/searchIndex.js"></script>
</head>
<body id="top">
<header class="phpdocumentor-header phpdocumentor-section">
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">CRM V2</a></h1>
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
<label class="phpdocumentor-header__menu-icon" for="menu-button">
<i class="fas fa-bars"></i>
</label>
<section data-search-form class="phpdocumentor-search">
<label>
<span class="visually-hidden">Search for</span>
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
</svg>
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
</label>
</section>
<nav class="phpdocumentor-topnav">
<ul class="phpdocumentor-topnav__menu">
</ul>
</nav>
</header>
<main class="phpdocumentor">
<div class="phpdocumentor-section">
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
Menu
</label>
<aside class="phpdocumentor-column -four phpdocumentor-sidebar">
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="namespaces/ldc.html">LDC</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/ldc-ldccrm.html">LDCCRM</a>
</li>
</ul>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="packages/LDCCrmClient-enums.html">enums</a>
</li>
<li>
<a href="packages/LDCCrmClient-exceptions.html">exceptions</a>
</li>
<li>
<a href="packages/LDCCrmClient-models.html">models</a>
</li>
<li>
<a href="packages/LDCCrmClient-transport.html">transport</a>
</li>
<li>
<a href="packages/LDCCrmClient-utilities.html">utilities</a>
</li>
<li>
<a href="packages/LDCCrmClient-Wordpress.html">Wordpress</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/None.html">None</a></h4>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
</section>
</aside>
<div class="phpdocumentor-column -eight phpdocumentor-content">
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc.html">LDC</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm.html">LDCCRM</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm-exceptions.html">Exceptions</a></li>
</ul>
<article class="phpdocumentor-element -class">
<h2 class="phpdocumentor-content__title">
ValidationException
<span class="phpdocumentor-element__extends">
extends <abbr title="\Exception">Exception</abbr>
</span>
<div class="phpdocumentor-element__package">
in package
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></li>
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient-exceptions.html">exceptions</a></li>
</ul>
</div>
</h2>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Exceptions/ValidationException.php"><a href="files/src-exceptions-validationexception.html"><abbr title="src/Exceptions/ValidationException.php">ValidationException.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">16</span>
</aside>
<p class="phpdocumentor-summary">This would be thrown if a data could not be validated
on any models</p>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">subpackage</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>exceptions</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">codeCoverageIgnore</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
</dd>
</dl>
<h3 id="toc">
Table of Contents
<a href="#toc" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Exceptions-ValidationException.html#method_report">report()</a>
<span>
&nbsp;: void </span>
</dt>
<dd>This is used by laravel only.</dd>
</dl>
<section class="phpdocumentor-methods">
<h3 class="phpdocumentor-elements__header" id="methods">
Methods
<a href="classes/LDC-LDCCRM-Exceptions-ValidationException.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="phpdocumentor-element
-method
-public
"
>
<h4 class="phpdocumentor-element__name" id="method_report">
report()
<a href="classes/LDC-LDCCRM-Exceptions-ValidationException.html#method_report" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Exceptions/ValidationException.php"><a href="files/src-exceptions-validationexception.html"><abbr title="src/Exceptions/ValidationException.php">ValidationException.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">24</span>
</aside>
<p class="phpdocumentor-summary">This is used by laravel only.</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__name">report</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">void</span></code>
<section class="phpdocumentor-description"><p>It uses Log class to print the error.</p>
</section>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">void</span>
&mdash;
</article>
</section>
<script type="text/javascript">
function loadExternalCodeSnippets(line) {
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach((pre) => {
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
var language = 'php';
var code = document.createElement('code');
code.className = 'language-' + language;
pre.textContent = '';
pre.setAttribute('data-line', line)
code.textContent = 'Loading…';
pre.appendChild(code);
var xhr = new XMLHttpRequest();
xhr.open('GET', src, true);
xhr.onreadystatechange = function () {
if (xhr.readyState == 4) {
if (xhr.status < 400 && xhr.responseText) {
code.textContent = xhr.responseText;
Prism.highlightElement(code);
}
else if (xhr.status >= 400) {
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
}
else {
code.textContent = '✖ Error: File does not exist, is empty or trying to view from localhost';
}
}
};
xhr.send(null);
});
}
var modals = document.querySelectorAll("[data-modal]");
modals.forEach(function (trigger) {
trigger.addEventListener("click", function (event) {
//event.preventDefault();
const modal = document.getElementById(trigger.dataset.modal);
modal.classList.add("phpdocumentor-modal__open");
loadExternalCodeSnippets(trigger.dataset.line)
const exits = modal.querySelectorAll("[data-exit-button]");
exits.forEach(function (exit) {
exit.addEventListener("click", function (event) {
event.preventDefault();
modal.classList.remove("phpdocumentor-modal__open");
});
});
});
});
</script>
</article>
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
<section class="phpdocumentor-search-results__dialog">
<header class="phpdocumentor-search-results__header">
<h2 class="phpdocumentor-search-results__title">Search results</h2>
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
</header>
<section class="phpdocumentor-search-results__body">
<ul class="phpdocumentor-search-results__entries"></ul>
</section>
</section>
</section>
</div>
</div>
<a href="classes/LDC-LDCCRM-Exceptions-ValidationException.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main>
<script>
cssVars({});
</script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
</body>
</html>

View file

@ -0,0 +1,332 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>CRM V2</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<base href="../">
<link rel="icon" href="images/favicon.ico"/>
<link rel="stylesheet" href="css/normalize.css">
<link rel="stylesheet" href="css/base.css">
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="css/template.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
<script src="js/search.js"></script>
<script defer src="js/searchIndex.js"></script>
</head>
<body id="top">
<header class="phpdocumentor-header phpdocumentor-section">
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">CRM V2</a></h1>
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
<label class="phpdocumentor-header__menu-icon" for="menu-button">
<i class="fas fa-bars"></i>
</label>
<section data-search-form class="phpdocumentor-search">
<label>
<span class="visually-hidden">Search for</span>
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
</svg>
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
</label>
</section>
<nav class="phpdocumentor-topnav">
<ul class="phpdocumentor-topnav__menu">
</ul>
</nav>
</header>
<main class="phpdocumentor">
<div class="phpdocumentor-section">
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
Menu
</label>
<aside class="phpdocumentor-column -four phpdocumentor-sidebar">
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="namespaces/ldc.html">LDC</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/ldc-ldccrm.html">LDCCRM</a>
</li>
</ul>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="packages/LDCCrmClient-enums.html">enums</a>
</li>
<li>
<a href="packages/LDCCrmClient-exceptions.html">exceptions</a>
</li>
<li>
<a href="packages/LDCCrmClient-models.html">models</a>
</li>
<li>
<a href="packages/LDCCrmClient-transport.html">transport</a>
</li>
<li>
<a href="packages/LDCCrmClient-utilities.html">utilities</a>
</li>
<li>
<a href="packages/LDCCrmClient-Wordpress.html">Wordpress</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/None.html">None</a></h4>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
</section>
</aside>
<div class="phpdocumentor-column -eight phpdocumentor-content">
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc.html">LDC</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm.html">LDCCRM</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm-exceptions.html">Exceptions</a></li>
</ul>
<article class="phpdocumentor-element -class">
<h2 class="phpdocumentor-content__title">
WpCrmInvalidJsonUserInfo
<span class="phpdocumentor-element__extends">
extends <abbr title="\Error">Error</abbr>
</span>
<div class="phpdocumentor-element__package">
in package
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></li>
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient-exceptions.html">exceptions</a></li>
</ul>
</div>
</h2>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Exceptions/WpCrmInvalidJsonUserInfo.php"><a href="files/src-exceptions-wpcrminvalidjsonuserinfo.html"><abbr title="src/Exceptions/WpCrmInvalidJsonUserInfo.php">WpCrmInvalidJsonUserInfo.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">15</span>
</aside>
<p class="phpdocumentor-summary">This is thrown when trying to read WP customer from DB json data.</p>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">subpackage</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>exceptions</p>
</section>
</dd>
</dl>
<h3 id="toc">
Table of Contents
<a href="#toc" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Exceptions-WpCrmInvalidJsonUserInfo.html#method___construct">__construct()</a>
<span>
&nbsp;: mixed </span>
</dt>
<dd>WpCrmInvalidJsonUserInfo</dd>
</dl>
<section class="phpdocumentor-methods">
<h3 class="phpdocumentor-elements__header" id="methods">
Methods
<a href="classes/LDC-LDCCRM-Exceptions-WpCrmInvalidJsonUserInfo.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="phpdocumentor-element
-method
-public
"
>
<h4 class="phpdocumentor-element__name" id="method___construct">
__construct()
<a href="classes/LDC-LDCCRM-Exceptions-WpCrmInvalidJsonUserInfo.html#method___construct" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Exceptions/WpCrmInvalidJsonUserInfo.php"><a href="files/src-exceptions-wpcrminvalidjsonuserinfo.html"><abbr title="src/Exceptions/WpCrmInvalidJsonUserInfo.php">WpCrmInvalidJsonUserInfo.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">22</span>
</aside>
<p class="phpdocumentor-summary">WpCrmInvalidJsonUserInfo</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__name">__construct</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$message</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$message</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>The error message.</p>
</section>
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">mixed</span>
&mdash;
</article>
</section>
<script type="text/javascript">
function loadExternalCodeSnippets(line) {
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach((pre) => {
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
var language = 'php';
var code = document.createElement('code');
code.className = 'language-' + language;
pre.textContent = '';
pre.setAttribute('data-line', line)
code.textContent = 'Loading…';
pre.appendChild(code);
var xhr = new XMLHttpRequest();
xhr.open('GET', src, true);
xhr.onreadystatechange = function () {
if (xhr.readyState == 4) {
if (xhr.status < 400 && xhr.responseText) {
code.textContent = xhr.responseText;
Prism.highlightElement(code);
}
else if (xhr.status >= 400) {
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
}
else {
code.textContent = '✖ Error: File does not exist, is empty or trying to view from localhost';
}
}
};
xhr.send(null);
});
}
var modals = document.querySelectorAll("[data-modal]");
modals.forEach(function (trigger) {
trigger.addEventListener("click", function (event) {
//event.preventDefault();
const modal = document.getElementById(trigger.dataset.modal);
modal.classList.add("phpdocumentor-modal__open");
loadExternalCodeSnippets(trigger.dataset.line)
const exits = modal.querySelectorAll("[data-exit-button]");
exits.forEach(function (exit) {
exit.addEventListener("click", function (event) {
event.preventDefault();
modal.classList.remove("phpdocumentor-modal__open");
});
});
});
});
</script>
</article>
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
<section class="phpdocumentor-search-results__dialog">
<header class="phpdocumentor-search-results__header">
<h2 class="phpdocumentor-search-results__title">Search results</h2>
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
</header>
<section class="phpdocumentor-search-results__body">
<ul class="phpdocumentor-search-results__entries"></ul>
</section>
</section>
</section>
</div>
</div>
<a href="classes/LDC-LDCCRM-Exceptions-WpCrmInvalidJsonUserInfo.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main>
<script>
cssVars({});
</script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
</body>
</html>

View file

@ -0,0 +1,867 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>CRM V2</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<base href="../">
<link rel="icon" href="images/favicon.ico"/>
<link rel="stylesheet" href="css/normalize.css">
<link rel="stylesheet" href="css/base.css">
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="css/template.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
<script src="js/search.js"></script>
<script defer src="js/searchIndex.js"></script>
</head>
<body id="top">
<header class="phpdocumentor-header phpdocumentor-section">
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">CRM V2</a></h1>
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
<label class="phpdocumentor-header__menu-icon" for="menu-button">
<i class="fas fa-bars"></i>
</label>
<section data-search-form class="phpdocumentor-search">
<label>
<span class="visually-hidden">Search for</span>
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
</svg>
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
</label>
</section>
<nav class="phpdocumentor-topnav">
<ul class="phpdocumentor-topnav__menu">
</ul>
</nav>
</header>
<main class="phpdocumentor">
<div class="phpdocumentor-section">
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
Menu
</label>
<aside class="phpdocumentor-column -four phpdocumentor-sidebar">
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="namespaces/ldc.html">LDC</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/ldc-ldccrm.html">LDCCRM</a>
</li>
</ul>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="packages/LDCCrmClient-enums.html">enums</a>
</li>
<li>
<a href="packages/LDCCrmClient-exceptions.html">exceptions</a>
</li>
<li>
<a href="packages/LDCCrmClient-models.html">models</a>
</li>
<li>
<a href="packages/LDCCrmClient-transport.html">transport</a>
</li>
<li>
<a href="packages/LDCCrmClient-utilities.html">utilities</a>
</li>
<li>
<a href="packages/LDCCrmClient-Wordpress.html">Wordpress</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/None.html">None</a></h4>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
</section>
</aside>
<div class="phpdocumentor-column -eight phpdocumentor-content">
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc.html">LDC</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm.html">LDCCRM</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm-models.html">Models</a></li>
</ul>
<article class="phpdocumentor-element -class">
<h2 class="phpdocumentor-content__title">
Answer
<span class="phpdocumentor-element__extends">
extends <abbr title="\LDC\LDCCRM\Models\CrmClientModel">CrmClientModel</abbr>
</span>
<div class="phpdocumentor-element__package">
in package
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></li>
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient-models.html">models</a></li>
</ul>
</div>
</h2>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Models/Answer.php"><a href="files/src-models-answer.html"><abbr title="src/Models/Answer.php">Answer.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">25</span>
</aside>
<p class="phpdocumentor-summary">This class represents an answer
It has a method to submit answers</p>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">category</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>Api Models</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">subpackage</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>models</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">author</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>Jérémy Munsch <a href="mailto:jeremy.munsch@ldc.fr">jeremy.munsch@ldc.fr</a></p>
</section>
</dd>
</dl>
<h3 id="toc">
Table of Contents
<a href="#toc" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -property -public">
<a href="classes/LDC-LDCCRM-Models-Answer.html#property_answers">$answers</a>
<span>
&nbsp;: array&lt;string|int, <a href="classes/LDC-LDCCRM-Models-Answer.html"><abbr title="\LDC\LDCCRM\Models\Answer">Answer</abbr></a>&gt; </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -property -public">
<a href="classes/LDC-LDCCRM-Models-Answer.html#property_id">$id</a>
<span>
&nbsp;: string </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -property -public">
<a href="classes/LDC-LDCCRM-Models-Answer.html#property_question">$question</a>
<span>
&nbsp;: string </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -property -public">
<a href="classes/LDC-LDCCRM-Models-Answer.html#property_type">$type</a>
<span>
&nbsp;: <a href="classes/LDC-LDCCRM-Enums-QuestionType.html"><abbr title="\LDC\LDCCRM\Enums\QuestionType">QuestionType</abbr></a> </span>
</dt>
<dd></dd>
<dt class="phpdocumentor-table-of-contents__entry -property -protected">
<a href="classes/LDC-LDCCRM-Models-Answer.html#property_modelFields">$modelFields</a>
<span>
&nbsp;: array&lt;string|int, mixed&gt; </span>
</dt>
<dd>The crm customer fields</dd>
<dt class="phpdocumentor-table-of-contents__entry -property -protected">
<a href="classes/LDC-LDCCRM-Models-Answer.html#property_validation">$validation</a>
<span>
&nbsp;: array&lt;string|int, mixed&gt; </span>
</dt>
<dd>Validation rules</dd>
<dt class="phpdocumentor-table-of-contents__entry -property -private">
<a href="classes/LDC-LDCCRM-Models-Answer.html#property_answer">$answer</a>
<span>
&nbsp;: string </span>
</dt>
<dd>The actual answer as a string</dd>
<dt class="phpdocumentor-table-of-contents__entry -property -private">
<a href="classes/LDC-LDCCRM-Models-Answer.html#property_id">$id</a>
<span>
&nbsp;: int </span>
</dt>
<dd>The question id</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Models-Answer.html#method___construct">__construct()</a>
<span>
&nbsp;: mixed </span>
</dt>
<dd>Answer</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Models-Answer.html#method_jsonSerialize">jsonSerialize()</a>
<span>
&nbsp;: array&lt;string|int, mixed&gt; </span>
</dt>
<dd>Serialize this object to an array</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Models-Answer.html#method_setQuestionAnswers">setQuestionAnswers()</a>
<span>
&nbsp;: bool </span>
</dt>
<dd>Set unanswered question for a specific customer</dd>
</dl>
<section class="phpdocumentor-properties">
<h3 class="phpdocumentor-elements__header" id="properties">
Properties
<a href="classes/LDC-LDCCRM-Models-Answer.html#properties" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="
phpdocumentor-element
-property
-public
"
>
<h4 class="phpdocumentor-element__name" id="property_answers">
$answers
<a href="classes/LDC-LDCCRM-Models-Answer.html#property_answers" class="headerlink"><i class="fas fa-link"></i></a>
<span class="phpdocumentor-element__modifiers">
</span>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Models/Answer.php"><a href="files/src-models-answer.html"><abbr title="src/Models/Answer.php">Answer.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__type">array&lt;string|int, <a href="classes/LDC-LDCCRM-Models-Answer.html"><abbr title="\LDC\LDCCRM\Models\Answer">Answer</abbr></a>&gt;</span>
<span class="phpdocumentor-signature__name">$answers</span>
</code>
<section class="phpdocumentor-description"><p>An array with answers</p>
</section>
<section class="phpdocumentor-description"></section>
</article>
<article
class="
phpdocumentor-element
-property
-public
"
>
<h4 class="phpdocumentor-element__name" id="property_id">
$id
<a href="classes/LDC-LDCCRM-Models-Answer.html#property_id" class="headerlink"><i class="fas fa-link"></i></a>
<span class="phpdocumentor-element__modifiers">
</span>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Models/Answer.php"><a href="files/src-models-answer.html"><abbr title="src/Models/Answer.php">Answer.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__type">string</span>
<span class="phpdocumentor-signature__name">$id</span>
</code>
<section class="phpdocumentor-description"><p>The answer id</p>
</section>
<section class="phpdocumentor-description"></section>
</article>
<article
class="
phpdocumentor-element
-property
-public
"
>
<h4 class="phpdocumentor-element__name" id="property_question">
$question
<a href="classes/LDC-LDCCRM-Models-Answer.html#property_question" class="headerlink"><i class="fas fa-link"></i></a>
<span class="phpdocumentor-element__modifiers">
</span>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Models/Answer.php"><a href="files/src-models-answer.html"><abbr title="src/Models/Answer.php">Answer.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__type">string</span>
<span class="phpdocumentor-signature__name">$question</span>
</code>
<section class="phpdocumentor-description"><p>The actual question as a string</p>
</section>
<section class="phpdocumentor-description"></section>
</article>
<article
class="
phpdocumentor-element
-property
-public
"
>
<h4 class="phpdocumentor-element__name" id="property_type">
$type
<a href="classes/LDC-LDCCRM-Models-Answer.html#property_type" class="headerlink"><i class="fas fa-link"></i></a>
<span class="phpdocumentor-element__modifiers">
</span>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Models/Answer.php"><a href="files/src-models-answer.html"><abbr title="src/Models/Answer.php">Answer.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">0</span>
</aside>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__type"><a href="classes/LDC-LDCCRM-Enums-QuestionType.html"><abbr title="\LDC\LDCCRM\Enums\QuestionType">QuestionType</abbr></a></span>
<span class="phpdocumentor-signature__name">$type</span>
</code>
<section class="phpdocumentor-description"><p>The question type to display,
it also hints wether it can accept one or multiple responses,
so only checkbox allows multiple responses</p>
</section>
<section class="phpdocumentor-description"></section>
</article>
<article
class="
phpdocumentor-element
-property
-protected
"
>
<h4 class="phpdocumentor-element__name" id="property_modelFields">
$modelFields
<a href="classes/LDC-LDCCRM-Models-Answer.html#property_modelFields" class="headerlink"><i class="fas fa-link"></i></a>
<span class="phpdocumentor-element__modifiers">
</span>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Models/Answer.php"><a href="files/src-models-answer.html"><abbr title="src/Models/Answer.php">Answer.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">53</span>
</aside>
<p class="phpdocumentor-summary">The crm customer fields</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">protected</span>
<span class="phpdocumentor-signature__type">array&lt;string|int, mixed&gt;</span>
<span class="phpdocumentor-signature__name">$modelFields</span>
= <span class="phpdocumentor-signature__default-value">[&#039;id&#039;, &#039;answer&#039;]</span></code>
</article>
<article
class="
phpdocumentor-element
-property
-protected
-static "
>
<h4 class="phpdocumentor-element__name" id="property_validation">
$validation
<a href="classes/LDC-LDCCRM-Models-Answer.html#property_validation" class="headerlink"><i class="fas fa-link"></i></a>
<span class="phpdocumentor-element__modifiers">
</span>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Models/Answer.php"><a href="files/src-models-answer.html"><abbr title="src/Models/Answer.php">Answer.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">62</span>
</aside>
<p class="phpdocumentor-summary">Validation rules</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">protected</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__type">array&lt;string|int, mixed&gt;</span>
<span class="phpdocumentor-signature__name">$validation</span>
= <span class="phpdocumentor-signature__default-value">[&#039;id&#039; =&gt; &#039;required|int&#039;, &#039;answer&#039; =&gt; &#039;required|string|max:255&#039;]</span></code>
</article>
<article
class="
phpdocumentor-element
-property
-private
"
>
<h4 class="phpdocumentor-element__name" id="property_answer">
$answer
<a href="classes/LDC-LDCCRM-Models-Answer.html#property_answer" class="headerlink"><i class="fas fa-link"></i></a>
<span class="phpdocumentor-element__modifiers">
</span>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Models/Answer.php"><a href="files/src-models-answer.html"><abbr title="src/Models/Answer.php">Answer.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">46</span>
</aside>
<p class="phpdocumentor-summary">The actual answer as a string</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">private</span>
<span class="phpdocumentor-signature__type">string</span>
<span class="phpdocumentor-signature__name">$answer</span>
= <span class="phpdocumentor-signature__default-value">null</span></code>
<section class="phpdocumentor-description"><p>Required
Max length 255
Field Type varchar</p>
</section>
</article>
<article
class="
phpdocumentor-element
-property
-private
"
>
<h4 class="phpdocumentor-element__name" id="property_id">
$id
<a href="classes/LDC-LDCCRM-Models-Answer.html#property_id" class="headerlink"><i class="fas fa-link"></i></a>
<span class="phpdocumentor-element__modifiers">
</span>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Models/Answer.php"><a href="files/src-models-answer.html"><abbr title="src/Models/Answer.php">Answer.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">35</span>
</aside>
<p class="phpdocumentor-summary">The question id</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">private</span>
<span class="phpdocumentor-signature__type">int</span>
<span class="phpdocumentor-signature__name">$id</span>
</code>
<section class="phpdocumentor-description"><p>Required
Field Type bigInt</p>
</section>
</article>
</section>
<section class="phpdocumentor-methods">
<h3 class="phpdocumentor-elements__header" id="methods">
Methods
<a href="classes/LDC-LDCCRM-Models-Answer.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="phpdocumentor-element
-method
-public
"
>
<h4 class="phpdocumentor-element__name" id="method___construct">
__construct()
<a href="classes/LDC-LDCCRM-Models-Answer.html#method___construct" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Models/Answer.php"><a href="files/src-models-answer.html"><abbr title="src/Models/Answer.php">Answer.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">73</span>
</aside>
<p class="phpdocumentor-summary">Answer</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__name">__construct</span><span>(</span><span class="phpdocumentor-signature__argument"><span>[</span><span class="phpdocumentor-signature__argument__return-type">array&lt;string|int, mixed&gt;&nbsp;</span><span class="phpdocumentor-signature__argument__name">$properties</span><span> = </span><span class="phpdocumentor-signature__argument__default-value">[]</span><span> ]</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">mixed</span></code>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$properties</span>
: <span class="phpdocumentor-signature__argument__return-type">array&lt;string|int, mixed&gt;</span>
= <span class="phpdocumentor-signature__argument__default-value">[]</span> </dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-ValidationException.html"><abbr title="\LDC\LDCCRM\Exceptions\ValidationException">ValidationException</abbr></a></span>
<section class="phpdocumentor-description"><p>If a field could not be validated.</p>
</section>
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">mixed</span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
"
>
<h4 class="phpdocumentor-element__name" id="method_jsonSerialize">
jsonSerialize()
<a href="classes/LDC-LDCCRM-Models-Answer.html#method_jsonSerialize" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Models/Answer.php"><a href="files/src-models-answer.html"><abbr title="src/Models/Answer.php">Answer.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">127</span>
</aside>
<p class="phpdocumentor-summary">Serialize this object to an array</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__name">jsonSerialize</span><span>(</span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">array&lt;string|int, mixed&gt;</span></code>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">array&lt;string|int, mixed&gt;</span>
&mdash;
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_setQuestionAnswers">
setQuestionAnswers()
<a href="classes/LDC-LDCCRM-Models-Answer.html#method_setQuestionAnswers" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Models/Answer.php"><a href="files/src-models-answer.html"><abbr title="src/Models/Answer.php">Answer.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">96</span>
</aside>
<p class="phpdocumentor-summary">Set unanswered question for a specific customer</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">setQuestionAnswers</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$hashcode</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">int&nbsp;</span><span class="phpdocumentor-signature__argument__name">$questionId</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">array&lt;string|int, mixed&gt;&nbsp;</span><span class="phpdocumentor-signature__argument__name">$answersId</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">bool</span></code>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$hashcode</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>The customer hashcode.</p>
</section>
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$questionId</span>
: <span class="phpdocumentor-signature__argument__return-type">int</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>The question id.</p>
</section>
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$answersId</span>
: <span class="phpdocumentor-signature__argument__return-type">array&lt;string|int, mixed&gt;</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>An array with answers id.</p>
</section>
</dd>
</dl>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-ValidationException.html"><abbr title="\LDC\LDCCRM\Exceptions\ValidationException">ValidationException</abbr></a></span>
<section class="phpdocumentor-description"><p>If a hashcode is not a valid UUID.</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><abbr title="\LDC\LDCCRM\Models\LDC\LDCCRM\Exceptions\ValidationException">ValidationException</abbr></span>
<section class="phpdocumentor-description"><p>If any of the provided ids are invalid.</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html"><abbr title="\LDC\LDCCRM\Exceptions\ApiErrorException">ApiErrorException</abbr></a></span>
<section class="phpdocumentor-description"><p>If any error \LDC\LDCCRM\Enums\ApiError occurs.
Possibles are : - validationFailed, If given ids are wrong(CRM side).</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-CrmException.html"><abbr title="\LDC\LDCCRM\Exceptions\CrmException">CrmException</abbr></a></span>
<section class="phpdocumentor-description"><p>If an error occurs on server side or on getting response.</p>
</section>
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span>
&mdash;
<section class="phpdocumentor-description"><p>true if succeeded</p>
</section>
</article>
</section>
<script type="text/javascript">
function loadExternalCodeSnippets(line) {
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach((pre) => {
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
var language = 'php';
var code = document.createElement('code');
code.className = 'language-' + language;
pre.textContent = '';
pre.setAttribute('data-line', line)
code.textContent = 'Loading…';
pre.appendChild(code);
var xhr = new XMLHttpRequest();
xhr.open('GET', src, true);
xhr.onreadystatechange = function () {
if (xhr.readyState == 4) {
if (xhr.status < 400 && xhr.responseText) {
code.textContent = xhr.responseText;
Prism.highlightElement(code);
}
else if (xhr.status >= 400) {
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
}
else {
code.textContent = '✖ Error: File does not exist, is empty or trying to view from localhost';
}
}
};
xhr.send(null);
});
}
var modals = document.querySelectorAll("[data-modal]");
modals.forEach(function (trigger) {
trigger.addEventListener("click", function (event) {
//event.preventDefault();
const modal = document.getElementById(trigger.dataset.modal);
modal.classList.add("phpdocumentor-modal__open");
loadExternalCodeSnippets(trigger.dataset.line)
const exits = modal.querySelectorAll("[data-exit-button]");
exits.forEach(function (exit) {
exit.addEventListener("click", function (event) {
event.preventDefault();
modal.classList.remove("phpdocumentor-modal__open");
});
});
});
});
</script>
</article>
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
<section class="phpdocumentor-search-results__dialog">
<header class="phpdocumentor-search-results__header">
<h2 class="phpdocumentor-search-results__title">Search results</h2>
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
</header>
<section class="phpdocumentor-search-results__body">
<ul class="phpdocumentor-search-results__entries"></ul>
</section>
</section>
</section>
</div>
</div>
<a href="classes/LDC-LDCCRM-Models-Answer.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main>
<script>
cssVars({});
</script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
</body>
</html>

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

View file

@ -0,0 +1,469 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>CRM V2</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<base href="../">
<link rel="icon" href="images/favicon.ico"/>
<link rel="stylesheet" href="css/normalize.css">
<link rel="stylesheet" href="css/base.css">
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="css/template.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
<script src="js/search.js"></script>
<script defer src="js/searchIndex.js"></script>
</head>
<body id="top">
<header class="phpdocumentor-header phpdocumentor-section">
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">CRM V2</a></h1>
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
<label class="phpdocumentor-header__menu-icon" for="menu-button">
<i class="fas fa-bars"></i>
</label>
<section data-search-form class="phpdocumentor-search">
<label>
<span class="visually-hidden">Search for</span>
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
</svg>
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
</label>
</section>
<nav class="phpdocumentor-topnav">
<ul class="phpdocumentor-topnav__menu">
</ul>
</nav>
</header>
<main class="phpdocumentor">
<div class="phpdocumentor-section">
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
Menu
</label>
<aside class="phpdocumentor-column -four phpdocumentor-sidebar">
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="namespaces/ldc.html">LDC</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/ldc-ldccrm.html">LDCCRM</a>
</li>
</ul>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="packages/LDCCrmClient-enums.html">enums</a>
</li>
<li>
<a href="packages/LDCCrmClient-exceptions.html">exceptions</a>
</li>
<li>
<a href="packages/LDCCrmClient-models.html">models</a>
</li>
<li>
<a href="packages/LDCCrmClient-transport.html">transport</a>
</li>
<li>
<a href="packages/LDCCrmClient-utilities.html">utilities</a>
</li>
<li>
<a href="packages/LDCCrmClient-Wordpress.html">Wordpress</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/None.html">None</a></h4>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
</section>
</aside>
<div class="phpdocumentor-column -eight phpdocumentor-content">
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc.html">LDC</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm.html">LDCCRM</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm-models.html">Models</a></li>
</ul>
<article class="phpdocumentor-element -class">
<h2 class="phpdocumentor-content__title">
SingleOptin
<span class="phpdocumentor-element__extends">
extends <abbr title="\LDC\LDCCRM\Models\CrmClientModel">CrmClientModel</abbr>
</span>
<div class="phpdocumentor-element__package">
in package
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></li>
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient-models.html">models</a></li>
</ul>
</div>
</h2>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Models/SingleOptin.php"><a href="files/src-models-singleoptin.html"><abbr title="src/Models/SingleOptin.php">SingleOptin.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">19</span>
</aside>
<p class="phpdocumentor-summary">This class allows to handle single optins</p>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html"><abbr title="\LDC\LDCCRM\Exceptions\ApiErrorException">ApiErrorException</abbr></a></span>
<section class="phpdocumentor-description"><p>If an error occurs</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-CrmException.html"><abbr title="\LDC\LDCCRM\Exceptions\CrmException">CrmException</abbr></a></span>
<section class="phpdocumentor-description"><p>If the CRM encounters an error</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">category</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>Api Models</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">subpackage</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>models</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">author</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>Jérémy Munsch <a href="mailto:jeremy.munsch@ldc.fr">jeremy.munsch@ldc.fr</a></p>
</section>
</dd>
</dl>
<h3 id="toc">
Table of Contents
<a href="#toc" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -property -protected">
<a href="classes/LDC-LDCCRM-Models-SingleOptin.html#property_validation">$validation</a>
<span>
&nbsp;: array&lt;string|int, mixed&gt; </span>
</dt>
<dd>Validation rules</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Models-SingleOptin.html#method_setStatus">setStatus()</a>
<span>
&nbsp;: bool </span>
</dt>
<dd>Set the single optin status for an email</dd>
</dl>
<section class="phpdocumentor-properties">
<h3 class="phpdocumentor-elements__header" id="properties">
Properties
<a href="classes/LDC-LDCCRM-Models-SingleOptin.html#properties" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="
phpdocumentor-element
-property
-protected
-static "
>
<h4 class="phpdocumentor-element__name" id="property_validation">
$validation
<a href="classes/LDC-LDCCRM-Models-SingleOptin.html#property_validation" class="headerlink"><i class="fas fa-link"></i></a>
<span class="phpdocumentor-element__modifiers">
</span>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Models/SingleOptin.php"><a href="files/src-models-singleoptin.html"><abbr title="src/Models/SingleOptin.php">SingleOptin.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">26</span>
</aside>
<p class="phpdocumentor-summary">Validation rules</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">protected</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__type">array&lt;string|int, mixed&gt;</span>
<span class="phpdocumentor-signature__name">$validation</span>
= <span class="phpdocumentor-signature__default-value">[&#039;email&#039; =&gt; &#039;required|email&#039;, &#039;opt_in&#039; =&gt; &#039;required|bool&#039;]</span></code>
</article>
</section>
<section class="phpdocumentor-methods">
<h3 class="phpdocumentor-elements__header" id="methods">
Methods
<a href="classes/LDC-LDCCRM-Models-SingleOptin.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_setStatus">
setStatus()
<a href="classes/LDC-LDCCRM-Models-SingleOptin.html#method_setStatus" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Models/SingleOptin.php"><a href="files/src-models-singleoptin.html"><abbr title="src/Models/SingleOptin.php">SingleOptin.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">43</span>
</aside>
<p class="phpdocumentor-summary">Set the single optin status for an email</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">setStatus</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$email</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">bool&nbsp;</span><span class="phpdocumentor-signature__argument__name">$opt_in</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">bool</span></code>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$email</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$opt_in</span>
: <span class="phpdocumentor-signature__argument__return-type">bool</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
</dd>
</dl>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-ValidationException.html"><abbr title="\LDC\LDCCRM\Exceptions\ValidationException">ValidationException</abbr></a></span>
<section class="phpdocumentor-description"><p>If a field email could not be validated.</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-CrmException.html"><abbr title="\LDC\LDCCRM\Exceptions\CrmException">CrmException</abbr></a></span>
<section class="phpdocumentor-description"><p>If an error occurs on server side or on getting response.</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html"><abbr title="\LDC\LDCCRM\Exceptions\ApiErrorException">ApiErrorException</abbr></a></span>
<section class="phpdocumentor-description"><p>If any error or \LDC\LDCCRM\Enums\ApiError occurs.
Possibles are : - singleOptinCustomerExists, If a customer exists with this email.</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">phpcs:ignore</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>Squiz.Commenting.FunctionCommentThrowTag.WrongNumber</p>
</section>
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">bool</span>
&mdash;
<section class="phpdocumentor-description"><p>true if succeeded</p>
</section>
</article>
</section>
<script type="text/javascript">
function loadExternalCodeSnippets(line) {
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach((pre) => {
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
var language = 'php';
var code = document.createElement('code');
code.className = 'language-' + language;
pre.textContent = '';
pre.setAttribute('data-line', line)
code.textContent = 'Loading…';
pre.appendChild(code);
var xhr = new XMLHttpRequest();
xhr.open('GET', src, true);
xhr.onreadystatechange = function () {
if (xhr.readyState == 4) {
if (xhr.status < 400 && xhr.responseText) {
code.textContent = xhr.responseText;
Prism.highlightElement(code);
}
else if (xhr.status >= 400) {
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
}
else {
code.textContent = '✖ Error: File does not exist, is empty or trying to view from localhost';
}
}
};
xhr.send(null);
});
}
var modals = document.querySelectorAll("[data-modal]");
modals.forEach(function (trigger) {
trigger.addEventListener("click", function (event) {
//event.preventDefault();
const modal = document.getElementById(trigger.dataset.modal);
modal.classList.add("phpdocumentor-modal__open");
loadExternalCodeSnippets(trigger.dataset.line)
const exits = modal.querySelectorAll("[data-exit-button]");
exits.forEach(function (exit) {
exit.addEventListener("click", function (event) {
event.preventDefault();
modal.classList.remove("phpdocumentor-modal__open");
});
});
});
});
</script>
</article>
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
<section class="phpdocumentor-search-results__dialog">
<header class="phpdocumentor-search-results__header">
<h2 class="phpdocumentor-search-results__title">Search results</h2>
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
</header>
<section class="phpdocumentor-search-results__body">
<ul class="phpdocumentor-search-results__entries"></ul>
</section>
</section>
</section>
</div>
</div>
<a href="classes/LDC-LDCCRM-Models-SingleOptin.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main>
<script>
cssVars({});
</script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
</body>
</html>

View file

@ -0,0 +1,621 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>CRM V2</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<base href="../">
<link rel="icon" href="images/favicon.ico"/>
<link rel="stylesheet" href="css/normalize.css">
<link rel="stylesheet" href="css/base.css">
<link rel="preconnect" href="https://fonts.gstatic.com">
<link href="https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link href="https://fonts.googleapis.com/css2?family=Source+Code+Pro:wght@400;600;700&display=swap" rel="stylesheet">
<link rel="stylesheet" href="css/template.css">
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.12.0/css/all.min.css" integrity="sha256-ybRkN9dBjhcS2qrW1z+hfCxq+1aBdwyQM5wlQoQVt/0=" crossorigin="anonymous" />
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/themes/prism-okaidia.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.css">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.css">
<script src="https://cdn.jsdelivr.net/npm/fuse.js@3.4.6"></script>
<script src="https://cdn.jsdelivr.net/npm/css-vars-ponyfill@2"></script>
<script src="js/search.js"></script>
<script defer src="js/searchIndex.js"></script>
</head>
<body id="top">
<header class="phpdocumentor-header phpdocumentor-section">
<h1 class="phpdocumentor-title"><a href="" class="phpdocumentor-title__link">CRM V2</a></h1>
<input class="phpdocumentor-header__menu-button" type="checkbox" id="menu-button" name="menu-button" />
<label class="phpdocumentor-header__menu-icon" for="menu-button">
<i class="fas fa-bars"></i>
</label>
<section data-search-form class="phpdocumentor-search">
<label>
<span class="visually-hidden">Search for</span>
<svg class="phpdocumentor-search__icon" width="21" height="20" viewBox="0 0 21 20" fill="none" xmlns="http://www.w3.org/2000/svg">
<circle cx="7.5" cy="7.5" r="6.5" stroke="currentColor" stroke-width="2"/>
<line x1="12.4892" y1="12.2727" x2="19.1559" y2="18.9393" stroke="currentColor" stroke-width="3"/>
</svg>
<input type="search" class="phpdocumentor-field phpdocumentor-search__field" placeholder="Loading .." disabled />
</label>
</section>
<nav class="phpdocumentor-topnav">
<ul class="phpdocumentor-topnav__menu">
</ul>
</nav>
</header>
<main class="phpdocumentor">
<div class="phpdocumentor-section">
<input class="phpdocumentor-sidebar__menu-button" type="checkbox" id="sidebar-button" name="sidebar-button" />
<label class="phpdocumentor-sidebar__menu-icon" for="sidebar-button">
Menu
</label>
<aside class="phpdocumentor-column -four phpdocumentor-sidebar">
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Namespaces</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="namespaces/ldc.html">LDC</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="namespaces/ldc-ldccrm.html">LDCCRM</a>
</li>
</ul>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Packages</h2>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></h4>
<ul class="phpdocumentor-list">
<li>
<a href="packages/LDCCrmClient-enums.html">enums</a>
</li>
<li>
<a href="packages/LDCCrmClient-exceptions.html">exceptions</a>
</li>
<li>
<a href="packages/LDCCrmClient-models.html">models</a>
</li>
<li>
<a href="packages/LDCCrmClient-transport.html">transport</a>
</li>
<li>
<a href="packages/LDCCrmClient-utilities.html">utilities</a>
</li>
<li>
<a href="packages/LDCCrmClient-Wordpress.html">Wordpress</a>
</li>
</ul>
<h4 class="phpdocumentor-sidebar__root-namespace"><a href="packages/None.html">None</a></h4>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Reports</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/deprecated.html">Deprecated</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/errors.html">Errors</a></h3>
<h3 class="phpdocumentor-sidebar__root-package"><a href="reports/markers.html">Markers</a></h3>
</section>
<section class="phpdocumentor-sidebar__category">
<h2 class="phpdocumentor-sidebar__category-header">Indices</h2>
<h3 class="phpdocumentor-sidebar__root-package"><a href="indices/files.html">Files</a></h3>
</section>
</aside>
<div class="phpdocumentor-column -eight phpdocumentor-content">
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc.html">LDC</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm.html">LDCCRM</a></li>
<li class="phpdocumentor-breadcrumb"><a href="namespaces/ldc-ldccrm-models.html">Models</a></li>
</ul>
<article class="phpdocumentor-element -class">
<h2 class="phpdocumentor-content__title">
Stats
<span class="phpdocumentor-element__extends">
extends <abbr title="\LDC\LDCCRM\Models\CrmClientModel">CrmClientModel</abbr>
</span>
<div class="phpdocumentor-element__package">
in package
<ul class="phpdocumentor-breadcrumbs">
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient.html">LDCCrmClient</a></li>
<li class="phpdocumentor-breadcrumb"><a href="packages/LDCCrmClient-models.html">models</a></li>
</ul>
</div>
</h2>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Models/Stats.php"><a href="files/src-models-stats.html"><abbr title="src/Models/Stats.php">Stats.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">18</span>
</aside>
<p class="phpdocumentor-summary">This class is used to get stats from CRM</p>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html"><abbr title="\LDC\LDCCRM\Exceptions\ApiErrorException">ApiErrorException</abbr></a></span>
<section class="phpdocumentor-description"><p>If an error occurs</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-CrmException.html"><abbr title="\LDC\LDCCRM\Exceptions\CrmException">CrmException</abbr></a></span>
<section class="phpdocumentor-description"><p>If the CRM encounters an error</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">category</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>Api Models</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">subpackage</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>models</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">author</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>Jérémy Munsch <a href="mailto:jeremy.munsch@ldc.fr">jeremy.munsch@ldc.fr</a></p>
</section>
</dd>
</dl>
<h3 id="toc">
Table of Contents
<a href="#toc" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<dl class="phpdocumentor-table-of-contents">
<dt class="phpdocumentor-table-of-contents__entry -property -protected">
<a href="classes/LDC-LDCCRM-Models-Stats.html#property_validation">$validation</a>
<span>
&nbsp;: array&lt;string|int, mixed&gt; </span>
</dt>
<dd>Validation rules</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Models-Stats.html#method_getBrandStats">getBrandStats()</a>
<span>
&nbsp;: array&lt;string|int, mixed&gt; </span>
</dt>
<dd>Get brand stats ordered by ascendent days</dd>
<dt class="phpdocumentor-table-of-contents__entry -method -public">
<a href="classes/LDC-LDCCRM-Models-Stats.html#method_getQuestionStats">getQuestionStats()</a>
<span>
&nbsp;: array&lt;string|int, mixed&gt; </span>
</dt>
<dd>Get brand stats ordered by ascendent days</dd>
</dl>
<section class="phpdocumentor-properties">
<h3 class="phpdocumentor-elements__header" id="properties">
Properties
<a href="classes/LDC-LDCCRM-Models-Stats.html#properties" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="
phpdocumentor-element
-property
-protected
-static "
>
<h4 class="phpdocumentor-element__name" id="property_validation">
$validation
<a href="classes/LDC-LDCCRM-Models-Stats.html#property_validation" class="headerlink"><i class="fas fa-link"></i></a>
<span class="phpdocumentor-element__modifiers">
</span>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Models/Stats.php"><a href="files/src-models-stats.html"><abbr title="src/Models/Stats.php">Stats.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">25</span>
</aside>
<p class="phpdocumentor-summary">Validation rules</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">protected</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__type">array&lt;string|int, mixed&gt;</span>
<span class="phpdocumentor-signature__name">$validation</span>
= <span class="phpdocumentor-signature__default-value">[&#039;question.id&#039; =&gt; &#039;required|int|min:1&#039;, &#039;start&#039; =&gt; &#039;required|date_format:Y-m-d&#039;, &#039;end&#039; =&gt; &#039;required|date_format:Y-m-d&#039;]</span></code>
</article>
</section>
<section class="phpdocumentor-methods">
<h3 class="phpdocumentor-elements__header" id="methods">
Methods
<a href="classes/LDC-LDCCRM-Models-Stats.html#methods" class="headerlink"><i class="fas fa-link"></i></a>
</h3>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_getBrandStats">
getBrandStats()
<a href="classes/LDC-LDCCRM-Models-Stats.html#method_getBrandStats" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Models/Stats.php"><a href="files/src-models-stats.html"><abbr title="src/Models/Stats.php">Stats.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">44</span>
</aside>
<p class="phpdocumentor-summary">Get brand stats ordered by ascendent days</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">getBrandStats</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$start</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$end</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">array&lt;string|int, mixed&gt;</span></code>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$start</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>Une date valide au format Y-m-d .</p>
</section>
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$end</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>Une date valide au format Y-m-d .</p>
</section>
</dd>
</dl>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-ValidationException.html"><abbr title="\LDC\LDCCRM\Exceptions\ValidationException">ValidationException</abbr></a></span>
<section class="phpdocumentor-description"><p>If a field start could not be validated.</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-ValidationException.html"><abbr title="\LDC\LDCCRM\Exceptions\ValidationException">ValidationException</abbr></a></span>
<section class="phpdocumentor-description"><p>If a field end could not be validated.</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-CrmException.html"><abbr title="\LDC\LDCCRM\Exceptions\CrmException">CrmException</abbr></a></span>
<section class="phpdocumentor-description"><p>If an error occurs on server side or on getting response.</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html"><abbr title="\LDC\LDCCRM\Exceptions\ApiErrorException">ApiErrorException</abbr></a></span>
<section class="phpdocumentor-description"><p>If any error or \LDC\LDCCRM\Enums\ApiError occurs.
Possibles are : - validationFailed, If provided data is wrong(CRM side).</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">phpcs:ignore</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>Squiz.Commenting.FunctionCommentThrowTag.WrongNumber</p>
</section>
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">array&lt;string|int, mixed&gt;</span>
&mdash;
<section class="phpdocumentor-description"><p>The stats array by day</p>
</section>
</article>
<article
class="phpdocumentor-element
-method
-public
-static "
>
<h4 class="phpdocumentor-element__name" id="method_getQuestionStats">
getQuestionStats()
<a href="classes/LDC-LDCCRM-Models-Stats.html#method_getQuestionStats" class="headerlink"><i class="fas fa-link"></i></a>
</h4>
<aside class="phpdocumentor-element-found-in">
<abbr class="phpdocumentor-element-found-in__file" title="src/Models/Stats.php"><a href="files/src-models-stats.html"><abbr title="src/Models/Stats.php">Stats.php</abbr></a></abbr>
:
<span class="phpdocumentor-element-found-in__line">72</span>
</aside>
<p class="phpdocumentor-summary">Get brand stats ordered by ascendent days</p>
<code class="phpdocumentor-code phpdocumentor-signature ">
<span class="phpdocumentor-signature__visibility">public</span>
<span class="phpdocumentor-signature__static">static</span> <span class="phpdocumentor-signature__name">getQuestionStats</span><span>(</span><span class="phpdocumentor-signature__argument"><span class="phpdocumentor-signature__argument__return-type"><a href="classes/LDC-LDCCRM-Models-Question.html"><abbr title="\LDC\LDCCRM\Models\Question">Question</abbr></a>&nbsp;</span><span class="phpdocumentor-signature__argument__name">$question</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$start</span></span><span class="phpdocumentor-signature__argument"><span>, </span><span class="phpdocumentor-signature__argument__return-type">string&nbsp;</span><span class="phpdocumentor-signature__argument__name">$end</span></span><span>)</span><span> : </span><span class="phpdocumentor-signature__response_type">array&lt;string|int, mixed&gt;</span></code>
<h5 class="phpdocumentor-argument-list__heading">Parameters</h5>
<dl class="phpdocumentor-argument-list">
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$question</span>
: <span class="phpdocumentor-signature__argument__return-type"><a href="classes/LDC-LDCCRM-Models-Question.html"><abbr title="\LDC\LDCCRM\Models\Question">Question</abbr></a></span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>Une question CRM possèdant un id réel.</p>
</section>
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$start</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>Une date valide au format Y-m-d .</p>
</section>
</dd>
<dt class="phpdocumentor-argument-list__entry">
<span class="phpdocumentor-signature__argument__name">$end</span>
: <span class="phpdocumentor-signature__argument__return-type">string</span>
</dt>
<dd class="phpdocumentor-argument-list__definition">
<section class="phpdocumentor-description"><p>Une date valide au format Y-m-d .</p>
</section>
</dd>
</dl>
<h5 class="phpdocumentor-tag-list__heading" id="tags">
Tags
<a href="#tags" class="headerlink"><i class="fas fa-link"></i></a>
</h5>
<dl class="phpdocumentor-tag-list">
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-ValidationException.html"><abbr title="\LDC\LDCCRM\Exceptions\ValidationException">ValidationException</abbr></a></span>
<section class="phpdocumentor-description"><p>If a question's id could not be validated.</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-ValidationException.html"><abbr title="\LDC\LDCCRM\Exceptions\ValidationException">ValidationException</abbr></a></span>
<section class="phpdocumentor-description"><p>If a field start could not be validated.</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-ValidationException.html"><abbr title="\LDC\LDCCRM\Exceptions\ValidationException">ValidationException</abbr></a></span>
<section class="phpdocumentor-description"><p>If a field end could not be validated.</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-CrmException.html"><abbr title="\LDC\LDCCRM\Exceptions\CrmException">CrmException</abbr></a></span>
<section class="phpdocumentor-description"><p>If an error occurs on server side or on getting response.</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">throws</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<span class="phpdocumentor-tag-link"><a href="classes/LDC-LDCCRM-Exceptions-ApiErrorException.html"><abbr title="\LDC\LDCCRM\Exceptions\ApiErrorException">ApiErrorException</abbr></a></span>
<section class="phpdocumentor-description"><p>If any error or \LDC\LDCCRM\Enums\ApiError occurs.
Possibles are : - validationFailed, If provided data is wrong(CRM side).</p>
</section>
</dd>
<dt class="phpdocumentor-tag-list__entry">
<span class="phpdocumentor-tag__name">phpcs:ignore</span>
</dt>
<dd class="phpdocumentor-tag-list__definition">
<section class="phpdocumentor-description"><p>Squiz.Commenting.FunctionCommentThrowTag.WrongNumber</p>
</section>
</dd>
</dl>
<h5 class="phpdocumentor-return-value__heading">Return values</h5>
<span class="phpdocumentor-signature__response_type">array&lt;string|int, mixed&gt;</span>
&mdash;
<section class="phpdocumentor-description"><p>The stats array by day</p>
</section>
</article>
</section>
<script type="text/javascript">
function loadExternalCodeSnippets(line) {
Array.prototype.slice.call(document.querySelectorAll('pre[data-src]')).forEach((pre) => {
var src = pre.getAttribute('data-src').replace( /\\/g, '/');
var extension = (src.match(/\.(\w+)$/) || [, ''])[1];
var language = 'php';
var code = document.createElement('code');
code.className = 'language-' + language;
pre.textContent = '';
pre.setAttribute('data-line', line)
code.textContent = 'Loading…';
pre.appendChild(code);
var xhr = new XMLHttpRequest();
xhr.open('GET', src, true);
xhr.onreadystatechange = function () {
if (xhr.readyState == 4) {
if (xhr.status < 400 && xhr.responseText) {
code.textContent = xhr.responseText;
Prism.highlightElement(code);
}
else if (xhr.status >= 400) {
code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;
}
else {
code.textContent = '✖ Error: File does not exist, is empty or trying to view from localhost';
}
}
};
xhr.send(null);
});
}
var modals = document.querySelectorAll("[data-modal]");
modals.forEach(function (trigger) {
trigger.addEventListener("click", function (event) {
//event.preventDefault();
const modal = document.getElementById(trigger.dataset.modal);
modal.classList.add("phpdocumentor-modal__open");
loadExternalCodeSnippets(trigger.dataset.line)
const exits = modal.querySelectorAll("[data-exit-button]");
exits.forEach(function (exit) {
exit.addEventListener("click", function (event) {
event.preventDefault();
modal.classList.remove("phpdocumentor-modal__open");
});
});
});
});
</script>
</article>
<section data-search-results class="phpdocumentor-search-results phpdocumentor-search-results--hidden">
<section class="phpdocumentor-search-results__dialog">
<header class="phpdocumentor-search-results__header">
<h2 class="phpdocumentor-search-results__title">Search results</h2>
<button class="phpdocumentor-search-results__close"><i class="fas fa-times"></i></button>
</header>
<section class="phpdocumentor-search-results__body">
<ul class="phpdocumentor-search-results__entries"></ul>
</section>
</section>
</section>
</div>
</div>
<a href="classes/LDC-LDCCRM-Models-Stats.html#top" class="phpdocumentor-back-to-top"><i class="fas fa-chevron-circle-up"></i></a>
</main>
<script>
cssVars({});
</script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/prism.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/autoloader/prism-autoloader.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-numbers/prism-line-numbers.min.js"></script>
<script src="https://cdn.jsdelivr.net/npm/prismjs@1.23.0/plugins/line-highlight/prism-line-highlight.min.js"></script>
</body>
</html>

File diff suppressed because it is too large Load diff

File diff suppressed because it is too large Load diff

Some files were not shown because too many files have changed in this diff Show more