Coder Social home page Coder Social logo

baelmyhu / chamilo-lms Goto Github PK

View Code? Open in Web Editor NEW

This project forked from chamilo/chamilo-lms

0.0 0.0 0.0 546.46 MB

Chamilo is a learning management system focusing on ease of use, re-usability, collaboration and sharing.

Home Page: http://www.chamilo.org

License: GNU General Public License v3.0

PHP 63.68% JavaScript 28.69% HTML 1.83% CSS 3.09% PowerShell 0.01% Ruby 0.01% Shell 0.01% Java 0.94% Smarty 1.65% Python 0.01% Gherkin 0.10% Roff 0.01% CoffeeScript 0.01%

chamilo-lms's People

Contributors

albert1t0 avatar aligot-cblue avatar angelfqc avatar aragonc avatar baelmyhu avatar cesarperales avatar cfasanando avatar christianbeeznest avatar cmcatalan avatar danbarretodev avatar diegoe avatar emarguin avatar enriquealcaraz avatar fragote avatar ilosada avatar ivantcholakov avatar jloguercio avatar jmontoyaa avatar klevron avatar marvil07 avatar nicoducou avatar noeldieschburg avatar nosolored avatar omgsunshine avatar pcool avatar polycapa avatar rafatga avatar scrutinizer-auto-fixer avatar ycastillo avatar ywarnier avatar

Watchers

 avatar  avatar

chamilo-lms's Issues

Création de groupe lié à une classe inscrite à un cours (éventuellement dans une session)

Lors de l'inscription d'une classe à un cours, la population du cours évolue en fonction de la population de la classe, mais pas les groupes créé à partir d'une classe.
Ajout d'une table c_group_rel_usergroup pour garder le lien groupe - classe et faire évoluer le groupe pareillement à la classe.

  • ajout d'une colonne classe liée dans la vue groupe
  • si la classe est désinscrite du cours, le groupe lié est vidé des membres de la classe, le groupe est supprimé si vide, et s'il contient encore des membres (ajoutés éventuellement à la main) le lien avec la classe est enlevé
  • dans le cas d'un cours de session, on pourra créer des groupes en fonction des classes inscrite à la session, et une modification des membres de la classe sera répercutée sur la population des groupes

image

  • indication du nombre de personne dans le cours provenant de la classe lors de la création d'un groupe en fonction d'une classe
    image

Table c_quiz_question, champ picture contient le nom du fichier, remplacer par l'id du document.

L'image des questions Zone sur images est nommée quiz-xxx.jpg (xxx=id de la question) et stockée dans document/images. L'info est stockée dans la table c_quiz_question.picture et contient le nom de fichier.
Ce n'est pas très élégant et pose soucis dans les gros backup/restore de cours, malgré un fix spécial hotspoty dans main/coursecopy/classes/CourseRestorer.class.php, qui n'est pas suffisant pour tous les cas.

Solution (sans modification de la DB) :

  • nommer l'image document.images/quiz-xxx.jpg (avec xxx unique = time() UTC ne dépendant pas de l'id de la question)
  • stocker dans le champ picture l'id du document et non le nom de fichier
  • modifier main/coursecopy/classes/CourseRestorer.class.php pour standardiser le process de restore des question Zone sur image

note :

  • la compatibilité avec la version picture=nom_de_fichier est assurée pour la lecture des questions
  • un script simple permet de remplacer les picture>nom_de_fichier par picture>id_du_document

Améliorer la cohérence du lien classes <-> groupes <-> sessions

Dans la version actuelle la création de groupes dans un cours en fonction de la classe est un oneShot; Si la population de classe évolue, cela n'est pas pris en compte dans les groupes créé dans les cours pour coller à la classe.

Avec cette amélioration, la population des groupes provenant d'une classe suis les changements de population (ajout / retrait) de la classe.

De la même façon dans le cas des sessions, on peut créer des groupes dans le cours de session en fonction des classes inscrites à la session.

Gestion des cas limites :

  • si la classe est désinscrite du cours, les groupes seront vidés des membres de la classe et supprimés s'ils sont vides (ie, sauf si une personne n'appartenant pas à la classe est toujours dans le groupe, celui-ci ne sera pas supprimé)
  • affichage du lien groupe <-> classe dans l'interface des groupes
    image
  • affichage du nombre de personne dans la cours/la classe (peut être différent si un utilisateur de la classe est désinscrit du cours) et aperçu des membres de la classe accessible via la vue Classe du cours
    image
    image
  • un utilisateur ne sera pas désinscrit d'un cours après désinscription de sa classe au cours, dans le cas ou il est encore inscrit au cours par une autre classe.

