CINXE.COM

Accueil | Callisto Formation

<!DOCTYPE html> <html dir="ltr" lang="fr" xml:lang="fr"> <head> <title>Accueil | Callisto Formation</title> <link rel="shortcut icon" href="https://callisto-formation.fr/pluginfile.php/1/core_admin/favicon/64x64/1731225367/favicon%20callisto%20bleu.png" /> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <meta name="keywords" content="moodle, Accueil | Callisto Formation" /> <link rel="stylesheet" type="text/css" href="https://callisto-formation.fr/theme/yui_combo.php?rollup/3.17.2/yui-moodlesimple-min.css" /><script id="firstthemesheet" type="text/css">/** Required in order to fix style inclusion problems in IE with YUI **/</script><link rel="stylesheet" type="text/css" href="https://callisto-formation.fr/theme/styles.php/_s/boostplus_c09/1731225367_1730107625/all/chunk0" /> <script> //<![CDATA[ var M = {}; M.yui = {}; M.pageloadstarttime = new Date(); M.cfg = {"wwwroot":"https:\/\/callisto-formation.fr","homeurl":{},"sesskey":"WhshFXt3Ec","sessiontimeout":"28800","sessiontimeoutwarning":1200,"themerev":"1731225367","slasharguments":1,"theme":"boostplus_c09","iconsystemmodule":"core\/icon_system_fontawesome","jsrev":"1730107552","admin":"admin","svgicons":false,"usertimezone":"Europe\/Paris","language":"fr","courseId":1,"courseContextId":2,"contextid":2,"contextInstanceId":1,"langrev":1732072085,"templaterev":"1730107552"};var yui1ConfigFn = function(me) {if(/-skin|reset|fonts|grids|base/.test(me.name)){me.type='css';me.path=me.path.replace(/\.js/,'.css');me.path=me.path.replace(/\/yui2-skin/,'/assets/skins/sam/yui2-skin')}}; var yui2ConfigFn = function(me) {var parts=me.name.replace(/^moodle-/,'').split('-'),component=parts.shift(),module=parts[0],min='-min';if(/-(skin|core)$/.test(me.name)){parts.pop();me.type='css';min=''} if(module){var filename=parts.join('-');me.path=component+'/'+module+'/'+filename+min+'.'+me.type}else{me.path=component+'/'+component+'.'+me.type}}; YUI_config = {"debug":false,"base":"https:\/\/callisto-formation.fr\/lib\/yuilib\/3.17.2\/","comboBase":"https:\/\/callisto-formation.fr\/theme\/yui_combo.php?","combine":true,"filter":null,"insertBefore":"firstthemesheet","groups":{"yui2":{"base":"https:\/\/callisto-formation.fr\/lib\/yuilib\/2in3\/2.9.0\/build\/","comboBase":"https:\/\/callisto-formation.fr\/theme\/yui_combo.php?","combine":true,"ext":false,"root":"2in3\/2.9.0\/build\/","patterns":{"yui2-":{"group":"yui2","configFn":yui1ConfigFn}}},"moodle":{"name":"moodle","base":"https:\/\/callisto-formation.fr\/theme\/yui_combo.php?m\/1730107552\/","combine":true,"comboBase":"https:\/\/callisto-formation.fr\/theme\/yui_combo.php?","ext":false,"root":"m\/1730107552\/","patterns":{"moodle-":{"group":"moodle","configFn":yui2ConfigFn}},"filter":null,"modules":{"moodle-core-chooserdialogue":{"requires":["base","panel","moodle-core-notification"]},"moodle-core-event":{"requires":["event-custom"]},"moodle-core-formchangechecker":{"requires":["base","event-focus","moodle-core-event"]},"moodle-core-languninstallconfirm":{"requires":["base","node","moodle-core-notification-confirm","moodle-core-notification-alert"]},"moodle-core-tooltip":{"requires":["base","node","io-base","moodle-core-notification-dialogue","json-parse","widget-position","widget-position-align","event-outside","cache-base"]},"moodle-core-actionmenu":{"requires":["base","event","node-event-simulate"]},"moodle-core-popuphelp":{"requires":["moodle-core-tooltip"]},"moodle-core-handlebars":{"condition":{"trigger":"handlebars","when":"after"}},"moodle-core-lockscroll":{"requires":["plugin","base-build"]},"moodle-core-notification":{"requires":["moodle-core-notification-dialogue","moodle-core-notification-alert","moodle-core-notification-confirm","moodle-core-notification-exception","moodle-core-notification-ajaxexception"]},"moodle-core-notification-dialogue":{"requires":["base","node","panel","escape","event-key","dd-plugin","moodle-core-widget-focusafterclose","moodle-core-lockscroll"]},"moodle-core-notification-alert":{"requires":["moodle-core-notification-dialogue"]},"moodle-core-notification-confirm":{"requires":["moodle-core-notification-dialogue"]},"moodle-core-notification-exception":{"requires":["moodle-core-notification-dialogue"]},"moodle-core-notification-ajaxexception":{"requires":["moodle-core-notification-dialogue"]},"moodle-core-blocks":{"requires":["base","node","io","dom","dd","dd-scroll","moodle-core-dragdrop","moodle-core-notification"]},"moodle-core-maintenancemodetimer":{"requires":["base","node"]},"moodle-core-dragdrop":{"requires":["base","node","io","dom","dd","event-key","event-focus","moodle-core-notification"]},"moodle-core_availability-form":{"requires":["base","node","event","event-delegate","panel","moodle-core-notification-dialogue","json"]},"moodle-backup-confirmcancel":{"requires":["node","node-event-simulate","moodle-core-notification-confirm"]},"moodle-backup-backupselectall":{"requires":["node","event","node-event-simulate","anim"]},"moodle-course-management":{"requires":["base","node","io-base","moodle-core-notification-exception","json-parse","dd-constrain","dd-proxy","dd-drop","dd-delegate","node-event-delegate"]},"moodle-course-util":{"requires":["node"],"use":["moodle-course-util-base"],"submodules":{"moodle-course-util-base":{},"moodle-course-util-section":{"requires":["node","moodle-course-util-base"]},"moodle-course-util-cm":{"requires":["node","moodle-course-util-base"]}}},"moodle-course-categoryexpander":{"requires":["node","event-key"]},"moodle-course-dragdrop":{"requires":["base","node","io","dom","dd","dd-scroll","moodle-core-dragdrop","moodle-core-notification","moodle-course-coursebase","moodle-course-util"]},"moodle-form-shortforms":{"requires":["node","base","selector-css3","moodle-core-event"]},"moodle-form-passwordunmask":{"requires":[]},"moodle-form-dateselector":{"requires":["base","node","overlay","calendar"]},"moodle-question-preview":{"requires":["base","dom","event-delegate","event-key","core_question_engine"]},"moodle-question-searchform":{"requires":["base","node"]},"moodle-question-chooser":{"requires":["moodle-core-chooserdialogue"]},"moodle-availability_completion-form":{"requires":["base","node","event","moodle-core_availability-form"]},"moodle-availability_date-form":{"requires":["base","node","event","io","moodle-core_availability-form"]},"moodle-availability_grade-form":{"requires":["base","node","event","moodle-core_availability-form"]},"moodle-availability_group-form":{"requires":["base","node","event","moodle-core_availability-form"]},"moodle-availability_grouping-form":{"requires":["base","node","event","moodle-core_availability-form"]},"moodle-availability_profile-form":{"requires":["base","node","event","moodle-core_availability-form"]},"moodle-mod_assign-history":{"requires":["node","transition"]},"moodle-mod_quiz-quizbase":{"requires":["base","node"]},"moodle-mod_quiz-toolboxes":{"requires":["base","node","event","event-key","io","moodle-mod_quiz-quizbase","moodle-mod_quiz-util-slot","moodle-core-notification-ajaxexception"]},"moodle-mod_quiz-util":{"requires":["node","moodle-core-actionmenu"],"use":["moodle-mod_quiz-util-base"],"submodules":{"moodle-mod_quiz-util-base":{},"moodle-mod_quiz-util-slot":{"requires":["node","moodle-mod_quiz-util-base"]},"moodle-mod_quiz-util-page":{"requires":["node","moodle-mod_quiz-util-base"]}}},"moodle-mod_quiz-autosave":{"requires":["base","node","event","event-valuechange","node-event-delegate","io-form"]},"moodle-mod_quiz-questionchooser":{"requires":["moodle-core-chooserdialogue","moodle-mod_quiz-util","querystring-parse"]},"moodle-mod_quiz-modform":{"requires":["base","node","event"]},"moodle-mod_quiz-dragdrop":{"requires":["base","node","io","dom","dd","dd-scroll","moodle-core-dragdrop","moodle-core-notification","moodle-mod_quiz-quizbase","moodle-mod_quiz-util-base","moodle-mod_quiz-util-page","moodle-mod_quiz-util-slot","moodle-course-util"]},"moodle-message_airnotifier-toolboxes":{"requires":["base","node","io"]},"moodle-block_xp-rulepicker":{"requires":["base","node","handlebars","moodle-core-notification-dialogue"]},"moodle-block_xp-filters":{"requires":["base","node","moodle-core-dragdrop","moodle-core-notification-confirm","moodle-block_xp-rulepicker"]},"moodle-block_xp-notification":{"requires":["base","node","handlebars","button-plugin","moodle-core-notification-dialogue"]},"moodle-filter_glossary-autolinker":{"requires":["base","node","io-base","json-parse","event-delegate","overlay","moodle-core-event","moodle-core-notification-alert","moodle-core-notification-exception","moodle-core-notification-ajaxexception"]},"moodle-filter_mathjaxloader-loader":{"requires":["moodle-core-event"]},"moodle-editor_atto-editor":{"requires":["node","transition","io","overlay","escape","event","event-simulate","event-custom","node-event-html5","node-event-simulate","yui-throttle","moodle-core-notification-dialogue","moodle-core-notification-confirm","moodle-editor_atto-rangy","handlebars","timers","querystring-stringify"]},"moodle-editor_atto-plugin":{"requires":["node","base","escape","event","event-outside","handlebars","event-custom","timers","moodle-editor_atto-menu"]},"moodle-editor_atto-menu":{"requires":["moodle-core-notification-dialogue","node","event","event-custom"]},"moodle-editor_atto-rangy":{"requires":[]},"moodle-report_eventlist-eventfilter":{"requires":["base","event","node","node-event-delegate","datatable","autocomplete","autocomplete-filters"]},"moodle-report_loglive-fetchlogs":{"requires":["base","event","node","io","node-event-delegate"]},"moodle-gradereport_history-userselector":{"requires":["escape","event-delegate","event-key","handlebars","io-base","json-parse","moodle-core-notification-dialogue"]},"moodle-qbank_editquestion-chooser":{"requires":["moodle-core-chooserdialogue"]},"moodle-tool_capability-search":{"requires":["base","node"]},"moodle-tool_lp-dragdrop-reorder":{"requires":["moodle-core-dragdrop"]},"moodle-tool_monitor-dropdown":{"requires":["base","event","node"]},"moodle-assignfeedback_editpdf-editor":{"requires":["base","event","node","io","graphics","json","event-move","event-resize","transition","querystring-stringify-simple","moodle-core-notification-dialog","moodle-core-notification-alert","moodle-core-notification-warning","moodle-core-notification-exception","moodle-core-notification-ajaxexception"]},"moodle-atto_accessibilitychecker-button":{"requires":["color-base","moodle-editor_atto-plugin"]},"moodle-atto_accessibilityhelper-button":{"requires":["moodle-editor_atto-plugin"]},"moodle-atto_align-button":{"requires":["moodle-editor_atto-plugin"]},"moodle-atto_bold-button":{"requires":["moodle-editor_atto-plugin"]},"moodle-atto_charmap-button":{"requires":["moodle-editor_atto-plugin"]},"moodle-atto_clear-button":{"requires":["moodle-editor_atto-plugin"]},"moodle-atto_collapse-button":{"requires":["moodle-editor_atto-plugin"]},"moodle-atto_emojipicker-button":{"requires":["moodle-editor_atto-plugin"]},"moodle-atto_emoticon-button":{"requires":["moodle-editor_atto-plugin"]},"moodle-atto_equation-button":{"requires":["moodle-editor_atto-plugin","moodle-core-event","io","event-valuechange","tabview","array-extras"]},"moodle-atto_h5p-button":{"requires":["moodle-editor_atto-plugin"]},"moodle-atto_html-beautify":{},"moodle-atto_html-button":{"requires":["promise","moodle-editor_atto-plugin","moodle-atto_html-beautify","moodle-atto_html-codemirror","event-valuechange"]},"moodle-atto_html-codemirror":{"requires":["moodle-atto_html-codemirror-skin"]},"moodle-atto_image-button":{"requires":["moodle-editor_atto-plugin"]},"moodle-atto_indent-button":{"requires":["moodle-editor_atto-plugin"]},"moodle-atto_italic-button":{"requires":["moodle-editor_atto-plugin"]},"moodle-atto_link-button":{"requires":["moodle-editor_atto-plugin"]},"moodle-atto_managefiles-usedfiles":{"requires":["node","escape"]},"moodle-atto_managefiles-button":{"requires":["moodle-editor_atto-plugin"]},"moodle-atto_media-button":{"requires":["moodle-editor_atto-plugin","moodle-form-shortforms"]},"moodle-atto_noautolink-button":{"requires":["moodle-editor_atto-plugin"]},"moodle-atto_orderedlist-button":{"requires":["moodle-editor_atto-plugin"]},"moodle-atto_recordrtc-button":{"requires":["moodle-editor_atto-plugin","moodle-atto_recordrtc-recording"]},"moodle-atto_recordrtc-recording":{"requires":["moodle-atto_recordrtc-button"]},"moodle-atto_rtl-button":{"requires":["moodle-editor_atto-plugin"]},"moodle-atto_strike-button":{"requires":["moodle-editor_atto-plugin"]},"moodle-atto_subscript-button":{"requires":["moodle-editor_atto-plugin"]},"moodle-atto_superscript-button":{"requires":["moodle-editor_atto-plugin"]},"moodle-atto_table-button":{"requires":["moodle-editor_atto-plugin","moodle-editor_atto-menu","event","event-valuechange"]},"moodle-atto_title-button":{"requires":["moodle-editor_atto-plugin"]},"moodle-atto_underline-button":{"requires":["moodle-editor_atto-plugin"]},"moodle-atto_undo-button":{"requires":["moodle-editor_atto-plugin"]},"moodle-atto_unorderedlist-button":{"requires":["moodle-editor_atto-plugin"]}}},"gallery":{"name":"gallery","base":"https:\/\/callisto-formation.fr\/lib\/yuilib\/gallery\/","combine":true,"comboBase":"https:\/\/callisto-formation.fr\/theme\/yui_combo.php?","ext":false,"root":"gallery\/1730107552\/","patterns":{"gallery-":{"group":"gallery"}}}},"modules":{"core_filepicker":{"name":"core_filepicker","fullpath":"https:\/\/callisto-formation.fr\/lib\/javascript.php\/1730107552\/repository\/filepicker.js","requires":["base","node","node-event-simulate","json","async-queue","io-base","io-upload-iframe","io-form","yui2-treeview","panel","cookie","datatable","datatable-sort","resize-plugin","dd-plugin","escape","moodle-core_filepicker","moodle-core-notification-dialogue"]},"core_comment":{"name":"core_comment","fullpath":"https:\/\/callisto-formation.fr\/lib\/javascript.php\/1730107552\/comment\/comment.js","requires":["base","io-base","node","json","yui2-animation","overlay","escape"]},"mathjax":{"name":"mathjax","fullpath":"https:\/\/cdn.jsdelivr.net\/npm\/mathjax@2.7.9\/MathJax.js?delayStartupUntil=configured"}}}; M.yui.loader = {modules: {}}; //]]> </script> <title>Accueil | Callisto Formation</title> <meta name="keywords" content="e-learning, formations en ligne, science ouverte, métiers des bibliothèques, documentation, information scientifique et technique"> <meta name="description" content="Se former aux métiers des bibliothèques, à la documentation, à l’information scientifique, à la science ouverte."> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.7.2/font/bootstrap-icons.css"> <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css"> <script src="https://cdn.jsdelivr.net/gh/adamchaboryk/gifa11y@2.0.3/dist/js/gifa11y.umd.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/mermaid@11.4.0/dist/mermaid.min.js"></script> <style> /*** TEST ***/ /*** TABLEAU DE BORD ***/ #daily-info-content ul { display: none; } .collabs { background-color: #f3f6fb; } .collabs a { color: #000 !important; } .gestionnaires { background-color: #B7C0EE; } .gestionnaires a { color: #000 !important; } .admins { background-color: #292929; color: #fff; } .admins a, .admins h1, .admins h2, .admins h3, .admins h4, .admins h5, .admins h6 { color: #fff !important; } #daily-info-content a { color: #fff !important; } /*** TEST mes notes ***/ .grade-item { margin-bottom: 0.5rem; padding: 0.25rem 0; border-bottom: 1px solid rgba(255,255,255,0.1); } .grade-item:last-child { border-bottom: none; } .grade-value { font-weight: bold; margin-left: auto; } /*** TEST recent activities ***/ #custom-recent-items a { text-decoration: none; } #custom-recent-items a:hover { text-decoration: underline; } /*** TEST Badges ***/ #custom-badges-container { max-width: 100%; } #custom-badges-container ul { list-style-type: none; padding: 0; margin: 0; display: flex; flex-wrap: wrap; justify-content: space-around; } #custom-badges-container li { margin: 5px; text-align: center; } #custom-badges-container img { max-width: 100px; max-height: 100px; width: auto; height: auto; } #custom-badges-container a { display: inline-block; text-decoration: none; } /*** TEST arrangement {mycoursescards} tableau de bord ***/ #dashboard-my-courses-list { list-style-type: none; padding-left: 0; margin-bottom: 0.5rem; } #dashboard-my-courses-list li { margin-bottom: 0.5rem; } #dashboard-my-courses-list a { color: #ffffff; text-decoration: none; display: block; padding: 0.3rem 0.5rem; background-color: rgba(255, 255, 255, 0.1); border-radius: 0.25rem; transition: background-color 0.2s; } #dashboard-my-courses-list a:hover { background-color: rgba(255, 255, 255, 0.2); } .text-muted2 { color: rgba(255, 255, 255, 0.7) !important; } /************************/ /*** ACCESSIBILITY ***/ /*** SUPPR tooltip bootstrap ***/ .tooltip { display: none !important; } /*** ----------------------------------------------------------------------------------------***/ /* Ajoutez des règles média pour ajuster la taille des titres sur les petits écrans */ @media (max-width: 320px) { h1 { font-size: 2rem; } h2 { font-size: 1.75rem; } h3 { font-size: 1.5rem; } h4 { font-size: 1.25rem; } h5 { font-size: 1.1rem; } h6 { font-size: 1rem; } } /* Modifiez le padding pour le contenu principal sur les petits écrans */ @media (max-width: 320px) { #page #topofscroll { padding-left: 1rem; padding-right: 1rem; } } /* Ajustez la taille de police du menu déroulant pour les petits écrans */ @media (max-width: 320px) { .dropdown-menu { font-size: 0.8rem; min-width: 12rem; } } /* Ajoutez des règles pour gérer le débordement du contenu */ #page.drawers { overflow-x: hidden; } .container { max-width: 100%; } /* Ajoutez les règles pour le menu de navigation et le contenu des médias */ @media (max-width: 320px) { .navbar-nav .nav-link { font-size: 14px; padding: 0.5rem 0.3rem; } .tab-content h4 { font-size: 16px; } .media-body { font-size: 14px; } .media img { max-width: 100px; } } /* Assurez-vous que les images sont réactives */ img { max-width: 100%; height: auto; } /* Visibilité lien "fermer" dans le bandeau des CGU */ .eupopup-closebutton { font-weight: 700; opacity: 1; } /* Visibilité du focus */ /* Réinitialiser le style de focus par défaut sur tous les éléments focusables */ a:not([class]):focus { outline: 2px solid var(--secondary) !important; background-color: transparent !important; color: inherit !important; } /* Cacher message erreur gifa11y */ button.warning.v1 { display: none; } /* changement couleur sélection de texte */ ::-moz-selection { /* Code for Firefox */ color: #fff; background: #DF0B3D; } ::selection { color: #fff; background: #DF0B3D; } /* Rendre le back-to-top focusable + intitulé */ #btn-back-to-top:focus { outline: 2px solid #0056b3; outline-offset: 2px; } .back-to-top-sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border-width: 0; } /* Créer une liste pour les infos de cours dans page accueil (tabs bootstrap) */ .course-info li { margin-bottom: 5px; } .course-info i { margin-right: 5px; } /* Améliorer le focus des images lien dans "restons connectés" */ .img-link { display: inline-block; position: relative; width: 50px; /* Assurez-vous que cela correspond à la taille de votre image */ height: 50px; } .img-link img { display: block; width: 100%; height: 100%; border-radius: 50%; /* Pour des images rondes, retirez si vos images sont carrées */ } .img-link::after { content: ''; position: absolute; top: -4px; left: -4px; right: -4px; bottom: -4px; border-radius: 50%; /* Utilisez une valeur plus grande que celle de l'image pour un effet arrondi */ pointer-events: none; transition: box-shadow 0.3s ease; } .img-link:focus { outline: none; /* Supprime l'outline par défaut */ } .img-link:focus-visible::after { box-shadow: 0 0 0 3px #007bff; /* Couleur et épaisseur du focus */ } /*** OTHER ***/ html { scroll-behavior: smooth; } body, H1, H2, H3, H4, H5, H6 {font-family: 'Helvetica Neue', Helvetica, Open Sans, sans-serif; color:#292929;} /* Tailles de police pour les titres */ h1 { font-size: 2.5rem; } /* Ajustez selon vos besoins */ h2 { font-size: 2rem; } /* Ajustez selon vos besoins */ h3 { font-size: 1.75rem; font-weight: 500; } /* Ajustez selon vos besoins */ h4 { font-size: 1.5rem; font-weight: 500; } /* Ajustez selon vos besoins */ h5 { font-size: 1.25rem; font-weight: 400; } /* Ajustez selon vos besoins */ h6 { font-size: 1.1rem; font-weight: 400; } /* Ajustez selon vos besoins */ h1, h2, h3, h4, h5, h6 { text-wrap: balance; } p { text-wrap: pretty; } #page.drawers { margin-top: 0px; height: fit-content; } #page-header { padding-top : 30px; } /* Ajout icône lien connexion menu */ .usermenu .login { display: inline-block; } .usermenu .login a { display: flex; align-items: center; text-decoration: none; color: #090C9B; border: 1px solid #090C9B; border-radius: 20px; padding: 4px 15px 4px 4px; transition: all 0.3s ease; } .usermenu .login a::before { content: "\f090"; font-family: "FontAwesome"; font-size: 16px; display: flex; align-items: center; justify-content: center; width: 28px; height: 28px; background-color: #090C9B; color: white; border-radius: 50%; margin-right: 10px; transition: all 0.3s ease; } .usermenu .login a span { font-weight: normal; } .usermenu .login a:hover, .usermenu .login a:focus { background-color: #B7C0EE; color: #090C9B; border-color: #B7C0EE; } .usermenu .login a:hover::before, .usermenu .login a:focus::before { background-color: #090C9B; } /*** content area boostplus ***/ #topofscroll #contentcustomfooter {background-color:transparent;} /*** Footer ***/ #contentcustomfooter {background-color:#292929;} #contentcustomfooter .text_to_html {width: 100%;} #contentcustomfooter .text_to_html>.container { max-width: 1500px; } @media (min-width: 768px){ #page.drawers { padding-left: 0rem; padding-right: 0rem; } #page #topofscroll{ padding-left: 3rem; padding-right: 3rem;} } /* Remove the "?," bottom-right side */ footer#page-footer {display: none;} /*** modif menu principal ***/ .dropdown-menu { font-size: .85rem; border-radius: 0; min-width: 14rem; } /*** légende ***/ .caption { clear: both; font-size: 0.8rem; font-style: italic; text-align: right; margin: 10px 10px 10px 10px; } /*** modif résumé de section ***/ #section-0 .course-description-item, .summarytext { font-size: .9375rem; font-weight: 400; } .course-description-item, .summarytext { font-size: 1rem; font-weight: 500; } /*** modif lien glossaire ***/ a.glossary.autolink.concept { text-decoration: none; position: relative; color: inherit; } a.glossary.autolink.concept::after { content: ""; position: absolute; left: 0; bottom: -2px; width: 100%; height: 1px; border-bottom: 1px dotted; } /*CHANGE LOOK AND FEEL OF CATEGORY DISPLAY IN HOMEPAGE AND /COURSE PAGE */ #page-course-index-category .cat-icon i{ display:none } /*NOT DISPLAT HIDDEN ELEMENT WHEN EDITING IS OFF*/ #page-site-index .activity-item.hiddenactivity{display:none} #page-site-index.editing .activity-item.hiddenactivity{display:block} #page-site-index .secondary-navigation{display:none} #page-site-index.editing .secondary-navigation{display:block} #page-site-index #topofscroll{padding:0;margin-top: 3rem;} #page-site-index #page-header{display:none} #page-site-index.editing #page-header{display:block} /*** Assombrir courseimage header et augmentation lisibilité h1 ***/ .pagelayout-course #page-header { position: relative; background-attachment: fixed; min-height: 300px; } .pagelayout-course #page-header::before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border-radius: 0.5rem 0.5rem 0 0; background-color: rgba(0, 0, 0, 0.5); /* Ajustez la transparence ici */ z-index: 0; /* Placez-le au-dessus de l'image de fond */ } /* Votre texte va ici */ .pagelayout-course #page-header h1.h2 { position: relative; /* Pour que le texte apparaisse au-dessus du div transparent */ z-index: 2; /* Placez-le au-dessus du div transparent */ /* Autres styles de texte, comme la couleur, la taille, etc. */ background-color:transparent; text-shadow: 2px 2px 8px #000000; font-size: 2.3rem; } /*** Hilight h4 Urfist Cerise ***/ .cerise h4{ font-size:2rem; color:#fff; background-color:#B01200; padding: 10px 10px 10px 10px; } /*** Changement couleur statut remise de devoir ***/ .path-mod-assign div.submissionstatussubmitted { background-color: orange; } .path-mod-assign div.submissiongraded { color: white; font-weight: bold; background-color: green;} /*** Changement hover sur format image avec pop-up ***/ .format-grid .thegrid .grid-section.card { position: relative; overflow: hidden; transition: box-shadow 0.3s ease; } .format-grid .thegrid .grid-section.card:hover { box-shadow: 0 10px 20px rgba(0, 0, 0, 0.2); cursor: pointer; color: #007bff; text-decoration: underline; } /* SUPPR backtocourse pages spécifiques */ body[class*="cmid-18863"] header#page-header .w-100 .eno_backtocourse, body[class*="cmid-18249"] header#page-header .w-100 .eno_backtocourse, body[class*="cmid-15882"] header#page-header .w-100 .eno_backtocourse, body[class*="cmid-15852"] header#page-header .w-100 .eno_backtocourse, body[class*="cmid-14859"] header#page-header .w-100 .eno_backtocourse, body[class*="cmid-5058"] header#page-header .w-100 .eno_backtocourse, body[class*="cmid-3916"] header#page-header .w-100 .eno_backtocourse { display: none; } /* SUPPR HEADER pages catégorie cours body#page-course-index-category #page-header { display: none; }*/ body#page-course-index-category #action_bar { display: none; } /*** Suppression barre de recherche de tags ***/ #tag-search-box{ display:none; } #tag-search-results .tag_cloud { margin-top: 50px; } /*** Ajout underline aux liens textuels ***/ /* Appliquer le soulignement uniquement aux liens textuels */ a:not(.btn):not(img):not(button):not([type="button"]):not(.nav-link):not(.glossary.autolink.concept):not(.courseindex .courseindex-item .courseindex-link):not(.courseindex .courseindex-item .courseindex-chevron) { text-decoration: underline; text-underline-offset: 5px; /* Ajustez la valeur selon vos préférences */ } /* Assurez-vous de définir les règles pour les liens visités si nécessaire */ a:visited:not(.btn):not(img):not(button):not([type="button"]):not(.nav-link):not(.glossary.autolink.concept):not(.courseindex .courseindex-item .courseindex-link):not(.courseindex .courseindex-item .courseindex-chevron) { text-decoration: underline; /* ou 'none' si vous ne souhaitez pas de soulignement pour les liens visités */ } /*** AJOUT ICONE LIEN EXT SAUF LIEN IMG ***/ a[target="_blank"].no-image::after { display: inline-block; font-family: 'bootstrap-icons'; content: '\00a0\F143'; vertical-align: middle; } a[target="_blank"].no-image img { display: none; } /* RENDRE LE HEADER VISIBLE POUR PAGE-MESSAGE-INDEX */ #page-message-index #page-header { display: block; } /* SUPPR breadcrumb page tag #page-tag-index #page-navbar { display: none; }*/ /*** CUSTOM FIELD ***/ /* ajout icones course fields */ .customfield_author::before { content: "\f4d7"; font-family: 'bootstrap-icons'; display: inline-block; margin-right: 5px; } .customfield_production::before { content: "\f4de"; font-family: 'bootstrap-icons'; display: inline-block; margin-right: 5px; } .customfield_cible::before { content: "\f4cf"; font-family: 'bootstrap-icons'; display: inline-block; margin-right: 5px; } .customfield_date::before { content: "\F1FD"; font-family: 'bootstrap-icons'; display: inline-block; margin-right: 5px; } .customfield_maj::before { content: "\f116"; font-family: 'bootstrap-icons'; display: inline-block; margin-right: 5px; } .customfield_duration::before { content: "\f291"; font-family: 'bootstrap-icons'; display: inline-block; margin-right: 5px; } .customfield_preriquisite::before { content: "\F5F9"; font-family: 'bootstrap-icons'; display: inline-block; margin-right: 5px; } .customfield_license::before { content: "\f7e7"; font-family: 'bootstrap-icons'; display: inline-block; margin-right: 5px; } .customfield_citation::before { content: "\f6b0"; font-family: 'bootstrap-icons'; display: inline-block; margin-right: 5px; } .customfield_doi::before { content: "\f602"; font-family: 'bootstrap-icons'; display: inline-block; margin-right: 5px; } .customfield_ob::before { content: "\F4B5"; font-family: 'bootstrap-icons'; display: inline-block; margin-right: 5px; } .customfield_students::before { content: "\F4DC"; font-family: 'bootstrap-icons'; display: inline-block; margin-right: 5px; } .customfield_ia::before { content: "\F2ED"; font-family: 'bootstrap-icons'; display: inline-block; margin-right: 5px; } /*** affichage course fields ***/ .activity-item[data-activityname*="customfield"] { background-color: #f3f6fb; border-radius: 10px; } .activity-cf { background-color: #f3f6fb; border-radius: 10px; } .customfield { display: inline-block; /* Afficher les éléments sur la même ligne */ padding: 15px; } .customfieldname { font-weight: bold; } /*** Ajout margin après liste ***/ ul + * { margin-top: 15px; } ol + * { margin-top: 15px; } /*** texte à copier ***/ .texte-a-copier { border: 1px solid #ccc; padding: 10px; margin-bottom: 10px; background-color:#F3F6FB; } /* Hide all IdP button on login page beside "OAuth" and Renater */ .login-identityprovider-btn:nth-of-type(1n+3) { display: none; } /*** FOOTER ***/ .footerlist { list-style-type: none; margin: 0; padding: 0; } .footerlist2 { display: flex; list-style-type: none; margin: 0; padding: 0; } .hr-footer { border-top: 2px solid #bbb; margin-bottom: 20px; margin-top: 20px; } #contentcustomfooter a { color:#B7C0EE; } /*** FORMAT TUILE ***/ .format-tiles #section-0 .content .summary .no-overflow p { margin-bottom: 1rem; } /*** frame box shadow ***/ .box-shadow { border: 1px solid; padding: 10px; box-shadow: 5px 10px 8px #888888; margin-bottom:20px; } /*** div max width 800 px ***/ .mw800 { max-width:800px; } /*** Largeur form stat ***/ .custom-select { width: 150px; } /*** ANIMATION ***/ .animate { opacity: 0; transition: all 0.7s ease; transition-delay: 0.25s; } /* Fade Up */ .animate[data-animation="fade-up"] { transform: translateY(20px); } .animate[data-animation="fade-up"].visible { opacity: 1; transform: translateY(0); } /* Fade Down */ .animate[data-animation="fade-down"] { transform: translateY(-20px); } .animate[data-animation="fade-down"].visible { opacity: 1; transform: translateY(0); } /* Fade Left */ .animate[data-animation="fade-left"] { transform: translateX(-20px); } .animate[data-animation="fade-left"].visible { opacity: 1; transform: translateX(0); } /* Fade Right */ .animate[data-animation="fade-right"] { transform: translateX(20px); } .animate[data-animation="fade-right"].visible { opacity: 1; transform: translateX(0); } /* Rotate */ .animate[data-animation="rotate"] { transform: rotate(-10deg); } .animate[data-animation="rotate"].visible { opacity: 1; transform: rotate(0deg); } /* Scale */ .animate[data-animation="scale"] { transform: scale(0.5); } .animate[data-animation="scale"].visible { opacity: 1; transform: scale(1); } /* Flip */ .animate[data-animation="flip"] { transform: perspective(400px) rotateY(90deg); } .animate[data-animation="flip"].visible { opacity: 1; transform: perspective(400px) rotateY(0deg); } /* Zoom In */ .animate[data-animation="zoom-in"] { transform: scale(0.95); } .animate[data-animation="zoom-in"].visible { opacity: 1; transform: scale(1); } /* change bg-color menu */ .navbar { background-color: #f3f6fb !important; } .primary-navigation .nav-link:hover, .primary-navigation .nav-link:focus, .primary-navigation .dropdown-item:hover, .primary-navigation .dropdown-item:focus { background-color: var(--primary) !important; /* Gardez votre couleur de fond au survol */ color: #ffffff !important; /* Changez ceci en une couleur qui contraste bien, par exemple noir */ } /* Pour s'assurer que les liens dans les menus déroulants restent visibles */ .primary-navigation .dropdown-menu { background-color: #f3f6fb !important; } /*** NOUVEAUX COURS ***/ .new-course-card { background-color: #fff; border: 1px solid #e0e0e0; border-radius: 4px; overflow: hidden; margin-bottom: 20px; position: relative; } .new-course-card .row { display: flex; align-items: stretch; } .new-course-img-container { padding: 0; position: relative; overflow: hidden; } .new-course-img { width: 100%; height: 100%; object-fit: cover; } .new-course-ribbon { width: 100px; height: 100px; overflow: hidden; position: absolute; top: -5px; left: -5px; z-index: 1; } .new-course-ribbon::before, .new-course-ribbon::after { position: absolute; z-index: -1; content: ''; display: block; border: 3px solid #2980b9; border-top-color: transparent; border-left-color: transparent; } .new-course-ribbon::before { top: 0; right: 0; } .new-course-ribbon::after { bottom: 0; left: 0; } .new-course-ribbon span { position: absolute; display: block; width: 150px; padding: 8px 0; background-color: #DF0B3D; box-shadow: 0 3px 6px rgba(0,0,0,.1); color: #fff; font: 500 12px/1 'Lato', sans-serif; text-shadow: 0 1px 1px rgba(0,0,0,.2); text-align: center; left: -35px; top: 20px; transform: rotate(-45deg); } .new-course-body { padding: 15px; display: flex; flex-direction: column; justify-content: center; } .new-course-title { margin-bottom: 10px; } .new-course-category { margin-bottom: 0; } /*** GRADIENT BG ***/ .gradient-background { background-image: linear-gradient(to bottom, #EFF1FB, #FFFFFF); background-repeat: no-repeat; } /*** LOGIN PAGE ***/ .login-container .login-logo { margin: 0 auto 1rem auto; /* Centre horizontalement avec les marges auto */ max-width: 250px; width: 100%; /* Assure que le conteneur prend toute la largeur disponible */ } .login-container .login-logo img { width: 100%; /* L'image s'adapte à la largeur de son conteneur */ height: auto; /* Maintient le ratio de l'image */ } /* Élargir le conteneur de connexion */ .login-container { max-width: 700px !important; /* Override la valeur par défaut */ margin: 0 auto; } /* Ajuster la notice pour qu'elle s'aligne avec le nouveau conteneur */ .login-notice { max-width: 100%; margin-bottom: 20px; } /* Ajuster les boutons de connexion pour qu'ils s'alignent aussi */ .login-identityprovider-btn { width: 100%; } /*** DETAIL SUMMARY TITLES ***/ summary { padding: 0.5rem 0; cursor: pointer; } summary h2, summary h3, summary h4, summary h5, summary h6, summary .h2, summary .h3, summary .h4, summary .h5, summary .h6 { display: inline; margin: 0; vertical-align: middle; } /* Optionnel : ajuster la taille et l'espacement de la flèche */ summary::marker { margin-right: 0.5em; } /* Effet hover */ summary:hover { background-color: #f3f6fb; } /* Style quand le details est ouvert */ details[open] summary { border-bottom: 1px solid #dee2e6; margin-bottom: 1rem; } /*** MENU THEMES ENFANTS ***/ .navbar-brand { display: flex; flex-direction: column; align-items: flex-start; text-decoration: none !important; } .navbar-brand:hover { text-decoration: none !important; } .theme-label { position: relative; display: flex; align-items: center; font-size: 0.6em; margin-top: -8px; gap: 0.5em; width: 85%; } .theme-label::before, .theme-label::after { content: ''; height: 1px; flex: 1; } /*** ICONES MENU 1 ***/ li[data-key="home"] .nav-link::before { font-family: "bootstrap-icons"; content: "\F424"; margin-right: 6px; } li[data-key="myhome"] .nav-link::before { font-family: "bootstrap-icons"; content: "\F67A"; margin-right: 6px; } li[data-key="mycourses"] .nav-link::before { font-family: "bootstrap-icons"; content: "\F8FE"; margin-right: 6px; } li[data-key="siteadminnode"] .nav-link::before { font-family: "bootstrap-icons"; content: "\F3E2"; margin-right: 6px; } .courses-dropdown::before { font-family: "bootstrap-icons"; content: "\F3FB"; margin-right: 6px; } .spaces-dropdown::before { font-family: "bootstrap-icons"; content: "\F307"; /* open door */ margin-right: 6px; } </style> <meta name="viewport" content="width=device-width, initial-scale=1.0"> </head> <body id="page-site-index" class="limitedwidth format-site course path-site ie ie7 dir-ltr lang-fr yui-skin-sam yui3-skin-sam callisto-formation-fr pagelayout-frontpage course-1 context-2 notloggedin uses-drawers boostplus_c09"> <div class="toast-wrapper mx-auto py-0 fixed-top" role="status" aria-live="polite"></div> <div id="page-wrapper" class="d-print-block"> <div> <a class="sr-only sr-only-focusable" href="#maincontent">Passer au contenu principal</a> </div><script src="https://callisto-formation.fr/lib/javascript.php/1730107552/lib/polyfills/polyfill.js"></script> <script src="https://callisto-formation.fr/theme/yui_combo.php?rollup/3.17.2/yui-moodlesimple-min.js"></script><script src="https://callisto-formation.fr/lib/javascript.php/1730107552/lib/javascript-static.js"></script> <script> //<![CDATA[ document.body.className += ' jsenabled'; //]]> </script> <nav class="navbar fixed-top navbar-light bg-white navbar-expand" aria-label="Navigation du site"> <button class="navbar-toggler aabtn d-block d-md-none px-1 my-1 border-0" data-toggler="drawers" data-action="toggle" data-target="theme_boost-drawers-primary"> <span class="navbar-toggler-icon"></span> <span class="sr-only">Panneau latéral</span> </button> <a href="https://callisto-formation.fr/" class="navbar-brand d-none d-md-flex align-items-center m-0 mr-4 p-0 aabtn"> <img src="https://callisto-formation.fr/pluginfile.php/1/core_admin/logocompact/300x300/1731225367/logo%20callisto%20transparent%20slogan.png" class="logo mr-1" alt="Callisto Formation"> </a> <div class="primary-navigation"> <nav class="moremenu navigation"> <ul id="moremenu-6742c76eb1527-navbar-nav" role="menubar" class="nav more-nav navbar-nav"> <li data-key="home" class="nav-item" role="none" data-forceintomoremenu="false"> <a role="menuitem" class="nav-link active " href="https://callisto-formation.fr/" aria-current="true" > Accueil </a> </li> <li class="dropdown nav-item" role="none" data-forceintomoremenu="false"> <a class="dropdown-toggle nav-link " id="drop-down-6742c76eb070a" role="menuitem" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" href="#" aria-controls="drop-down-menu-6742c76eb070a" tabindex="-1" > Explorer </a> <div class="dropdown-menu" role="menu" id="drop-down-menu-6742c76eb070a" aria-labelledby="drop-down-6742c76eb070a"> <a class="dropdown-item" role="menuitem" href="https://callisto-formation.fr/mod/page/view.php?id=14859" tabindex="-1" > Tous les cours </a> <a class="dropdown-item" role="menuitem" href="https://callisto-formation.fr/tag/index.php?tc=3&amp;tag=Libre%20acc%C3%A8s" tabindex="-1" > Cours en libre accès </a> <a class="dropdown-item" role="menuitem" href="https://callisto-formation.fr/tag/index.php?tc=3&amp;tag=auto-inscription" tabindex="-1" > Cours en auto-inscription </a> <a class="dropdown-item" role="menuitem" href="https://callisto-formation.fr/tag/search.php?query&amp;tc=3&amp;go=Chercher" tabindex="-1" > Chercher par tag </a> </div> </li> <li class="dropdown nav-item" role="none" data-forceintomoremenu="false"> <a class="dropdown-toggle nav-link " id="drop-down-6742c76eb1321" role="menuitem" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" href="#" aria-controls="drop-down-menu-6742c76eb1321" tabindex="-1" > Espaces de formation </a> <div class="dropdown-menu" role="menu" id="drop-down-menu-6742c76eb1321" aria-labelledby="drop-down-6742c76eb1321"> <a class="dropdown-item" role="menuitem" href="https://callisto-formation.fr/?redirect=0&amp;theme=formation-crfcb" tabindex="-1" > CRFCB </a> <a class="dropdown-item" role="menuitem" href="https://callisto-formation.fr/?redirect=0&amp;theme=reseau-urfist" tabindex="-1" > Urfist </a> <a class="dropdown-item" role="menuitem" href="https://callisto-formation.fr/?redirect=0&amp;theme=inist-cnrs" tabindex="-1" > Inist-CNRS </a> <a class="dropdown-item" role="menuitem" href="https://callisto-formation.fr/?redirect=0&amp;theme=abes" tabindex="-1" > Abes </a> <div class="dropdown-divider"></div> <a class="dropdown-item" role="menuitem" href="https://callisto-formation.fr/?redirect=0&amp;theme=prepa-concours-crfcb" tabindex="-1" > Prépas concours CRFCB </a> <a class="dropdown-item" role="menuitem" href="https://callisto-formation.fr/?redirect=0&amp;theme=spoc-quero" tabindex="-1" > Spoc Quéro </a> <a class="dropdown-item" role="menuitem" href="https://callisto-formation.fr/?redirect=0&amp;theme=doranum" tabindex="-1" > DoRANum </a> <a class="dropdown-item" role="menuitem" href="https://callisto-formation.fr/?redirect=0&amp;theme=centre-ressources-urfist" tabindex="-1" > Centre de ressources Urfist </a> <a class="dropdown-item" role="menuitem" href="https://callisto-formation.fr/?redirect=0&amp;theme=formadoct" tabindex="-1" > FormaDoct </a> </div> </li> <li role="none" class="nav-item dropdown dropdownmoremenu d-none" data-region="morebutton"> <a class="dropdown-toggle nav-link " href="#" id="moremenu-dropdown-6742c76eb1527" role="menuitem" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false" tabindex="-1"> Plus </a> <ul class="dropdown-menu dropdown-menu-left" data-region="moredropdown" aria-labelledby="moremenu-dropdown-6742c76eb1527" role="menu"> </ul> </li> </ul> </nav> </div> <ul class="navbar-nav d-none d-md-flex my-1 px-1"> <!-- page_heading_menu --> </ul> <div id="usernavigation" class="navbar-nav ml-auto"> <div id="searchinput-navbar-6742c76eb5e416742c76ea7c337" class="simplesearchform"> <div class="collapse" id="searchform-navbar"> <form autocomplete="off" action="https://callisto-formation.fr/search/index.php" method="get" accept-charset="utf-8" class="mform form-inline searchform-navbar"> <input type="hidden" name="context" value="2"> <div class="input-group"> <label for="searchinput-6742c76eb5e416742c76ea7c337"> <span class="sr-only">Rechercher</span> </label> <input type="text" id="searchinput-6742c76eb5e416742c76ea7c337" class="form-control withclear" placeholder="Rechercher" aria-label="Rechercher" name="q" data-region="input" autocomplete="off" > <a class="btn btn-close" data-action="closesearch" data-toggle="collapse" href="#searchform-navbar" role="button" > <i class="icon fa fa-times fa-fw " aria-hidden="true" ></i> <span class="sr-only">Fermer</span> </a> <div class="input-group-append"> <button type="submit" class="btn btn-submit" data-action="submit"> <i class="icon fa fa-search fa-fw " aria-hidden="true" ></i> <span class="sr-only">Rechercher</span> </button> </div> </div> </form> </div> <a class="btn btn-open rounded-0 nav-link" data-toggle="collapse" data-action="opensearch" href="#searchform-navbar" role="button" aria-expanded="false" aria-controls="searchform-navbar" title="Activer/désactiver la saisie de recherche" > <i class="icon fa fa-search fa-fw " aria-hidden="true" ></i> <span class="sr-only">Activer/désactiver la saisie de recherche</span> </a> </div> <div class="divider border-left h-75 align-self-center mx-1"></div> <div class="d-flex align-items-stretch usermenu-container" data-region="usermenu"> <div class="usermenu"> <span class="login pl-2"> <a href="https://callisto-formation.fr/login/index.php">Connexion</a> </span> </div> </div> </div> </nav> <div class="drawer drawer-left drawer-primary d-print-none not-initialized" data-region="fixed-drawer" id="theme_boost-drawers-primary" data-preference="" data-state="show-drawer-primary" data-forceopen="0" data-close-on-resize="1"> <div class="drawerheader"> <button class="btn drawertoggle icon-no-margin hidden" data-toggler="drawers" data-action="closedrawer" data-target="theme_boost-drawers-primary" data-toggle="tooltip" data-placement="right" title="Fermer le tiroir" > <i class="icon fa fa-times fa-fw " aria-hidden="true" ></i> </button> </div> <div class="drawercontent drag-container" data-usertour="scroller"> <div class="list-group"> <a href="https://callisto-formation.fr/" class="list-group-item list-group-item-action active " aria-current="true"> Accueil </a> <a id="drop-down-1" href="#" class="list-group-item list-group-item-action icons-collapse-expand collapsed d-flex" data-toggle="collapse" data-target="#drop-down-menu-1" aria-expanded="false" aria-controls="drop-down-menu-1"> Explorer <span class="ml-auto expanded-icon icon-no-margin mx-2"> <i class="icon fa fa-caret-down fa-fw " aria-hidden="true" ></i> <span class="sr-only"> Replier </span> </span> <span class="ml-auto collapsed-icon icon-no-margin mx-2"> <i class="icon fa fa-caret-right fa-fw " aria-hidden="true" ></i> <span class="sr-only"> Déplier </span> </span> </a> <div class="collapse list-group-item p-0 border-0" role="menu" id="drop-down-menu-1" aria-labelledby="drop-down-1"> <a href="https://callisto-formation.fr/mod/page/view.php?id=14859" class="pl-5 bg-light list-group-item list-group-item-action">Tous les cours</a> <a href="https://callisto-formation.fr/tag/index.php?tc=3&amp;tag=Libre%20acc%C3%A8s" class="pl-5 bg-light list-group-item list-group-item-action">Cours en libre accès</a> <a href="https://callisto-formation.fr/tag/index.php?tc=3&amp;tag=auto-inscription" class="pl-5 bg-light list-group-item list-group-item-action">Cours en auto-inscription</a> <a href="https://callisto-formation.fr/tag/search.php?query&amp;tc=3&amp;go=Chercher" class="pl-5 bg-light list-group-item list-group-item-action">Chercher par tag</a> </div> <a id="drop-down-6" href="#" class="list-group-item list-group-item-action icons-collapse-expand collapsed d-flex" data-toggle="collapse" data-target="#drop-down-menu-6" aria-expanded="false" aria-controls="drop-down-menu-6"> Espaces de formation <span class="ml-auto expanded-icon icon-no-margin mx-2"> <i class="icon fa fa-caret-down fa-fw " aria-hidden="true" ></i> <span class="sr-only"> Replier </span> </span> <span class="ml-auto collapsed-icon icon-no-margin mx-2"> <i class="icon fa fa-caret-right fa-fw " aria-hidden="true" ></i> <span class="sr-only"> Déplier </span> </span> </a> <div class="collapse list-group-item p-0 border-0" role="menu" id="drop-down-menu-6" aria-labelledby="drop-down-6"> <a href="https://callisto-formation.fr/?redirect=0&amp;theme=formation-crfcb" class="pl-5 bg-light list-group-item list-group-item-action">CRFCB</a> <a href="https://callisto-formation.fr/?redirect=0&amp;theme=reseau-urfist" class="pl-5 bg-light list-group-item list-group-item-action">Urfist</a> <a href="https://callisto-formation.fr/?redirect=0&amp;theme=inist-cnrs" class="pl-5 bg-light list-group-item list-group-item-action">Inist-CNRS</a> <a href="https://callisto-formation.fr/?redirect=0&amp;theme=abes" class="pl-5 bg-light list-group-item list-group-item-action">Abes</a> <a href="https://callisto-formation.fr/?redirect=0&amp;theme=prepa-concours-crfcb" class="pl-5 bg-light list-group-item list-group-item-action">Prépas concours CRFCB</a> <a href="https://callisto-formation.fr/?redirect=0&amp;theme=spoc-quero" class="pl-5 bg-light list-group-item list-group-item-action">Spoc Quéro</a> <a href="https://callisto-formation.fr/?redirect=0&amp;theme=doranum" class="pl-5 bg-light list-group-item list-group-item-action">DoRANum</a> <a href="https://callisto-formation.fr/?redirect=0&amp;theme=centre-ressources-urfist" class="pl-5 bg-light list-group-item list-group-item-action">Centre de ressources Urfist</a> <a href="https://callisto-formation.fr/?redirect=0&amp;theme=formadoct" class="pl-5 bg-light list-group-item list-group-item-action">FormaDoct</a> </div> </div> </div> </div> <div id="page" data-region="mainpage" data-usertour="scroller" class="drawers drag-container"> <button type="button" class="btn btn-icon bg-secondary icon-no-margin" id="btn-back-to-top"> <i class="fa fa-arrow-up"></i> </button> <div id="topofscroll" class="main-inner"> <div class="drawer-toggles d-flex"> </div> <header id="page-header" class=" header-maxwidth d-print-none position-relative noimage " > <div class="w-100 " > <div class="d-flex flex-wrap"> <div class="ml-auto d-flex"> </div> <div id="course-header"> </div> </div> <div class="d-flex align-items-center"> <div class="mr-auto"> <div class="page-context-header"><div class="page-header-headings"><h1 class="h2">Callisto Formation</h1></div></div> </div> <div class="header-actions-container ml-auto" data-region="header-actions-container"> </div> </div> </div> </header> <div id="page-content" class="pb-3 d-print-block"> <div id="region-main-box"> <section id="region-main" aria-label="Contenu"> <span class="notifications" id="user-notifications"></span> <div id="contenthomebeforelogin" class="py-3"> <div class="container-fluid"> <div class="row"> <div class="text_to_html"><div style="background-image: url('https://documentation.abes.fr/divers/formations/fond-callisto.jpg'); background-color: #bad4eb; background-position: top; background-repeat: no-repeat; background-attachment: fixed; background-size: cover;"><div class="text-white" style="padding-top: 7rem; padding-bottom: 5rem; text-shadow: 2px 2px 4px #000000;"><div class="pl-5 pr-5"><img class="img-fluid atto_image_button_text-bottom" role="presentation" src="https://abes.fr/wp-content/uploads/2019/09/logo-abes-cercle-130x130.svg" alt="Logo ABES" width="130" height="130"><br><br><h1 style="color: #252c61; text-shadow: 2px 2px 4px #fff;">Bienvenue dans l'espace de formation à distance des réseaux de l'Abes</h1><p style="color: #252c61; text-shadow: 2px 2px 4px #fff;">L'Agence bibliographique de l'enseignement supérieur (<a href="https://abes.fr/" target="_blank" rel="noopener noreferrer" data-stringify-link="https://abes.fr/" delay="150" data-sk="tooltip_parent">Abes</a>), établissement public à caractère administratif (EPA) sous tutelle directe du Ministère de l'Enseignement supérieur et de la Recherche (MESR), fournit des outils de production et de diffusion des métadonnées à des réseaux d'établissements de l'ESR (catalogue collectif Sudoc, signalement national des thèses, archives et manuscrits dans Calames, autorités dans IdRef…). Visant d'abord à accompagner les membres des réseaux documentaires de l'Abes lors de la mise en œuvre de nouvelles fonctionnalités, consignes, outils ou services, l'espace d’autoformation est en libre accès et à la disposition de l’ensemble des professionnel(le)s de la documentation. Les contenus pédagogiques (webinaires enregistrés, tutoriels, TP, QCM) sont librement réutilisables selon les conditions définies par la&nbsp;<a href="https://www.etalab.gouv.fr/licence-ouverte-open-licence/" target="_blank" rel="noopener noreferrer" data-stringify-link="https://www.etalab.gouv.fr/licence-ouverte-open-licence/" delay="150" data-sk="tooltip_parent">licence Etalab</a>.</p></div></div></div><div class="container-fluid"><div class="p-5 row row-cols-1 row-cols-md-2" style="background-color: #bad4eb;"><div class="col mb-4"><div class="card shadow p-3 mb-5 bg-white rounded"><div class="card-body"><h2 class="card-title"><img src="https://abes.fr/wp-content/uploads/2019/04/icone-sudoc.svg" width="50" height="50" align="absmiddle" border="0"> Sudoc</h2><p class="card-text">Le Sudoc – Système Universitaire de Documentation – constitue le dispositif national de catalogage partagé des ressources documentaires à la disposition de l’ensemble des bibliothèques universitaires et de recherche.</p><a class="btn btn-primary" style="background-color: #252c61;" href="https://callisto-formation.fr/course/index.php?categoryid=189">Consulter les cours</a></div></div></div><div class="col mb-4"><div class="card shadow p-3 mb-5 bg-white rounded"><div class="card-body"><h2 class="card-title"><img src="https://abes.fr/wp-content/uploads/2019/11/icone-sudoc-ps.svg" width="50" height="50" align="absmiddle" border="0"> Sudoc PS</h2><p class="card-text">Le réseau Sudoc PS – Publications en Série – coordonne le signalement des publications en série et ressources continues au sein des bibliothèques et centres de documentation qui en sont membres.</p><a class="btn btn-primary" style="background-color: #252c61;" href="https://callisto-formation.fr/course/index.php?categoryid=190">Consulter les cours</a></div></div></div><div class="col mb-4"><div class="card shadow p-3 mb-5 bg-white rounded"><div class="card-body"><h2 class="card-title"><img src="https://abes.fr/wp-content/uploads/2019/04/icone-theses.svg" width="50" height="50" align="absmiddle" border="0"> Thèses de doctorat</h2><p class="card-text">L'Abes assure une mission nationale pour le signalement des thèses de doctorat en France. Pour produire les données, elle s'appuie sur les membres des réseaux STAR (application pour le signalement et l'archivage pérenne des thèses soutenues) et STEP (application pour le signalement des thèses en préparation) ainsi que sur les principaux opérateurs du domaine (CCSD, CINES ...). Pour centraliser ces données, l'Abes met à disposition le moteur de recherche <a href="https://theses.fr" target="_blank" title="theses.fr">theses.fr</a>, contribuant ainsi à la visibilité de la recherche doctorale aux niveaux national et international.</p><a class="btn btn-primary" style="background-color: #252c61;" href="https://callisto-formation.fr/course/index.php?categoryid=191">Consulter les cours</a></div></div></div><div class="col mb-4"><div class="card shadow p-3 mb-5 bg-white rounded"><div class="card-body"><h2 class="card-title"><img src="https://abes.fr/wp-content/uploads/2019/08/icone-idref.svg" width="50" height="50" align="absmiddle" border="0"> Autorités et référentiels</h2><p class="card-text">Le réseau IdRef (Identifiants et Référentiels) joue un rôle central dans la création et la gestion des notices d'autorité (personnes, collectivités, etc.) pour les bibliothèques et institutions françaises. Il permet d'identifier de manière unique les auteurs, organisations et entités, facilitant ainsi leur signalement et leur identification dans le web de données. En assurant l'interopérabilité des données bibliographiques avec d'autres référentiels, IdRef contribue à l'intégration des données dans des écosystèmes ouverts.</p><a class="btn btn-primary" style="background-color: #252c61;" href="https://callisto-formation.fr/course/index.php?categoryid=192">Consulter les cours</a></div></div></div><div class="col mb-4"><div class="card shadow p-3 mb-5 bg-white rounded"><div class="card-body"><h2 class="card-title"><img src="https://abes.fr/wp-content/uploads/2023/01/icone-docelec.svg" width="50" height="50" align="absmiddle" border="0"> Documentation électronique</h2><p class="card-text">L'Abes joue un rôle clé dans la gestion de la documentation électronique pour les établissements de l'ESR. Elle coordonne les marchés publics pour l'acquisition des ressources numériques, sous forme de groupements de commandes ou de licences nationales. Elle gère également les flux de signalement de ces ressources dans le Sudoc, l'intégration des métadonnées dans la base de connaissance nationale BACON, et leur valorisation via le site <a href="https://www.licencesnationales.fr/" target="_blank" title="Licencesnationales.fr">Licencesnationales.fr</a>, offrant ainsi une meilleure visibilité aux ressources.</p><a class="btn btn-primary" style="background-color: #252c61;" href="https://callisto-formation.fr/course/index.php?categoryid=193">Consulter les cours</a></div></div></div><div class="col mb-4"><div class="card shadow p-3 mb-5 bg-white rounded"><div class="card-body"><h2 class="card-title"><img src="https://abes.fr/wp-content/uploads/2019/04/icone-calames.svg" width="50" height="50" align="absmiddle" border="0"> Calames</h2><p class="card-text">Dédié au signalement des archives et manuscrits, le réseau Calames rassemble les plus importants des établissements documentaires de l’Enseignement Supérieur de la Recherche à vocation patrimoniale et continue de s’accroitre d’année en année avec les universités, écoles, sociétés savantes ou structures de recherche qui veulent valoriser leurs fonds d’archives.</p><a class="btn btn-primary" style="background-color: #252c61;" href="https://callisto-formation.fr/course/index.php?categoryid=194">Consulter les cours</a></div></div></div><div class="col mb-4"><div class="card shadow p-3 mb-5 bg-white rounded"><div class="card-body"><h2 class="card-title"><img src="https://abes.fr/wp-content/uploads/2019/09/logo-abes-cercle-130x130.svg" width="50" height="50" align="absmiddle" border="0"> Autres ressources</h2><p class="card-text">Différentes ressources génériques relatives aux services et outils de l'Abes vous sont proposées dans cette section.</p><a class="btn btn-primary" style="background-color: #252c61;" href="https://callisto-formation.fr/course/index.php?categoryid=188">Consulter les cours</a></div></div></div></div></div></div> </div> </div> </div> <div role="main"><span id="maincontent"></span><div class="course-content"> <div class="sitetopic"> <ul class="topics frontpage"> <li id="section-1" class="section course-section main clearfix " data-sectionid="1" data-sectionreturnid="1" data-for="section" data-id="6" data-number="1" > <div class="course-section-header d-flex" data-for="section_title" data-id="6" data-number="1" > <div data-region="sectionbadges" class="sectionbadges d-flex align-items-center"> </div> </div> <div id="coursecontentcollapse1" class="content "> <div class=" my-3" data-for="sectioninfo"> <div class="section_availability course-description-item"> </div> </div> <ul class="section m-0 p-0 img-text " data-for="cmlist"> </ul> </div> </li> </ul> </div> </div><br /></div> </section> </div> </div> </div> <footer id="page-footer" class="footer-popover bg-white"> <div data-region="footer-container-popover"> <button class="btn btn-icon bg-secondary icon-no-margin btn-footer-popover" data-action="footer-popover" aria-label="Afficher le pied de page"> <i class="icon fa fa-question fa-fw " aria-hidden="true" ></i> </button> </div> <div class="footer-content-popover container" data-region="footer-content-popover"> <div class="footer-section p-3 border-bottom"> <div class="logininfo"> <div class="logininfo">Non connecté. (<a href="https://callisto-formation.fr/login/index.php">Connexion</a>)</div> </div> <div class="tool_usertours-resettourcontainer"> </div> <div class="policiesfooter"><a href="https://callisto-formation.fr/admin/tool/policy/viewall.php?returnurl=https%3A%2F%2Fcallisto-formation.fr%2F%3Fredirect%3D0">Politiques</a></div> <!-- ======================================= --> <!-- TEST --> <!-- ======================================= --> <!-- ======================================= --> <!-- TEST --> <!-- ======================================= --> <!-- ======================================= --> <!-- Autres fonctionnalités --> <!-- ======================================= --> <!-- Ajouts de mentions sous le logo pour repérer l'espace dans lequel on est --> <script> (function() { const themesConfig = { 'callisto': { label: null, // Pas de label pour le thème principal themeParam: '', // Pas de paramètre theme pour Callisto bodyClass: 'boostplus' }, 'formation-crfcb': { label: 'CRFCB', themeParam: 'formation-crfcb', bodyClass: 'boostplus_c01' }, 'reseau-urfist': { label: 'Urfist', themeParam: 'reseau-urfist', bodyClass: 'boostplus_c02' }, 'inist-cnrs': { label: 'Inist-CNRS', themeParam: 'inist-cnrs', bodyClass: 'boostplus_c03' }, 'prepa-concours-crfcb': { label: 'Prépas concours CRFCB', themeParam: 'prepa-concours-crfcb', bodyClass: 'boostplus_c04' }, 'spoc-quero': { label: 'Spoc Quéro', themeParam: 'spoc-quero', bodyClass: 'boostplus_c05' }, 'doranum': { label: 'Doranum', themeParam: 'doranum', bodyClass: 'boostplus_c06' }, 'centre-ressources-urfist': { label: 'Centre ressources Urfist', themeParam: 'centre-ressources-urfist', bodyClass: 'boostplus_c07' }, 'formadoct': { label: 'FormaDoct', themeParam: 'formadoct', bodyClass: 'boostplus_c08' }, 'abes': { label: 'Abes', themeParam: 'abes', bodyClass: 'boostplus_c09' } }; function detectTheme() { const urlParams = new URLSearchParams(window.location.search); const themeParam = urlParams.get('theme'); for (const [themeId, config] of Object.entries(themesConfig)) { if (themeParam === config.themeParam || document.body.classList.contains(config.bodyClass)) { return config; } } return null; } function updateBrand() { const brand = document.querySelector('.navbar-brand'); if (brand) { const themeConfig = detectTheme(); if (themeConfig) { // Définir l'URL en fonction du thème brand.href = themeConfig.themeParam ? `/?redirect=0&theme=${themeConfig.themeParam}` : '/?redirect=0'; // Pour Callisto // Ajouter le label seulement si ce n'est pas le thème principal if (themeConfig.label && !brand.querySelector('.theme-label')) { const label = document.createElement('div'); label.className = `theme-label theme-label-${themeConfig.themeParam}`; label.textContent = themeConfig.label; brand.appendChild(label); } } } } function initTheme() { updateBrand(); setTimeout(updateBrand, 100); setTimeout(updateBrand, 500); } if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', initTheme); } else { initTheme(); } window.addEventListener('load', updateBrand); })(); </script> <!-- Modification de l'URL du lien "Accueil" --> <script> document.addEventListener('DOMContentLoaded', function() { // Fonction pour modifier l'URL du lien "Accueil" function modifyAccueilLink() { // Identifier le parent commun qui contient les liens "Accueil" const parentElement = document.getElementById('page-wrapper'); if (parentElement) { // Parcourir les enfants pour trouver le lien "Accueil" const links = parentElement.querySelectorAll('a[role="menuitem"], a.list-group-item-action'); links.forEach(link => { if (link.textContent.trim() === 'Accueil') { link.href = 'https://callisto-formation.fr/?redirect=0&theme=callisto'; } }); } } // Appliquer immédiatement les modifications modifyAccueilLink(); // Utiliser un observateur de mutations pour détecter les changements dans le DOM const observer = new MutationObserver(function(mutations) { mutations.forEach(function(mutation) { // Appliquer les modifications à chaque changement détecté modifyAccueilLink(); }); }); // Configurer l'observateur pour surveiller les changements dans le body observer.observe(document.body, { childList: true, subtree: true }); }); </script> <!-- Ajout class css onglets menu --> <script> document.addEventListener('DOMContentLoaded', function() { const spaceDropdown = Array.from(document.querySelectorAll('.dropdown.nav-item')).find( el => el.textContent.trim().includes('Espaces de formation') ); if (spaceDropdown) { spaceDropdown.querySelector('.nav-link').classList.add('spaces-dropdown'); } }); </script> <script> document.addEventListener('DOMContentLoaded', function() { const coursesDropdown = Array.from(document.querySelectorAll('.dropdown.nav-item')).find( el => el.textContent.trim().includes('Explorer') ); if (coursesDropdown) { coursesDropdown.querySelector('.nav-link').classList.add('courses-dropdown'); } }); </script> <!-- Modification de l'URL du lien "Callisto" dans le fil d'ariane --> <script> document.addEventListener('DOMContentLoaded', function() { var breadcrumbLink = document.querySelector('.breadcrumb a[href="https://callisto-formation.fr/?redirect=0"]'); if (breadcrumbLink) { breadcrumbLink.href = 'https://callisto-formation.fr/?redirect=0&theme=callisto'; } }); </script> <!-- Modification de l'URL du lien "Tag" dans le fil d'ariane --> <script> document.addEventListener('DOMContentLoaded', function() { var breadcrumbLink = document.querySelector('.breadcrumb a[href="https://callisto-formation.fr/tag/search.php"]'); if (breadcrumbLink) { breadcrumbLink.href = 'https://callisto-formation.fr/tag/search.php?query&tc=3&go=Chercher'; } }); </script> <!-- Modification de l'URL du lien "Cours" fil d'ariane --> <script> document.addEventListener('DOMContentLoaded', function() { var breadcrumbLink = document.querySelector('.breadcrumb a[href="https://callisto-formation.fr/course/index.php"]'); if (breadcrumbLink) { breadcrumbLink.href = 'https://callisto-formation.fr/mod/page/view.php?id=14859'; } }); </script> <!-- Modification de l'URL des liens fil d'ariane Cered --> <script> document.addEventListener('DOMContentLoaded', function() { var breadcrumbLink = document.querySelector('.breadcrumb a[href="https://callisto-formation.fr/course/index.php?categoryid=16"]'); if (breadcrumbLink) { breadcrumbLink.href = 'https://callisto-formation.fr/?redirect=0&theme=centre-ressources-urfist'; } }); </script> <!-- Modification de l'URL des liens fil d'ariane Abes --> <script> document.addEventListener('DOMContentLoaded', function() { var breadcrumbLink = document.querySelector('.breadcrumb a[href="https://callisto-formation.fr/course/index.php?categoryid=186"]'); if (breadcrumbLink) { breadcrumbLink.href = 'https://callisto-formation.fr/?redirect=0&theme=abes'; } }); </script> <!-- Zoom sur les images --> <script> function toggleZoomImage(img) { // Vérifiez si l'image est déjà agrandie const isZoomed = img.classList.contains('zoomed'); if (isZoomed) { // Si déjà agrandie, rétablissez la taille d'origine img.classList.remove('zoomed'); } else { // Sinon, agrandissez l'image à 100% img.classList.add('zoomed'); } } </script> <!-- Détecter quand un élément arrive au centre de l'écran dans le viewport (API Intersection Observer) --> <script> // Options pour l'IntersectionObserver const options = { root: null, // utilise le viewport comme zone d'observation rootMargin: '0px', threshold: 0.1 // déclenche quand 10% de l'élément est visible }; // Créer l'IntersectionObserver const observer = new IntersectionObserver((entries) => { entries.forEach(entry => { if (entry.isIntersecting) { entry.target.classList.add('visible'); } }); }, options); // Sélectionner et observer tous les éléments avec la classe 'animate' const elements = document.querySelectorAll('.animate'); elements.forEach(el => observer.observe(el)); </script> <!-- Ajouter box shadow sur les placeholders et iframes h5p --> <script> document.addEventListener('DOMContentLoaded', function() { function wrapH5PElement(element) { if (element.closest('.box-shadow')) return; // Évite le double wrapping var wrapper = document.createElement('div'); wrapper.className = 'box-shadow'; element.parentNode.insertBefore(wrapper, element); wrapper.appendChild(element); // Déplacer le script de redimensionnement si nécessaire pour les placeholders if (element.classList.contains('h5p-placeholder')) { var nextSibling = wrapper.nextSibling; if (nextSibling && nextSibling.tagName === 'SCRIPT' && nextSibling.src.includes('h5p-resizer.js')) { wrapper.appendChild(nextSibling); } } } // Traiter les placeholders H5P var h5pPlaceholders = document.querySelectorAll('.h5p-placeholder'); h5pPlaceholders.forEach(wrapH5PElement); // Traiter les iframes H5P externes var h5pExternalIframes = document.querySelectorAll('iframe[src*="action=h5p_embed"]'); h5pExternalIframes.forEach(wrapH5PElement); // Traiter les iframes H5P internes à Moodle var h5pInternalIframes = document.querySelectorAll('iframe[name="h5player"], iframe.h5p-player'); h5pInternalIframes.forEach(wrapH5PElement); // Observer les changements dans le DOM pour les éléments H5P ajoutés dynamiquement var observer = new MutationObserver(function(mutations) { mutations.forEach(function(mutation) { mutation.addedNodes.forEach(function(node) { if (node.nodeType === Node.ELEMENT_NODE) { if (node.classList.contains('h5p-placeholder')) { wrapH5PElement(node); } var newExternalIframes = node.querySelectorAll('iframe[src*="action=h5p_embed"]'); newExternalIframes.forEach(wrapH5PElement); var newInternalIframes = node.querySelectorAll('iframe[name="h5player"], iframe.h5p-player'); newInternalIframes.forEach(wrapH5PElement); } }); }); }); observer.observe(document.body, { childList: true, subtree: true }); }); </script> <!-- Boutons suivant précédent --> <script> (function() { function addBootstrapClasses(element) { // Sélectionner tous les liens avec les classes 'gotopage nextpage' ou 'gotopage prevpage' var links = element.querySelectorAll('a.gotopage.nextpage, a.gotopage.prevpage'); links.forEach(function(link) { // Vérifier si les classes n'ont pas déjà été ajoutées if (!link.classList.contains('btn')) { // Ajouter les classes Bootstrap link.classList.add('btn', 'btn-primary'); // Optionnel : différencier visuellement les boutons "précédent" et "suivant" if (link.classList.contains('prevpage')) { link.classList.add('mr-2'); // ajoute une marge à droite pour le bouton "précédent" } else if (link.classList.contains('nextpage')) { link.classList.add('ml-2'); // ajoute une marge à gauche pour le bouton "suivant" } } }); } // Fonction pour initialiser l'observateur function initMutationObserver() { var targetNode = document.body; var config = { childList: true, subtree: true }; var callback = function(mutationsList, observer) { for(var mutation of mutationsList) { if (mutation.type === 'childList') { mutation.addedNodes.forEach(function(node) { if (node.nodeType === Node.ELEMENT_NODE) { addBootstrapClasses(node); } }); } } }; var observer = new MutationObserver(callback); observer.observe(targetNode, config); } // Appliquer les classes aux éléments existants addBootstrapClasses(document); // Initialiser l'observateur pour les futurs changements initMutationObserver(); })(); </script> <!-- Alert page login --> <script> document.addEventListener('DOMContentLoaded', function() { // Sélectionner le titre "Se connecter au moyen du compte :" const heading = document.querySelector('.login-identityproviders h2'); if (heading) { // Créer l'alerte const notice = document.createElement('div'); notice.className = 'alert alert-danger login-notice'; notice.innerHTML = ` <p>Ces boutons ne créent pas de compte. Ils servent uniquement à se connecter avec un compte Sygefor déjà synchronisé avec Callisto (<a href="https://callisto-formation.fr/mod/page/view.php?id=5058">en savoir plus</a>).</p> `; // Insérer l'alerte après le titre heading.insertAdjacentElement('afterend', notice); } }); </script> <!-- ======================================= --> <!-- Scripts d'accessibilité --> <!-- ======================================= --> <!-- Ajout de la balise header main et footer --> <script> document.addEventListener('DOMContentLoaded', function() { // Fonction pour ajouter ou modifier un élément function enhanceElement(selector, tagName, attributes) { const element = document.querySelector(selector); if (element) { if (element.tagName.toLowerCase() !== tagName) { const newElement = document.createElement(tagName); // Copier les attributs existants for (let i = 0; i < element.attributes.length; i++) { newElement.setAttribute(element.attributes[i].name, element.attributes[i].value); } // Ajouter ou mettre à jour les nouveaux attributs for (let key in attributes) { newElement.setAttribute(key, attributes[key]); } // Remplacer l'élément existant element.parentNode.replaceChild(newElement, element); while (element.firstChild) { newElement.appendChild(element.firstChild); } } else { // Mettre à jour les attributs si l'élément existe déjà for (let key in attributes) { element.setAttribute(key, attributes[key]); } } } } // Améliorer le header enhanceElement('.navbar', 'header', { 'id': 'main-header', 'role': 'banner', 'aria-label': 'En-tête principal du site avec navigation, recherche et connexion' }); // Améliorer le main (transformation de la div en main) enhanceElement('#topofscroll', 'main', { 'role': 'main', 'aria-label': 'Contenu principal' }); // Améliorer le footer enhanceElement('#contentcustomfooter', 'footer', { 'role': 'contentinfo', 'aria-label': 'Pied de page du site' }); // Améliorer la navigation principale const primaryNav = document.querySelector('.primary-navigation nav'); if (primaryNav) { primaryNav.setAttribute('role', 'navigation'); primaryNav.setAttribute('aria-label', 'Navigation principale'); } }); </script> <!-- Modif lien vers contenu principal pour les pages d'accueil --> <script> document.addEventListener('DOMContentLoaded', function() { // Vérifier si nous sommes sur une page d'accueil if (document.body.id === 'page-site-index') { // Trouver le lien de raccourci const skipLink = document.querySelector('a[href="#maincontent"]'); if (skipLink) { // Modifier le href du lien pour pointer vers #topofscroll skipLink.setAttribute('href', '#topofscroll'); // Optionnel : Ajouter un gestionnaire d'événements pour assurer le focus skipLink.addEventListener('click', function(e) { e.preventDefault(); const topOfScroll = document.getElementById('topofscroll'); if (topOfScroll) { topOfScroll.tabIndex = -1; topOfScroll.focus(); // Rétablir le tabIndex après le focus setTimeout(() => topOfScroll.removeAttribute('tabIndex'), 100); } }); } } }); </script> <!-- Ajout aria hidden icones Bootstrap Custom fields --> <script> (function() { function addAriaHiddenToIcons() { var iconElements = document.querySelectorAll('.customfield_author::before, .customfield_production::before, .customfield_cible::before, .customfield_date::before, .customfield_maj::before, .customfield_duration::before, .customfield_preriquisite::before, .customfield_license::before, .customfield_citation::before, .customfield_doi::before, .customfield_ob::before'); iconElements.forEach(function(iconElement) { iconElement.setAttribute('aria-hidden', 'true'); }); } if (document.readyState === 'loading') { document.addEventListener('DOMContentLoaded', addAriaHiddenToIcons); } else { addAriaHiddenToIcons(); } })(); </script> <!-- Ajout de rôles aux alertes Bootstrap --> <script> // Sélectionnez toutes les alertes Bootstrap sur la page const alerts = document.querySelectorAll('.alert'); // Parcourez chaque alerte et ajoutez l'attribut "role" avec la valeur "alert" alerts.forEach(alert => { alert.setAttribute('role', 'alert'); }); </script> <!-- Amélioration de l'accessibilité des liens externes --> <script> document.addEventListener('DOMContentLoaded', function() { // Sélectionnez tous les liens avec l'attribut "target=\_blank" const externalLinks = document.querySelectorAll('a[target="_blank"]'); externalLinks.forEach(link => { // Ajoutez le texte sr-only const srOnlyText = document.createElement('span'); srOnlyText.classList.add('sr-only'); srOnlyText.textContent = ' (s\'ouvre dans un nouvel onglet)'; link.appendChild(srOnlyText); // Ajoutez la classe 'no-image' si le lien n'a pas d'image if (!link.querySelector('img')) { link.classList.add('no-image'); } }); }); </script> <!-- Modification du texte alternatif du logo et ajout d'un tooltip --> <script> document.addEventListener('DOMContentLoaded', function() { // Sélectionnez l'élément <img> avec la classe "logo" const logoImage = document.querySelector('img.logo'); if (logoImage) { // Modifiez l'attribut alt de l'image const altText = 'Accueil espace de formation'; logoImage.alt = altText; // Ajoutez l'attribut title pour le tooltip logoImage.title = altText; } }); </script> <!-- Masquer le contenu additionnel avec touche Echap + survol du contenu additionnel sans qu'il disparaisse --> <!-- ======================================= --> <!-- Bandeau des CGU --> <!-- Visibilité du bouton de fermeture + Focus en premier + focus modal CGU --> <script> document.addEventListener('DOMContentLoaded', function() { function initializeBandeau(bandeauCGU) { // Vérifier si l'utilisateur a déjà vu le bandeau durant cette session if (localStorage.getItem('cguViewed')) { return; } if (!bandeauCGU || getComputedStyle(bandeauCGU).display === 'none') return; // Placer le bandeau en haut de page document.body.insertBefore(bandeauCGU, document.body.firstChild); // Configuration ARIA pour l'accessibilité bandeauCGU.setAttribute('role', 'alert'); bandeauCGU.setAttribute('aria-describedby', 'cgu-description'); // Message pour les lecteurs d'écran const descDiv = document.createElement('div'); descDiv.id = 'cgu-description'; descDiv.className = 'sr-only'; descDiv.textContent = 'Information concernant les conditions générales d\'utilisation et mentions légales du site.'; bandeauCGU.insertBefore(descDiv, bandeauCGU.firstChild); // Améliorer le bouton de fermeture const closeButton = bandeauCGU.querySelector('.eupopup-closebutton'); if (closeButton) { closeButton.setAttribute('aria-label', 'Fermer l\'information sur les conditions générales'); closeButton.setAttribute('role', 'button'); // Restauration des styles d'origine closeButton.style.cssText = ` background-color: #fff; color: #000; padding: 8px 16px; font: 700 12px/20px Arial, Helvetica, sans-serif; text-decoration: none; text-shadow: none; border: 2px solid #000; border-radius: 3px; cursor: pointer; margin: 4px; display: inline-block; `; // Gestionnaire de fermeture closeButton.addEventListener('click', function() { localStorage.setItem('cguViewed', 'true'); bandeauCGU.style.display = 'none'; }); // Gestion du clavier pour le bouton closeButton.addEventListener('keydown', function(e) { if (e.key === 'Enter' || e.key === ' ') { e.preventDefault(); closeButton.click(); } }); } // Focus initial pour l'accessibilité (sans piège) const focusableElements = bandeauCGU.querySelectorAll( 'a[href], button, textarea, input[type="text"], input[type="radio"], input[type="checkbox"], select' ); if (focusableElements.length) { requestAnimationFrame(() => { focusableElements[0].focus(); }); } // Gérer l'ouverture de la modal CGU const cguLink = bandeauCGU.querySelector('a[data-action="view-guest"]'); if (cguLink) { cguLink.addEventListener('click', function(e) { e.preventDefault(); openModal(); }); // Améliorer l'accessibilité du lien cguLink.setAttribute('role', 'button'); cguLink.setAttribute('aria-haspopup', 'dialog'); } } // Gestion de la modal function openModal() { const modal = document.querySelector('.modal'); if (!modal) return; modal.classList.add('show'); modal.style.display = 'block'; modal.setAttribute('role', 'dialog'); modal.setAttribute('aria-modal', 'true'); // Gestion du focus dans la modal const closeButton = modal.querySelector('.close'); if (closeButton) { closeButton.focus(); closeButton.setAttribute('aria-label', 'Fermer la fenêtre des conditions générales'); closeButton.addEventListener('click', closeModal); } // Fermeture avec Echap modal.addEventListener('keydown', function(e) { if (e.key === 'Escape') { closeModal(); } }); } function closeModal() { const modal = document.querySelector('.modal.show'); if (!modal) return; modal.classList.remove('show'); modal.style.display = 'none'; // Remettre le focus sur le lien qui a ouvert la modal const cguLink = document.querySelector('.eupopup-container a[data-action="view-guest"]'); if (cguLink) { cguLink.focus(); } } // Observer le DOM pour l'initialisation const observer = new MutationObserver((mutations) => { for (const mutation of mutations) { for (const node of mutation.addedNodes) { if (node.classList?.contains('eupopup-container')) { initializeBandeau(node); observer.disconnect(); return; } } } }); observer.observe(document.body, { childList: true, subtree: true }); // Vérifier si le bandeau existe déjà const existingBandeau = document.querySelector('.eupopup-container'); if (existingBandeau) { initializeBandeau(existingBandeau); } }); </script> <!-- Initialisation de gifa11y pour une meilleure accessibilité des GIFs animés --> <script src="https://cdn.jsdelivr.net/gh/adamchaboryk/gifa11y@2.0.3/dist/js/gifa11y.umd.min.js"></script> <script> var gifa11y = new Gifa11y({ initiallyPaused: true, // Tous les GIFs seront initialement en pause container: 'main', buttonBackground: '#000000', buttonBackgroundHover: '#404040', buttonIconColor: 'white', showGifText: true, missingAltWarning: false // Désactive les messages d'erreur liés à l'attribut alt manquant }); </script> <!-- Ajout balise p au texte ajouté automatiquement "modifié le" --> <script> // Fonction pour remplacer la div par un élément p function wrapModifiedDiv() { // Sélectionne l'élément div avec la classe "modified" var modifiedDiv = document.querySelector('.modified'); // Vérifie si la div existe if (modifiedDiv) { // Crée un nouvel élément p var newP = document.createElement('p'); // Copie le contenu texte de la div dans le nouvel élément p newP.textContent = modifiedDiv.textContent; // Remplace la div par le nouvel élément p dans l'arbre DOM modifiedDiv.parentNode.replaceChild(newP, modifiedDiv); } } // Exécute la fonction wrapModifiedDiv() lorsque la page est complètement chargée document.addEventListener('DOMContentLoaded', wrapModifiedDiv); // Vous devrez appeler wrapModifiedDiv() après chaque mise à jour du contenu de la div // Par exemple, après une requête AJAX </script> <!-- ======================================= --> <!-- Panneau latéral (burger menu en mobile) --> <!-- Modifier le sr-only "panneau latéral" --> <script> document.addEventListener('DOMContentLoaded', function() { var srOnlySpan = document.querySelector('.navbar-toggler .sr-only'); if (srOnlySpan) { srOnlySpan.textContent = 'Ouvrir le menu de navigation'; } }); </script> <!-- Supprimer le sr-only "déplier / replier" --> <script> document.addEventListener('DOMContentLoaded', function() { var replierSpans = document.querySelectorAll('.expanded-icon .sr-only, .collapsed-icon .sr-only'); replierSpans.forEach(function(span) { span.remove(); }); }); </script> <!-- Suppression title bouton fermeture + modification sr-only --> <script> document.addEventListener('DOMContentLoaded', function() { var drawerToggleButton = document.querySelector('.drawerheader .drawertoggle'); if (drawerToggleButton) { // Supprimer l'attribut title inutile drawerToggleButton.removeAttribute('title'); drawerToggleButton.removeAttribute('data-original-title'); // Créer un nouvel élément span pour l'intitulé visuellement masqué var visuallyHiddenLabel = document.createElement('span'); visuallyHiddenLabel.className = 'sr-only'; visuallyHiddenLabel.textContent = 'Fermer le menu de navigation'; // Insérer le nouvel élément span dans le bouton drawerToggleButton.appendChild(visuallyHiddenLabel); } }); </script> Notes temporaires <!-- ======================================= --> <!-- Barre de recherche --> <!-- Ajout du rôle search + Suppression aria expanded bouton fermeture + modification intitulé--> <script> document.addEventListener('DOMContentLoaded', function() { function addSearchRole() { var searchForms = document.querySelectorAll('.simplesearchform:not([role="search"])'); searchForms.forEach(function(form) { form.setAttribute('role', 'search'); }); } function modifyCloseSearchButton() { var closeSearchButton = document.querySelector('a.btn-close[data-action="closesearch"]:not([data-modified])'); if (closeSearchButton) { closeSearchButton.removeAttribute('aria-expanded'); var srOnlySpan = closeSearchButton.querySelector('.sr-only'); if (srOnlySpan) { srOnlySpan.textContent = 'Fermer le champ de recherche'; } closeSearchButton.setAttribute('data-modified', 'true'); } } function initializeSearchAccessibility() { addSearchRole(); modifyCloseSearchButton(); } // Exécution initiale initializeSearchAccessibility(); // Fonction debounce pour limiter la fréquence d'exécution function debounce(func, wait) { let timeout; return function executedFunction(...args) { const later = () => { clearTimeout(timeout); func(...args); }; clearTimeout(timeout); timeout = setTimeout(later, wait); }; } // Observer avec debounce const debouncedInit = debounce(initializeSearchAccessibility, 250); var observer = new MutationObserver(debouncedInit); // Cibler spécifiquement la zone où le formulaire de recherche pourrait être ajouté var targetNode = document.querySelector('header') || document.body; observer.observe(targetNode, { childList: true, subtree: true }); // Arrêter l'observation après 10 secondes setTimeout(function() { observer.disconnect(); }, 10000); }); </script> <!-- ======================================= --> <!-- back to top --> <script> function initBackToTop() { var backToTopBtn = document.getElementById('btn-back-to-top'); if (backToTopBtn) { console.log('Back to top button found'); // Assurer que le bouton est focusable backToTopBtn.setAttribute('tabindex', '0'); // Ajouter un gestionnaire d'événements pour le clavier backToTopBtn.addEventListener('keydown', function(event) { console.log('Keydown event detected:', event.key); if (event.key === 'Enter' || event.key === ' ' || event.key === 'Spacebar') { event.preventDefault(); console.log('Enter or Space key pressed, triggering click'); backToTopBtn.click(); // Déclenche le comportement natif du bouton } }); // Ajouter un texte accessible si ce n'est pas déjà fait if (!backToTopBtn.querySelector('.back-to-top-sr-only')) { var span = document.createElement('span'); span.className = 'back-to-top-sr-only'; span.textContent = 'Retour en haut de page'; backToTopBtn.appendChild(span); } console.log('Event listeners added to back-to-top button'); } else { console.error('Back to top button not found'); } } // Exécuter après le chargement du DOM document.addEventListener('DOMContentLoaded', initBackToTop); // Gestionnaire global pour le débogage document.addEventListener('keydown', function(event) { console.log('Global keydown event:', event.key, 'Target:', event.target.id); }); </script><script> //<![CDATA[ var require = { baseUrl : 'https://callisto-formation.fr/lib/requirejs.php/1730107552/', // We only support AMD modules with an explicit define() statement. enforceDefine: true, skipDataMain: true, waitSeconds : 0, paths: { jquery: 'https://callisto-formation.fr/lib/javascript.php/1730107552/lib/jquery/jquery-3.6.1.min', jqueryui: 'https://callisto-formation.fr/lib/javascript.php/1730107552/lib/jquery/ui-1.13.2/jquery-ui.min', jqueryprivate: 'https://callisto-formation.fr/lib/javascript.php/1730107552/lib/requirejs/jquery-private' }, // Custom jquery config map. map: { // '*' means all modules will get 'jqueryprivate' // for their 'jquery' dependency. '*': { jquery: 'jqueryprivate' }, // Stub module for 'process'. This is a workaround for a bug in MathJax (see MDL-60458). '*': { process: 'core/first' }, // 'jquery-private' wants the real jQuery module // though. If this line was not here, there would // be an unresolvable cyclic dependency. jqueryprivate: { jquery: 'jquery' } } }; //]]> </script> <script src="https://callisto-formation.fr/lib/javascript.php/1730107552/lib/requirejs/require.min.js"></script> <script> //<![CDATA[ M.util.js_pending("core/first"); require(['core/first'], function() { require(['core/prefetch']) ; M.util.js_pending('theme_boostplus/main'); require(['theme_boostplus/main'], function(amd) {amd.init(); M.util.js_complete('theme_boostplus/main');});; function legacy_activity_onclick_handler_1(e) { e.halt(); window.open('https://callisto-formation.fr/mod/resource/view.php?id=12998&redirect=1'); return false; }; function legacy_activity_onclick_handler_2(e) { e.halt(); window.open('https://callisto-formation.fr/mod/resource/view.php?id=15203&redirect=1'); return false; }; function legacy_activity_onclick_handler_3(e) { e.halt(); window.open('https://callisto-formation.fr/mod/resource/view.php?id=15884&redirect=1'); return false; }; function legacy_activity_onclick_handler_4(e) { e.halt(); window.open('https://callisto-formation.fr/mod/resource/view.php?id=18804&redirect=1'); return false; }; require(['jquery', 'tool_policy/jquery-eu-cookie-law-popup', 'tool_policy/policyactions'], function($, Popup, ActionsMod) { // Initialise the guest popup. $(document).ready(function() { // Only show message if there is some policy related to guests. // Get localised messages. var textmessage = "Si vous continuez à consulter ce site web, vous acceptez nos politiques :" + "<ul>" + "<li>" + "<a href=\"https://callisto-formation.fr/admin/tool/policy/view.php?versionid=1&amp;returnurl=https%3A%2F%2Fcallisto-formation.fr%2F%3Fredirect%3D0\" " + " data-action=\"view-guest\" data-versionid=\"1\" data-behalfid=\"1\" >" + "Conditions Générales d'Utilisation &amp; - Mentions Légales" + "</a>" + "</li>" + "" + "</ul>"; var continuemessage = "Continuer"; // Initialize popup. $(document.body).addClass('eupopup'); if ($(".eupopup").length > 0) { $(document).euCookieLawPopup().init({ popupPosition: 'bottom', popupTitle: '', popupText: textmessage, buttonContinueTitle: continuemessage, buttonLearnmoreTitle: '', compactStyle: true, }); } // Initialise the JS for the modal window which displays the policy versions. ActionsMod.init('[data-action="view-guest"]'); }); }); ; require(['core/moremenu'], function(moremenu) { moremenu(document.querySelector('#moremenu-6742c76eb1527-navbar-nav')); }); ; require( [ 'jquery', ], function( $ ) { var uniqid = "6742c76eb598b6742c76ea7c336"; var container = $('#searchinput-navbar-' + uniqid); var opensearch = container.find('[data-action="opensearch"]'); var input = container.find('[data-region="input"]'); var submit = container.find('[data-action="submit"]'); submit.on('click', function(e) { if (input.val() === '') { e.preventDefault(); } }); container.on('hidden.bs.collapse', function() { opensearch.removeClass('d-none'); input.val(''); }); container.on('show.bs.collapse', function() { opensearch.addClass('d-none'); }); container.on('shown.bs.collapse', function() { input.focus(); }); }); ; require( [ 'jquery', ], function( $ ) { var uniqid = "6742c76eb5e416742c76ea7c337"; var container = $('#searchinput-navbar-' + uniqid); var opensearch = container.find('[data-action="opensearch"]'); var input = container.find('[data-region="input"]'); var submit = container.find('[data-action="submit"]'); submit.on('click', function(e) { if (input.val() === '') { e.preventDefault(); } }); container.on('hidden.bs.collapse', function() { opensearch.removeClass('d-none'); input.val(''); }); container.on('show.bs.collapse', function() { opensearch.addClass('d-none'); }); container.on('shown.bs.collapse', function() { input.focus(); }); }); ; require(['core/usermenu'], function(UserMenu) { UserMenu.init(); }); ; require(['theme_boost/drawers']); ; require(['theme_boost/footer-popover'], function(FooterPopover) { FooterPopover.init(); }); ; M.util.js_pending('theme_boost/loader'); require(['theme_boost/loader', 'theme_boost/drawer'], function(Loader, Drawer) { Drawer.init(); M.util.js_complete('theme_boost/loader'); }); ; M.util.js_pending('core/notification'); require(['core/notification'], function(amd) {amd.init(2, []); M.util.js_complete('core/notification');});; M.util.js_pending('core/log'); require(['core/log'], function(amd) {amd.setConfig({"level":"warn"}); M.util.js_complete('core/log');});; M.util.js_pending('core/page_global'); require(['core/page_global'], function(amd) {amd.init(); M.util.js_complete('core/page_global');});; M.util.js_pending('core/utility'); require(['core/utility'], function(amd) {M.util.js_complete('core/utility');});; M.util.js_pending('core/storage_validation'); require(['core/storage_validation'], function(amd) {amd.init(null); M.util.js_complete('core/storage_validation');}); M.util.js_complete("core/first"); }); //]]> </script> <script> //<![CDATA[ M.str = {"moodle":{"lastmodified":"Modifi\u00e9 le","name":"Nom","error":"Erreur","info":"Information","yes":"Oui","no":"Non","ok":"OK","cancel":"Annuler","confirm":"Confirmer","areyousure":"Voulez-vous vraiment continuer\u00a0?","closebuttontitle":"Fermer","unknownerror":"Erreur inconnue","file":"Fichier","url":"URL","collapseall":"Tout replier","expandall":"Tout d\u00e9plier"},"repository":{"type":"Type","size":"Taille","invalidjson":"Cha\u00eene JSON non valide","nofilesattached":"Aucun fichier joint","filepicker":"S\u00e9lecteur de fichiers","logout":"D\u00e9connexion","nofilesavailable":"Aucun fichier disponible","norepositoriesavailable":"D\u00e9sol\u00e9, aucun de vos d\u00e9p\u00f4ts actuels ne peut retourner de fichiers dans le format requis.","fileexistsdialogheader":"Le fichier existe","fileexistsdialog_editor":"Un fichier de ce nom a d\u00e9j\u00e0 \u00e9t\u00e9 joint au texte que vous modifiez.","fileexistsdialog_filemanager":"Un fichier de ce nom a d\u00e9j\u00e0 \u00e9t\u00e9 joint","renameto":"Renommer \u00e0 \u00ab\u00a0{$a}\u00a0\u00bb","referencesexist":"Il y a {$a} liens qui pointent vers ce fichier","select":"S\u00e9lectionnez"},"admin":{"confirmdeletecomments":"Voulez-vous vraiment supprimer des commentaires\u00a0?","confirmation":"Confirmation"},"debug":{"debuginfo":"Info de d\u00e9bogage","line":"Ligne","stacktrace":"Trace de la pile"},"langconfig":{"labelsep":"&nbsp;"}}; //]]> </script> <script> //<![CDATA[ (function() {Y.use("moodle-filter_mathjaxloader-loader",function() {M.filter_mathjaxloader.configure({"mathjaxconfig":"\nMathJax.Hub.Config({\n config: [\"Accessible.js\", \"Safe.js\"],\n errorSettings: { message: [\"!\"] },\n skipStartupTypeset: true,\n messageStyle: \"none\"\n});\n","lang":"fr"}); }); Y.use("moodle-filter_glossary-autolinker",function() {M.filter_glossary.init_filter_autolinking({"courseid":0}); }); M.util.help_popups.setup(Y); M.util.js_pending('random6742c76ea7c338'); Y.on('domready', function() { M.util.js_complete("init"); M.util.js_complete('random6742c76ea7c338'); }); })(); //]]> </script> </div> <div class="footer-section p-3"> <div>Fourni par <a href="https://moodle.com">Moodle</a></div> </div> </div> <div class="footer-content-debugging footer-dark bg-dark text-light"> <div class="container-fluid footer-dark-inner"> </div> </div> </footer> <div id="contentcustomfooter" class="py-3"> <div class="container-fluid"> <div class="row"> <div class="text_to_html"><h1 class="sr-only">Liens de bas de page</h1><div class="container text-white p-5"><h2 class="h5 text-white">Abes</h2><p class="pb-3">L'Abes propose une offre de formations conçues pour accompagner les Correspondants des différents réseaux dans la prise en main des applications professionnelles et les aider à s’approprier les modalités spécifiques du travail en réseau.</p><ul class="footerlist2"><li><a href="https://callisto-formation.fr//?redirect=0&amp;theme=abes">Accueil Abes</a>&nbsp;&nbsp;|&nbsp;&nbsp;</li><li><a href="https://abes.fr/documentation-professionnelle/" target="_blank" rel="noopener">Documentation professionnelle</a>&nbsp;&nbsp;|&nbsp;&nbsp;</li><li><a href="https://abes.fr/" target="_blank" rel="noopener">À propos</a></li></ul><hr class="hr-footer"><div class="row"><div class="col-sm-6"><h2 class="h5 text-white">Callisto</h2><p>Fondation abritée par la <a href="https://unit.eu/" target="_blank" rel="noopener">Fondation UNIT</a><br>soutenue par le <a href="https://www.enseignementsup-recherche.gouv.fr/fr" target="_blank" rel="noopener">Ministère de l’Enseignement Supérieur et de la Recherche</a></p><ul class="footerlist2"><li><a href="https://callisto-formation.fr/?redirect=0&amp;theme=callisto">Accueil Callisto</a>&nbsp;&nbsp;|&nbsp;&nbsp;</li><li><a href="https://callisto-formation.fr/mod/page/view.php?id=14859">Tous les cours</a></li></ul></div><div class="col-sm-3"><h2 class="h5 text-white">En savoir plus</h2><ul class="footerlist"><li><a href="https://fondationcallisto.fr" target="_blank" rel="noopener">À propos de Callisto</a></li><li><a href="https://callisto-formation.fr/mod/page/view.php?id=5058">FAQ</a></li><li><a href="https://callisto-formation.fr/mod/page/view.php?id=3916">Contact</a></li></ul></div><div class="col-sm-3"><h2 class="h5 text-white">Nous suivre</h2><ul class="footerlist"><li><a href="https://fondationcallisto.fr/blog/" target="_blank" rel="noopener">Blog</a></li><li><a href="https://www.canal-u.tv/chaines/callisto" target="_blank" rel="noopener">Canal U</a></li><li><a href="https://twitter.com/Callisto_LMS" target="_blank" rel="noopener">Twitter</a></li></ul></div></div><hr><div class="d-flex bd-highlight mb-3"><div class="mr-auto p-2 bd-highlight"><p class="small text-white">Tous droits réservés © 2021-2024 Fondation Callisto</p></div><div class="p-2 bd-highlight"><ul class="small text-right footerlist mr-5"><li><a href="https://callisto-formation.fr/mod/page/view.php?id=15852">Accessibilité : non conforme</a></li><li><a href="https://callisto-formation.fr/admin/tool/policy/view.php?policyid=1&amp;versionid=1&amp;returnurl=https%3A%2F%2Fcallisto-formation.fr%2Fadmin%2Ftool%2Fpolicy%2Fuser.php%3Fuserid%3D35">Politiques et accords</a></li></ul></div></div></div></div> </div> </div> </div> </div> </div> <script> let topbutton = document.getElementById("btn-back-to-top"); let page =document.getElementById("page"); // When the user scrolls down 20px from the top of the document, show the button page.onscroll = function () { scrollFunction(); }; function scrollFunction() { if ( page.scrollTop > 200 ) { topbutton.style.display = "block"; } else { topbutton.style.display = "none"; } } // When the user clicks on the button, scroll to the top of the document topbutton.addEventListener("click", backToTop); function backToTop() { page.scrollTo({top: 0, behavior: 'smooth'}); } </script> </body> </html>

Pages: 1 2 3 4 5 6 7 8 9 10