Browse Source

Feb 23 : [RMV] Module Removed 'odoo_owncloud_connector'

pull/267/merge
RisvanaCybro 1 year ago
parent
commit
66dee5c359
  1. 47
      odoo_owncloud_connector/README.rst
  2. 23
      odoo_owncloud_connector/__init__.py
  3. 54
      odoo_owncloud_connector/__manifest__.py
  4. 7
      odoo_owncloud_connector/doc/RELEASE_NOTES.md
  5. 23
      odoo_owncloud_connector/models/__init__.py
  6. 91
      odoo_owncloud_connector/models/owncloud_dashboard.py
  7. 52
      odoo_owncloud_connector/models/res_config_settings.py
  8. 3
      odoo_owncloud_connector/security/ir.model.access.csv
  9. BIN
      odoo_owncloud_connector/static/description/assets/icons/check.png
  10. BIN
      odoo_owncloud_connector/static/description/assets/icons/chevron.png
  11. BIN
      odoo_owncloud_connector/static/description/assets/icons/cogs.png
  12. BIN
      odoo_owncloud_connector/static/description/assets/icons/consultation.png
  13. BIN
      odoo_owncloud_connector/static/description/assets/icons/ecom-black.png
  14. BIN
      odoo_owncloud_connector/static/description/assets/icons/education-black.png
  15. BIN
      odoo_owncloud_connector/static/description/assets/icons/hotel-black.png
  16. BIN
      odoo_owncloud_connector/static/description/assets/icons/license.png
  17. BIN
      odoo_owncloud_connector/static/description/assets/icons/lifebuoy.png
  18. BIN
      odoo_owncloud_connector/static/description/assets/icons/manufacturing-black.png
  19. BIN
      odoo_owncloud_connector/static/description/assets/icons/pos-black.png
  20. BIN
      odoo_owncloud_connector/static/description/assets/icons/puzzle.png
  21. BIN
      odoo_owncloud_connector/static/description/assets/icons/restaurant-black.png
  22. BIN
      odoo_owncloud_connector/static/description/assets/icons/service-black.png
  23. BIN
      odoo_owncloud_connector/static/description/assets/icons/trading-black.png
  24. BIN
      odoo_owncloud_connector/static/description/assets/icons/training.png
  25. BIN
      odoo_owncloud_connector/static/description/assets/icons/update.png
  26. BIN
      odoo_owncloud_connector/static/description/assets/icons/user.png
  27. BIN
      odoo_owncloud_connector/static/description/assets/icons/wrench.png
  28. BIN
      odoo_owncloud_connector/static/description/assets/misc/categories.png
  29. BIN
      odoo_owncloud_connector/static/description/assets/misc/check-box.png
  30. BIN
      odoo_owncloud_connector/static/description/assets/misc/compass.png
  31. BIN
      odoo_owncloud_connector/static/description/assets/misc/corporate.png
  32. BIN
      odoo_owncloud_connector/static/description/assets/misc/customer-support.png
  33. BIN
      odoo_owncloud_connector/static/description/assets/misc/cybrosys-logo.png
  34. BIN
      odoo_owncloud_connector/static/description/assets/misc/features.png
  35. BIN
      odoo_owncloud_connector/static/description/assets/misc/logo.png
  36. BIN
      odoo_owncloud_connector/static/description/assets/misc/pictures.png
  37. BIN
      odoo_owncloud_connector/static/description/assets/misc/pie-chart.png
  38. BIN
      odoo_owncloud_connector/static/description/assets/misc/right-arrow.png
  39. BIN
      odoo_owncloud_connector/static/description/assets/misc/star.png
  40. BIN
      odoo_owncloud_connector/static/description/assets/misc/support.png
  41. BIN
      odoo_owncloud_connector/static/description/assets/misc/whatsapp.png
  42. BIN
      odoo_owncloud_connector/static/description/assets/modules/1.jpg
  43. BIN
      odoo_owncloud_connector/static/description/assets/modules/2.gif
  44. BIN
      odoo_owncloud_connector/static/description/assets/modules/3.jpg
  45. BIN
      odoo_owncloud_connector/static/description/assets/modules/4.png
  46. BIN
      odoo_owncloud_connector/static/description/assets/modules/5.png
  47. BIN
      odoo_owncloud_connector/static/description/assets/modules/6.jpg
  48. BIN
      odoo_owncloud_connector/static/description/assets/screenshots/1.png
  49. BIN
      odoo_owncloud_connector/static/description/assets/screenshots/2.png
  50. BIN
      odoo_owncloud_connector/static/description/assets/screenshots/3.png
  51. BIN
      odoo_owncloud_connector/static/description/assets/screenshots/4.png
  52. BIN
      odoo_owncloud_connector/static/description/assets/screenshots/5.png
  53. BIN
      odoo_owncloud_connector/static/description/assets/screenshots/6.png
  54. BIN
      odoo_owncloud_connector/static/description/assets/screenshots/7.png
  55. BIN
      odoo_owncloud_connector/static/description/assets/screenshots/hero.gif
  56. BIN
      odoo_owncloud_connector/static/description/banner.png
  57. BIN
      odoo_owncloud_connector/static/description/icon.png
  58. 574
      odoo_owncloud_connector/static/description/index.html
  59. 1
      odoo_owncloud_connector/static/src/img/OwnCloud-Logo.wine.svg
  60. 185
      odoo_owncloud_connector/static/src/js/owncloud.js
  61. 48
      odoo_owncloud_connector/static/src/scss/owncloud.scss
  62. 48
      odoo_owncloud_connector/static/src/xml/owncloud_dashboard_templates.xml
  63. 11
      odoo_owncloud_connector/views/owncloud_dashboard_views.xml
  64. 50
      odoo_owncloud_connector/views/res_config_settings_views.xml
  65. 22
      odoo_owncloud_connector/wizard/__init__.py
  66. 99
      odoo_owncloud_connector/wizard/owncloud_upload.py
  67. 24
      odoo_owncloud_connector/wizard/owncloud_upload_views.xml

47
odoo_owncloud_connector/README.rst

