Giter Site home page Giter Site logo

novacode-nl / odoo-formio Goto Github PK

View Code? Open in Web Editor NEW
61.0 61.0 81.0 19.39 MB

Odoo Forms app & modules

Home Page: https://apps.odoo.com/apps/modules/17.0/formio/

License: Other

Python 58.65% JavaScript 32.87% CSS 0.84% HTML 5.93% SCSS 1.71%
business erp forms odoo odoo-apps python webforms

odoo-formio's People

Contributors

banqu avatar bobslee avatar hrotkogabor avatar lieblinger avatar mairenhub avatar ongood avatar sjamaan avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

odoo-formio's Issues

formio: "web.base.url" documentation

The web.base.url param should match the domain where Odoo is served from.

formio.js JavaScript generates some URLs by the window.location property. Maybe this breaks when serving Odoo with different subdomains/A-records?

formio: auto subscribe and mail followers (configure in: form.builder, preferences for allowed form.builder)

Maybe just skip/close this one.
Followers etc can be implemented by automated and server actions.

Features:

  • Auto subscribe followers upon form submission.
  • Auto mail or needaction (subscribed) followers upon form submission.

Configuration:
(1) Followers res.partner (many2many) on the form.builder
(2) My preferences: Add formio.builder (many2many) allowed to autosubscribe by group (res.group).

website_formio: Annotate the Form (container) if the Form Builder state != Current

Annotate the Form (container) if the Form Builder state != Current.
(An improvement for the website_formio module)

Problem description:

A specific formio.builder version (eg version 1) has been published on the website, snippet has been dropped.

When there's a need to change/edit the version 1, one could put it in state = Draft or first design a new one (button: Copy New Version), which becomes version 2.

The problem arises when the formio.builder is updated back to state = Draft.
In this case, currently the Form ain't shown in the website snippet anymore - which is really not ideal !

Improve this case/situation by annotating the Form by eg a red (colored) border or message.

Requirements
But, we don't want this annotation on every type of Form - it should be configurable.
Add a new setting field in the formio.builder whether to enable (show) the annotation.

Public access to form

Hi! Is it possible to make form visible to public i.e w/o login on website? I tried to change 'auth' property in controller and add public odoo user to Formio User group but it didnt help much.
Based on the python exception

Error to render compiling AST
AccessError: ('You cant get access to this document.', None)
Template: formio.formio_html_head
Path: /templates/t/head/t[1]/link
Node: <link rel="stylesheet" type="text/css" t-att-href="css.url"/>

I guess that happened because of using "ir.attachment" in formio versioning assets.

Drag and drop builder not appearing on UI

Environment: Odoo open source 11.x, running on Ubuntu 16.04

After setting up the the module, the drag and drop builder doesn't show any options for editing or adding fields to the form:

image

formio: Builder - Remove/disable unnecessary component options

The formio.js builder shows in components (editor) lots of options and settings which ain't in use with Odoo module integration.

Provide a way to hide those?
Eg. by using similar implementation as formio.js.options.

Also block any request to external URL, eg CDNs.

formio_component_recaptcha_button: res.config.settings (model, view)

Currently the reCAPTCHA Site Key and Secret need to be manual created ir.config_parameter records.
This needs to be improved with the res.config.settings (model, view), storing to 2 corresponding ir.config_parameter records.

Affected fields:

  • component_recaptcha_button_site_key
  • component_recaptcha_button_secret_key

formio: Portal list or filter Forms by Resource type (e.g. Sales, Events)

Currently all Forms available in the Portal (URL: /my/formio) are shown in a list.
Would be nice to have some filters in the Forms list.

Related issue: #141

For example filter shortcuts / profiles:

  • All: all forms
  • Resource Type: Event, Sales Order (filter field res_model_id)

Recommendation:
Checkout and study some other (core) Odoo modules which already provide this feature (sale ?)

Enhancement: Embed form in non-portal area of Website, Ecommerce, etc.

A few things I've noticed that are barriers for implementation IRL.

  1. Portal form submission area is buried inside of >My Account>Forms>Submit A Form and each submission (aka Form) is created as a unique url but only after going through the user portal. Currently there is no way to post a form on a single URL and have anyone go to that url and submit a form with recaptcha control similar to the way 99.999 percent of all forms work online today. Embedding the form in non-portal area is a must to me because how do people know where to go who are just coming to the website as public user without an account at all?

  2. Form submissions are called "forms" in the backend. This should be changed to "Submissions" or "Form Entries" so they are not confused with the Builder.

  3. Is there plans in works to allow for forms to be added to the product on the ecommerce front-end to allow for form data entry before "add to cart"? This would make Odoo incredibly powerful.

best regards,
Walker

Link Forms to Odoo 13 Objects

Hello

Odoo 13
I was able to create a form and publish it on the website.
The form builder is based on Contacts (res.partner)
I seem to miss something to make the links between the form fields /submission with the res.partner fields in order to add a new contact.

Thank you for your help

It is not possible to save a form component when the name component is in cyrillic

Hello!
Its not possible to save form component when the name of component have cyrillic letters.
Steps to reproduce:

  1. Open form builder
    изображение
  2. Drag and drop form component
  3. Change label to cyrillic
    изображение
  4. Press save
    expected behaviour - form saved and closed
    what i get - nothing happend
    formio_bug

