- Dec 24, 2019
-
-
Patrick Hoste authored
PURPOSE : A quiz after a course content is a good way to check if the user gets the previous lesson. Despite, the user/student may not understand why his answer was wrong/correct. In this task we'll allow the teacher to add a comment next to the asnwer of a quiz. SPECIFICATION : The quiz creator will now be able to comment the answers to inform the frontend user why his answer is wrong/correct. He will be able to add the comments both in backend and frontend. Task ID : 2072566 PR : #41188 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
- Dec 20, 2019
-
-
Debauche Stéphane authored
Currently when there is an issue with the google API key, a generic message is send to the user, with the error details embedded in it in an ugly way. Now a message is displayed: "Your Google API key is invalid, please update it into your settings. Settings > Website > Features > API Key". This is done by parsing the JSON google sends back after request and determining if the error is linked to the API key. Task #2082857 closes odoo/odoo#40547 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
- Dec 02, 2019
-
-
Thibault Delavallée authored
PURPOSE Clean posting process and improve mail.message definition and comprehension. SPECIFICATIONS Website mail defines a website_published field allowing to publish / unpublish comments on the frontend of some modules. This field has several drawbacks : * it is used only for front-end people (portal, public) and has no real effect in chatter / classic discussions; * it is used only in some advanced front-end module and is not available in portal by default; * its naming is not really correct as it is not linked to fields coming from the website_published mixin and its behavior is not really the same; * its use is a bit duplicated with internal flag coming from subtype allowing to hide messages related to an internal subtype; * there are overrides of standard mail.message methods just to handle this flag; In this commit we change that field by an is_internal flag directly on mail.message model itself. It tells if share people (customers, share users) are allowed to read the message. This field can be given through posting API or set manually using widgets. It is also used in access rights custom methods and managed like the internal flag of subtypes. Mailgateway was already using an internal flag for internal note replies. It is renamed to is_internal and propagated as it is now a standard field. It also eases code understanding. Portal is updated to allow managing the flag directly. It means customer portal now natively allows to moderate customer comments without any need of website modules. Rating is updated accordingly. An is_internal field is added, replacing the related on website published. LINKS Task ID 2071556 PR #38692
-
Florimond Husquinet (fhu) authored
PURPOSE Purpose of this commit is to improve search capabilities of eLearning frontend application. Searching tags and content should be easier to do, update and notice. SPECIFICATIONS Before this commit - There is no visual indication to what are the selected filters. - The user can only select one tag in each dropdown box. - When the user selects a tag on one course card, this tag replaces all other filters. - When the user enters custom search terms, it replaces all other filters. - When searching a documentation, a stacktrace appears. After this commit - Selected tags appear as little tag boxes under the search bar. - The custom search terms appear as one tag box. - It's possible to remove a search tag by clicking on the cross present in each little box. - It's possible to select multiple tags in each dropdown box. - Tags in course cards work the same as tags in dropdown boxes, and add themselves to the list of filters. - To generate the list of courses to display, a logical OR is operated between tags of the same group, and a logical AND is operated between groups of tags. - A logical AND is operated between the custom search terms and other filters. - A logical AND is operated between the "My courses" options and other filters. - Bug when searching a documentation is fixed. LINKS Task ID: 2080617 PR #39259 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
- Nov 29, 2019
-
-
Hoste Patrick authored
Purpose is to ease designing your courses by allowing to create and update slide quiz directly in frontend, within the slide display. With this commit you are able to * add a quiz to a slide or add a question to an existing quiz; * edit an existing question from a quiz: * change the title of the Question; * add, remove or update answers; * change the right answer; * delete an existing question; * reorder the questions from a quiz; * reset the quiz for the current user if he is a website designer, allowing to test the quiz and its answers; New frontend widgets are introduced allowing to manipulate quiz. Slide page now supports a readonly / taking quiz mode and an edit mode for quizzes used notably for website designers / course maintainers. Task ID : 1999636 PR : #35326 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
- Nov 22, 2019
-
-
David Beguin authored
To ease grep in the code, especially that challenge is quite heavily used. Task ID : 1961053 PR #32594
-
- Nov 20, 2019
-
-
laa authored
Purpose of this commit is to help users knowing there is new content in a course by adding a visual insight. It is done through a new content arrow displayed in courses homepage. Regarding the file "website_slides_templates_homepage.xml", the choice to incorporate the t-call attribute into a 't' balise was necessary to display the customize option (part front) associated with the model course_card. Side dish usability improvements raised during development * display completed courses as last instead of first in "my courses"; * do not show promote strategy field for training courses as it has no use, only for documentation courses; TASK ID 2025186 Closes PR #36703 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
- Nov 06, 2019
-
-
Patrick Hoste authored
PURPOSE If a user levels up after passing a quiz, we want to clearly show him in the success modal that he actually passed a level instead of just showing his new rank and xp gauge. This commit introduces an animation with the progress bar when the user is levelling up. After reaching the upper bound of the next level: - The progress bar goes back to 0 ; - The lower/upper bounds change to reflect the new reached level bounds ; - The message "Amazing!" becomes "Level Up!" ; - The motivational phrase changes with a fade out/fade in animation. LINKS PR : #39870 Task ID : 2032649 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com> Co-authored-by:
Aurélien Warnon <awa@odoo.com>
-
- Oct 28, 2019
-
-
Jeremy Kersten authored
From now, you need to explicitely add sitemap=True if you want your controller into the sitemap. It's the default value, but if you forgot it, it will raise a Warning on runbot. It will avoid wrong controller in sitemap and duplicate (empty) content. From now, if your model contains a field website_id, the modelConverter for sitemap will automatically add the domain: "[('website_id', 'in', (False, current_website_id))]" It avoid redundant declaration and ugly url in redirect/rewrite view. Migration: need to remove it from url_from in website.rewrite task-2065018 closes odoo/odoo#39427 Signed-off-by:
Jérémy Kersten (jke) <jke@openerp.com>
-
- Oct 23, 2019
-
-
fw-bot authored
opw-2089868 closes odoo/odoo#39227 X-original-commit: 2dc54945 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
- Oct 02, 2019
-
-
Romain Derie authored
*base, website_blog, website_event, website_forum, website_slides With this commit: 1. It is now possible to add the 'Edit in backend' entry in the frontend navbar for any desired model, not only the ones which have the published mixin. It will simply redirect to the main_object form view. This commit add it to Forum and Blog. 2. When clicking on 'Edit in backend', it is now possible to land on another module than Website. That's especially useful for events and slides which are not directly related to the website module as they have their own module. 3. Remove the custom Edit in backend from the forum homepage (fa-cog). Opportunity was also taken to remove the 'edit welcome message'. It will now be editable through the editor (welcome message will appear in edit mode). Thus we got rid of the custom edit welcome message controller and views. Closes #36325
-
- Sep 24, 2019
-
-
Florent Lejoly authored
Currently there is a traceback when trying to leave a course (unsubscribe) from the frontend on the homepage of a specific course. (when clicking on "You're enrolled") This fixes the traceback. closes odoo/odoo#37384 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
- Sep 19, 2019
-
-
Sébastien Theys authored
There are too many image sizes. Since they are stored resized this takes time to generate when saving a new image, it's more rows on the attachment table, more files on the disk, ... 64px is close enough to 128px that it can be removed without a big impact on download size. It will even reduce download and number of requests when both images are displayed because now only one has to be downloaded and then benefit from cache. The difference between the two is typically around 1.5kB which is negligible these days, especially when the request overhead is around 0.5kB already, not even taking into account other factors such as latency. If a 64px image must absolutely be returned, it is still possible to pass the size parameters to the image route. But the current guideline is to handle resizing in the views when necessary. Views ===== - remove width and height attributes when existing CSS rules are overriding them (eg. `.oe_kanban_avatar` in the right context) - add CSS rules instead of width and height attributes when possible - use `object-fit: cover;` where width and height are forced to avoid distortion of non-square images - for products, use `object-fit: contain;` instead, keep ratio but without crop - add new CSS rules where the expected size was max 64px*64px before due to the image size itself - remove `img-fluid` where using size classes to avoid conflicting rules task-2060865 closes odoo/odoo#36147 Signed-off-by:
Sébastien Theys (seb) <seb@odoo.com>
-
- Sep 13, 2019
-
-
laa authored
Add an option to add the latest achievements in the right sidebar. closes odoo/odoo#36870 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
- Sep 04, 2019
-
-
Thibault Delavallée authored
PURPOSE Allow to manage attachments when updating a frontend review. SPECIFICATIONS Currently when posting a review in eLearning or eCommerce one can attach files to its review thanks for portal composer. Rating popup composer allow to update its comment and rating. However this edit mode has two limitations. It does not display attachments previously added and does not allow to add attachments. This commit fixes that by * giving attachment values to the composer, allowing its display by the composer display at startup; * allowing to give new attachments and properly handle them in slides route; Uploaded and validated attachments cannot be removed by users. Indeed message with attachments has probably already be sent to people and removing attachments would lead to information loss. LINKS Task 2066600 (manage attachments) Task 2058595 (eLearning v13 testing)
-
- Sep 03, 2019
-
-
laa authored
Purpose of this commit is to add new content at last position in frontend. Indeed backend uses last position in embedded list view, frontend should do the same. Moreover when having a lot of content, having everything at the bottom of the screen at the same position of Add content / section buttons makes sens. Specifications * when adding a new category: add it as last category; * when adding a new slide in a category: add it as last slide of the category; Specific case of slide without category * when adding a new slide without category: add it as last slide of the channel (display it as last) but keep it on top in backend view (display as first); Improve content list display in frontend of eLearning * contents without section are now at the bottom; * fixed alignment of buttons icon (Add Content and Add Section) * fixed broken design because of title too long Task 2049640 (website slides back2basics and fiximp) Task 2061672 (new content bug report) Co-Authored-By:
Michaël Mattiello <mcm@odoo.com> Co-Authored-By:
Alexis Lacroix <laa@odoo.com>
-
- Aug 30, 2019
-
-
mcm-odoo authored
Before this commit, leaderboard was displayed only if user was not connected. As we feel this is very interesting to show we decided to display it in all cases (either connected or not) on eLearning frontpage. Activating it is now done using an entry in the customize menu. Task 2005981 closes odoo/odoo#35791 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
- Aug 22, 2019
-
-
mcm-odoo authored
- Before it was not possible to leave a course. - This commit adds a modal to give the members the possibility to leave the course and also subscribe or unsubscribe to get notified or not. + Display a warning message when leaving if field enroll value is "payment". task-1985511
-
- Aug 19, 2019
-
-
Hardik Prajapati authored
in this commit, we have set the correct attribute(field's name) to fix the traceback while we adding a new section on a course using website task-2053822 closes odoo/odoo#35786 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
- Aug 08, 2019
-
-
Aurélien Warnon authored
When uploading twice the same video for a channel, the error message displayed unhandled html. We removed the html to avoid having to use $el.html() for better safety (and it should not happen often anyway).
-
qmo-odoo authored
PURPOSE Like already done for sale order, invoice of survey, purpose of this commit is to remove category model and replace by a flagged line (slide). It allows to easily reorder slides in an embedded list view. SPECIFICATIONS Instead of having a fully fledged slide.category model, slide.slide will serve that purpose with a is_category flag. This will allow to drag and drop slides and sections in the channel form view. This change had an impact on the way slides were added/sorted on the front-end. In fact, whenever a slide is added from the front-end, a resequencing of all the slides in the course has to be triggered. Category of a slide is now a computed field based on the sequence. Order of slides is based on sequence, with categories splitting the slide list based on is_category flag. In this commit tests are added. Some cleaning in tests is also performed to speedup a bit tests (savepointcase) and some cleaning / renaming to ease their understanding. Future commit will add JS necessary to manage slides in the section list view. LINKS TaskID: 1978731 PR: #33255
-
- Aug 12, 2019
-
-
mcm-odoo authored
PURPOSE Ease discovering of eLearning features by allowing to install surveys directly from frontend in order to allow certification. SPECIFICATIONS Add a button in Upload a document to install Surveys. This button only appears if surveys is not installed. When button is clicked, ask for confirmation before installing survey. LImitate this feature to group system: system people should see the button and use standard ACLS about module installation. LINK Task ID 2026846
-
Aurélien Warnon authored
The 'index_content' field was only filled when uploading from the frontend. That would lead to inconsistent results when creating/updating 'presentation' slides from the slide.slide form view. The field was also not cleaned if the slide content changed. As it's usage was not very clear (only on a 'search', and not very intuitive), we simply removed the field.
-
Aurélien Warnon authored
The completion time of a slide now has default values for slides of type * video (duration of the YouTube video); * PDF (number of pages * 5 minutes); This computation is done when uploading a slide in frontend or by an onchange in backend. Field can still be given / modified by elearning people as result may not be reliable (pdf parsing is not accurate, and/or you may estimate time differently from strict page-based computation). The course will sum up all durations of its (active) slides. Display has been changed from "x minutes" to "x hours y minutes". Task ID 2007294
-
- Aug 05, 2019
-
-
Jérémy Hennecart authored
PURPOSE eLearning should have its own application in manager. Indeed this is becoming a big application and having it embedded inside Website application is not enough anymore. It should also hold updated and easy-to-use menus, navigation, actions and views in backend. SPECIFICATIONS Update manifest and make website_slides an application separated from website embedded menus. Implement new menu structure * Courses * Courses List view: Course Name, # Views, # Attendees, # Ratings, Revenues, Reviews * Contents * Reporting * Courses: list view on slide.channel model, ordered by # views. * add a graph view (group by content) * Contents: graph view on slide.slide model Area Graph: X month Y measure: # Views (others measures: Attendees, ...) Group by: course (color) * Reviews: see kanban of latest reviews; * Quiz: list view on slide.question model. List view: Add # Quizz Trials, # Quizz Passed, Avg Attempts * Configuration * Settings * Allow Forum on Courses (installs website_slides_forum) * Allow Certifications (installs website_slides_survey) * Allow Selling Courses (installs website_sale_slides) * Course Tags * See channel.tags.group with label Course Tags, form view allow to configure group tags * https://drive.google.com/a/odoo.com/file/d/1G0g2UnG5cZG55EXQ5icbgwe7T2eSZskT/view?usp=drivesdk * On click: open :https://drive.google.com/a/odoo.com/file/d/1I_PW3aZAbrslXadiYqmVF-_6dGXx8knd/view?usp=drivesdk * Content Tags This structure will gain new items in sub-modules, notably bridge with form and website_sale. Those will be implemented in next commits. LINKS Task 1978729 PR #35061 Co-Authored-By:
Thibault Delavallée <tde@odoo.com> Co-Authored-By:
Jérémy Hennecart <jeh@odoo.com>
-
Thibault Delavallée authored
Template expects a category record but controller gives the ID of it. Oversight of 4ccd859b LINKS Task 1978729 PR #35061
-
- Aug 03, 2019
-
-
Romain Derie authored
The `website_published` field from the website's mixins is basically a readonly from `is_published` field. On read, this field will simply read `is_published` and check if the record's website_id is accessible (only for the multi mixin). On write, it will always write on `is_published`. This commit improves a few things: - A lot of code was writting on website_published which was just then writting on is_published. Writting directly on is_published makes more sense. - Some backend fields would still reference `website_published` instead of `is_published` which would just go through the related for no reason. Plus, using `is_published` will make the field tooltip more accurate as we are not in a website context ('Visible on current website' to 'Is Published') - Filter and search on tree view were still using the `website_published` related field, which is just a readonly when we are not in a frontend context. - Some create and write function would have security check on `website_published` value but that was wrong as the user could bypass that by simply writting on `is_published`. For the write method, check `is_published` is more accurate as it will cover both case since `website_published` will then call the write method on `is_published`
-
- Aug 02, 2019
-
-
Sébastien Theys authored
The following models are already using big images, or they might need big images in the future: - partner - hr employee - shop category - lunch product - gamification badge and karma rank PR: #34925
-
Sébastien Theys authored
image_original => image_1920 (now resized to 1920) image_big => image_1024 image_large => image_256 image_medium => image_128 image_small => image_64 image replaced by image_1920 (when writing) or by image_1024 (when displaying what was previously the big size) + add new intermediate format: image_512 PR: #34925
-
- Jun 24, 2019
-
-
qmo-odoo authored
This commit improves the elearning onboarding on the quizzes If the user is not logged in, a log in button will show up under the quiz If he is logged in but not a member of the course and the course is public, a join button will appear under the quiz If the course needs to be bought, a buy button will appear under the quiz. If the course is on invite only, a message under the quiz will inform the user about it TaskID: 2003986 PR: #33861 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
- Jun 28, 2019
-
-
Thibault Delavallée authored
Contains some small fixes * correctly order leaderboard by descending karma, not creation date; * top 3 users displayed in footer banner should be published, otherwise displayed images do not match the top 3 displayed in the page displayed when clicking; * correctly say Leaderboard is an overall leaderboard, not only limited to the current week; Linked to task 2005840 Related to PR #34220
-
- Jun 18, 2019
-
-
Priyanka Kakadiya authored
before this commit: When a user tries to see an archived slide, it throws an internal server error instead of 404 page after this commit: 404 page will be shown if a slide is archived task- 2018147 closes odoo/odoo#34198 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
- Jun 14, 2019
-
-
qmo-odoo authored
This commit adds the name of the currently viewed slide to the breadcrumbs at the top of the page Task ID: 1999672 PR: #33635
-
- Jun 13, 2019
-
-
Aurélien Warnon authored
When the channel has a linked forum, the "Review" link on the forum should redirect the user to the "Review" tab on the course page. Task #2003222 closes odoo/odoo#33786 Signed-off-by:
Jérome Maes (jem) <jem@openerp.com>
-
Aurélien Warnon authored
This commit improves the footer image of the slides home page by adding the top 3 users avatars (ordered by karm desc) in the image. We only fetch users that have an image set as avatar. Task #2003222 Co-authored-by:
@stefanorigano <sri@odoo.com>
-
- Jul 19, 2019
-
-
Patrick Hoste authored
A share button has been added to the fullscreen view to avoid exiting the view to access the share tab on the full description of the slide. Task ID : 1984509 closes odoo/odoo#33418 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
Patrick Hoste authored
Purpose of this commit is to ease slides / lessons management in eLearning frontend. The publisher will now be able to see if a slide is in preview mode from the slide list in frontend of eLearning. He'll be able to activate/deactivate the free preview mode with a button. Task 1999705. closes odoo/odoo#34182 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
- Jul 18, 2019
-
-
qmo-odoo authored
Indeed we don't rate slides, we rate courses. Therefore rating mixin is not necessary as well as access token. Access token field as we are using the _mail_post_access and a karma check. Commit linked to task 1952064.
-
- May 29, 2019
-
-
Thibault Delavallée authored
When joining a course of liking a slide if the user is not logged there is a popover asking him to login. If auth signup allows user creation link instead redirects to signup instead of login to save a click and improve onboarding. closes odoo/odoo#33755 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
Denis Ledoux authored
In the backend, the user has the possibility in the channels list to drag and drop channels to define their order, thanks to the `sequence`. This order was then not respected in the front-end when displaying the slides channel `/slides/all`. This was basically not possible for the user to control the order in which the channels were displayed. With this revision, when the order is not specified to the controller, or is wrong, it fallbacks to `None`, which therefore follows the slides channel natural order, which is `sequence, id`. The user can now control the order of the slides channels in the front-end. closes odoo/odoo#33745 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-