- Jun 11, 2019
-
-
sri-odoo authored
The '#wrap' id is needed by website themes to correctly handle layout options. closes odoo/odoo#34024 Signed-off-by:
Quentin Smetz (qsm) <qsm@odoo.com>
-
- May 06, 2019
-
-
qmo-odoo authored
This commit removes the read access on slide.answer for all users except website_publisher and admin Task: #1947884 PR: #32083 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
- May 03, 2019
-
-
qmo-odoo authored
This commit fixes a few issues with quizz * change background-color to white in fullscreen mode; * prevent going up to the top of the page when selecting an answer; * highlight selected answers in fullscreen; * fix the display of already completed quizzes Commit linked to task ID 1978530 (fixes linked to internal testing). closes odoo/odoo#33140 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
qmo-odoo authored
This commit adds back the slide type icons on the sidebar list in fullscreen and not fullscreen mode. Commit linked to task ID 1978530 (fixes linked to internal testing).
-
- Apr 23, 2019
-
-
sri-odoo authored
Purpose: reduce some customization and ease eLearning link with themes. For that purpose use the body class name propagation recently added. Linked to task 1958372 Related to PR #32648
-
- Mar 21, 2019
-
-
qmo-odoo authored
This commit provides a few fixes for the non-fullscreen view: * remove the subquiz link on slides of type 'quiz' in the sidebar; * hide completion icons in sidebar if not member; * only show the 'embed on your website' option when a slide has an embed code. This will prevent slides of type 'certification' or 'quiz' to display an empty embed box; Commit linked to task ID 1941250 and PR #31977
-
qmo-odoo authored
This commit provides a few fixes for quiz feature: * fix amount of karma won by the user in a quiz; * correctly display the fact that a subquiz was completed by the user instead of just looking like a non-completed quiz; * going on a previously completed quiz, good answers are hightlighted and inputs disabled; * effectively put the quiz in readonly mode if not a channel member. Commit linked to task ID 1941250 and PR #31977
-
sri-odoo authored
Purpose of this commit is to perform a cleaning of * documentation course: add a new specific navigation for documentation course with a sort option and filters on slide types; clean overall layout of documentation course to have a better-looking result as this page was still not really updated; * lesson not fullscreen page: global layout and cleaning of not-fullscreen page to have a better-looking result. Notably related slides for documentation slide is set on right, and some UX bits are tweakes; Commit linked to task ID 1941250 and PR #31977
-
sri-odoo authored
Commit linked to task ID 1941250 and PR #31977
-
sri-odoo authored
Purpose of this commit is to improve the global look of course layout (notably banner, navigation, course / channel informations). Content list layout displayed in training (orderable) is also tweaked and improved. Commit linked to task ID 1941250 and PR #31977
-
- Mar 19, 2019
-
-
David Beguin authored
Commit 5798ca28 was assuming the vote and comment access on slide was related to is_preview mode and was, consequently, depending on each slide separately. In fact, it's not because a slide is in preview mode that the user has the right to vote for this slide. He must be course member to interact with this preview slide, even if he has the right to read it. So the vote and comment right are now computed at the level of the course, and apply to all the slides of this course. This commit also reviews and apply fixes on review - rating access. Here are the applied rules regarding vote, comment and rating on course and slides: A user can review a course: - If allow_comment is activated on the course AND - If the user is publisher OR - If the user has enough karma AND is member of the course. Note : if the rating is not allowed on the course, not only the button to review must be hidden but also the entire rating composer. A user can vote and comment a slide: - If allow_comment is activated on the course AND - If the user is publisher OR - If the user has enough karma AND is member of the course. Other fix applied is this commit : - Avoid crash when no promoted slide : When going on course homepage (documentation type), if no promoted slide, we got a internal server error. Task ID: 1941250 Partial revert of commit 5798ca28 PR #31567
-
- Mar 15, 2019
-
-
Jérome Maes authored
When a certification slide is display in no fullscreen mode, the done button is clickable. Same applies to quiz slide. This commit prevents user to manually mark a slide as done for slide type that requires an other action (submit answer, pass survey, ...). Task-1941250
-
David Beguin authored
As slides are returned in sudo to the template, the user rights were checked via a can_access variable set in the template directly. In order to disable the vote for user that cannot get access to the course all the checks are now done in backend (also to avoid to get access to slides in sudo mode with rpc calls). We add now, for each slide on the course view, the access and vote rights to the template : can_access and can_vote. Those two are computed in backend, using the user's access right instead of admin's. But, as if the user is not member of the channel, he cannot get access to the course slides (expect for Free Peview ones), so the check on can_vote will crash. This is why we check the access rights before checking can_vote, for each slides (as free preview slides are still accessible, even if the user is not in channel members). The vote widget is disabled if user's can_access or can_vote = False, enabled otherwise. If user have access but have not enough karma, the controller will handle this case and return an error to the user telling him he has not enough karma to vote. If user can vote but cannot access, the controller will handle this case and return an error to the user telling him he has no access to the lesson. Task ID: 1943788 PR #31321
-
David Beguin authored
To avoid eLearning to be spammed, the comment, review and vote behaviours are now allowed only if the user has enough karma to do it. Here is the new behaviour on courses and slides rating / comment / vote -If allow_comment is checked on Course : - Review (rating) is allowed on Course only if enough karma - Comment is allowed on slides within the course only if enough karma and course type is 'training' - Vote is allowed on slides within the course only if enough karma and course type is 'documentation' -If allow_comment is not checked on Course : - Review (rating) is not allowed on Course - Comment is not allowed on slides within the course - Vote is not allowed on slides within the course - Rating is not allowed on slides within the course anymore Task ID : 1943788 PR #31321
-
- Mar 12, 2019
-
-
qmo-odoo authored
When a slide is seen by user, it should be marked as completed (according to its type), and the user completion for the course is updated. But for public user, we don't want those RPC calls to be done, as completion for visitor makes no sense. This commit also hide progressbar when current user is public. Task-1942852 closes odoo/odoo#31700 Signed-off-by:
Jérome Maes (jem) <jem@openerp.com>
-
- Mar 08, 2019
-
-
Thibault Delavallée authored
Display * improve color of trophy displayed on top of course main page (success if course done, warning while working on it); * correctly fetch and display karma/xp points on course lesson list. It is either gain of next try, either awarded points depending on slide completion; * fix control buttons in course main page (prev, next, set done, set completed, fullscren), notably correctly set them disabled; Linting / Code * put demo in no update; * rename some parameter in website_slides_survey to avoid conflict between quiz (on a slide) and certification (a survey); Commit linked to task ID 1941250 and PR #31697. Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
- Mar 07, 2019
-
-
Thibault Delavallée authored
Purpose of this commit is to perform a cleaning and upgrade of the lesson view in front-end when not using the fullscreen mode. This page had not been updated since eLearning addition. A method is added on slide model to have a protected method computing quiz related information on a given set of slides, notably potential karma gain, gained karma and number of attempts. It is mainly a code move from controllers now working in batch. Some linting is also done, notably a badly-named file. See original eLearning task for main specifications [1]. Commit linked to task ID 1941250 and PR #31657. [1] See task ID 1902304 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
Jérome Maes authored
This commit makes the quiz widget a real odoo widget that triggers up some events. The widget is now only responsible of * fetching quiz data (if not given) * decorating the anwsers according to the result * displaying message (error or modal) To do so, some code move/rewrite was needed * extract and factorize some template * add 'sudo' on technical model to avoid access rights error * factorize some python method from controller to model * remove some CSS classes to lighten the code * fixing access model error * make quiz widget handle the display of error message * give browse record for template rendering, rather than slug * cleaning some spaghetti code in Fullscreen widget * ... Commit linked to task ID 1941250 and PR #31584. Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
- Mar 06, 2019
-
-
Thibault Delavallée authored
Simple fix to already have the standard gray background. Future commits will improve display of not fullscreen lessons but this fix was necessary for incoming work. Commit linked to task ID 1941250 and PR #31512.
-
Thibault Delavallée authored
Currently there is a tool method on controller allowing to prepare some slide related data. However controllers still add values in the slide dictionary outside of this method, making it non consistent. Let us prepare all side related data in this tool method to simplify code understanding. Commit linked to task ID 1941250 and PR #31512.
-
- Feb 26, 2019
-
-
Jérome Maes authored
This commit replaces a widget with standard boostrap code: the progress bar classes. Creating a widget was a little bit over engineered, and since the progress animation is handle in CSS, this replacement does not cause any loss of feature. Commit linked to task ID 1942852 and PR #31394.
-
Thibault Delavallée authored
Moves * sidebar of course main template in its own template; * fullscreen templates in their own file; It will ease future modification of this page layout. Commit linked to task ID 1942852 and PR #31394.
-
Aurélien Warnon authored
Purpose ======= This commit introduces an icon template to factorize some xml code. It also correctly overrides this template in website_slides_survey to add the 'certification' case. Commit linked to task ID 1942852 and PR #31394.
-
Thibault Delavallée authored
Just apply some linting and naming convention. Commit linked to task ID 1942852 and PR #31394.
-
Aurélien Warnon authored
Purpose ======= This commit adds the management and display of uncategorized slides for both the frontend publishing management and the fullscreen course views. We add a "Uncategorized" section on top of all the categories that is hidden for the student if it's empty. Course publishers can drag and drop slides from and to that new "Uncategorized" section to easily reorganize the course. Commit linked to task ID 1942852 and PR #31394.
-
Aurélien Warnon authored
Purpose ======= This commit refactors the way slides and categories are reordered in the frontend course view (training courses). The use of jqueryui's "sortable" widget makes it easier and more user friendly to drag and drop both sections and slides to reorganize your course. Commit linked to task ID 1942852 and PR #31394.
-
Quentin Mourier authored
Purpose of this commit is to perform some linting and cleaning in lesson widget JS and its related css. Notably for fullscreen widget of eLearning. Containing * better naming of css classes; * deleted sidebar file as it is now included directly in the fullscreen widget; * removed unused css; * apply JS linting; * clean some controllers; Commit linked to task ID 1942852 and PR #31394.
-
- Feb 21, 2019
-
-
David Beguin authored
- slidesChannelDropdownSort : dropdown items back to visible (was white on white) - Featured lesson : change icon to bullhorn instead of + icon - Pass certification fullscreen button : btn primary - set max height to fullscreen content to 100% minus header - Fix 'infographic' slide type image view - change image for 'Furniture Technical Specifications' course - fix fullscreen presentation mode: The condition to add the iframe that contains the presentation of the document was wrong and, so, never met. Those conditions are evaluated in javascript and not in python as it's part of t-name template linked to a javascript widget. Commit linked to task ID 1941250 and PR #31279.
-
- Feb 20, 2019
-
-
Thibault Delavallée authored
Purpose is to perform some linting in code. No functional change should occur with this commit, only some code move. Diff may appear huge but it is just because some files are split. This cleaning allow to better understand code and templates architecture now that eLearning feature has landed in Odoo Community. It will ease future additions, modifications and fixes. Containing : * [REF] make some internal slide-related methods private as they are not intended to be called by outside world; * [MOV] new channel invite wizard in wizard folder; * [MOV] split frontend templates in some files to better locate code. There is now files for homepage, course, lesson, embed and utils in addition to slide-related profile template; * [REM] dead (unused) templates; Commit linked to task ID 1941250 and PR #31272.
-
- Feb 19, 2019
-
-
Thibault Delavallée authored
Purpose is to ensure more advanced use cases are still supported in new elearning platform in addition to more public use cases. Fields controlling access are now * enroll: who can enroll on course: public (everyone, simply click on join button), invite (added by already members) and payment (in bridge with website_sale, if SO with product is confirmed); * enroll_group_ids: automatically add members of those groups to the channel to ease having groups for a given subset of users; * visibility: who can see a channel and its slides: public (everyone, it means channel is visible on website for example), members (hidden for non members) * website_published on channels and slides; non publishers cannot see what is not published, whatever other parameters; * upload_group_ids: who can upload on a channel; * download_security on a slide is completely removed as it makes no sense for most slide types; To ensure a better user experience responsible of a channel is added in its members. People uploading a slide are now also allowed to read it to avoid having inconsistency behavior between upload_group_ids and access rules. Some tests are added. This commit is linked to task ID 1942836 and PR #31239. Co-Authored-By:
Aurélien Warnon <awa@odoo.com> Co-Authored-By:
Thibault Delavallée <tde@odoo.com>
-
qmo-odoo authored
Purpose of this commit is to introduce a new way of displaying and managing slides in eLearning module. Its purpose is to give a better experience to users when going through a course. Notably a fullscreen mode allows to take lessons one by one without going out of the elearning display. Integration of all slide types eases taking the course step by step. Quiz are introduced in this commit. Those are an addition to slides with some question / answers (multiple choice). It allows customer to gain karma and improves gamification. Certifications are still done using the survey application. Quiz targets only small tests at the end of a given slide. A new widget is added to display and control slide display in fullscreen mode. Old display is still available for documentation channels or when going out of fullscreen mode, to see details on comments / review / statistics and have access to share options. This commit is linked to task ID 1902304 and PR #29876. It closes the main work on refactoring website slides into eLearning, with other tasks already merged in current community [1][2][3][4][5]. [1] Task ID 1940360 landed at b2149bc7: certification inclusion [2] Task ID 1936153 landed at 6c6179e5: homepage inclusion [3] Task ID 1937160 landed at 8b7605c9: selling courses [4] Task ID 1922159 and 1940516 landed at 5fa651cb and 6a64c3ce: new user profile and gamification of slides / forum [5] Task ID 1938643 landed at 77b5673a: upload channel/slide
-
- Feb 15, 2019
-
-
Thibault Delavallée authored
Purpose of this commit is to improve karma and gamification inclusion in elearning [1]. * remove a border, replaced by a standard hr, in rank template. It allows to reuse it easier as we don't necessarily want that border in other templates using it; Commit linked to task ID 1941250 and PR #31133. [1] task ID 1922159 (landed at 5fa651cb)
-
Thibault Delavallée authored
Purpose of this commit is to * clean user avatar controller and its calls; * extract default image computation; * add a controller to get slide image even when not having access to the slide as all slide name and images are displayed even if not available to the current user; Commit linked to task ID 1941250 and PR #31133.
-
Aurélien Warnon authored
Task #1940360 Subtask of #1902304 Purpose ======= Adds certification capabilities to the website_slides module. Channel/courses can now include certifications as a new type of slide. This new type of slide is available as a "Certification" button on the slide creation frontend view (next to "Video", "Presentation", ...). Users have to link the slide to an actual survey that has the 'certificate' field set to true (that will populate the slide's survey_id field). Slides of type certification are handled in frontend in a very simple way for now: - A button "Begin certification" that redirects the user to the related survey frontend. - A button "Download certification" when the user has succeeded the certification. - When the survey is done, if it's linked to a slide, a button "Go back to course" allows the user to go back to the slide frontend. (There is a special use case for when the website_publisher designing the survey lands on a certification slide: he is allowed to test the survey with a survey_input created as test_entry) Survey creation as well as limited time, limited number of attempts, ... are still completely handled in the survey module. That means that the user will have to first create a suitable survey that is a certification and only then create a slide of type "certification" and link the created survey to it. Ideally, the taking of the survey should be transparently included in the slide frontend but it requires a full refactoring of the way surveys are submitted. This will most likely come in a later commit. This commit is an advanced merge of full eLearning module (see task #1902304).
-
Aurélien Warnon authored
Purpose ======= Website publisher should be allowed to access slides on the frontend even if he's not a member of the channel.
-
Thibault Delavallée authored
This commit proposes a new homepage for slides module evolving towards an eLearning platform. It includes * a new main page displaying top courses / channels. It displays 3 most popular and newest channels as well as its ongoing courses (if logged). Achievements and karma update done by eLearning community allow to give a gamification look and feel; * an 'All' page displaying all courses / channels. Tag groups and tags allow to search / filter displayed courses; * a new pimped and revamped display for main course / channel page; For more details about specifications, send an email to aware people that will be able to send you mockups. Or see the related task. Thanks to @qmo-odoo who helped developing this homepage based on its work. This commit is linked to task ID 1936153 and PR #30770. Co-Authored-By:
qmo-odoo <qmo@odoo.com> Co-Authored-By:
Thibault Delavallee <tde@odoo.com>
-
Thibault Delavallée authored
This commit squashes several fixes / light improvements related to the new slides / elearning homepage [1][2]. Containing notably * clean promote strategy field on channel model: less entries as they are now used only to display lessons in a given order on channels of documentation type; * remove promotional fields, not used anymore since partial access on channel allowing to have some kind of small preview of slides has been removed; * use standard image field (image, image_medium and image_small) and use image_resize_image from tools like all other odoo applications; * improve image resizing to have medium images better looking on frontend and use that nice image_large that broke my build yesterday; * add last publication date change on channel; * clean dead code; [1] new homepage task: ID 1936153 and PR #30770 [1] main elearning task: ID 1902304 and PR #29876 Co-Authored-By:
Aurélien Warnon <awa@odoo.com> Co-Authored-By:
Thibault Delavallée <tde@odoo.com>
-
- Feb 14, 2019
-
-
Jérome Maes authored
With this commit, the user can activate review on channel content when creating a channel from frontend, or editing it from backend. Once activated, the comment tab below the slide content will allow user to post a comment with optional rating. The way of commenting is different regarding channel type: - documentation: user can post comment and vote (list/dislike) on slide content - training: user can post comment with review (rating) Task-1902304
-
- Feb 12, 2019
-
-
qmo-odoo authored
The idea is a slide can be a HTML page completely customized by user. So, you can now easily create custom content and publish it on your website, like a normal slide. Task-1938643
-
qmo-odoo authored
A slide can now have some external link. For instance, links to the origin of the document (sources for scientifics papers, ...). A new model is added to allow the user to provide several link per slide. Those are display below the channel on website page. Task-1938643
-