summaryrefslogtreecommitdiff
path: root/addons/website_form/static/src
AgeCommit message (Collapse)Author
2020-10-21[FIX] website_form: Required hidden field is not savedNasreddin (bon)
Issue - Install "Website" app - Go to "Contact us" page on website - Edit Page, then click on submit button to edit form style - Alter 'Recipient Email' then save - Edit Page and click on submit button 'Recipient Email' have default value. Cause If a field is required, the default value is set without checking if a value is already set. Solution Set current value if available, else default value. opw-2361169 closes odoo/odoo#60452 X-original-commit: e29d2818abf0e7902feb26c9e0b4809c9a3351c6 Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com> Signed-off-by: bon-odoo <nboulif@users.noreply.github.com>
2020-09-21[FIX] website_form: layout issue on multi checkboxes optionsBenjamin Vray
Before this commit, buttons to remove checkboxes and buttons to re-order checkboxes were styled like button. After this commit, buttons are just icons. We also improve a little bit the design of the checkbox list (add space between elements and a light border between items in the checkbox list). task-2312878 closes odoo/odoo#58111 Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2020-09-08[FIX] website_form: lang arabic for date/datetimeNicolas Lempereur
When we send dates with website_form, if the language of the website is eg. in arabic we will send moment.js arabic dates that can't be parsed by the server. This also happens with norwegian and any language which doesn't use ascii numbers or textual format of month or days (and possibly RTL language). With this changeset, if we detect we are in a use case where this matter (an existing field and a date format that will fail) the date will be sent as odoo server format. Expected change: - what worked still work with or without server restart - what didn't work works after server restart - special case such as "english" with custom format in res.language containing textual month might now not work with code update without server restart (probability of this is low). opw-2326882 closes #57042 closes odoo/odoo#57214 Note: the saas-13.5 version always force isoformat for existing fields X-original-commit: 9a5bb5e892bc40709fab77c2bc62adcba19e02d2 Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
2020-09-04[FIX] website_form: have several date pickerNicolas Lempereur
When multiple date (or datetime) pickers are added to a website form, the uniqueId value is used to differenciate them thanks to 694af9a19a. It works well in a lot of case (eg. when adding several field at the same time, or by change because other code consume uniqueId) but in this scenario: - add a date field on a form - save - add a date field on a form it is possible have the second field targetting the first one because they have the same `'datepicket'+uniqueId()` ID. This happens because uniqueId is reset at each page opening. found when working on opw-2326882 closes #57092 closes odoo/odoo#57109 X-original-commit: 75ad994a628ef0d994b44cf6e25fd5340c3ecafd Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
2020-07-28[IMP] web: remove min date limitation of year 1900Harpritsinh Sisodiya
Before this commit, user could not selecta a date before year 1900. This was an historical limitation due to python < 3.2 that didn't support dates before 1900. After this commit, user can select any date, user can select any date from 01/01/0001. taskID: 2166761 Fixes #41788 Closes #43055 closes odoo/odoo#51406 Signed-off-by: Géry Debongnie (ged) <ged@openerp.com> Co-authored-by: Mohammed Shekha <msh@odoo.com> Co-authored-by: Aaron Bohy <aab@odoo.com>
2020-07-14[IMP] web_editor, *: introduce new "button group" editor widgetqsm-odoo
*: website, website_form Basically work just as a we-select but with a different design. Part of https://github.com/odoo/odoo/pull/53930 task-2157252
2020-07-14[IMP] web_editor, *: review the editor design CSSqsm-odoo
*: web, mass_mailing, website, website_form, website_sale New CSS design of the editor (step 1/x). This work is unfortunately far from perfect but is a first step towards what we want. In particular, much CSS linked to elements that are meant to be removed/moved in the upcoming weeks was done in a huge rush but will thus hopefully be removed/reviewed before the 14.0 release. As the design is now far more complex including gradients and other "complex" elements, it was also very difficult to keep a design based on css-variable so this system was removed, which means that the editor now appears the same everywhere (backend, frontend, ...). The original goal of this system was to have an adapted style for backend, frontend and website visitors. Unfortunately, the current result was a very good frontend editor design, a not-so-good backend editor design (for mass mailing at least) and a totally unadapted design for the website visitors. Making this perfect will be achievable by loading different assets for those 3 areas and hopefully those assets will only differ by the values of editor scss variables. Part of https://github.com/odoo/odoo/pull/53930 task-2157252
2020-06-18[IMP] website, *: redesign the contact us and the thank you pageBenjamin Vray
task-2266756 closes odoo/odoo#52162 Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2020-06-08[IMP] website_form, *: add field type to formfja-odoo
*= website_hr_recruitment, website_sale, website_crm Adding 2 new types of fields: tel, url email, url and tel type can now be applied on existing char fields. task-2213083 closes odoo/odoo#50891 Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2020-06-05[FIX] website_form: prevent error on drop thumbnail in editor in SafariLaurent Stukkens (LTU)
Issue When using the website editor in Safari browser, an error occurs when dropping the form builder thumbnail into the editor. Step to Reproduce - Install website and web_editor applications - Use Safari browser - Got to Website - Click on Edit - Drag and drop the From Builder thumbnail from the left panel into the editor Cause The javascript function Node.insertBefore(newNode, referenceNode) needs to be called on referenceNode's immediate parent. Using DocumentFragment.querySelector(':first-child') returns the first child of the first element in the fragment which triggers this issue. The reason why Chrome accepts and handles this correctly remains a mistery to me ;o) Solution Call Node.insertBefore() method on the immediate parent of the node the insertion has to be performed before. So use .childNodes[0] instead of .querySelector(':first-child'). task-2271745 closes odoo/odoo#52520 X-original-commit: dd9ce45c09f8f2181eb48639c0e3ea6617260510 Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-06-05[IMP] google_recaptcha, *: integrate recaptchaV3fja-odoo
* = base_setup, website_form, website_sale, website_crm, crm_iap_lead_website, website_hr_recruitment, website_mass_mailing Integrate reCaptchaV3 on website_form submit and website_mass_mailing subscription. You can now use ReCaptchaV3 to add reCaptcha verification in any module using google_recaptcha. Also added a better error management on the form with custom messages. task-2217980 closes odoo/odoo#48466 Related: odoo/enterprise#9649 Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2020-04-27[IMP] website, *: warn user about outdated blocksfja-odoo
* = mass_mailing, web_editor, website_crm, website_event, website_form, website_forum, website_hr_recruitment, website_mail_channel, website_mass_mailing, website_sale, website_slides When an outdated snippet's option are activated we display a warning in the left panel that inform the user about the potential malfunctions. To do so the snippet's template key is added to the snippet as data-snippet. If a snippet is "t-call" inside another snippet, it will need to use t-snippet-call instead of t-call to have the key on himself. Those unique keys are used on snippet selection to retrieve the snippet's version in the left panel and compare it with the currently selected snippet's version. Versions are describe with data-vcss, data-vjs and data-vxml. If a snippet's key is not in the left panel we consider that snippet as outdated. Added some tests to ensure that t-snippet and t-snippet-call really have their template key as data-snippet Adapted the views to the data-snippet changes adding data-snippet="tmpl_key". Part of: https://github.com/odoo/odoo/pull/44569 task-2189669 closes odoo/odoo#50254 X-original-commit: 28a6cd49b6e87b75c2e70771e241c41778bf9e87 Related: odoo/enterprise#10236 Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-04-02[FIX] website_form: adapt to Bootstrap new APIPaul Morelle
Since Bootstrap 4, a popover object does not have an `option` attribute, as it has been renamed to `config` instead. This occurrence must have been missed out when we migrated. closes odoo/odoo#48911 X-original-commit: 662dd304d5a46a028ce74864076361865d759080 Signed-off-by: fja-odoo <fja-odoo@users.noreply.github.com>
2020-03-06[IMP] website_form: add/rename form optionsfja-odoo
Add a height option on textarea Rename some fields Add margin on default form part of: https://github.com/odoo/odoo/pull/45397 task-2197008
2020-03-02[FIX] website_form,*: fix d-none field no optionsfja-odoo
* = website_hr_recruitment The hidden fields containing form infos have options activated on them because of the class s_website_form_field. When a saved snippet is dropped the snippet editor tries to activate them. They should not have any options. closes odoo/odoo#46660 X-original-commit: 14d2283e739282f82828e0ba3792f9f1126d0033 Related: odoo/enterprise#8956 Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-02-13[FIX] website_form: fix existing fields alterationfja-odoo
The original existing fields could be altered once retrieved from the database. Now we make a copy once we use them to prevent any alteration. part of: https://github.com/odoo/odoo/pull/45280 task-2196797 X-original-commit: 2951c288ff839ccdf1740cac84dece96823eed8f
2020-02-13[FIX] website_form: fix multiInput's unique idfja-odoo
UniqueId was not set correctly on multipleInputs part of: https://github.com/odoo/odoo/pull/45280 task-2196797 X-original-commit: 387b8d698ffd599693fe9feaa9be87e19e3549ab
2020-02-11[FIX] web_editor, website_form: fix submit btn editfja-odoo
The edition of the submit button's text was broken. Part of https://github.com/odoo/odoo/pull/44907 closes odoo/odoo#45124 X-original-commit: 85966ac29b53d9e1c2ad1efb2c35ab13c9baae89 Related: odoo/enterprise#8360 Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-02-11[FIX] website_form, *: add submit btn position optionfja-odoo
* = website_crm, website_hr_recruitment, website_sale It is now possible to change the position of the submit button via the left panel. Indeed switching to a non-horizontal form left the submit button aligned with the labels which thus appeared broken. Part of https://github.com/odoo/odoo/pull/44907 task-2191409 X-original-commit: 60b4c8d04006736be573189accd0dccaafafa651
2020-02-07[FIX] website_form, *: fix new website formfja-odoo
* = website_crm, website_hr_recruitment, website_sale Changing label position on existing field was replacing the label with the default one. Redirection message was not updating the overlay Going from show message to redirect without hidding the mesage made the form d-none When a select field's label's position was changed the select was not editable anymore. Some other miscellaneous fixes task-2191409 closes odoo/odoo#44911 X-original-commit: 3cf87cc1cb179598cecb736728378e330d3b2e22 Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-02-07[FIX] web_editor, website, *: editor `notify` method must be synchronousqsm-odoo
* website_form Some technical explanations: The method became async because the `setTarget` call which was in there became `async` since it performed an UI update. As this method being async is a problem with some snippets, it is best to keep it synchronous for now. For this, the UI update in `setTarget` is removed and becomes the responsibility of the caller. Nothing relied on it except one code, which is solved by calling `onFocus` before the UI update which occurs on focus, as it is already the case in master. closes odoo/odoo#44850 X-original-commit: 53bba0660237abbcadc9675fd89ec94a2a31e130 Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-02-05[IMP] website_form, *: entirely review s_website_form snippetfja-odoo
*: web_editor, website_crm, website_form_project, website_hr_recruitment, website_sale The form builder is now using the left panel option system. Many new options are introduced to build better forms more quickly. The tests are now running with the new website_form implementation. Part of: https://github.com/odoo/odoo/pull/42189 task-2092425 closes odoo/odoo#42189 Related: odoo/enterprise#7365 Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-02-05[FIX] website_form: replace old and unused codefja-odoo
This widget was still calling deprecated methods. task-2092425
2020-02-05[REF] website_form: move s_website_form snippet to dedicated filefja-odoo
Follows: https://github.com/odoo/odoo/pull/42067 Part of: https://github.com/odoo/odoo/pull/42189 task-2092425
2019-12-17[IMP] website_form: add info on email_cc fieldKaushalya Mandaliya
In a website form, when "Email cc" field is added, an i icon will be displayed besides the field label to guide user about multiple email addresses support. task-2074045 closes odoo/odoo#37116 Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-01-13[FIX] website: translation of some fieldsjerome hanke (jhk)
Steps to reproduce: - install website and crm - install a second language and translate website - go to website > create a new page > add a form builder > create a new opportunity > add a new custom field (selection or m2m) Previous behavior: default fields and some messages are not translatable Current behavior: more fields are translatable opw-2168786 closes odoo/odoo#43224 X-original-commit: 2b1359f2d2f85772c98988be5714f31163b70a23 Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-12-30[FIX] website_form: fix several issues when editing a formPrakash Prajapati
This commit fixes the following points: - While dropping a form builder, the default action is now set to 'Send an email' instead of first available action. - Titles of the forms which previously were readonly, are now editable. - When sending an email, the 'reply-to' address is now set from the email field provided in the form, instead of the catchall mail. - Hitting 'Send' button for 'Send an email' option now immediately sends the mail instead of putting it in the queue. task-2082970 closes odoo/odoo#42515 X-original-commit: 7ada68cc91fde1b6eff151549808a20e85cb5bf7 Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2019-12-09[FIX] website_form: fix missing currency field in form builderJason Van Malder
Issue - Install CRM & Website - Edit the website contact form - Add "Expected revenue" field Traceback Cause Monetary fields are not handled by the form builder Solution Add the monetary field in the form builder core OPW-2150986 closes odoo/odoo#41558 X-original-commit: 6c27c3abf4907e1faac670ea8ef006992ec96063 Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
2019-12-09[REV] web: reverts update to fontawesome 5.11.2Kevin Baptiste
This reverts commit ff1c35513aecef5fbc30f7c2f3834450e719714e. closes odoo/odoo#41480 X-original-commit: 116057b26e71db4692280463669f3e80d813ddcc Related: odoo/enterprise#7110 Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2019-12-01[REF] web_editor, *: use widgets for left panel componentsqsm-odoo
Before this commit, the rendering of inner content of the left panel options was handled through _buildXXXElement methods in the options widgets. Now they are handled through sub-widgets which also handle the user events. Each sub-widget is notified with the string value it should hold according to the snippet option target and methods. Each sub-widget notifies a string value following user interactions, which snippet options can use to adapt their target through their option methods. The current sub-widgets introduced by this commit are (others will follow): 1) we-button 2) we-checkbox 3) we-input 4) we-select (typically containing multiple we-button widgets) 5) we-multi (typically containing multiple we-input widget) Following this commit only 3 standard option methods remain, which can be used with any meaningful widget: 1) selectClass -> Same as before + handle the old 'toggleClass' method when used with a checkbox-like widget. 2) selectStyle -> Same as old setStyle, introduced recently (simply renamed) 3) selectDataAttribute -> Handle both old selectDataAttribute and setDataAttribute, introduced recently The parameters these methods received are now: - previewMode: same as before - widgetValue: the string value the widget currently holds - params: additional parameters (mainly dataset of the related xml) + params.possibleValues (all the possible values for the method, meaninful for a select or a checkbox) + params.defaultValue (the value that the widget would give if it even holds no value) When defining a method in XML, the given value is the default value. e.g. data-select-style="34px" data-css-property="margin-top" -> if set on any widget, allows to retrieve a value from the user to customize the margin-top, the default value being 34px. -> if used with a we-input, allow to retrieve any value and an empty value will be equal to 34px -> if used on a checkbox, allow to toggle between no value and 34px. -> ... Hopefully, detailed documentation about all of this will follow. Code documentation should already be helpful. Last note: the _updateUI method (replacing the old _setActive) is now async (so does all the functions calling it). In particular, the _select method is now async. Part of https://github.com/odoo/odoo/pull/40282 In preparation of task-2122935 and other tasks
2019-11-28[IMP] web: update to fontawesome 4.7.0 to 5.11.2Kevin Baptiste
FontAwesome 5 introduced new names for some icons as described on https://fontawesome.com/how-to-use/on-the-web/setup/upgrading-from-version-4#name-changes This commit replaces the old names to the new ones. closes odoo/odoo#35826 Taskid: 2050241 Related: odoo/enterprise#5180 Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2019-11-20[FIX] website_form: website form type in form parametersNicolas Lempereur
In 13.0 odoo/odoo@6404233bb09 adds a new website_form_key field that was not taken into account when creating a form from website studio. This would cause that when editing the form, we would not see it in the list of form type, and so think it was doing another action that the current one. And if saved that could cause an issue because the form is now for doing something else and no way to change it back. With this changeset, we get back to what was before 13.0 and display a model in the "Change Form Parameters" modal even if it has no associated form in the registry (through a website_form_key). opw-2118567 closes #40533 closes odoo/odoo#40578 X-original-commit: 6337a04b73e8030b13d5338cee8c045006c21eae Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
2019-11-13[FIX] website_form: add missing call to _super in snippet optionsqsm-odoo
closes odoo/odoo#40200 X-original-commit: 424dfc913b2259862e6e6d7838844dfefd72a15c Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2019-11-06[IMP] website_form: apply layout to newly added fieldDharmraj Jhala
This commit copies design of the last form-field and automatically applies it on the newly added field to ease the designing. Part of https://github.com/odoo/odoo/pull/30595 task-1874350
2019-11-06[IMP] website_form: show warning while changing form parametersDharmraj Jhala
If user changes the form-parameters (like targetted model), it removes all the existing fields without any warning and re-renders a new form according to changed parameters. This commit improves above behavior to prevent accidental loss of a well designed form. Now when user changes form parameters, a warging will be shown to user before re-rendering the form if the model is not same. Part of https://github.com/odoo/odoo/pull/30595 task-1874350
2019-11-06[IMP] website_form: add new 'email' type of field in custom fieldsDharmraj Jhala
This commit adds possibility to add 'email' type of custom field using form builder. Part of https://github.com/odoo/odoo/pull/30595 task-1874350
2019-11-06[IMP] website_form: improve radio/checkbox behavior and layoutDharmraj Jhala
This commit implements following changes: - aligns radio / checkboxes with their label - adds an option on radio buttons and checkboxes to display them horizontally or vertically Part of https://github.com/odoo/odoo/pull/30595 task-1874350
2019-11-06[IMP] website_form: focus the first input / footer button of modalqsm-odoo
This commit focuses the first form input on the opened modal (or footer button in case there's no form input). This behavior will enable users to navigate through the modal using keyboard right away (without having to click on input). Part of https://github.com/odoo/odoo/pull/30595 task-1874350 Co-authored-by: Dharmraj Jhala <dja@odoo.com>
2019-10-31[FIX] website_form: multiple input files with same nameNans Lefebvre
By default, the name of a file input field is 'Custom File Upload'. If there are two fields with the same name, then they both end up in self.form_fields with the name 'Custom File Upload[0]', and their values are concatenated, which are file objects. So the concatenation of two files is a String, ('[object File],[object File]'), because JavaScript. (And if you don't like it you don't like the web nor human progress.) The resulting bug is that instead of adding attachments to the created record, it adds the string message to the notes. Adding the outer loop index disambiguates the names, so that all attachments are created as intended. opw 2092653 closes odoo/odoo#39674 X-original-commit: 5df3f662dc9f7e3030a899a6f4196245083ad415 Signed-off-by: Nans Lefebvre (len) <len@odoo.com>
2019-10-11[FIX] web_editor, *: expose access to all snippet options UIqsm-odoo
* website_form To support old theme options, a hack had to be made to allow access to left panel UI. This will be improved in master. Part of https://github.com/odoo/odoo/pull/38495 task-2083198 X-original-commit: 5ac6a7a5dbd2af1190d0d027d0239dd1cfc257b0
2019-10-11[FIX] web: can't edit subscription with end date beyond 200 years in the futurefw-bot
-Import a subscription with end date beyond 200 in the future (ex: 2500-01-01). -Open the subscription and click the Edit button. Before this commit: A stacktrace appears indicating that a date is not valid. It's not possible to edit the subscription. After this commit: The maxDate of the date picker has been increased to 31/12/9999, allowing the user to edit subscriptions whose end date is that far in the future. A test `toggle datepicker far in the future` for this case has been created. closes odoo/odoo#38527 Opw: 2079696 X-original-commit: 32b6131c04fef7a542a0ccbdb924d177627bfe38 Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-10-01[FIX] website_form: fix website form snippetfja-odoo
The modal of the website_form snippet was broken. Now it uses Dialog. Hidden inputs were not aligned with there labels. task-2078138 closes odoo/odoo#37545 Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com> Co-authored-by: qsm-odoo <qsm@odoo.com>
2019-07-26[FIX] website_form_editor: properly edit select fieldsAntoine Guenet
Select fields were not `contenteditable=true`, which means they could not be edited. Besides, being that each of their option was individually considered a snippet, and that they were contained in `div` tags, they were effectively unbreakable, which means that adding new options by hitting `ENTER` did not work (note: this also currently doesn't work properly in v12.0, for other reasons as the concept of an "unbreakable" node didn't exist yet). This fixes those issues. closes odoo/enterprise#4817 Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com> X-port/Cherry-pick of odoo/enterprise@af51d9ff2ac952ef7d068754eca86635c25e7538
2019-07-19[FIX] website_form: replace False and None by ""RomainLibert
In python false is written `False` however JSON only support the notation `false` otherwise JSON.parse fails Again in python a null value is written `None` however `None` is `null` in JSON notation A solution to this incompatibility problem between python and javascript can be to replace `False` and `None`by empty strings on the javascript side. closes odoo/odoo#34995 Signed-off-by: Romain Libert (rli) <rli@odoo.com>
2019-06-27[FIX] website_form_editor: retain selection field design while savingmgh-odoo
In case of selection or many2one field, while saving the page, the field is re-rendered and loses the applied design changes. This commit fixes the behavior by re-applying those changes on a newly rendered field. task-1961733 closes odoo/enterprise#4657 Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com> X-port/Cherry-pick of odoo/enterprise@298a9b3a943dc64709bdbd67cbdfafc84f7e72f4
2019-06-05[IMP] *: move test and tour files to new folder hierarchy and assetRomain Derie
As we now have a new debug mode 'tests' which load a new asset bundle containing tour-test files, we moved those files to a new folder hierarchy. That will clean the .js files trees. Also, those files should be included in the new asset. Basically, the .js tour files (not test) should be inside /static/src/js/tours while .js tour test files (test=true) should be inside /static/tests/tours next to QUnit tests, inside a tours folder. + test_new_api: don't run the test in debug assets task-1934445 Comes with https://github.com/odoo/enterprise/pull/4281 Closes #33213
2019-04-19[IMP] website_form: set server-side form values outside the formJigar Patel
`t-att-` inside form should be removed because it makes the form not editable by the form builder. Instead of having these values set to the `<form>` DOM element, it will use a `<span>` outside it. task-32212
2019-04-19[IMP] website_form: adapt tour to new default formJigar Patel
Now, the default form already has multiple fields by defult, including `subject` one. The test was adding that field, so it now needs to add another one that is not on the form. task-32212
2019-04-19[IMP] website_form: add default attributes for 'Send an E-mail' formJigar Patel
task-32212
2019-04-19[IMP] wesbite_form: add mechanism to allow default atttibutes to formJigar Patel
That way, it is possible to add the template, fields and success page to different type of form. Next commits will use what has been done in this commit. task-32212