Posts made by Valery Fremaux

Ok, ok !!

langue tirée

Je l'empaquette (et le peaufine un peu) et il est à vous !!

Il fonctionne pour l'instant bien en console de commande :

un répertoire x_tools à rajouter à la racine de Moodle. Les outils sont dedans. Ils marchent correctement en invoquant le php en ligne de commande. Sous Unix on doit pouvoir utiliser la fooline (#!/bin/php) pour automatiser le départ du script mais je n'en suis pas sûr.

Outil en deux éléments :

Un scanner récursif de répertoire générique applyToDir.php qui s'utilise comme une commande et peut invoquer un outil à appliquer aux répertoires.

php applyToDir.php -h fonctionne clin d’oeil

-d <rep> : le répertoire d'où on part, relativement à x_tools
-c <tool> : le nom de la commande à appliquer au répertoire (sans .php)
-r : si présent, applique l'outil récursivement au sous arbre.

ex : php applyToDir.php -d ../mod/techproject -c collectI18nStrings

Collecte toutes les clefs du module techproject et dépose les clefs dans des fichiers <domain>.php.collected. la valeur de <domain> est le "nom du domaine de traduction", autrement dit le deuxième paramètre des commandes get_string ou print_string. 

ex : php applyToDir.php -d ../mod/techproject -c collectHelperCalls

collecte tous les appels à la fonction "helpbutton(...)" et produit les carcasses de fichiers html d'aide à écrire dans le répertoire help.collected.

ex : php applyToDir.php -d ../mod/techproject -c cleanup

Efface les fichiers de collecte. (à faire : nettoie les répertoires help.collected)

C'est un premier jet et nous pourrons largement développer cette palette d'outils avec des fonctions encore plus puissantes.

Tenez-moi au courant.

 

Merci Marie pour tes réflexions.

Sur la visibilité : Je pense que la logique Moodle doit l'emporter "par défaut". Mais comme nous passons par un formulaire de confirmation, rien ne m'empêche de donner le choix.

La commande en question déplace l'activité, elle ne la recopie pas (ce qui est un autre problème, celui du clonage). Le but est de pouvoir ranger des ressources, articles ou autres activités et les rerépartir dans des cours différents.

La synchronisation que tu demandes est déjà possible avec l'astuce du Lien d'Etienne. Je vais repasser un peu de temps pour republier proprement une solution générale pour cette ressource "lien" qui permet de produire un "raccourci" vers une activité quelconque à partir d'un cours quelconque (pourvu que les capacités de le faire soient acquises). Avec cette solution les ressources et activités sont réellement partagées entre plusieurs cours, mais seule la première inscription crée la vraie ressource. 

Merci encore de réfléchir avec moi.

Le plus sage est de faire un dump dans une nouvelle base de données, réexporter les deux tables seulement (vers SQL si elles sont pas trop lourdes) et les réimportées, ou utiliser la copie de table dans les fonctions "Opérations" de chaque table (sous phpMyAdmin en version assez récente, tous les transferts sont possibles).

Si ça ne résout rien, tu peux revenir à la situation précente en vidant à nouveau les deux tables.

Le fait que les tables soient vides ne signifie pas grand chose, sauf qu'aucun devoir n'est enregistré.

Il y a vraisemblablement une désinstallation incomplète des devrois qui s'est produit.

Il peut par contre trainer des modules enregistrés dans des cours qui sont des devoirs et se retrouvent orphelins. 

Pas de panique. Visiblement, le module devoir a l'air d'être toujours là avec toutes ses données.

Ce que tu as probablement perdu (pourquoi ?) c'est l'enregistrement de l'xistence de ce module dans Moodle.

Si tu as un accès à ta base de données, vérifie qu'il existe bien une ligne dans la table <prefix>modules (prefix vaut mdl_ par défaut) pour le module devoir dans cette table.

Si il existe, il faudra chercher autre chose.

Si une telle ligne n'existe pas (plus), il faut la reconstituer. Mais pour celà il faut retrouver quel "id" ce module avait. Si ton installation était "classique" l'id typique du module devoir est 1. Tu dois donc avoir une ligne comme le montre l'image, avec un visible à 1.

Tu peux la reconstituer à la main, la version étant celle inscrite dans le fichier /mod/assignement/version.php

Attachment pb_assignement.jpg

Moi ça marche parfaitement en survol, non je ne sais pas.

Il faut avant tout remercier Bibo (Hubert Zerbib) qui a eu l'initiative de faire cette demande.

J'ai encore probablement quelques améliorations à faire, notamment, pouvoir indiquer quelques exclusions dans le menu. Ce n'est pas forcément nécessaire d'y mentionner TOUS les cours et TOUTES les catégories.

J'y réfléchis. Bibo m'a demandé également de pouvoir ajouter quelques liens et/ou catégories en dur, à la volée. Je regarde ça également.