@ -1,47 +0,0 @@
.. image:: https://img.shields.io/badge/license-LGPL--3-blue.svg
:target: https://www.gnu.org/licenses/lgpl-3.0-standalone.html
:alt: License: LGPL-3
Odoo ownCloud Connector
=======================
This module help you to integrate ownCloud with odoo. We can upload,download and
delete the files to ownCloud.
Configuration
=============
Enable the 'Owncloud Storage' in settings and add required credentials.
Company
-------
* `Cybrosys Techno Solutions <https://cybrosys.com/>`__
License
-------
General Public License, Version 3 (LGPL v3).
(https://www.gnu.org/licenses/lgpl-3.0-standalone.html )
Credits
-------
Developer: (V16) Saneen K, Contact: odoo@cybrosys.com
Contacts
--------
* Mail Contact : odoo@cybrosys.com
* Website : https://cybrosys.com
Bug Tracker
-----------
Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported.
Maintainer
==========
.. image:: https://cybrosys.com/images/logo.png
:target: https://cybrosys.com
This module is maintained by Cybrosys Technologies.
For support and more information, please visit `Our Website <https://cybrosys.com/>`__
Further information
===================
HTML Description: `<static/description/index.html>`__

23
odoo_owncloud_connector/__init__.py

@ -1,23 +0,0 @@
# -*- coding: utf-8 -*-
###############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>)
# Author: Saneen K (odoo@cybrosys.com)
#
# This program is free software: you can modify
# it under the terms of the GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
###############################################################################
from . import models
from . import wizard

54
odoo_owncloud_connector/__manifest__.py

@ -1,54 +0,0 @@
# -*- coding: utf-8 -*-
###############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>)
# Author: Saneen K (odoo@cybrosys.com)
#
# This program is free software: you can modify
# it under the terms of the GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
###############################################################################
{
'name': "Odoo ownCloud Connector",
'version': '16.0.1.0.0',
'category': 'Document Management',
'summary': 'ownCloud integration for document management',
'description': 'We Can integrate ownCloud with odoo for managing the '
'documents. We can upload and download our documents using'
' this module. Also we can delete the files from the'
' ownCloud.',
'author': 'Cybrosys Techno Solutions',
'company': 'Cybrosys Techno Solutions',
'maintainer': 'Cybrosys Techno Solutions',
'website': 'https://www.cybrosys.com',
'depends': ['mail'],
'data': [
'security/ir.model.access.csv',
'views/owncloud_dashboard_views.xml',
'views/res_config_settings_views.xml',
'wizard/owncloud_upload_views.xml'
],
'assets': {
'web.assets_backend': [
'/odoo_owncloud_connector/static/src/js/owncloud.js',
'/odoo_owncloud_connector/static/src/xml/owncloud_dashboard_templates.xml',
'/odoo_owncloud_connector/static/src/scss/owncloud.scss'
]},
'external_dependencies': {'python': ['pyocclient']},
'images': ['static/description/banner.png'],
'license': 'LGPL-3',
'installable': True,
'auto_install': False,
'application': True,
}

7
odoo_owncloud_connector/doc/RELEASE_NOTES.md

@ -1,7 +0,0 @@
## Module <odoo_owncloud_connector>
#### 17.01.2024
#### Version 16.0.1.0.0
#### ADD
- Initial commit for Odoo ownCloud Connector

23
odoo_owncloud_connector/models/__init__.py

@ -1,23 +0,0 @@
# -*- coding: utf-8 -*-
###############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>)
# Author: Saneen K (odoo@cybrosys.com)
#
# This program is free software: you can modify
# it under the terms of the GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
###############################################################################
from . import owncloud_dashboard
from . import res_config_settings

91
odoo_owncloud_connector/models/owncloud_dashboard.py

@ -1,91 +0,0 @@
# -*- coding: utf-8 -*-
###############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>)
# Author: Saneen K (odoo@cybrosys.com)
#
# This program is free software: you can modify
# it under the terms of the GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
###############################################################################
import os
import owncloud
from odoo import api, models
class OwnCloudDashboard(models.Model):
"""OwnCloud Dashboard model viewing all the files from ownCloud"""
_name = 'owncloud.dashboard'
_description = 'Dashboard Model'
@api.model
def action_owncloud_view_files(self):
"""Import all files from ownCloud and show in dashboard"""
domain = self.env['ir.config_parameter'].get_param(
'odoo_owncloud_connector.owncloud_domain')
user_name = self.env['ir.config_parameter'].get_param(
'odoo_owncloud_connector.owncloud_user_name')
password = self.env['ir.config_parameter'].get_param(
'odoo_owncloud_connector.owncloud_password')
folder = self.env['ir.config_parameter'].get_param(
'odoo_owncloud_connector.owncloud_folder')
if not domain or not user_name or not password or not folder:
return ['e', "Please configure the credentials."]
try:
oc_access = owncloud.Client(domain)
oc_access.login(user_name, password)
file = []
for file_name in [file.name for file in
oc_access.list('/' + folder)]:
link_info = oc_access.share_file_with_link(
'/' + folder + '/' + file_name)
file_info = oc_access.file_info('/' + folder + '/' + file_name)
size_bytes = round(
int(file_info.attributes['{DAV:}getcontentlength']) / 1024,
1)
if size_bytes > 1024:
size = str(round(int(file_info.attributes[
'{DAV:}getcontentlength']) / (
1024 * 1024), 1)) + ' MB'
else:
size = str(round(int(file_info.attributes[
'{DAV:}getcontentlength']) / 1024,
1)) + ' KB'
file.append(
[file_name, link_info.get_link(), str.upper(
os.path.splitext(file_name)[1].replace('.', '')),
size])
oc_access.logout()
return file
except Exception as e:
return ['e', e]
def action_delete_files(self, *args):
"""Function for delete the file from dashboard and ownCloud storage"""
domain = self.env['ir.config_parameter'].get_param(
'odoo_owncloud_connector.owncloud_domain')
user_name = self.env['ir.config_parameter'].get_param(
'odoo_owncloud_connector.owncloud_user_name')
password = self.env['ir.config_parameter'].get_param(
'odoo_owncloud_connector.owncloud_password')
folder = self.env['ir.config_parameter'].get_param(
'odoo_owncloud_connector.owncloud_folder')
try:
oc_access = owncloud.Client(domain)
oc_access.login(user_name, password)
oc_access.delete('/' + folder + '/' + args[0])
oc_access.logout()
return True
except Exception as e:
return ['e', e]

52
odoo_owncloud_connector/models/res_config_settings.py

@ -1,52 +0,0 @@
# -*- coding: utf-8 -*-
###############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>)
# Author: Saneen K (odoo@cybrosys.com)
#
# This program is free software: you can modify
# it under the terms of the GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
###############################################################################
from odoo import fields, models
class ResConfigSettings(models.TransientModel):
""" Configure the credentials in settings """
_inherit = 'res.config.settings'
owncloud_domain = fields.Char(string='Owncloud Domain', copy=False,
config_parameter='odoo_owncloud_'
'connector.owncloud_domain',
help="Add the domain of your ownCloud")
owncloud_user_name = fields.Char(string='Owncloud Username', copy=False,
config_parameter='odoo_owncloud_'
'connector.owncloud_'
'user_name',
help="Add the username of your ownCloud")
owncloud_password = fields.Char(string='Owncloud Password', copy=False,
config_parameter='odoo_owncloud_'
'connector.owncloud_'
'password',
help="Add the password of your ownCloud")
owncloud_button = fields.Boolean(string='Owncloud Button',
config_parameter='odoo_owncloud_'
'connector.owncloud_'
'button',
help="Enables the ownCloud")
owncloud_folder = fields.Char(string='Owncloud Folder', copy=False,
config_parameter='odoo_owncloud_'
'connector.owncloud_folder',
help="Give the exact folder name in the "
"ownCloud where the files are stored")

3
odoo_owncloud_connector/security/ir.model.access.csv

@ -1,3 +0,0 @@
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
access_owncloud_dashboard_user,access.owncloud.dashboard.user,model_owncloud_dashboard,base.group_user,1,1,1,1
access_owncloud_upload_user,access.owncloud.upload.user,model_owncloud_upload,base.group_user,1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_owncloud_dashboard_user access.owncloud.dashboard.user model_owncloud_dashboard base.group_user 1 1 1 1
3 access_owncloud_upload_user access.owncloud.upload.user model_owncloud_upload base.group_user 1 1 1 1

BIN
odoo_owncloud_connector/static/description/assets/icons/check.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

BIN
odoo_owncloud_connector/static/description/assets/icons/chevron.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 310 B

BIN
odoo_owncloud_connector/static/description/assets/icons/cogs.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.3 KiB

BIN
odoo_owncloud_connector/static/description/assets/icons/consultation.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

BIN
odoo_owncloud_connector/static/description/assets/icons/ecom-black.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 576 B

BIN
odoo_owncloud_connector/static/description/assets/icons/education-black.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 733 B

BIN
odoo_owncloud_connector/static/description/assets/icons/hotel-black.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 911 B

BIN
odoo_owncloud_connector/static/description/assets/icons/license.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

BIN
odoo_owncloud_connector/static/description/assets/icons/lifebuoy.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

BIN
odoo_owncloud_connector/static/description/assets/icons/manufacturing-black.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 673 B

BIN
odoo_owncloud_connector/static/description/assets/icons/pos-black.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 878 B

BIN
odoo_owncloud_connector/static/description/assets/icons/puzzle.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 653 B

BIN
odoo_owncloud_connector/static/description/assets/icons/restaurant-black.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 905 B

BIN
odoo_owncloud_connector/static/description/assets/icons/service-black.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 839 B

BIN
odoo_owncloud_connector/static/description/assets/icons/trading-black.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 427 B

BIN
odoo_owncloud_connector/static/description/assets/icons/training.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 627 B

BIN
odoo_owncloud_connector/static/description/assets/icons/update.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

BIN
odoo_owncloud_connector/static/description/assets/icons/user.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 988 B

BIN
odoo_owncloud_connector/static/description/assets/icons/wrench.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.2 KiB

BIN
odoo_owncloud_connector/static/description/assets/misc/categories.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.5 KiB

BIN
odoo_owncloud_connector/static/description/assets/misc/check-box.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

BIN
odoo_owncloud_connector/static/description/assets/misc/compass.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

BIN
odoo_owncloud_connector/static/description/assets/misc/corporate.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

BIN
odoo_owncloud_connector/static/description/assets/misc/customer-support.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.1 KiB

BIN
odoo_owncloud_connector/static/description/assets/misc/cybrosys-logo.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.4 KiB

BIN
odoo_owncloud_connector/static/description/assets/misc/features.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 589 B

BIN
odoo_owncloud_connector/static/description/assets/misc/logo.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.4 KiB

BIN
odoo_owncloud_connector/static/description/assets/misc/pictures.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

BIN
odoo_owncloud_connector/static/description/assets/misc/pie-chart.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.3 KiB

BIN
odoo_owncloud_connector/static/description/assets/misc/right-arrow.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 967 B

BIN
odoo_owncloud_connector/static/description/assets/misc/star.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.6 KiB

BIN
odoo_owncloud_connector/static/description/assets/misc/support.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.8 KiB

BIN
odoo_owncloud_connector/static/description/assets/misc/whatsapp.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.0 KiB

BIN
odoo_owncloud_connector/static/description/assets/modules/1.jpg

Binary file not shown.

Before

Width:  |  Height:  |  Size: 98 KiB

BIN
odoo_owncloud_connector/static/description/assets/modules/2.gif

Binary file not shown.

Before

Width:  |  Height:  |  Size: 284 KiB

BIN
odoo_owncloud_connector/static/description/assets/modules/3.jpg

Binary file not shown.

Before

Width:  |  Height:  |  Size: 98 KiB

BIN
odoo_owncloud_connector/static/description/assets/modules/4.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 126 KiB

BIN
odoo_owncloud_connector/static/description/assets/modules/5.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

BIN
odoo_owncloud_connector/static/description/assets/modules/6.jpg

Binary file not shown.

Before

Width:  |  Height:  |  Size: 100 KiB

BIN
odoo_owncloud_connector/static/description/assets/screenshots/1.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 120 KiB

BIN
odoo_owncloud_connector/static/description/assets/screenshots/2.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 138 KiB

BIN
odoo_owncloud_connector/static/description/assets/screenshots/3.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 44 KiB

BIN
odoo_owncloud_connector/static/description/assets/screenshots/4.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 39 KiB

BIN
odoo_owncloud_connector/static/description/assets/screenshots/5.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 42 KiB

BIN
odoo_owncloud_connector/static/description/assets/screenshots/6.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 60 KiB

BIN
odoo_owncloud_connector/static/description/assets/screenshots/7.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 81 KiB

BIN
odoo_owncloud_connector/static/description/assets/screenshots/hero.gif

Binary file not shown.

Before

Width:  |  Height:  |  Size: 141 KiB

BIN
odoo_owncloud_connector/static/description/banner.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 129 KiB

BIN
odoo_owncloud_connector/static/description/icon.png

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

574
odoo_owncloud_connector/static/description/index.html

@ -1,574 +0,0 @@
<div style="background-color: #714B67; height: 810px; width: 100%; padding: 15px; position: relative;">
<!-- TITLE BAR -->
<div class="d-flex align-items-center justify-content-between"
style="border-bottom: 1px solid #875A7B; padding: 15px; display: flex; justify-content: space-between; align-items: center;">
<img src="assets/misc/cybrosys-logo.png" width="42" height="42" style="width: 42px; height: 42px;" />
<div>
<div
style="color: #7C7BAD; font-size: 14px; font-family: 'Montserrat', sans-serif; font-weight: bold; background-color: white; display: inline-block; padding: 3px 10px; border-radius: 50px;"
class="mr-2">
<i class="fa fa-check mr-1"></i>Enterprise
</div>
<div
style="color: #7C7BAD; font-size: 14px; font-family: 'Montserrat', sans-serif; font-weight: bold; background-color: white; display: inline-block; padding: 3px 10px; border-radius: 50px;"
class="mr-2">
<i class="fa fa-check mr-1"></i>Community
</div>
</div>
</div>
<!-- END OF TITLE BAR -->
<div class="container">
<div class="row">
<div class="col-sm-12 col-md-12 col-lg-12">
<!-- APP HERO -->
<h1 style="color: #FFFFFF; font-weight: bolder; font-size: 50px; text-align: center; margin-top: 50px;">
Odoo ownCloud Connector</h1>
<p style="color:#FFFFFF; padding: 8px 15px; text-align: center; font-size: 24px;">Integrate ownCloud With Odoo For File Storage.</p>
<!-- END OF APP HERO -->
<img src="assets/screenshots/hero.gif" class="img-responsive"
style="width: 100%; margin-left: auto; margin-right: auto;" />
</div>
</div>
</div>
</div>
<!-- NAVIGATION SECTION -->
<div class="d-flex align-items-center" style="border-bottom: 2px solid #714B67; padding: 15px 0px; margin-top: 300px;">
<div class="d-flex justify-content-center align-items-center mr-2"
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;">
<img src="assets/misc/compass.png" />
</div>
<h2 class="mt-2" style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">Explore This
Module</h2>
</div>
<div class="row my-4" style="font-family: 'Montserrat', sans-serif;">
<div class="col-sm-12 col-md-6 my-3">
<a href="#overview">
<div class="d-flex justify-content-between align-items-center"
style="background-color: #f5f5f5; padding: 30px; width: 100%;">
<div>
<span style="color: #714B67; font-size: 24px; font-weight: 500; display: block;">Overview</span>
<span style="color: #714B67; font-size: 16px; font-weight: 400; color:#282F33; display: block;">Learn
more about this
module</span>
</div>
<img src="assets/misc/right-arrow.png" width="36" height="36" />
</div>
</a>
</div>
<div class="col-sm-12 col-md-6 my-3">
<a href="#features">
<div class="d-flex justify-content-between align-items-center"
style="background-color: #f5f5f5; padding: 30px; width: 100%;">
<div>
<span style="color: #714B67; font-size: 24px; font-weight: 500; display: block;">Features</span>
<span style="color: #714B67; font-size: 16px; font-weight: 400; color:#282F33; display: block;">View
features of this
module</span>
</div>
<img src="assets/misc/right-arrow.png" width="36" height="36" />
</div>
</a>
</div>
<div class="col-sm-12 col-md-6 my-3">
<a href="#screenshots">
<div class="d-flex justify-content-between align-items-center"
style="background-color: #f5f5f5; padding: 30px; width: 100%;">
<div>
<span style="color: #714B67; font-size: 24px; font-weight: 500; display: block;">Screenshots</span>
<span style="color: #714B67; font-size: 16px; font-weight: 400; color:#282F33; display: block;">View
screenshots for this
module</span>
</div>
<img src="assets/misc/right-arrow.png" width="36" height="36" />
</div>
</a>
</div>
</div>
<!-- END OF NAVIGATION SECTION -->
<!-- OVERVIEW SECTION -->
<div class="d-flex align-items-center" style="border-bottom: 2px solid #714B67; padding: 15px 0px;" id="overview">
<div class="d-flex justify-content-center align-items-center mr-2"
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;">
<img src="assets/misc/pie-chart.png" />
</div>
<h2 class="mt-2" style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">Overview
</h2>
</div>
<div class="row" style="font-family: 'Montserrat', sans-serif; font-weight: 400; font-size: 14px; line-height: 200%;">
<div class="col-sm-12 py-4">
This module helps to integrate ownCloud with Odoo. By using this module we can upload the files to ownCloud storage.
Also, we can see all the file that are uploaded to the folder. We can also delete the unwanted files.
Here we have the options for search and filter the files.
</div>
</div>
<!-- END OF OVERVIEW SECTION -->
<!-- FEATURES SECTION -->
<div class="d-flex align-items-center" style="border-bottom: 2px solid #714B67; padding: 15px 0px;" id="features">
<div class="d-flex justify-content-center align-items-center mr-2"
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;">
<img src="assets/misc/features.png" />
</div>
<h2 class="mt-2" style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">Features
</h2>
</div>
<div class="row" style="font-family: 'Montserrat', sans-serif; font-weight: 400; font-size: 14px; line-height: 200%;">
<div class="col-sm-12 col-md-6">
<div class="d-flex align-items-center" style="margin-top: 30px; margin-bottom: 30px">
<img src="assets/misc/check-box.png" class="mr-2" />
<span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Secure File Storage.</span>
</div>
<div class="d-flex align-items-center" style="margin-top: 30px; margin-bottom: 30px">
<img src="assets/misc/check-box.png" class="mr-2" />
<span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Upload the Files to ownCloud Storage.</span>
</div>
<div class="d-flex align-items-center" style="margin-top: 30px; margin-bottom: 30px">
<img src="assets/misc/check-box.png" class="mr-2" />
<span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Download the Files from ownCloud Storage.</span>
</div>
<div class="d-flex align-items-center" style="margin-top: 30px; margin-bottom: 30px">
<img src="assets/misc/check-box.png" class="mr-2" />
<span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Delete Files in the ownCloud Storage.</span>
</div>
<div class="d-flex align-items-center" style="margin-top: 30px; margin-bottom: 30px">
<img src="assets/misc/check-box.png" class="mr-2" />
<span style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Available in Odoo 16.0
Community and Enterprise.</span>
</div>
</div>
</div>
<!-- END OF FEATURES SECTION -->
<!-- SCREENSHOTS SECTION -->
<div class="d-flex align-items-center" style="border-bottom: 2px solid #714B67; padding: 15px 0px;" id="screenshots">
<div class="d-flex justify-content-center align-items-center mr-2"
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;">
<img src="assets/misc/pictures.png" />
</div>
<h2 class="mt-2" style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">Screenshots
</h2>
</div>
<div class="row">
<div class="col-sm-12">
<div style="display: block; margin: 30px auto;">
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Create a Folder in the ownCloud.
</h3>
<p style="font-weight: 400; font-family: 'Montserrat', sans-serif; font-size: 14px;">Terminal -> pip install pyocclient.</p>
<p style="font-weight: 400; font-family: 'Montserrat', sans-serif; font-size: 14px;">For testing in demo account you can use the following URL :- <a href="https://demo.owncloud.org/login">https://demo.owncloud.org/login</a></p>
<p style="font-weight: 400; font-family: 'Montserrat', sans-serif; font-size: 14px;">Create a folder in ownCloud and copy the domain</p>
<img src="assets/screenshots/1.png" class="img-thumbnail">
</div>
<div style="display: block; margin: 30px auto;">
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Configure the Settings.
</h3>
<p style="font-weight: 400; font-family: 'Montserrat', sans-serif; font-size: 14px;">After creating the folder in ownCloud go to General Settings in odoo. Under the Integration section
enables the 'ownCloud Storage' and add the all the required credentials.</p>
<img src="assets/screenshots/2.png" class="img-thumbnail">
</div>
<div style="display: block; margin: 30px auto;">
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Export the Files to the ownCloud.
</h3>
<p style="font-weight: 400; font-family: 'Montserrat', sans-serif; font-size: 14px;">Go to 'ownCloud Storage' in menu. Click on the 'Export' button.</p>
<img src="assets/screenshots/3.png" class="img-thumbnail">
</div>
<div style="display: block; margin: 30px auto;">
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Browse for the File.
</h3>
<p style="font-weight: 400; font-family: 'Montserrat', sans-serif; font-size: 14px;">On the wizard click on the 'UPLOAD YOUR FILE' for browse the file.</p>
<img src="assets/screenshots/4.png" class="img-thumbnail">
</div>
<div style="display: block; margin: 30px auto;">
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">Upload the File.
</h3>
<p style="font-weight: 400; font-family: 'Montserrat', sans-serif; font-size: 14px;">After browsing the required file, click on the 'UPLOAD' button.</p>
<img src="assets/screenshots/5.png" class="img-thumbnail">
</div>
<div style="display: block; margin: 30px auto;">
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">File Uploaded.
</h3>
<p style="font-weight: 400; font-family: 'Montserrat', sans-serif; font-size: 14px;">We can see the file is uploaded to the ownCloud storage successfully.</p>
<img src="assets/screenshots/6.png" class="img-thumbnail">
</div>
<div style="display: block; margin: 30px auto;">
<h3 style="font-family: 'Montserrat', sans-serif; font-size: 18px; font-weight: bold;">File Import.
</h3>
<p style="font-weight: 400; font-family: 'Montserrat', sans-serif; font-size: 14px;">We can import all the files in the given folder. Also, we can download the file</p>
<img src="assets/screenshots/7.png" class="img-thumbnail">
</div>
</div>
</div>
<!-- END OF SCREENSHOTS SECTION -->
<!-- RELATED PRODUCTS -->
<div class="d-flex align-items-center" style="border-bottom: 2px solid #714B67; padding: 15px 0px;">
<div class="d-flex justify-content-center align-items-center mr-2"
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;">
<img src="assets/misc/categories.png" />
</div>
<h2 class="mt-2" style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">Related
Products
</h2>
</div>
<div class="row">
<div class="col-sm-12">
<div id="demo1" class="row carousel slide" data-ride="carousel">
<!-- The slideshow -->
<div class="carousel-inner" style="padding: 30px;">
<div class="carousel-item" style="min-height: 198.656px;">
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float:left">
<a href="https://apps.odoo.com/apps/modules/16.0/amazon_s3_connector/" target="_blank">
<div style="border-radius:10px">
<img class="img img-responsive center-block" style="border-radius: 0px;" src="assets/modules/1.jpg">
</div>
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float:left">
<a href="https://apps.odoo.com/apps/modules/16.0/contact_documents/" target="_blank">
<div style="border-radius:10px">
<img class="img img-responsive center-block" style="border-radius: 0px;" src="assets/modules/2.gif">
</div>
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float:left">
<a href="https://apps.odoo.com/apps/modules/16.0/size_restriction_for_attachments/" target="_blank">
<div style="border-radius:10px">
<img class="img img-responsive center-block" style="border-radius: 0px;" src="assets/modules/3.jpg">
</div>
</a>
</div>
</div>
<div class="carousel-item active" style="min-height: 198.656px;">
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float:left">
<a href="https://apps.odoo.com/apps/modules/16.0/dropbox_integration/" target="_blank">
<div style="border-radius:10px">
<img class="img img-responsive center-block" style="border-radius: 0px;" src="assets/modules/4.png">
</div>
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float:left">
<a href="https://apps.odoo.com/apps/modules/16.0/mailer_cloud_connector/" target="_blank">
<div style="border-radius:10px">
<img class="img img-responsive center-block" style="border-radius: 0px;" src="assets/modules/5.png">
</div>
</a>
</div>
<div class="col-xs-12 col-sm-4 col-md-4 mb16 mt16" style="float:left">
<a href="https://apps.odoo.com/apps/modules/16.0/auto_database_backup/" target="_blank">
<div style="border-radius:10px">
<img class="img img-responsive center-block" style="border-radius: 0px;" src="assets/modules/6.jpg">
</div>
</a>
</div>
</div>
</div>
<!-- Left and right controls -->
<a class="carousel-control-prev" href="#demo1" data-slide="prev" style="width:35px; color:#000"> <span
class="carousel-control-prev-icon"><i class="fa fa-chevron-left" style="font-size:24px"></i></span>
</a> <a class="carousel-control-next" href="#demo1" data-slide="next" style="width:35px; color:#000">
<span class="carousel-control-next-icon"><i class="fa fa-chevron-right" style="font-size:24px"></i></span>
</a>
</div>
</div>
</div>
<!-- END OF RELATED PRODUCTS -->
<!-- OUR SERVICES -->
<div class="d-flex align-items-center" style="border-bottom: 2px solid #714B67; padding: 15px 0px;">
<div class="d-flex justify-content-center align-items-center mr-2"
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;">
<img src="assets/misc/star.png" />
</div>
<h2 class="mt-2" style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">Our Services
</h2>
</div>
<div class="container my-5">
<div class="row">
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4">
<div class="d-flex justify-content-center align-items-center mx-3 my-3"
style="background-color: #1dd1a1 !important; border-radius: 15px !important; height: 80px; width: 80px;">
<img src="assets/icons/cogs.png" class="img-responsive" height="48px" width="48px">
</div>
<h6 class="text-center" style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;">
Odoo
Customization</h6>
</div>
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4">
<div class="d-flex justify-content-center align-items-center mx-3 my-3"
style="background-color: #ff6b6b !important; border-radius: 15px !important; height: 80px; width: 80px;">
<img src="assets/icons/wrench.png" class="img-responsive" height="48px" width="48px">
</div>
<h6 class="text-center" style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;">
Odoo
Implementation</h6>
</div>
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4">
<div class="d-flex justify-content-center align-items-center mx-3 my-3"
style="background-color: #6462CD !important; border-radius: 15px !important; height: 80px; width: 80px;">
<img src="assets/icons/lifebuoy.png" class="img-responsive" height="48px" width="48px">
</div>
<h6 class="text-center" style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;">
Odoo
Support</h6>
</div>
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4">
<div class="d-flex justify-content-center align-items-center mx-3 my-3"
style="background-color: #ffa801 !important; border-radius: 15px !important; height: 80px; width: 80px;">
<img src="assets/icons/user.png" class="img-responsive" height="48px" width="48px">
</div>
<h6 class="text-center" style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;">
Hire
Odoo
Developer</h6>
</div>
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4">
<div class="d-flex justify-content-center align-items-center mx-3 my-3"
style="background-color: #54a0ff !important; border-radius: 15px !important; height: 80px; width: 80px;">
<img src="assets/icons/puzzle.png" class="img-responsive" height="48px" width="48px">
</div>
<h6 class="text-center" style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;">
Odoo
Integration</h6>
</div>
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4">
<div class="d-flex justify-content-center align-items-center mx-3 my-3"
style="background-color: #6d7680 !important; border-radius: 15px !important; height: 80px; width: 80px;">
<img src="assets/icons/update.png" class="img-responsive" height="48px" width="48px">
</div>
<h6 class="text-center" style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;">
Odoo
Migration</h6>
</div>
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4">
<div class="d-flex justify-content-center align-items-center mx-3 my-3"
style="background-color: #786fa6 !important; border-radius: 15px !important; height: 80px; width: 80px;">
<img src="assets/icons/consultation.png" class="img-responsive" height="48px" width="48px">
</div>
<h6 class="text-center" style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;">
Odoo
Consultancy</h6>
</div>
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4">
<div class="d-flex justify-content-center align-items-center mx-3 my-3"
style="background-color: #f8a5c2 !important; border-radius: 15px !important; height: 80px; width: 80px;">
<img src="assets/icons/training.png" class="img-responsive" height="48px" width="48px">
</div>
<h6 class="text-center" style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;">
Odoo
Implementation</h6>
</div>
<div class="col-lg-4 d-flex flex-column justify-content-center align-items-center my-4">
<div class="d-flex justify-content-center align-items-center mx-3 my-3"
style="background-color: #e6be26 !important; border-radius: 15px !important; height: 80px; width: 80px;">
<img src="assets/icons/license.png" class="img-responsive" height="48px" width="48px">
</div>
<h6 class="text-center" style="font-family: Montserrat, 'sans-serif' !important; font-weight: bold;">
Odoo
Licensing Consultancy</h6>
</div>
</div>
</div>
<!--END OF OUR SERVICES -->
<!-- OUR INDUSTRIES -->
<div class="d-flex align-items-center" style="border-bottom: 2px solid #714B67; padding: 15px 0px;">
<div class="d-flex justify-content-center align-items-center mr-2"
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;">
<img src="assets/misc/corporate.png" />
</div>
<h2 class="mt-2" style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">Our
Industries
</h2>
</div>
<div class="container my-5">
<div class="row">
<div class="col-lg-3">
<div class="my-4 d-flex flex-column justify-content-center"
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;">
<img src="assets/icons/trading-black.png" class="img-responsive mb-3" height="48px" width="48px">
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;">
Trading
</h5>
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;">
Easily procure
and
sell your products</p>
</div>
</div>
<div class="col-lg-3">
<div class="my-4 d-flex flex-column justify-content-center"
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;">
<img src="assets/icons/pos-black.png" class="img-responsive mb-3" height="48px" width="48px">
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;">
POS
</h5>
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;">
Easy
configuration
and convivial experience</p>
</div>
</div>
<div class="col-lg-3">
<div class="my-4 d-flex flex-column justify-content-center"
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;">
<img src="assets/icons/education-black.png" class="img-responsive mb-3" height="48px" width="48px">
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;">
Education
</h5>
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;">
A platform for
educational management</p>
</div>
</div>
<div class="col-lg-3">
<div class="my-4 d-flex flex-column justify-content-center"
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;">
<img src="assets/icons/manufacturing-black.png" class="img-responsive mb-3" height="48px" width="48px">
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;">
Manufacturing
</h5>
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;">
Plan, track and
schedule your operations</p>
</div>
</div>
<div class="col-lg-3">
<div class="my-4 d-flex flex-column justify-content-center"
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;">
<img src="assets/icons/ecom-black.png" class="img-responsive mb-3" height="48px" width="48px">
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;">
E-commerce &amp; Website
</h5>
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;">
Mobile
friendly,
awe-inspiring product pages</p>
</div>
</div>
<div class="col-lg-3">
<div class="my-4 d-flex flex-column justify-content-center"
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;">
<img src="assets/icons/service-black.png" class="img-responsive mb-3" height="48px" width="48px">
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;">
Service Management
</h5>
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;">
Keep track of
services and invoice</p>
</div>
</div>
<div class="col-lg-3">
<div class="my-4 d-flex flex-column justify-content-center"
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;">
<img src="assets/icons/restaurant-black.png" class="img-responsive mb-3" height="48px" width="48px">
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;">
Restaurant
</h5>
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;">
Run your bar or
restaurant methodically</p>
</div>
</div>
<div class="col-lg-3">
<div class="my-4 d-flex flex-column justify-content-center"
style="background-color: #f6f8f9 !important; border-radius: 0px; padding: 2rem !important; height: 250px !important;">
<img src="assets/icons/hotel-black.png" class="img-responsive mb-3" height="48px" width="48px">
<h5 style="font-family: Montserrat, sans-serif !important; color: #000 !important; font-weight: bold;">
Hotel Management
</h5>
<p style="font-family: Montserrat, sans-serif !important; font-size: 0.9rem !important;">
An
all-inclusive
hotel management application</p>
</div>
</div>
</div>
</div>
<!--END OF OUR INDUSTRIES -->
<!-- SUPPORT -->
<div class="d-flex align-items-center" style="border-bottom: 2px solid #714B67; padding: 15px 0px;">
<div class="d-flex justify-content-center align-items-center mr-2"
style="background-color: #F5F5F5; border-radius: 0px; width: 40px; height: 40px;">
<img src="assets/misc/customer-support.png" />
</div>
<h2 class="mt-2" style="font-family: 'Montserrat', sans-serif; font-size: 24px; font-weight: bold;">Support
</h2>
</div>
<div class="container mt-5">
<div class="row">
<div class="col-sm-12 col-md-6">
<div style="background-color: #F6F8F9; padding: 30px; display: flex; align-items: center;">
<div class="mr-4 d-flex justify-content-center align-items-center"
style="background-color: #714B67; display: inline-block; height: 70px; width: 70px; display: flex; align-items: center; justify-content: center;">
<img src="assets/misc/support.png" height="48" width="48" style="width: 42px; height: 42px;" />
</div>
<div>
<h4>Need Help?</h4>
<p style="line-height: 100%;">Got questions or need help? Get in touch.</p>
<a href="mailto:odoo@cybrosys.com">
<p style="font-weight: 400; font-size: 28px; line-height: 80%; color: #714B67;">
odoo@cybrosys.com</p>
</a>
</div>
</div>
</div>
<div class="col-sm-12 col-md-6">
<div style="background-color: #F6F8F9; padding: 30px; display: flex; align-items: center;">
<div class="mr-4 d-flex justify-content-center align-items-center"
style="background-color: #2AC44D; display: inline-block; height: 70px; width: 70px; display: flex; align-items: center; justify-content: center;">
<img src="assets/misc/whatsapp.png" height="52" width="52" style="width: 52px; height: 52px;" />
</div>
<div>
<h4>WhatsApp</h4>
<p style="line-height: 100%;">Say hi to us on WhatsApp!</p>
<a href="https://api.whatsapp.com/send?phone=918606827707">
<p style="font-weight: 400; font-size: 28px; line-height: 80%; color: #714B67;">+91 86068
27707</p>
</a>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-sm-12 my-5 d-flex justify-content-center align-items-center">
<img src="assets/misc/logo.png" width="144" height="31" style="width:144px; height: 31px; margin-top: 40px;" />
</div>
</div>
</div>
<!-- END OF SUPPORT -->

1
odoo_owncloud_connector/static/src/img/OwnCloud-Logo.wine.svg

@ -1 +0,0 @@
<svg xmlns="http://www.w3.org/2000/svg" height="800" width="1200" viewBox="-65.00145 -52.22725 563.3459 313.3635"><circle r="21.999" cy="184.908" cx="23.999" fill="none" stroke="#1d2d44" stroke-width="4"/><circle r="22.001" cy="184.908" cx="291.512" fill="none" stroke="#1d2d44" stroke-width="4"/><path d="M62 162.703v30.074c0 7.801 6.324 14.123 14.123 14.123 7.803 0 14.125-6.322 14.125-14.123v-30.074m0 0v30.074c0 7.801 6.324 14.123 14.125 14.123s14.125-6.322 14.125-14.123v-30.074m127.767-40.004v70.078c0 7.801 6.322 14.123 14.123 14.123m-125.384.006v-22.201c0-12.15 9.85-22 22-22 12.152 0 22.002 9.85 22.002 22v22.201m149.003-44.203v22.205c0 12.148 9.85 21.998 22 21.998s22.002-9.85 22.002-21.998v-22.205m-142.178-26.127c-19.421 0-35.167 15.744-35.167 35.166 0 19.422 15.746 35.164 35.167 35.164m201.45-84.207v40.172-.979m-14.36 45.002h-7.848c-12.15 0-22-9.85-22-21.998 0-12.15 9.85-22 22-22l22.207-.025s.137 22.342 0 29.895c-.138 7.552-7.968 14.128-14.359 14.128z" fill="none" stroke="#1d2d44" stroke-width="4"/><circle r="20.332" cy="38.648" cx="215.181" fill="#1d2d44" stroke="#fff" stroke-width="4"/><circle r="37.242" cy="109.314" cx="177.898" fill="#1d2d44" stroke="#fff" stroke-width="4"/><circle r="40.261" cy="84.533" cx="219.912" fill="#1d2d44" stroke="#fff" stroke-width="4"/><circle r="37.242" cy="68.209" cx="302.021" fill="#1d2d44" stroke="#fff" stroke-width="4"/><circle r="37.241" cy="39.241" cx="261.18" fill="#1d2d44" stroke="#fff" stroke-width="4"/><circle r="21.3" cy="123.695" cx="385.114" fill="#1d2d44" stroke="#fff" stroke-width="4"/><circle r="40.261" cy="107.3" cx="339.85" fill="#1d2d44" stroke="#fff" stroke-width="4"/><circle r="21.299" cy="125.748" cx="217.449" fill="#1d2d44" stroke="#fff" stroke-width="4"/><path d="M324.794 95.406c0 28.348-22.984 51.328-51.334 51.328s-51.333-22.98-51.333-51.328c0-28.351 22.984-51.333 51.333-51.333 28.349 0 51.334 22.982 51.334 51.333z" fill="#1d2d44" stroke="#fff" stroke-width="4"/></svg>

Before

Width:  |  Height:  |  Size: 1.9 KiB

185
odoo_owncloud_connector/static/src/js/owncloud.js

@ -1,185 +0,0 @@
odoo.define('odoo_owncloud_connector.dashboard', function (require) {
'use strict';
var AbstractAction = require('web.AbstractAction');
var core = require('web.core');
var rpc = require('web.rpc');
var Dialog = require('web.Dialog');
var OwncloudDashboard = AbstractAction.extend({
template: 'OwncloudDashboard',
events: {
'click #owncloud_export' : 'export',
'click #owncloud_import' : 'import',
'click .delete_file': 'delete_file',
'change #owncloud_filter' : 'filter_files',
'keyup .owncloud_header-search-input' : 'search_file'
},
/* Appends files retrieved by function(owncloud_view_files) to owncloud_table */
init() {
this._super(...arguments);
var self = this;
self.import();
},
import: function(ev) {
var self = this;
rpc.query({
model: 'owncloud.dashboard',
method: 'action_owncloud_view_files',
}).then(function (result) {
if(result[0]=='e'){
self.do_action({
'type': 'ir.actions.client',
'tag': 'display_notification',
'params': {
'message': 'Failed to Load Files [ '+result[1]+' ]',
'type': 'warning',
'sticky': false,
}
})
} else {
self.$el.find('.owncloud_files').empty();
var count=1;
result.forEach((name, index) => {
self.$('.owncloud_files').append('<tr class="file_row table-secondary"><td scope="row" style="text-align:center;">'+count+'</td><td><a class="file_name" href="'+name[1]+'"</a>'+name[0]+'<i class="fa fa-download download_file"></i></td><td>'+name[2]+'</td><td>'+name[3]+'</td><td id="delete_file" value="'+name[0]+'" ><i class="fa fa-trash delete_file" style="cursor: pointer;"></i></td></tr>');
count ++;
});
}
});
},
/* Calls wizard action */
export: function (ev) {
var self = this
rpc.query({
model: 'owncloud.upload',
method: 'credentials_checking',
args:[,]
}).then(function (result) {
if (result == true){
self.do_action({
name: "Upload File",
type: 'ir.actions.act_window',
res_model: 'owncloud.upload',
view_mode: 'form',
view_type: 'form',
views: [[false, 'form']],
target: 'new',
});
} else {
Dialog.alert(self, ("Please Configure the credentials."));
}
})
},
/* Delete the file */
delete_file: function (ev){
var self = this
rpc.query({
model: 'owncloud.dashboard',
method: 'action_delete_files',
args:['', ev.target.parentNode.getAttribute('value')]
}).then(function (result) {
if(result[0]=='e'){
self.do_action({
'type': 'ir.actions.client',
'tag': 'display_notification',
'params': {
'message': 'Failed to Delete File [ '+result[1]+' ]',
'type': 'warning',
'sticky': false,
}
})
} else {
self.do_action({
'type': 'ir.actions.client',
'tag': 'display_notification',
'params': {
'message': 'File deleted successfully',
'type': 'success',
'sticky': false,
}
})
ev.target.parentNode.parentNode.remove()
self.sort();
}
});
},
/* Sort the files */
sort: function() {
var table = this.$el.find("#files_table");
var tbody = table.find("tbody");
var rows = tbody.find("tr");
rows.sort(function(a, b) {
var slNoA = parseInt($(a).find("td:eq(0)").text());
var slNoB = parseInt($(b).find("td:eq(0)").text());
return slNoA - slNoB;
});
var updated_rows = []
for(var i=0;i<rows.length;i++){
if(rows[i].style.display == false){
updated_rows.push(rows[i])
}
}
$.each(updated_rows, function(index, row) {
tbody.append(row);
$(row).find("td:eq(0)").text(index + 1);
});
},
/* Search console function */
search_file: function (ev) {
var self = this
var value = this.$el.find('.owncloud_header-search-input').val().toLowerCase();
// If the value is empty, show all rows
if (value === '') {
this.$el.find('.file_row').show();
this.$el.find("#filter").val("ALL FILES");
self.sort();
}
else if (ev.key === 'Backspace') {
// If Backspace was pressed and the input is empty, show all rows
this.$el.find('.owncloud_header-search-input').clearInputs();
this.filter_files();
self.sort();
}
else {
this.$el.find('.file_row:visible').each(function(index, row) {
var row = $(row);
if (row.text().toLowerCase().indexOf(value) > -1) {
row.show();
self.sort();
} else {
row.hide();
self.sort();
}
});
}
},
/* Filter on basis of file type */
filter_files: function(ev){
self = this
var filter = this.$el.find('#owncloud_filter')[0];
this.$el.find('.file_row').each(function(index, name){
self.$(this).hide();
var file_name = self.$el.find('a')[index].innerText;
var file_type = file_name.slice((file_name.lastIndexOf(".") - 1 >>> 0) + 2);
if (filter.value=='ALL FILES'){
self.$(this).show();
}
else if (filter.value == file_type){
self.$(this).show();
}
else if(filter.value == 'image'){
if (file_type=='jpeg' || file_type=='jpg' || file_type=='png'){
self.$(this).show();
}
}
else if(filter.value == 'txt'){
if (file_type=='txt' || file_type=='docx'){
self.$(this).show();
}
}
});
self.sort();
},
});
core.action_registry.add("owncloud_dashboard", OwncloudDashboard);
return OwncloudDashboard;
});

48
odoo_owncloud_connector/static/src/scss/owncloud.scss

@ -1,48 +0,0 @@
.next-table{
--table-bg: #007bc9;
color: white;
}
.files_select{
border-radius: 0.5rem;
height: 30px;
outline: none;
border: none;
font-size: 15px;
box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
margin-left: 10px;
}
.owncloud_header-search-input{
border-radius: 0.5rem;
height: 30px;
width: 400px;
outline: none;
border: none;
font-size: 15px;
box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
margin-left: 30px;
}
.owncloud_export{
background: #092f6e;
color: white;
height: 50px;
width: 120px;
border-radius: 6px;
float: right;
margin: 20px;
box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
}
.owncloud_import{
background: #092f6e;
color: white;
height: 50px;
width: 120px;
border-radius: 6px;
float: right;
margin: 20px;
box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.5);
}
.owncloud_content{
overflow-y: scroll;
height: 100vh;
width: auto;
}

