JWT Token not found

Confronté à un soucis lors du passage d’un token JWT via Postman, je ne retrouvais pas mon parameter « Authorization » dans les headers.
J’ai donc cherché dans les vendors de Symfony, de Lexik JWT, dans mon security.yml… Mais ce n’était malheureusement pas ici.

La solution est simplement le vhost d’apache qui ne l’enregistrait pas.

Pour y remédier, j’ai du modifié pour faire un Rewrite :


ServerName mondomaine.com
DocumentRoot "chemin/vers/dossier/public/"

Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require local

Options -MultiViews
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ index.php [QSA,L]
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]


Et voilà, le header Authorization est bien intégré à la requête et l’authentification Symfony peut se faire.

Paramètre d’un nouveau module Prestashop

Fonction __construct()

$this->tab
Paramètre pris en compte :

« Tab » attribute Module section
administration Administration
advertising_marketing Advertising & Marketing
analytics_stats Analytics & Stats
billing_invoicing Billing & Invoices
checkout Checkout
content_management Content Management
dashboard Dashboard
emailing E-mailing
export Export
front_office_features Front Office Features
i18n_localization I18n & Localization
market_place Market Place
merchandizing Merchandizing
migration_tools Migration Tools
mobile Mobile
others Other Modules
payments_gateways Payments & Gateways
payment_security Payment Security
pricing_promotion Pricing & Promotion
quick_bulk_update Quick / Bulk update
search_filter Search & Filter
seo SEO
shipping_logistics Shipping & Logistics
slideshows Slideshows
smart_shopping Smart Shopping
social_networks Social Networks

Réindenter votre code sous Sublime Text

La lisibilité de votre code est primordiale si vous souhaitez vous y retrouver rapidement.
Sous Sublime Text, j’utilise un petit raccourci qui me permet de ré-indenter mon code rapidement.

Il faut aller dans Préférences => Key Bindings – User
Dans le fichier qui s’ouvre, vous pouvez y ajouter cette ligne :

Ici, j’utilise le Shift Alt et F pour ma combinaison, libre à vous de le modifier.

De plus, tout en bas à droite de votre fenêtre Sublime, vous pouvez cliquer sur Tab Size et choisir une indentation par espace ou tabulation, et le nombre d’espace créé. Pratique pour avoir des fichiers normés et propres !

Détecter l’affichage mobile en PHP

Une classe bien pratique a été créé pour la détection des smartphones et des tablettes en PHP.
Cette classe, disponible sous Github, est régulièrement mis à jour.

https://github.com/serbanghita/Mobile-Detect

Utilisation

Et ensuite les retours des tests :

Avec ça, on peut facilement faire une redirection vers le site mobile, proposer la redirection vers le site mobile, ou même afficher un CSS spécial…

Bref, y’a de quoi s’amuser!

Requête SQL pour trouver les doublons

Une simple requête qui permet d’identifier rapidement les doublons d’une table en une seule requête, ordonnée sur le nombre max d’occurrence trouvée.

Ajouter un champ personnalisé sous Prestashop [1.5-1.6]

Vous avez toujours voulu personnaliser votre boutique Prestashop avec un champ personnalisé de type textarea ?

Voici la solution enfin expliqué et détaillé.

Modification de la base de données

Allez sur votre base de données, et choisissez la table « _DB_PREFIX_product_lang » où _DB_PREFIX_ correspond à votre préfixe de base de données. Dans cette table, ajoutez un champ « monchampperso »

Override de la class Product

Ici, il y a deux cas de figure :

Soit vous avez une version 1.5.3.x ou inférieure

Il faudra alors éditer le fichier « /override/classes/Product.php » pour y ajouter ceci :

Soit vous avez une version 1.5.4 ou supérieure

Il faudra alors créer le fichier « /override/classes/Product.php »

Modification de la vue du backoffice

Votre site contient maintenant votre champ personnalisé « monchampperso ».

Il faut maintenant pouvoir modifier le formulaire du produit pour ajouter/modifier la valeur de ce champ.

Copiez le fichier admin/themes/default/template/controllers/products/informations.tpl et collez-le ensuite dans /override/controllers/admin/templates/products/informations.tpl

Vous pourrez désormais éditer ce fichier pour afficher votre champ.

Vers la ligne 299, vous devriez avoir une ligne du tableau qui se ferme (celui de la description.

Vous pouvez y ajouter celui de votre champ personnalisé :

Affichage du champ sur le front office

Après avoir modifié la valeur du champ en base, il ne reste plus qu’à l’afficher du côté Front.

Dans le dossier de votre thème, vous pouvez modifier le template « product.tpl » (/themes/votretheme/product.tpl)

Ajoutez où vous le souhaitez votre valeur :

 

Vider votre cache ainsi que l’autoload

Prestashop étant généralement mis en cache pour accélerer l’affichage en production, il vous sera presque nécessaire de vider le cache.

Pour les versions supérieurs à 1.5.5, il vous suffit d’aller dans l’administration de votre site, onglet Paramètre avancés, puis Performances, et de trouver le bouton Effacer le cache de Smarty et le cache de l’Autoload.

Pour les versions inférieures, il faut supprimer tout ce qui se trouve dans le dossier /cache/

Ne supprimez pas ce dossier mais bien l’intérieur pour éviter les soucis de réécriture et de droit de fichier, au cas où !