Commit Graph
36 Commits
Author SHA1 Message Date
Samuel Degueldre c058f19bfa [IMP] website_sale: let users create and edit custom product ribbons
Previously, there was only one static "Sale" ribbon. Users might want to
have many types of ribbons, for different levels of sales, or to
indicate that a product is sold out. This commit lets the user create
custom ribbons and use them on prodcuts on the shop page. Additionally,
setting a ribbon on a product used to require a reload, this is no
longer the case. All ribbon modifications are stored in a cache and the
RPCs to put them into effect are only done on save.

task-1981170
Part of odoo/odoo#47574

Related: odoo/upgrade#1079
Related: odoo/design-themes#219
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-06-10 11:44:33 +00:00
Samuel Degueldre 016ed1a00f [IMP] website_sale: make "Image full" a global option
Previously, the "Image full" option was on a per product basis. This is
very strange, because in most cases you either want all of your product
images to take up the entire card space, or none of them. This commit
makes the option into a global option for the shop page, so it can be
toggled for all products at once.

task-1981170
Part of odoo/odoo#47574
2020-06-10 11:44:33 +00:00
fja-odoo 617eba9417 [IMP] website_form, *: entirely review s_website_form snippet
*: 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 16:13:25 +00:00
Jigar Patel 8cd6effa7f [IMP] website_sale: add default attributes for 'Create a Customer' form
task-32212
2019-04-19 10:39:21 +00:00
Christophe Simonis 2a06f4dcf3 [MERGE] forward port branch 12.0 up to 09fb2469b4 2019-03-29 18:10:57 +01:00
Nicolas LempereurandRomain Derie a4ce56fe56 [FIX] website_sale: pricelist ecommerce 1st install
Since 2d970942ba it is possible among other improvments to have a
pricelist on all website if it has a "code" or is "selectable" and has
no specified website.

Following this, the default "Public Pricelist" is not associated to a
website but since it is not selectable and has no code, we would get no
pricelist on the website on default installation without demo data.

With this changeset, the "Public Priclist" is set to selectable when
website_sale is installed.

opw-1961069
closes #32254

Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>


Co-authored-by: Romain Derie <rdedoo@users.noreply.github.com>
2019-03-29 14:49:02 +00:00
Christophe Simonis c50d7d6bc5 [MERGE] forward port branch 12.0 up to 82c4393fd0 2019-03-19 15:14:23 +01:00
Romain Derie 2d970942ba [FIX] website_sale: limit pricelist to it's website if set
Before this commit:
1. Non Public User would get the main company pricelist returned when calling
   `get_current_pricelist`. As this is saved in an `ir.property`
   (`property_product_pricelist`) that is not website dependant, that pricelist
   would always be returned on every website.
   This is a problem if that pricelist is website limited, you should not be
   able to use it on other websites.
2. Public User would not have a valid pricelist on other website than the
   default one. Indeed, every pricelists are restricted that default website.
   It would result in prices shown as "0" (without currency symbol) on the shop
3. Pricelists set as selectable without a website_id set would not be
   selectable
4. Public User would not get a fallback pricelist when reading its
   `property_product_pricelist`. Indeed, the public user's partner is not
   active and since the refactoring of this field compute method to be a multi,
   it would end up doing a search() instead of a browse(). Thus, it would find
   a pricelist for the public user but it would not set it.

This commit:
1. We override and check that pricelists returnes by the `ir.property` are
   indeed available on the current website.
2. Remove the website restriction on `Public Pricelist` so other websites have
   at least one pricelist available.
3. `pricelist_ids` on `website` now return all available pricelists including
   the ones that are generic (no website set)
4. We search for inactive partners too.

Part of this commit fixes part of 27861
Github-25109
2019-03-14 10:28:02 +00:00
qmo-odoo 1da63f0ab0 [IMP] salesteam: Simplify sales team config and improved team dashboard
Reason:
  *Sales team configuration is too complex with fields you
   don't understand and that bring no added value
  *Remove the team type, every team should be able to handle
   a POS or a website for example
Contains:
  *Removal of the team_type, use_quotations, use_leads fields
  *Removal of the graph configuration fields
  *Adapting the filters that were based on the team_type
  *Clear distinction between the team dashboard behavior in crm
   from the one in sales
  *Cleansing of now dead code due to the removal of the previously
   mentionned fields

Task: #1830105
Enterprise PR: #3006
Closes: #28063
2018-12-05 15:32:53 +00:00
Nicolas Martinelli aa65a46fc5 [FIX] auth_signup, crm, project_timesheet_holidays, sales_team, website_sale: settings access error
The new settings model loads by default all settings. In the case of
non-admin user having the 'Settings' access rights this can lead to
access errors.

This commit deals with the multi-company issues on a standard
installation. If the admin is in Company A and the other user in Company
B, accessing the settings is pretty much impossible because of records
rules.