48
odoo_owncloud_connector/static/src/xml/owncloud_dashboard_templates.xml

@ -1,48 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<templates id="template" xml:space="preserve">
<!-- Template for dashboard of ownCloud-->
<t t-name="OwncloudDashboard">
<section class="owncloud_dashboard_main_section"
id="main_section_manager">
<img src="odoo_owncloud_connector/static/src/img/OwnCloud-Logo.wine.svg"
style="width:120px; margin: 5px;"/>
<!-- Search console -->
<input type="search" class="owncloud_header-search-input"
placeholder="Search Files"/>
<!-- Filter the files based on file type -->
<label for="owncloud_filter">
<select id="owncloud_filter" class="form-select files_select">
<option value="ALL FILES">ALL FILES</option>
<option value="pdf">PDF</option>
<option value="image">IMAGE</option>
<option value="zip">ZIP</option>
<option value="txt">TEXT</option>
<option value="xlsx">EXCEL</option>
</select>
</label>
<!-- Import Button for file import from ownCloud -->
<input class="btn owncloud_import" type="button" value="Import"
id="owncloud_import"/>
<!-- Export Button for file upload to ownCloud-->
<input class="btn owncloud_export" type="button" value="Export"
id="owncloud_export"/>
<div class="owncloud_content">
<!-- ownCloud Table for visualizing the ownCloud documents -->
<table class="table table-light table-hover" id="files_table">
<thead class="own-table">
<tr>
<th class="sort-number" style="text-align:center;"
scope="col">SL NO:
</th>
<th class="sort-name" scope="col">Name</th>
<th scope="col">Type</th>
<th scope="col">Size</th>
<th scope="col"/>
</tr>
</thead>
<tbody class="owncloud_files"/>
</table>
</div>
</section>
</t>
</templates>

