SmarMaker - Documentation
Docs» back_php

**Ceci est une ancienne révision du document !**

DoliMobile - Back (PHP)

La partie backoffice de dolimobile doit s'intégrer dans un module normal de dolibarr.

De ce fait lorsque vous déployez dolimobile dans votre module dolibarr vous aurez quelques nouveaux dossiers qui vont apparaître:

  • mobile : dossier qui contiendra tout le code source de la partie mobile (front en React, voir plus loin)
  • pwa : le dossier dans lequel sera copié le contenu de l'application mobile “compilée” ainsi que le point d'entrée api.php
  • smartmaker-api : le dossier dans lequel vous devrez stocker les controleurs et mappeurs php de vos objets qui seront accessible via le routeur api.php présent dans le dossier pwa

Ainsi qu'un fichier smartmaker-api-prepend.php qui est utilisé pour factoriser du code et éviter d'avoir des entêtes php trop verbeux.

 Fichier api.php

C'est dans ce fichier que vous aurez à implémenter les différents points d'entrée sur l'API dédiée à votre application.

Le routeur PHP

Ce routeur php comprends la grammaire suivante:

  • Route::action
    • action pouvant être get post ou put (delete n'est pas encore implémenté)
  • le 1er argument de la fonction est le nom du point d'entrée que vous voulez sur votre api, ainsi Route::get('login' correspond à la requête http GET /login
  • l'argument suivant donne le nom de la classe PHP qui soit être sollicitée
  • le suivant contient le nom de la fonction à utiliser dans cette classe PHP
  • le dernier indique s'il s'agit d'une route pour laquelle il faut être authentifié ou pas

Grâce à ce routeur PHP il devient extrêmement facile de “suivre” les différentes actions possibles sur votre API !

Par exemple un GET /login appelle la fonction index de la classe AuthController et un POST /login appelle la fonction login de cette même classe …

Route::get('login',     AuthController::class, 'index');
Route::post('login',    AuthController::class, 'login');

Vous voulez implémenter un “logout” ? rien de plus simple: ajoutez une ligne dans api.php

Route::post('logout',   AuthController::class, 'logout', true);

Et implémentez la fonction logout dans votre classe AuthController …

	/**
	 * @api {post} /logout Logout
	 * @apiDescription Logout and close session
	 * @apiName PostLogout
	 * @apiGroup Auth
	 *
	 */
	public function logout($payload)
	{

Note: cette fonction est naturellement déjà implémentée nativement dans DoliMobile

Previous Next

Made with ❤ by CAP-REL · SmartMaker · GNU AGPL v3+
Code source · Faire un don
SmarMaker - Documentation
Traductions de cette page:
  • Français
  • Deutsch
  • English
  • Español
  • Italiano
  • Nederlands

Table of Contents

Table des matières

  • DoliMobile - Back (PHP)
    •  Fichier api.php
      • Le routeur PHP
  • SmartAuth
  • SmartMaker - Back (PHP)
    • Mapping Dolibarr - React
  • SmartMaker - Front (React)
    • Animations de pages
    • Architecture
    • Astuces
    • Calendar
    • Composants et pages
    • Configuration du Provider
    • Debug et Logs
    • Hooks SmartCommon
    • PWA (Progressive Web App)
    • Requêtes API
    • Routage
    • SmartCommon
    • Stockage de données
    • Synchronisation offline
    • Thèmes
    • Traductions
  • HowTo - Pas à pas - Votre première application
    • Développement PHP (back)
    • Développement React (front)
    • Première étape : Module Builder Dolibarr
    • SmartAuth
    • SmartBoot : Un squelette prêt à l'emploi
  • Formation SmartMaker
    • Module 1 : Fondamentaux JavaScript ES6+
      • Chapitre 1 : Variables et Scope
      • Chapitre 2 : Fonctions
      • Chapitre 3 : Programmation Asynchrone
      • Chapitre 4 : Modules ES6
    • Module 2 : Introduction à React
      • Chapitre 1 : Philosophie React
      • Chapitre 2 : JSX
      • Chapitre 3 : Composants
    • Module 3 : Hooks React Fondamentaux
      • Chapitre 1 : useState
      • Chapitre 2 : useEffect
      • Chapitre 3 : useRef
      • Chapitre 4 : useContext
    • Module 4 : React Avancé
      • Chapitre 1 : useCallback et useMemo
      • Chapitre 2 : Custom Hooks
      • Chapitre 3 : Redux et Redux Toolkit
    • Module 5 : Architecture SmartMaker
      • Chapitre 1 : Structure du projet
      • Chapitre 2 : Configuration
      • Chapitre 3 : Flux de données
    • Module 6 : SmartCommon - Composants
      • Chapitre 1 : Mise en page
      • Chapitre 2 : Navigation
      • Chapitre 3 : Formulaires
      • Chapitre 4 : Affichage
    • Module 7 : SmartCommon - Hooks
      • Chapitre 1 : useApi
      • Chapitre 2 : Gestion d'état
      • Chapitre 3 : Hooks utilitaires
      • Chapitre 4 : Synchronisation Offline
    • Module 8 : Backend API (PHP)
      • Chapitre 1 : Routage
      • Chapitre 2 : Controllers
      • Chapitre 3 : Mappers
      • Extrafields et formulaires dynamiques
    • Module 9 : Intégration complète
      • Chapitre 1 : Backend
      • Chapitre 2 : Frontend
      • Chapitre 3 : Déploiement
    • Module 10 : Fonctionnalités avancées
      • Chapitre 1 : Mode offline
      • Chapitre 2 : Internationalisation (i18n)
      • Chapitre 3 : Autres fonctionnalités
    • Module 11 : Bonnes pratiques
  • Démonstration
  • Start
  • Composants et pages
  • Afficher le texte source
  • Anciennes révisions
  • Liens de retour
  • Haut de page