This fixes the master or demo data to avoid setting a company by
default. Note that it only fixes a standard installation: if the
settings are later customized, there is no guarantee that it will still
work.

Problematic fields:
`auth_signup_template_user_id`
`crm_default_team_id`
`leave_timesheet_task_id`

opw-801210
2018-01-03 08:49:32 +01:00
Denis Vermylen ee4495228f [REF] crm,sale,*: dashboard_graph_model values
rename values of selection field to actual model names.

this prevents the need of a separate function to get the sql table
and allows to get direct access to the model.
(needed for the next commit)
2017-04-21 18:37:55 +02:00
Denis Vermylen (dve) eed8a34686 [IMP] crm_*, sale_*: sales channel dashboard
Functional
        ==========

Sales teams become sales channels. Their dashboard cards now include a graph
displaying customizable data for managers (comparable to those in accounting).

By default, you now have the following sales channels (non-demo):

      Direct Sales      (with installation of crm or sale)

  Sales Channel type: Sales
  Works same as before, what's changed is:
    - their cards display one big button directing to the start of their
      workflow
    - the links on the right-hand side have been reworked, and are only
      displayed when there is at least one item requiring attention.
    - 'More' tab remains unchanged.

      Website           (with installation of website_sale)

  Sales Channel type: Website
  Differences lies in the links displayed in the dashboard card:
    - it displays abandoned carts, awaiting payments and payments to capture
  Default Channel linked to all sales made from the eCommerce.

      Point of Sale     (with installation of sale and point_of_sale
                                              -> auto-installs pos_sale)

  Sales Channel type: Point of Sale
  Linked to pos.configs and their pos.sessions and pos.orders.
    - only links to their linked pos.config dashboard and open sessions
    - can't use opportunities, lead or invoicing and can only display
      pos.order data in the graph.
  Default Channel linked to the default pos.config.

        Technical
        =========

- Add a channel type: sales, pos, website that have different actions/settings
- Add a graphs to the kanban cards in the sales/crm dashboard, configurable in
  the form view in the new dashboard page.
- Rename sales teams to sales channels, rename and add default and demo sales
  channels
- Change dashboard links depending on the channel type and add a related
  computed fields on crm.team
- Rename strings and improve channel form view.
- Leads are now checked by default once activated for 'sales' type channels
- Disable checking "leads" without using "opportunities".
- Hide invoicing and invoicing target depending on channel type.
- Move currency_id to sales_team
2017-01-03 19:04:34 +01:00
Kinjal Mehta b0185e15cc [FIX] all: fix some common typos
Sale Order --> Sales Order
Sale Report --> Sales Report
Sale Team -> Sales Team
Payment Term --> Payment Terms
2016-12-22 13:29:38 +01:00
hza d250ad25b4 [IMP] website_sale: Added Street2 field in frontend 2016-11-04 10:47:23 +01:00
Jeremy Kersten fd36e5ceda [IMP] website_sale: improve data to decrease the number of pricelist visible.
In old data, many pricelist had just no sense.
It was created to make tests, but don't have sense in the eCommerce after
 the tests.
2016-09-21 21:29:18 +02:00
Jeremy Kersten 53abb4a277 [REF] sale,product,website_sale: merge website.pricelist and product.pricelist
Make it generic... It is not only a concept to website !

Update tests
2016-09-06 13:59:35 +02:00
Martin Trigaux 11812b0b9e [FIX] all: remove external ids fakely from base
Several modules defines records with the external ID `base.foo_bar` while it is
created inside this module (typically menus and groups).
While there is no technical reasons to do so but this may introduce issues:

- these records will not be deleted during uninstall
- if a language is loaded before the installation of the module, it won't be
  translated

The uninstallation will only remove the records with an external id linked to
this module (these would only be removed when removing base).

Installing a language before the module will drop the translations not linked
to an existing external id (as it can not be resolved).

This commit correct all the external ids tagged as from base or other incorrect
modules.
2016-09-02 16:14:26 +02:00
qsm-odoo a3585b84b5 [FIX] website(_*): stop launching old tours on installation
On website/theme installation and other website_* module installation,
an action was triggered to launch tours. These tours are now used only
for tests and should not be used as onboarding anymore.

Note: in master these tours will be removed to use the new test system.
2016-07-15 17:47:03 +02:00
Jeremy Kersten e4a317a176 [ADD] website_sale: checkout process
Change checkout process.

