Commit Graph
109 Commits
Author SHA1 Message Date
lejeune quentin b49e7e48f5 [IMP] hw_*: Add possibility to run IoT in Windows
Currently it is only possible to run the modules
for the IoT Box on Raspios.
The modifications brought by this commit brings the possibility
that the various hw_* modules can be executed whatever the OS
of the hardware (Linux or Windows).
If the modules should be versioned according to the OS,
the file will be renamed so that the end of
the file includes *_L (for linux) or *_W (for windows)

closes odoo/odoo#107350

X-original-commit: b7b8809ea8b7fe4ac8b24f43fe3f3a5e38a66696
Related: odoo/enterprise#34713
Signed-off-by: Quentin Lejeune (qle) <qle@odoo.com>
2022-12-07 10:02:23 +01:00
Yaroslav 07df48592f [IMP] hw_posbox_homepage: restart buttons added
Before, the user had to manually unplug and replug the IoT Box to reboot it.
Also, it was required to connect to the IoT box to restart Odoo service.

This improvement adds the 'Restart Odoo' and 'Reboot IoT box' buttons on the box's form view to IoT app.
They allow the user to reboot the IoT box and restart Odoo service on it remotely from the IoT app in Odoo.

task-2476576

closes odoo/odoo#101045

X-original-commit: 662b41293315ae934502c683939d9820e4ca451a
Related: odoo/enterprise#31747
Signed-off-by: Quentin Lejeune (qle) <qle@odoo.com>
2022-09-26 09:36:02 +02:00
Romeo Fragomeli 1fcd098af5 [REF] *: BS5: migration
Automated change made by a lot of RegEx to change all think that is
possible to automate.

https://getbootstrap.com/docs/5.1/migration

Task ID: 2766483

Part-of: odoo/odoo#95450
2022-07-07 13:30:24 +02:00
Julien Castiaux 1dd3865208 [IMP] *: odoo.addons.web.controllers.main splitted
The odoo.addons.web.controllers.main python module have been splitted
over multiple files on the basis 1 controller = 1 file. In this work we
adapt all modules to use the new imports.

A non-exhaustive list of where stuff have been moved:

* main.Home		--> home.Home
* main.Session		--> session.Session
* main.WebClient	--> webclient.WebClient
* main.clean_action	--> action.clean_action
* main.ensure_db	--> home.ensure_db

The complete list is accessible in odoo.addons.web.controllers.main.

closes odoo/odoo#87571

Related: odoo/enterprise#25746
Signed-off-by: Raphael Collet <rco@odoo.com>
2022-03-31 02:10:53 +02:00
Antoine Vandevenne (anv) adf70bf9dc [FIX] *: retarget documentation links to master
closes odoo/odoo#84990

X-original-commit: 39bdf46
Related: odoo/enterprise#24582
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
2022-02-21 17:01:02 +00:00
Victor Feyens ab022ec12d [FIX] *: target v15.0 documentation with doc links
X-original-commit: acc95ec204baa1dddbe292c379a1768fe1deccbf
Part-of: odoo/odoo#77923
2021-10-07 17:59:52 +00:00
Xavier-Do 288595f558 [FIX] *: add explicit license to all manifest
The license is missing in most enterprise manifest so
the decision was taken to make it explicit in all cases.
When not defined, a warning will be triggered starting from
14.0 when falling back on the default LGPL-3.

closes odoo/odoo#74245

Related: odoo/design-themes#48
Related: odoo/enterprise#19862
Signed-off-by: Xavier Dollé (xdo) <xdo@odoo.com>
2021-07-26 13:09:57 +00:00
Fabien Pinckaers a65f6a5872 [IMP] various: clean most urls to odoo's website
Pages changed on odoo.com so let's update links.

closes odoo/odoo#72707

Related: odoo/enterprise#19239
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2021-06-24 15:14:29 +00:00
Victor Feyens 0348b95aee [FIX] *: update documentation links
Following the recent reorganisation of the documentation in 12.0+,
the majority of the documents have been moved and their old links are no longer valid.
Some redirection rules will soon be deployed, but those rules might be dropped in some years
and we want the links to still work, which is why we still replace the links to the new ones.

