Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[PR#160] Big update #158

Closed
remrem opened this issue Nov 27, 2016 · 10 comments
Closed

[PR#160] Big update #158

remrem opened this issue Nov 27, 2016 · 10 comments

Comments

@remrem
Copy link
Contributor

remrem commented Nov 27, 2016

PR #160 changelog

  1. install.php

    • debug
    • remise en place du test pour le reset login (toujours utile pour dev/test/debug)
  2. favatar.php

    • debug
    • POC : remplace les http 400 par un png de 10x10px rouge (à voir à l'usage)
    • bascule sur la fonction create_folder() + test sur création du dossier de stockage
    • move $targetDir aprés les tests qui peuvent conduire à un exit() (pas de casse constaté) (micro optimisation)
    • modification des répertoire des caches [vhost ready]
    • aprés analyse et test sommaire, semble [vhost ready]
  3. petits fix de typo à droite et à gauche

  4. define

  5. error log
    add d'un POC dans /inc/boot.php pour un systéme de log des erreurs via ini_set('error_log',...) et l'ajout d'une nouvelle variable globale $GLOBALS['errors']
    je suis pas très convaincu par la méthode :

    • log dans /var/php-error.log, path à définir /var/log/ ? ou par vhost /var/{vhost}/log/?
    • un log_rotate ne serait pas mal non ? genre : php-error.log -> YYYY-MM-DD-php-error.log
    • en changeant la valeur de error_log, quid des éventuels systémes de monitoring utilisant les logs PHP point de vue serveur ?
  6. Addons [vhost ready] (core)

    • complete refactor
    • [addon] cache pour le load des addons #148 add du cache des addons (par vhost)
    • upd de la sauvegarde des settings : .ini -> .php
    • [WIP] Addons #134 & [addon] versionning compatibilité #127 add d'un controle du controle de version compliancy cf. \inc\addons.php -> addon_test_compliancy() à valider.
    • [rules][addon] conventions #156 (2°pt) add de tests sur le minimum recquis pour $declaration via la fonction addon_test_declaration()
    • [TMP] move all functions from \admin\inc\addons.php -> \inc\addons.php (marre de jongler entre 2 fichiers pour le refactor/debug des addons)
    • add un petit script JS dans \admin\inc\addons.php pour tester une présentation différente (il me semble que @BoboTiG avait lancé l'idée...)
    • upd du path du cache d'un addon DIR_VHOST_ADDONS/{addon_id}/cache/ -> DIR_VHOST_CACHE/addon-{$addon_id}/, ça permet de regrouper tout les caches au sein du dossier DIR_VHOST_CACHE et ça réduit le nombre de niveau du path
    • add addon_get_translation() ajout d'un fallback vers la langue EN
    • upd addon_form_edit_settings() to use addon_get_translation()
    • debug
    • début de mise en conformité avec [WIP] Addons #134 [addon] versionning compatibilité #127 [rules][addon] conventions #156 (les addons ne fonctionneront plus)
  7. ADDONS_DB upd pour /databases/addons.php -> /var/{vhost}/databases/addons.php [vhost ready]

  8. feeds

    • Cache: change for a complete independant cache folder #152 le cache des flux est maintenant dans `/var/{vhost}/cache/ [vhost ready]
    • upd de nom pour le cache de niveau 1 des feeds cache_rss_array.dat -> cache1_feed.dat
    • upd de nom pour le cache de niveau 2 des feeds c_{rss|atom}_{random}.dat -> cache2_{rss|atom}_{random}.dat
  9. theme defaut

    • Atom/RSS feeds URL #153 check ?format={atom|rss} -> retour à rss.php et atom.php (dans le themes defaut pas dans les scripts de flux)
    • add de class="{tpl_class}" dans <body>
  10. HTTP header

    • http header #128 add de quelques http_response_code(404) dans index.php, à vérifier qu'il ne manque pas des HTTP 404 sur certains cas, et si pas de faux positif
    • http header #128 add d'une fonction http_response_code() qui peux servir de fallback, je la mets au cas où... Si pas utilisée d'ici la freeze 3.7, on vire...
  11. refactor

    • add /admin/inc/sqli.php
    • move some functions /inc/sqli.php to /admin/inc/sqli.php
  12. langs files

  13. create_folder

  14. j'en oublie

  15. vhosts

  16. core

    • upd, remplacement de $GLOBALS['racine'] par URL_VAR (url du blog) sauf dans ce qui touche la partie formulaire des preferences/settings
  17. BoboTiG/blogotext-addons (à venir, lundi)

  18. VALIAS [POC] (vu en privé avec/par @BoboTiG (serait bien une issue ;))
    VALIAS ? ça vous permet de mettre plusieurs URL/domain/sous domaine sur le même vhost et d'afficher les mêmes théme, image, article ...
    exemple : blog-1.fr et blog-2.fr sur le même vhost
    C'est un POC, il s'agit de démontrer la faisabilité, il n'y a pas de gestion des addons, des préférences (...)
    idem pour la partie admin, préférez passer par le vhost.
    Au cas où le POC merdouille, supprimer (ou renommer) /var/blog-2.fr/settings/valias.php.

je n'ai pas fait de debug pour le coup

Petit exemple pour le [POC] (3.7) :

  • nous installons blogotext pour http://blog-1.fr/
  • au premier lancement BT va créer /var/blog-1.fr/
  • vérifier que le site fonctionne et si tout est ok :
  • déclarez le valias en créant le fichier /var/localhost-blog-2/settings/valias.php
  • éditez /var/blog-2.fr/settings/valias.php pour y enregistrer :
<?php
$valias = 'http://blog-2.fr/';
$vhost = 'blog-1.fr'; // venant du host /var/blog-1.fr/
?>
  • rendez-vous sur http://blog-2.fr/ via votre navigateur préféré, vous devriez retrouvez tout votre blog 1
  • tester en créant un article sur blog 1 et vérifier qu'il aparait bien dans blog 2
  • supprimer (ou renommer) /var/blog-2.fr/settings/valias.php le blog 2 ne sera plus accessible

  • edit 1
    folder_secure_childs() >folder_secure_parents()
  • edit 2 2016-11-28 01:10
    commit
@remrem remrem changed the title [PR] Big update [PR#à venir] Big update Nov 27, 2016
@BoboTiG
Copy link
Collaborator

BoboTiG commented Nov 27, 2016

Je sens qu'elle va être lourde cette PR :)

@remrem remrem changed the title [PR#à venir] Big update [PR#160] Big update Nov 27, 2016
@remrem
Copy link
Contributor Author

remrem commented Nov 27, 2016

  1. create_folder ERREUR je vais commit pour corriger, mais à l'heure actuelle, ce ne sont pas les enfants qui sont ciblés, mais les parents .... my bad ...

@remrem remrem closed this as completed Nov 27, 2016
@remrem remrem reopened this Nov 27, 2016
@remrem
Copy link
Contributor Author

remrem commented Nov 27, 2016

Je trouve encore quelques bugs en testant des modifications sur les addons [POC], je commit quand j'ai fini le debug et je te dirai (@BoboTiG) quand le PR sera suffisamment stable

@remrem
Copy link
Contributor Author

remrem commented Nov 28, 2016

Upd commit

  1. Addons

  2. vhosts

  3. core

    • upd, remplacement de $GLOBALS['racine'] par URL_VAR (url du blog) sauf dans ce qui touche la partie formulaire des preferences/settings
  4. BoboTiG/blogotext-addons (à venir, lundi)

  5. VALIAS [POC] (vu en privé avec/par @BoboTiG (serait bien une issue ;))
    VALIAS ? ça vous permet de mettre plusieurs URL/domain/sous domaine sur le même vhost et d'afficher les mêmes théme, image, article ...
    exemple : blog-1.fr et blog-2.fr sur le même vhost
    C'est un POC, il s'agit de démontrer la faisabilité, il n'y a pas de gestion des addons, des préférences (...)
    idem pour la partie admin, préférez passer par le vhost.
    Au cas où le POC merdouille, supprimer (ou renommer) /var/blog-2.fr/settings/valias.php.

je n'ai pas fait de debug pour le coup

Petit exemple pour le [POC] (3.7) :

  • nous installons blogotext pour http://blog-1.fr/
  • au premier lancement BT va créer /var/blog-1.fr/
  • vérifier que le site fonctionne et si tout est ok :
  • déclarez le valias en créant le fichier /var/localhost-blog-2/settings/valias.php
  • éditez /var/blog-2.fr/settings/valias.php pour y enregistrer :
<?php
$valias = 'http://blog-2.fr/';
$vhost = 'blog-1.fr'; // venant du host /var/blog-1.fr/
?>
  • rendez-vous sur http://blog-2.fr/ via votre navigateur préféré, vous devriez retrouvez tout votre blog 1
  • tester en créant un article sur blog 1 et vérifier qu'il aparait bien dans blog 2
  • supprimer (ou renommer) /var/blog-2.fr/settings/valias.php le blog 2 ne sera plus accessible

@remrem
Copy link
Contributor Author

remrem commented Nov 28, 2016

J'ai foiré mon debug là, j'ai relevé quelques bugs, je prépare un fix pour cette nuit/demain matin, ne pas hésitez à mettre dans cette issue tout ce qui déconne ;)
J'adapterai mon fix en fonction des éventuels fix qui serait publié d'ici là ...

A. admin/addons ->problème de filtre qui ne s'applique pas ou retourne des erreurs :/

@BoboTiG
Copy link
Collaborator

BoboTiG commented Nov 28, 2016

(Je mettrai à jour ce commentaire pour les autres trouvailles.)

  1. [addons] La page /admin/addon-settings.php?addon=calendar il manque un bouton "Annuler".
  2. [addons] Quand j'active un addon, le cache n'est pas mis à jour, du coup on le voit activé partie admin mais désactivé partie publique.

@remrem
Copy link
Contributor Author

remrem commented Nov 28, 2016

  • fix (A.) liste des addons qui plante/ne retourne pas la bonne liste
  • fix (2.) refresh du cache lors de l'activation/desactivation des addons
  • fix (1.) ajout du bouton anuler manquant
  • add addon_form_edit_settings(), provenant de addon_form_edit_settings() (plus lisible)
  • upd affiche le boutton de purge du cache d'un addon uniquement si l'addon à un répertoire cache
  • upd addon_form_buttons() renvoie '' (empty) si pas de bouton à afficher
  • upd addon_get_settings() renvoie null si l'addon n'a pas de settings
  • fix addons_html_get_list_addons() affiche le lien vers addons-settings uniquement quand toutes les conditions sont réunies (settings ou buttons ou purge addon cache)
  • fix flux_all_kind_rss(), add a second arguments $invert
  • fix flux_all_kind_atom(), add a second arguments $invert

Certains points un peu "dirty", je ferais le propre quand on aura valider le tout ;)
J'essaye de documenter au mieux les proccess de core/addon pour cette semaine (si j'ai le temps)

@remrem
Copy link
Contributor Author

remrem commented Nov 28, 2016

encore quelques bugs pour : (2.) refresh du cache lors de l'activation/desactivation des addons
je suis dessus

@BoboTiG BoboTiG added this to the 3.7 milestone Nov 29, 2016
@remrem
Copy link
Contributor Author

remrem commented Nov 30, 2016

Je ne crée pas de nouvelle issue pour mon dernier PR (#166), quelques points sont relatifs à cette issue ;)

  • fix PR cf #158 #160 refresh du cache lors de l'activation/désactivation des addons (ça devrait ok maintenant)
    maintenant, addon_set_enabled() et addon_set_disabled() modifie en plus le status dans $GLOBALS['addons'][{addon}]['enabled']
  • upd refactor + renomage valider_form_module() > addon_ajax_check_request()
  • upd /admin/addons.php, pour la partie ajax (mutulalisation du check token + action avec autres requetes ajax de addons-settings
  • upd /admin/style/javascript.js
  • upd functions liées au header et footer du template admin
    • renommage
    • return html (donc, nécessite un echo), histoire de préparer doucement la séparation proccess/echo dans la partie admin
  • upd /admin/index.php
    • refactor des graphiques (optimisation et changement du comportement par défaut 'affiche au minimum 12 mois et non plus 96)
    • [POC] improvement dans le display des graphique (JS)
    • un peu d'optimisation (en dev, je passe de 0.04s à 0.03s pour la génération)
  • fix erreur de conversion dans return_bytes() ex: 1m => 1024 alors que 1048576 attendu
  • addons-settings, je tente plusieurs choses :
    • return de la requete "ajax" au format json
    • possibilité pour la fonction de callback des buttons-action d'être "bavard"
    • buttons-action dynamique (+ fallback form, tout comme avant)
    • animations/display des retour des buttons-action dynamique
    • essaye de réinialisation des checkbox
      pour tester, essayer de vider le cache d'un addon
  • template admin
  • j'en oublie :/

@remrem
Copy link
Contributor Author

remrem commented Nov 30, 2016

Quand c'est bon pour toi, tu peux clôturer, histoire d'avancer ;)

@BoboTiG BoboTiG closed this as completed Nov 30, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

No branches or pull requests

2 participants