Ajout dans la DB
CREATE TABLE c_group_rel_usergroup( idint(10) unsigned NOT NULL AUTO_INCREMENT, c_idint(11) NOT NULL, session_idint(11) NOT NULL, group_idint(11) NOT NULL, usergroup_id int(11) NOT NULL, PRIMARY KEY (id,c_id) ) ENGINE=MyISAM DEFAULT CHARSET=utf8

Compilatio pour l'outil Travaux

Outil Compilatio

(KB1772)
Utiliser l'outil Compilatio pour détecter du plagiat dans l'outil Travaux des enseignants
Ajoute également la sélection multiple des travaux par case à cocher.

Vue prof

image

Dans l'admin de la PF

Prévu une place pour tous les outils de détection du plagiat
image

Changement de la DB

Prévu pour tous les outils de détection du plagiat en commençant par
c_plagiarism_.................
Ce n'est pas un plugin, mais dans la DB des cours.
À la vue du nombre d'outils de détection du plagiat, cela ajoutera une table par outil, à priori,
exemple
c_plagiarism_compilatio_docs
c_plagiarism_turnitin_docs

CREATE TABLE c_plagiarism_compilatio_docs (
c_id int(11) NOT NULL,
id_doc int(10) NOT NULL,
compilatio_id varchar(32) NOT NULL,
PRIMARY KEY (c_id,id_doc)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

INSERT INTO settings_current (id ,variable ,subkey ,type ,category ,selected_value ,title ,comment ,scope ,subkeytext ,access_url ,access_url_changeable, access_url_locked)
VALUES
(NULL , 'plagiarism_use_chx', NULL, 'radio', 'Plagiarism', 'false', 'PlagiarismUseTitle', 'PlagiarismUseComment', NULL , NULL , 1, 0, 0),
(NULL, 'compilatioParamKey', NULL, 'textfield', 'Plagiarism', '', 'compilatioParamKeyTitle', 'compilatioParamKeyComment', NULL, NULL, 1, 0, 0),
(NULL, 'compilatioParamURLSoap', NULL, 'textfield', 'Plagiarism', '', 'compilatioParamURLSoapTitle', 'compilatioParamURLSoapComment', NULL, NULL, 1, 0, 0),
(NULL, 'compilatioParamModeTransport', NULL, 'textfield', 'Plagiarism', '', 'compilatioParamModeTransportTitle', 'compilatioParamModeTransportComment', NULL, NULL, 1, 0, 0),
(NULL , 'compilatioParamWgetLogin', NULL , 'textfield', 'Plagiarism', '' , 'compilatioParamWgetLoginTitle', 'compilatioParamWgetLoginComment', NULL , NULL , 1, 0, 0),
(NULL, 'compilatioParamWgetPassword', NULL, 'textfield', 'Plagiarism', '', 'compilatioParamWgetPasswordTitle', 'compilatioParamWgetPasswordComment', NULL, NULL, 1, 0, 0),
(NULL, 'compilatioParamWgetURI', NULL, 'textfield', 'Plagiarism', '', 'compilatioParamWgetURITitle', 'compilatioParamWgetURIComment', NULL, NULL, 1, 0, 0),
(NULL, 'compilatioParamProxyPort', NULL, 'textfield', 'Plagiarism', '', 'compilatioParamProxyPortTitle', 'compilatioParamProxyPortComment', NULL, NULL, 1, 0, 0),
(NULL, 'compilatioParamProxyHost', NULL, 'textfield', 'Plagiarism', '', 'compilatioParamProxyHostTitle', 'compilatioParamProxyHostComment', NULL, NULL, 1, 0, 0);

INSERT INTO settings_options (id ,variable ,value ,display_text)
VALUES
(NULL , 'plagiarism_use_chx', 'false', 'No'),
(NULL , 'plagiarism_use_chx', 'compilatio', 'Compilatio');

Modification de l'interface d'annonce

  • affichage d'un addGroupMultiSelect séparé si le cours contient des groupes
  • affichage d'un addGroupMultiSelect séparé si le cours contient des classes
  • ajout de libellé de sous sections dans la page
  • déplacer la partie Tags
  • ne pas afficher 'Envoyer à tous les utilisateurs des sessions' si le cours n'a pas de session
  • vérification des destinataires afin que chaque destinataire ne reçoivent qu'une fois l'annonce (correction d'un bug)

image
image

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.