FW-Port of odoo/odoo#70675 (13.0)

closes odoo/odoo#70920

X-original-commit: bc9c1eef538ba6095e74c19d5d9ed9e01625ec7c
Related: odoo/enterprise#18361
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2021-05-17 19:26:27 +00:00
Simon Genin (ges) ecfe85db84 [REF] web: static/src/(img|fonts) => static/(img|fonts) 2021-04-29 07:34:40 +00:00
lejeune quentin 6e0f6cd312 [IMP] point_of_sale: Change raspbian to raspios
We change the OS from Raspbian to Raspberry Pi OS

So we change all occurence of raspbian to raspios

m

X-original-commit: f54f02e208f7f96e89a0b2a68c57570edb0c75d5
2020-10-23 13:19:45 +00:00
Swapnesh Shah b07f2d31d2 [FIX] *: update document links
Before this commit, links to the documentation were referenced the
previous version, 13.0, instead of the current one, 14.0.

Eventhough there is a redirection done by NGINX of a "versionless" URL
to the latest one (e.g. /documentation/user/general/auth/google.html
-> /documentation/user/14.0/general/auth/google.html as of today), the
goal is to keep links owrking for users that will still be using the
14.0 in three years (and should not endup on the 17.0 doc).

closes odoo/odoo#60228

X-original-commit: 7ac08486d91d0ff0151abeeda057ffa6beda72e8
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2020-10-19 07:03:01 +00:00
lejeune quentin c5f46533dd [FIX] point_of_sale: Fix path to nightly in IoT
The path to folder of images of IoT has change.

So we adapt the path for the upgrade of IoT

closes odoo/odoo#57978

X-original-commit: 9512a23f48176fe0e7970039c824281c4af18162
Signed-off-by: Quentin Lejeune (qle) <qle@odoo.com>
2020-09-17 16:14:13 +00:00
Antoine Prieels 72681dc53f [IMP] hw_*,point_of_sale: Cleaning IoT Box
- Split driver.py to multiple files
- Remove hw_proxy module as most of its routes were not used and
  move remaingin routes to a controller in hw_drivers
- Add missing coding and license lines at the beginning of files
- Reorder imports and remove unused ones
- Rename device_id to device_identifier for clarity
- Rename screen to display for consistency
- Other minors improvements

Taskid: 1973956
X-original-commit: 841c016913a87133bf7257c62ae5f6bf7d99e06d
2020-08-25 11:24:56 +00:00
lejeune quentin d6a23e49e2 [FIX] hw_posbox_homepage: Remove format condition for refresh after uograde IoT Box
When we upgrade the IoT we wait that the version of box match with
the last version of IoT Box before to refresh.
We make a request to '/hw_proxy/get_version' to get the actual version.
In Jinja this response give a float.
We compare this value with a string using '===' who want that the format match.
So we doesn't compare the format of values but only the value by putting only '=='.

closes odoo/odoo#54149

X-original-commit: 06f9baae968674547cb2592b1c22147bfb2e8ba9
Signed-off-by: Quentin Lejeune (qle) <qle@odoo.com>
2020-07-06 14:59:11 +00:00
Antoine Prieels e1c52c936d [IMP] hw_drivers: Easier detection of new devices
Until now, to detect new types of devices on the IoT Box, we had to
modify driver.py. If partners wanted to connect a new type of device,
they had to modify directly the files on the Box, meaning that after
each new build they had to re-apply all their modifications.

We remove the loops that detected the connected devices and replace
them by `Interfaces`. All interfaces will be loaded from the connected
Odoo instance with the corresponding drivers.

TaskID: 2082282
2020-05-13 13:26:05 +00:00
lejeune quentin ad69cc13d3 [FIX] hw_posbox_homepage: Fix default server value in steps by steps wizard
in helpers 'get_odoo_server_url()' return the server string or False.
In steps by steps config wizard we display this value.
So in server input it display 'False' and with this value we can't submit the form

Now we set a empty string if the return is 'False'

closes odoo/odoo#48346

