-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Adds the possibility for GLPI users to discover features with short tutorials #15524
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Functional review :
-
The default lesson should not be triggered on the install page
-
It would be nice if the last step of the default lesson would show you the menu entry to access all lessons.
-
When a lesson is finished, maybe add a final step that confirm the lesson is over and display a link to go to the lessons page ?
-
If I keep the main lesson page open in browser tab A, then complete one of the lessons in browser tab B and finally try to run the same lesson from tab A (where its still marked as "not done" because I haven't refreshed the page) I get a blank page.
Maybe in this case allow the user to run the lesson again even if its finished to avoid the error ? -
I can still scroll on the page when the modals are displayed.
It feels a bit weird and I'm not sure if it's supposed to work this way.
Is it done on purpose by the intro.js lib and/or is there an option to disable scrolling ?
For example bootstrap modals forbid body scrolling by default:
-
Lessons are still available for all users but you end up with a blank page when trying to start a lesson if you are not super-admin.
I think we could disable the "My lessons" menu entry for non super-admin users for now ? -
UI / UX is very good 👍, I still have a few minimal ajustements in mind but I think its best we wait till all the features are implemented before nitpicking on small details ;)
8801e0b
to
0e44dd1
Compare
c7a4b71
to
3cf524a
Compare
3cf524a
to
bd75e6e
Compare
Note: don't forget we need a temporary branch to merge into as we want to split the development into multiple PRs. Can somebody with write permission create the branch so we can rebase the PR onto it ? |
5ca3eed
to
84fdb4b
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Lint is not OK, can you check when you come back @ccailly ?
0c665f7
to
346bc6e
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tests of the days:
- lessons repo was not up to date, error reported in logs:
[2024-01-29 14:56:56] glpiphplog.CRITICAL: *** Uncaught Exception TypeError: array_walk_recursive(): Argument #1 ($array) must be of type array, int given in /var/www/html/glpi/main/src/Discover/Discover_User.php at line 146
- After update, it still fails on others lessons on my side, with a log:
[2024-01-29 15:23:18] glpiphplog.WARNING: *** PHP Warning (2): foreach() argument must be of type array|object, null given in /var/www/html/glpi/main/vendor/twig/twig/src/Extension/CoreExtension.php at line 1695
Backtrace :
...ates/30/30c1f1e67a16ab7ba2732d3d9e17b1db.php:46 twig_array_map()
vendor/twig/twig/src/Template.php:394 __TwigTemplate_7c863886c16976a0a8246c1a67f306db->doDisplay()
vendor/twig/twig/src/Template.php:367 Twig\Template->displayWithErrorHandling()
vendor/twig/twig/src/TemplateWrapper.php:45 Twig\Template->display()
src/Application/View/TemplateRenderer.php:198 Twig\TemplateWrapper->display()
src/Discover/Discover.php:75 Glpi\Application\View\TemplateRenderer->display()
src/Html.php:1789 Glpi\Discover\Discover::loadDiscover()
front/ticket.php:63 Html::footer()
public/index.php:82 require()
Don't know why the last appears, any hints welcomed.
Regarding the config file in lessons folder, I see this kind of path: "content" => "file://introduction.md",
. I suggest to move to file://./sources/introduction.md
to permits to click on links in vscode.
fd54918
to
5b332f8
Compare
* --------------------------------------------------------------------- | ||
*/ | ||
|
||
return [ |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If the lessons are going to be part of the GLPI repo, the translations would benefit from having a context specified.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
good point !
The current lessons are, for the moment, examples of what is possible with the feature.
I pushed the subject to @arthurrschaefer, he should start soon to write (in our outline) articles.
When we will integrate his work, indeed, we should add gettext context.
7a338cb
to
cbed33c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I've added a fallback on the sources in case no translation exists. |
Any updates on this ? Some reviews are still pending. |
c2f607d
to
4897fe9
Compare
e12db21
to
9626486
Compare
…utorials Revert composer.lock unexpected changes fix: resolve promise immediately if dropdown menu is not animated fix: assign returned config array to variable refactor: move launchIntro function in a separate JS file fix: JS lint fix: 1 file without header fix: update lessons repo version fix: change default value of endingSteps to empty array refactor: Move lessons in the main GLPI repository refactor: simplify dropdown-show action data structure refactor: update of markdown file sources to enable clicking on links in vscode fix: CI Apply suggestions from code review Co-authored-by: Curtis Conard <[email protected]> fix: fallback to the sources if the english translation doesn't exist
921ebb7
to
c2a5f17
Compare
Adds a discovery system for GLPI functionalities.