This happend even if label name consist of mix with latin and cyrillic letters

I can save form component with latin label and change label name after that - this is allowed

Browser: Firefox 68.0.2
Tested on your env https://odoo12-b4a887d572e9.victhorious.com

formio: /formio/public/form/create/<string:builder_uuid> (instead of int:builder_id)

Change URLs/route for new public Form:

  • FROM: /formio/public/form/create/<int:id>
  • TO: /formio/public/form/create/<string:builder_uuid>

This slightly protects from abuse of public Forms (some obfuscation of the real id).

Requirements:

  • Add field uuid in formio.builder model
  • Some methods/funcs regarding (get) public form needs to be changed, to use/query on uuid.
  • Use in Website Snippet (website_formio module).

formio: Setting (in Builder) to show/hide meta-data (e.g. state) in Form

Currently several meta-data (fields) of the formio.form record are shown to the user filling the Form.
Fields e.g: state, submission user, submission date.

This isn't always desired, for be example:

  • a Form used in a registration (event), checkout (shop order) process
  • the need of a Form to submit once and directly.

To implement:
Add setting (bool field) in the Form Builder, when enabled the meta-data field are hidden in the Form.

Translations

Hello

I have some issues with creating form in Russian. For example, I cant change some buttons display name ("Previous", "Next", "Cancel" in Wizard mode).
Steps:

  1. In "Configuration" -> "Translations" create translation for language Russian (for button Next in pic) изображение
  2. Create new Wizard-form in Form Builders page
  3. Open form in builder. Add new page
  4. Assign to user
  5. Open form as user.

Expected:
"Next" button translated to Russian
What i got:
Nothing

изображение

Looks like English language is a default for now. Is it possible to change default Form language? May be this feature could help

Thank you for your work!

P.S. I hope that you are not tired of my issues. If this problem related to formio library I wll open issue on their github page

Include formio.js version assets (css, js) by "ir.attachment" files

Currently the inclusion/loading of "formio.js" assets is done by HTTP-requests to URLs (CDNs) configured.

Include "formio.js" assets by "ir.attachment" records and uploaded asset files.
The loading of "bootstrap.min.css" from "ir.attachment" fails. Icon/glyphs don't get rendered properly.

Translations (formio.js GUI) by language of logged-in (Odoo user)

Load formio.js translations by language of logged-in (Odoo) user. formio.js supports i18n language and translations.

Goals:

  • Form Builder translations
  • Form translations (labels, help, localize components like date/time, currency, etc)
  • Language selection dropdown/buttons

Design:

  • Model "formio.version" One2many translation. Maybe link with "ir.translation" with new model "formio.version.translation" ? Put translations into the response object which loads the Form Builder/Form.

formio_report_qweb: version 11 bug

Reports generator doesn't work with Odoo v11.
In the QWeb template the o._formio.components results in nothing (empty).

I debugged heavily in Odoo internals, regarding the issue.
The problem seems to be in the QWeb rendering (module).

Eventually I put some logging in the QWeb render method. The values (and Component objects) are still present here.
However during further processing of this render and compile methods, the problem occurs somewhere.
I also tried to replace the QWeb class (file) with the Odoo v12 one. But that didn't solve and runs into different problems, like other methods/parts not found.

I also checked the differences between the Python packages in my Odoo v11 and v12 containers. No differences or whatsoever.
So I expect the issue lies somewhere in the render and compile implementation of:
odoo/addons/base/ir/ir_qweb/qweb.py
https://github.com/odoo/odoo/blob/11.0/odoo/addons/base/ir/ir_qweb/qweb.py
This implementation was slightly changed in Odoo v12.. also the location of the files.

image

Height of iframe formio.portal_my_formio

using a iframe the height of the frame is too small to display correct.
Qweb
formio.portal_my_formio_edit
If I set a height it is OK.

<iframe t-attf-src="/formio/form/#{form.uuid}/root" class="formio_form_embed"/> replacing by <iframe t-attf-src="/formio/form/#{form.uuid}/root" class="formio_form_embed" style="height:600px;"/> Made it better and readable, but would be better to set a dynamic height?

[v11][AccessRights] Create form with access rights: "User: All forms"

When a user with the "User: All forms" rights wants to to save the formio.form view or move from formio.form view to the formbuilder, odoo raises:

2020-03-10 19:21:24,385 6903 INFO odoo_formio odoo.addons.base.ir.ir_model: Access Denied by ACLs for operation: write, uid: 5, model: formio.builder

Is it wanted that non admin users, can't write a new form from an already present formbuilder template?

Problem with Edit Grid Component

Hello!
There is a problem with Edit Grid component
It does not close when you click on the “Cancel” button in the modal view
formio_bug2

[V12] Unable to populate a select field with odoo data

I am trying to create a simple form containing a select field that is populated with odoo data.

  1. created a form builder & added resource model (formio_res_model_id) = "Sale Order".
  2. the notebook tab "Resource Settings" is unhided but empty.
  3. click on "Form Builder".
  4. add a "Select" component and under Data choose Data Source Type = "Resource"

Am I missing something?

Thanks in advance.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.