X-original-commit: 57283f213ee3d1dd4f59c83cc34fbdd3545c4533
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
2020-03-25 12:15:07 +00:00
lejeune quentin 2ddb3a23b8 [FIX] hw_posbox_homepage: Fix IoT auto-upgrade
If we start a self flash and we refresh the page
we are able to start again the upgrade.

So now we check if a upgrade is not already started

closes odoo/odoo#48340

X-original-commit: 7189111a73b689af919cdfa4712f04108b7931e6
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
2020-03-25 12:11:29 +00:00
Antoine Prieels 6413ef6955 [REV] hw_drivers, hw_posbox_homepage, pos: Remove MPD
This reverts commit 9d43308a8f6b521d3d18f7fc472303f58f56a0c3.

No one should be using MPD in production at the moment but
we'll still leave it in the buiold of the Box, just to be sure.

X-original-commit: 129101815d5846d5b53148546b19bdd791f22aac
2020-03-23 09:29:52 +00:00
Yannick Tivisse 4c291e3f70 [IMP] base: Display searchpanel on ir.module.module views
Purpose
=======

The current kanban view is messy. It is difficult to identify which
apps are installed or not. The user can completely miss a module
that might have interested him. A search panel would make things way
more readable.

closes odoo/odoo#44401

Taskid: 2181557
Related: odoo/enterprise#8144
Related: odoo/upgrade#879
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-03-05 14:03:45 +00:00
lejeune quentin ee519c222f [REF] hw_posbox_homepage: Use helpers to get mac address in homepage
We use a library to get mac address of IoT in homepage.

however we already have a function that does this in the helper in hw_drivers

closes odoo/odoo#46631

X-original-commit: ae78e9cdde777ffac6f08a35dd00a540c92130bb
Signed-off-by: Quentin Lejeune (qle) <qle@odoo.com>
2020-03-02 09:01:11 +00:00
Antoine Prieels a200c6ddf8 [REM] hw_drivers, hw_posbox_homepage, pos: Remove MPD
Remove the MPD server and Six configuration from the IoT Box.
MPD will be replaced by TIM, which doesn't require the IoT Box.

closes odoo/odoo#46424

Taskid: 2188566
X-original-commit: 9d43308a8f6b521d3d18f7fc472303f58f56a0c3
Signed-off-by: Antoine Prieëls <aprieels@users.noreply.github.com>
2020-02-27 11:17:15 +00:00
Robin Heinz 19e7707f70 [FIX] iot: make PoS use an IoT Blackbox driver
Remove the community Blackbox Driver
Small changes to make it possible to use the Blackbox IoT driver with the PoS.

closes odoo/odoo#46135

X-original-commit: 8e48a0d5d4586729eb22ac8b6abc0fdc74771b78
Related: odoo/enterprise#8714
Signed-off-by: Quentin Lejeune (qle) <qle@odoo.com>
2020-02-24 15:22:40 +00:00
lejeune quentin e8611b363a [IMP] point_of_sale: Add the possibility to the IoT Box to perform a self-flashing
To be able to flash the partition on which the IoT Box is executed,
we must create a third partition and install an OS there to be able
to boot on it and flash the partition of the IoT Box

- Creation of the third partition
- Raspbian download and checksum verification
- Installation of Raspbian on the third partition
- Download the IoT image on the Raspbian partition and check the checksum
- Reboot on the Raspbian partition
- Installation of the IoT image on the second partition
- Reboot on the IoT partition
- Cleaning and deleting the third partition

closes odoo/odoo#44430

Task: 2161955
X-original-commit: 407d9a88a3d23ed49ed5a2c5fa4d211cec43edfd
Signed-off-by: Quentin Lejeune (qle) <qle@odoo.com>
2020-01-31 18:34:02 +00:00
lejeune quentin d1a821c3e7 [IMP] hw_posbox_upgrade: Integrate the hw_posbox_upgrade module in hw_posbox homepage
We move the main.py controller and the upgrade.html view
in the hw_posbox_homepage module for more consistency

X-original-commit: 9ba84dc6c0651892bdd00403477bab23fce16bdb
2020-01-31 18:34:01 +00:00
lejeune quentin aa6474801c [FIX] point_of_sale: Fix access point for IoT Box
When the box is in "access point" it calls the function 'get_wifi_essid'
at every ping => ~ 3 seconds.
So after a few moments the network card blocks and turns off.
Now we redirect the user to the '/steps' route that only executes the function once.