- Billing address is always the connected partner_id or neww partner_id.
- Shipping address is contact of current commercial_partner_id
- New checkout design for address selection
- Add delete a line in my cart
- Fix input quantity size
- Refactor/Reindent xml template from website_sale
- Improve the modularity for checkout (preprocess, posprocess, required fields, ...)
- Allow to use form builder in extra step for OEE (No edit mode)
- Add route to have states according country selected (need to be overridable for website_sale_delivery)
- ...
2016-07-04 15:48:15 +02:00
Ravi Patel 75153063fe [IMP] sales_team: Remove the 'code' field from the crm_team 2016-04-12 11:50:50 +02:00
Ravi Gadhia 788c1334e2 [IMP] website_sale: migration to new api 2016-03-17 17:26:52 +01:00
Fabien Pinckaers bbcc144d2c [IMP] My Pipeline working 2015-08-29 15:34:34 +02:00
Joren Van Onder 7f6e278160 [IMP] website_crm,website_sale: don't hardcode salesteam
This causes issues when people delete the Website Sales team. The
website_sale module already adds a salesteam_id to website, which is
configurable. So instead set that to website.salesteam_website_sales by
default and use this field.

Modified version of afc9507 after 8c31ecd:
website_crm doesn't look for the website_sale salesteam anymore
2015-08-19 10:40:40 +02:00
David Monjoie 8c31ecd368 [REV] website_crm,website_sale: revert afc9507
The website_crm module doesn't depend on website_sale, so the
salesteam_id field may not exist on website in contactus.

There is clearly a strange overlap with the website salesteam
between website_crm and website_sale, as indicated by the xml_id's.

The previous version didn't crash when the xml_id was not found,
though, while this one would always crash when you try to use
website_crm without website_sale, so I prefer to revert it.

A proper fix would be to set the salesteam at the level of the
website module, but I'm not sure it would make sense considering
that it wouldn't be used at all unless you happen to install one
of those two modules.

In the meantime, I'm reverting afc9507f3a.
2015-08-17 17:02:09 +02:00
Joren Van Onder afc9507f3a [IMP] website_sale: don't hardcode salesteam
This causes issues when people delete the Website Sales team. The
website_sale module already adds a salesteam_id to website, which is
configurable. So instead set that to website.salesteam_website_sales by
default and use it in both website_sale and website_crm.
2015-07-29 20:29:04 +02:00
Jeremy Kersten bcb395616b [ADD] website_sale: manage pricelist by website.
Allow to specify which pricelist can be used on wich website for which countries
2015-05-08 12:14:38 +02:00
Ajay javiya 418414b9c1 [IMP] website_sale : allow user to set default sale team and saleperson for ecommerce SO.
Also add 'affiliate_id' in the user session : the param contains the id of the saleperson to assign if the current user create an SO. This param is passed by the URL query param, then stored in the session.
2015-05-06 10:40:26 +02:00
Sheth Sunny 6f5c781916 [IMP] website_sale : improve domain for not set category in product from frontend and remove other demo data of public categories 2014-12-10 17:07:27 +01:00
Turkesh Patel fd659e908b [IMP] crm: business model cleaning
Models renamings:
- crm.case.stage becomes crm.stage
- crm.case.section becomes crm.team

Model split:
crm.case.categ has been splitted into:
- crm.phonecall.tag
- crm.lead tag
- crm.claim.tag
- crm.helpdesk.tag

Models removal:
- crm.payment.mode
- crm.segmentation
- report.crm.case

Removal of the crm_profiling module

(all these refactorings have been done in order to ease new API
migrations)
2014-11-04 16:58:41 +05:30
Christophe Matthieu 43977deb71 [IMP] product: refactoring of product variant. The main view became the view of product template and the product product (or product variant) are created with the variant values combinaison. Bom is splitted into bom and bom line and can use the variant combinaison. 2014-05-27 09:42:52 +02:00
Thibault Delavallée 37ccbada84 [FIX] website_sale, website_crm: website salesteam value in correct
module.
2014-05-14 17:34:43 +02:00
Thibault Delavallée a1e70ea0a4 [IMP] website_crm, website_sale: have only one salesteam to handle ecommerce and contact form.
The xml_id is now based on website.
2014-05-13 12:09:24 +02:00
Thibault Delavallée 2b8739cf8b [IMP] website sales salesteam: refactored implementation
- now having a website sales sales team in website_sale;
- temporarily crm accepted as a dependency of website_sale (will be improved when sales team are
taken out of crm);
- removed website_sale_crm unnecessary module + dead code
- removed shopping cart state + its management
- added acquirer and transaction fields on sale order
- azdded use_opportunities and use_quotations fields on sales team like use_leads
2014-05-12 17:52:10 +02:00
Paramjit Singh Sahota f1dd083521 [MERGE] Merged lp:openobject-addons. 2014-05-08 18:41:39 +05:30
Christophe Matthieu bfeb2b9631 [MERGE] from trunk
bzr revid: chm@openerp.com-20140221094343-s1oh3iq07zi2jo0x
2014-02-21 10:43:43 +01:00
Antony Lesuisse ff37d0ebca website sale refactor
bzr revid: al@openerp.com-20140130233951-55ttup4ohmp4i0nf
2014-01-31 00:39:51 +01:00