11
odoo_owncloud_connector/views/owncloud_dashboard_views.xml

@ -1,11 +0,0 @@
<?xml version="1.0" encoding="UTF-8" ?>
<odoo>
<!--Menu action for ownCloud storage-->
<record id="owncloud_dashboard_action" model="ir.actions.client">
<field name="name">Owncloud Storage</field>
<field name="tag">owncloud_dashboard</field>
<field name="target">current</field>
</record>
<menuitem id="owncloud_dashboard_root_menu" name="ownCloud Storage"
action="owncloud_dashboard_action" web_icon="odoo_owncloud_connector,static/description/icon.png"/>
</odoo>

50
odoo_owncloud_connector/views/res_config_settings_views.xml

@ -1,50 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<!--Inherits the res.config.settings for adding the required credentials for connecting with ownCloud -->
<record id="res_config_settings_view_form" model="ir.ui.view">
<field name="name">res.config.settings.view.form.inherit.odoo.owncloud.connector</field>
<field name="model">res.config.settings</field>
<field name="inherit_id" ref="base.res_config_settings_view_form"/>
<field name="arch" type="xml">
<xpath expr="//div[@name='integration']" position="inside">
<div class="col-12 col-lg-6 o_setting_box" id="owncloud">
<div class="o_setting_left_pane">
<field name="owncloud_button" string="ownCloud Storage"/>
</div>
<div class="o_setting_right_pane">
<label for="owncloud_button"/>
<div class="text-muted">Synchronize with ownCloud Storage </div>
</div>
<div class="o_setting_right_pane">
<span attrs="{'invisible': [('owncloud_button', '=', False)]}">
ownCloud Domain:
<field name="owncloud_domain"
attrs="{'invisible': [('owncloud_button', '=', False)]}"/>
</span>
</div>
<div class="o_setting_right_pane">
<span attrs="{'invisible': [('owncloud_button', '=', False)]}">
ownCloud Username:
<field name="owncloud_user_name"
attrs="{'invisible': [('owncloud_button', '=', False)]}"/>
</span>
</div>
<div class="o_setting_right_pane">
<span attrs="{'invisible': [('owncloud_button', '=', False)]}">
ownCloud Password:
<field name="owncloud_password" password="True"
attrs="{'invisible': [('owncloud_button', '=', False)]}"/>
</span>
</div>
<div class="o_setting_right_pane">
<span attrs="{'invisible': [('owncloud_button', '=', False)]}">
ownCloud Folder:
<field name="owncloud_folder"
attrs="{'invisible': [('owncloud_button', '=', False)]}"/>
</span>
</div>
</div>
</xpath>
</field>
</record>
</odoo>