closes odoo/odoo#41415

X-original-commit: b5020a4471666cb53398077db4e856d1c60245a9
Signed-off-by: Quentin Lejeune (qle) <qle@odoo.com>
2019-12-05 11:16:20 +00:00
mreficent 41c434cd5d [FIX] v13 urls
Was still pointing to old links

closes odoo/odoo#37859

Signed-off-by: Adrian Torres (adt) <adt@odoo.com>
2019-10-03 12:48:09 +00:00
Victor Feyens 07631a5185 [IMP] * : manifest module categories cleanup
closes odoo/odoo#35754

Signed-off-by: Damien Bouvy (dbo) <dbo@odoo.com>
2019-09-25 14:03:45 +00:00
lejeune quentin d4fa24c2bc [IMP] hw_drivers: Add possibility to choose a wifi network on IoT Box
Previously if you are wired connected we don't scan wifi network.

Now we scan the wifi network and add possibiliyt to select a network and use them.
2019-09-10 14:14:27 +00:00
lejeune quentin 9c10d7a28e [FIX] hw_drivers: Fix unmount of cups folder
To add or modify printer the /root_bypass_ramdisks/etc/cups/ need be writeable.
And /root_bypass_ramdisks/etc/cups/ = /etc/cups/
But when we make 'sudo mount -o remount,ro /' we put the /etc/cups/ and so
/root_bypass_ramdisks/etc/cups/ folder on read-only.

After all 'read-only' command we make another command to put cups folder writeable
2019-09-10 14:14:27 +00:00
lejeune quentin aa18bcc14d [FIX] hw_posbox_homepage: Removes unnecessary POS devices
Previously, we showed POS and IoT devices.
Now all POS devices are converted to IoT devices.

So the 'get_pos_devices_status' function is useless
2019-09-10 14:14:27 +00:00
lejeune quentin 173cfd8915 [FIX] hw_posbox_homepage: Fix to rename IoT Box
We must be able to change the hostname of IoT Box
even if we do not pass him a token.

So we give a default value to 'url' and 'token'

closes odoo/odoo#36428

Signed-off-by: Quentin Lejeune (qle) <qle@odoo.com>
2019-09-04 14:08:33 +00:00
Antoine Prieels 6cf30cb869 [IMP] hw_*: Remove "Shell=True" in subrpocess calls
In the IoT Box, most calls to subprocess used "Shell=True", which can
cause security issues.

TaskID: 1966417
2019-09-04 13:10:03 +00:00
Antoine Prieels 70006311d0 [IMP] hw_drivers, hw_posbox_homepage: get_ssid helper
Create a helper to get the ssid of the wifi to which the Box is
connected.
2019-09-04 13:10:03 +00:00
Antoine Prieels 75020a74e5 [REM] hw_posbox_homepage, hw_screen: remove unused code
Function get_hw_screen_message was still present but not called since commit 8b957b7e85
2019-09-04 13:07:35 +00:00
lejeune quentin f03a6cc7d4 [FIX] hw_posbox_homepage: Fix dead link in IoT Box home page
In home page of IoT Box the link "Manual" send to a 404 page.
Now we send to IoT Box documentation

closes odoo/odoo#36354

Signed-off-by: Quentin Lejeune (qle) <qle@odoo.com>
2019-09-04 11:48:48 +00:00
Antoine Prieels 772e375553 [IMP] hw_posbox_homepage: Hide clear drivers
When no server is set, it probably means that the Box is used in
Community and the user won't be able to redownload the drivers since
there is no connected server. We then hide the "Clear Drivers" button.
2019-09-03 13:53:19 +00:00
Antoine Prieels 2a7454ea6c [IMP] hw_{drivers, posbox_homepage}: Automatic load of drivers
Automatically load the IoT Drivers when Odoo starts on the IoT Box or
when the connection to the Odoo instance is done.

Allow to deactivate the automatic load to avoid overriding
modifications made on the Box.

TaskID: 2009683
2019-09-03 13:53:19 +00:00
Martin Trigaux f49e8879b5 [IMP] *: unify module manifests
The description should be an action for the user (i.e. "with this
module, you can ...")

Correct English errors
2019-08-28 09:55:34 +00:00
lejeune quentin 2af13429cf [ADD] iot: Load a true certificate on IoT Box
With this commit we add the possibility to save the db_uuid and enterprise_code on the IoT Box.
We check the current SSL certificate and if it is not authenticated or not up to date
we send a request to 'https://www.odoo.com/odoo-enterprise/iot/x509'
with the db_uuid and enterprise_code to get the certificate, key, and domain associated with the client.
The IoT Box will be accessible in HTTPS according to the following domain:

https://<ip-with-dashes>.<sub-hash>.odoo-iot.com

<ip-with-dashes> being the ip address with dashes
<sub-hash> being a subdomain assigned by Odoo to a customer

Task: 1931770
2019-08-23 12:21:03 +02:00
lejeune quentin 84de7cbcb6 [ADD] iot: Improve usage of helpers in IoT Box
With this commit we move the helpers to a separate file for
easier access from the IoT Box
2019-08-23 12:21:02 +02:00
Antoine Prieels fd0efb0115 [IMP] hw_posbox_homepage: Hide "load drivers"
Hide "load drivers" option if no server is set.

TaskID: 1970076

closes odoo/odoo#33364

Signed-off-by: Quentin Lejeune (qle) <qle@odoo.com>
2019-07-31 14:23:55 +00:00
Antoine Prieels cc063512bd [IMP] hw_posbox_homepage: Six payment terminal
Add configuration for a Six payment terminal on the IoTBox's homepage.
The Terminal ID specified on the homepage is saved to:
`/home/pi/odoo-six-payment-terminal.conf`

TaskId: 1932416
2019-08-12 08:16:04 +02:00
pha-odoo c4aade63fd [IMP] iot: add iot serial drivers
This commit adds a base serial and a base serial scale iot drivers,
as well as drivers extending them for the two previously supported scales
(ADAM EQUIPMENT AZEXTRA and TOLEDO 8217).

Since just adding the new drivers creates a race condition
between the old drivers and the new, the old drivers need to be removed.

The IoT scale drivers need to be backward compatible and compatible with the community version,
so client using an IoT box with those versions can still connect a scale to the PoS.

Task: 1892412
2019-07-17 08:02:13 +02:00
lejeune quentin a8004118b2 [IMP] point_of_sale: Updating the date of the IoT Box
before this commit the date of the IoT Box did not update.
With this commit we restart the service timesyncd on the IoT box

Task: 2034930

closes odoo/odoo#34789

Signed-off-by: Quentin Lejeune (qle) <qle@odoo.com>
2019-07-11 13:54:53 +00:00
lejeune quentin 1f845e9110 [IMP] IoT : IoT refactoring - With longpolling
Improve the implementation of IoT.
Allow both-direction communication between iot box and devices.

Now a device can send its value / status as soon as it changes. Not only when he receives a request.

Now the box have only 3 routes:

/hw_drivers/action
parameter: session_id, device_id, data
used to ask at a device to make a action (take picture, make print, ect...)

/hw_drivers/event
parameter: listener
listener is a dict where you have the session_id and a list of device_id to listen
this route wait to answer that we call device_changed for a device_id with data or value

/hw_drivers/box/connect
parameter: token
used to register the box to a Odoo database
token contain the url of Odoo database and a unique number that allow the IoT Box
to connect box in the hour

task : 1906910
2019-04-02 15:53:01 +02:00
lejeune quentin e5c62987b4 [FIX] IoT : HTTPS disable certificate verification by URLLIB3 2019-01-15 15:23:24 +00:00
lejeune quentin e7993f2faa [IMP] IoT : Allow to configure CUPS server
We can modify printers or CUPS configuration
These modifications will be save on IoT Box
2019-01-15 15:23:24 +00:00
lejeune quentin 071587b3c1 [FIX] IoT : Change build version 2019-01-15 15:23:24 +00:00
lejeune quentin b30df8f3fd [FIX] iot: restart Odoo after loading drivers in IoT Box web interface 2018-10-01 16:34:30 +02:00