22
odoo_owncloud_connector/wizard/__init__.py

@ -1,22 +0,0 @@
# -*- coding: utf-8 -*-
###############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>)
# Author: Saneen K (odoo@cybrosys.com)
#
# This program is free software: you can modify
# it under the terms of the GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
##############################################################################
from . import owncloud_upload

99
odoo_owncloud_connector/wizard/owncloud_upload.py

@ -1,99 +0,0 @@
# -*- coding: utf-8 -*-
###############################################################################
#
# Cybrosys Technologies Pvt. Ltd.
# Copyright (C) 2023-TODAY Cybrosys Technologies(<https://www.cybrosys.com>)
# Author: Saneen K (odoo@cybrosys.com)
#
# This program is free software: you can modify
# it under the terms of the GNU LESSER GENERAL PUBLIC LICENSE (LGPL v3) as
# published by the Free Software Foundation, either version 3 of the
# License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU LESSER GENERAL PUBLIC LICENSE for more details.
#
# You should have received a copy of the GNU LESSER GENERAL PUBLIC LICENSE
# along with this program. If not, see <https://www.gnu.org/licenses/>.
#
###############################################################################
import owncloud
from odoo import fields, models, _
from odoo.exceptions import UserError, ValidationError
class OwncloudUpload(models.TransientModel):
""" Wizard model for file upload in to ownCloud storage"""
_name = "owncloud.upload"
_description = 'Wizard for File Upload'
file = fields.Binary(string="Attachment", help="Select a file to upload")
file_name = fields.Char(string="File Name",
help="Name of the file to upload")
def action_owncloud_upload_file(self):
"""Function for upload the file in to Owncloud storage"""
attachment = self.env["ir.attachment"].search(
['|', ('res_field', '!=', False), ('res_field', '=', False),
('res_id', '=', self.id),
('res_model', '=', 'owncloud.upload')])
domain = self.env['ir.config_parameter'].get_param(
'odoo_owncloud_connector.owncloud_domain')
user_name = self.env['ir.config_parameter'].get_param(
'odoo_owncloud_connector.owncloud_user_name')
password = self.env['ir.config_parameter'].get_param(
'odoo_owncloud_connector.owncloud_password')
folder = self.env['ir.config_parameter'].get_param(
'odoo_owncloud_connector.owncloud_folder')
if not domain or not user_name or not password or not folder:
raise UserError(_('Please configure the credentials.'))
try:
oc_access = owncloud.Client(domain)
oc_access.login(user_name, password)
values = []
for file in oc_access.list('/'):
if file.path[-1] == '/':
file.path = file.path[:-1]
values.append(file.path)
if '/' + folder in values:
oc_access.put_file('/' + folder + '/' + self.file_name,
attachment._full_path(
attachment.store_fname))
oc_access.logout()
except Exception as e:
raise ValidationError(_(
'Failed to Upload Files ( %s .)' % e))
return {
'type': 'ir.actions.client',
'tag': 'display_notification',
'params': {
'type': 'success',
'message': "Your file uploaded successfully.",
'next': {'type': 'ir.actions.act_window_close'},
}
}
def credentials_checking(self):
"""Checking the credentials while uploading the file"""
domain = self.env['ir.config_parameter'].get_param(
'odoo_owncloud_connector.owncloud_domain')
user_name = self.env['ir.config_parameter'].get_param(
'odoo_owncloud_connector.owncloud_user_name')
password = self.env['ir.config_parameter'].get_param(
'odoo_owncloud_connector.owncloud_password')
folder = self.env['ir.config_parameter'].get_param(
'odoo_owncloud_connector.owncloud_folder')
try:
oc_access = owncloud.Client(domain)
oc_access.login(user_name, password)
values = []
for file in oc_access.list('/'):
if file.path[-1] == '/':
file.path = file.path[:-1]
values.append(file.path)
if '/' + folder in values:
return True
except Exception:
return False

24
odoo_owncloud_connector/wizard/owncloud_upload_views.xml

@ -1,24 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<!--Wizard form for upload file to ownCloud storage-->
<record id="owncloud_upload_view_form" model="ir.ui.view">
<field name="name">owncloud.upload.view.form</field>
<field name="model">owncloud.upload</field>
<field name="arch" type="xml">
<form string="upload file wizard">
<group class="oe_title">
<field name="file" string="File Name" filename="file_name" widget="binary"/>
<field name="file_name" invisible="1"/>
</group>
<footer>
<button string="Upload" name="action_owncloud_upload_file"
type="object"
class="oe_highlight" data-hotkey="q"
help="Confirm Upload"/>
<button string="Cancel" class="btn btn-secondary"
special="cancel" help="Cancel Upload"/>
</footer>
</form>
</field>
</record>
</odoo>
Loading…
Cancel
Save