From 5b4785b1add95e5c43fea125b6d41f769f956972 Mon Sep 17 00:00:00 2001 From: Aitor Bouzas Date: Fri, 20 Jul 2018 09:37:41 +0200 Subject: [PATCH 1/7] Adding sequence for ticket number, deleting ticket number display --- .gitignore | 105 ++++++++++++++++++ website_support/__manifest__.py | 2 +- .../data/website_support_sequence.xml | 13 +++ website_support/models/__init__.py | 1 - website_support/models/res_company.py | 8 -- .../models/website_support_ticket.py | 43 ++++--- website_support/views/res_company_views.xml | 17 --- .../views/website_support_ticket_views.xml | 3 +- 8 files changed, 141 insertions(+), 51 deletions(-) create mode 100644 .gitignore create mode 100644 website_support/data/website_support_sequence.xml delete mode 100644 website_support/models/res_company.py delete mode 100644 website_support/views/res_company_views.xml diff --git a/.gitignore b/.gitignore new file mode 100644 index 000000000..7bff73183 --- /dev/null +++ b/.gitignore @@ -0,0 +1,105 @@ +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +.hypothesis/ +.pytest_cache/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# pyenv +.python-version + +# celery beat schedule file +celerybeat-schedule + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ + diff --git a/website_support/__manifest__.py b/website_support/__manifest__.py index 42594e0ad..11d09d682 100644 --- a/website_support/__manifest__.py +++ b/website_support/__manifest__.py @@ -23,11 +23,11 @@ 'views/website_support_help_groups_views.xml', 'views/website_support_help_page_views.xml', 'views/website_support_ticket_priority_views.xml', - 'views/res_company_views.xml', 'views/website_support_settings_views.xml', 'views/website_support_ticket_department_views.xml', 'views/website_support_sla_views.xml', 'views/menus.xml', + 'data/website_support_sequence.xml', 'data/website.support.ticket.states.xml', 'data/website.support.ticket.categories.xml', 'data/website.menu.csv', diff --git a/website_support/data/website_support_sequence.xml b/website_support/data/website_support_sequence.xml new file mode 100644 index 000000000..96f44f871 --- /dev/null +++ b/website_support/data/website_support_sequence.xml @@ -0,0 +1,13 @@ + + + + + website.support.ticket + website.support.ticket + TICKET/ + 3 + 1 + 1 + + + diff --git a/website_support/models/__init__.py b/website_support/models/__init__.py index 543b96510..30ec7c062 100644 --- a/website_support/models/__init__.py +++ b/website_support/models/__init__.py @@ -3,7 +3,6 @@ from . import website_support_ticket from . import res_partner from . import website_support_help -from . import res_company from . import website_support_settings from . import mail_template from . import website_support_department diff --git a/website_support/models/res_company.py b/website_support/models/res_company.py deleted file mode 100644 index 497afdb30..000000000 --- a/website_support/models/res_company.py +++ /dev/null @@ -1,8 +0,0 @@ -# -*- coding: utf-8 -*- -from openerp import api, fields, models - -class ResCompanyTicket(models.Model): - - _inherit = "res.company" - - next_support_ticket_number = fields.Integer(string="Next Support Ticket Number", default="51976386") \ No newline at end of file diff --git a/website_support/models/website_support_ticket.py b/website_support/models/website_support_ticket.py index 4af248456..8d3db8dfe 100644 --- a/website_support/models/website_support_ticket.py +++ b/website_support/models/website_support_ticket.py @@ -24,9 +24,12 @@ def _read_group_state(self, states, domain, order): kanban view, even if they are empty """ - staff_replied_state = self.env['ir.model.data'].get_object('website_support', 'website_ticket_state_staff_replied') - customer_replied_state = self.env['ir.model.data'].get_object('website_support', 'website_ticket_state_customer_replied') - customer_closed = self.env['ir.model.data'].get_object('website_support', 'website_ticket_state_customer_closed') + staff_replied_state = self.env['ir.model.data'].get_object('website_support', + 'website_ticket_state_staff_replied') + customer_replied_state = self.env['ir.model.data'].get_object('website_support', + 'website_ticket_state_customer_replied') + customer_closed = self.env['ir.model.data'].get_object('website_support', + 'website_ticket_state_customer_closed') staff_closed = self.env['ir.model.data'].get_object('website_support', 'website_ticket_state_staff_closed') exclude_states = [staff_replied_state.id, customer_replied_state.id, customer_closed.id, staff_closed.id] @@ -59,17 +62,20 @@ def _default_approval_id(self): sub_category_id = fields.Many2one('website.support.ticket.subcategory', string="Sub Category") subject = fields.Char(string="Subject") description = fields.Text(string="Description") - state = fields.Many2one('website.support.ticket.states', group_expand='_read_group_state', default=_default_state, string="State") + state = fields.Many2one('website.support.ticket.states', group_expand='_read_group_state', default=_default_state, + string="State") conversation_history = fields.One2many('website.support.ticket.message', 'ticket_id', string="Conversation History") attachment = fields.Binary(string="Attachments") attachment_filename = fields.Char(string="Attachment Filename") - attachment_ids = fields.One2many('ir.attachment', 'res_id', domain=[('res_model', '=', 'website.support.ticket')], string="Media Attachments") - unattended = fields.Boolean(string="Unattended", compute="_compute_unattend", store="True", help="In 'Open' state or 'Customer Replied' state taken into consideration name changes") + attachment_ids = fields.One2many('ir.attachment', 'res_id', domain=[('res_model', '=', 'website.support.ticket')], + string="Media Attachments") + unattended = fields.Boolean(string="Unattended", compute="_compute_unattend", store="True", + help="In 'Open' state or 'Customer Replied' state taken into consideration name changes") portal_access_key = fields.Char(string="Portal Access Key") - ticket_number = fields.Integer(string="Ticket Number") - ticket_number_display = fields.Char(string="Ticket Number Display", compute="_compute_ticket_number_display") + ticket_number = fields.Char(string="Ticket Number", readonly=True) ticket_color = fields.Char(related="priority_id.color", string="Ticket Color") - company_id = fields.Many2one('res.company', string="Company", default=lambda self: self.env['res.company']._company_default_get('website.support.ticket') ) + company_id = fields.Many2one('res.company', string="Company", + default=lambda self: self.env['res.company']._company_default_get('website.support.ticket') ) support_rating = fields.Integer(string="Support Rating") support_comment = fields.Text(string="Support Comment") close_comment = fields.Text(string="Close Comment") @@ -90,7 +96,8 @@ def _default_approval_id(self): sla_timer_format = fields.Char(string="SLA Timer Format", compute="_compute_sla_timer_format") sla_active = fields.Boolean(string="SLA Active") sla_response_category_id = fields.Many2one('website.support.sla.response', string="SLA Response Category") - sla_alert_ids = fields.Many2many('website.support.sla.alert', string="SLA Alerts", help="Keep record of SLA alerts sent so we do not resend them") + sla_alert_ids = fields.Many2many('website.support.sla.alert', string="SLA Alerts", + help="Keep record of SLA alerts sent so we do not resend them") @api.one @api.depends('sla_timer') @@ -255,14 +262,6 @@ def message_update(self, msg_dict, update_vals=None): return super(WebsiteSupportTicket, self).message_update(msg_dict, update_vals=update_vals) - @api.one - @api.depends('ticket_number') - def _compute_ticket_number_display(self): - if self.ticket_number: - self.ticket_number_display = str(self.id) + " / " + "{:,}".format( self.ticket_number ) - else: - self.ticket_number_display = self.id - @api.one @api.depends('state') def _compute_unattend(self): @@ -313,14 +312,12 @@ def _needaction_domain_get(self): @api.model def create(self, vals): + # Get next ticket number from the sequence + vals['ticket_number'] = self.env['ir.sequence'].next_by_code('website.support.ticket') + new_id = super(WebsiteSupportTicket, self).create(vals) new_id.portal_access_key = randint(1000000000,2000000000) - - new_id.ticket_number = new_id.company_id.next_support_ticket_number - - #Add one to the next ticket number - new_id.company_id.next_support_ticket_number += 1 ticket_open_email_template = self.env['ir.model.data'].get_object('website_support', 'website_ticket_state_open').mail_template_id ticket_open_email_template.send_mail(new_id.id, True) diff --git a/website_support/views/res_company_views.xml b/website_support/views/res_company_views.xml deleted file mode 100644 index f5a6f0f0e..000000000 --- a/website_support/views/res_company_views.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - res.company.support.ticket - res.company - - - - - - - - - - \ No newline at end of file diff --git a/website_support/views/website_support_ticket_views.xml b/website_support/views/website_support_ticket_views.xml index 41d8c3f57..53f56ad8f 100644 --- a/website_support/views/website_support_ticket_views.xml +++ b/website_support/views/website_support_ticket_views.xml @@ -113,6 +113,7 @@ website.support.ticket + @@ -141,7 +142,7 @@ - + From fb6cc9e87f457f8f0a5176ca725134f378efe54c Mon Sep 17 00:00:00 2001 From: Aitor Bouzas Date: Fri, 20 Jul 2018 10:24:27 +0200 Subject: [PATCH 2/7] Fixing spanish translations --- website_support/i18n/es.po | 335 ++++++++++++++++-- .../models/website_support_ticket.py | 57 +-- 2 files changed, 336 insertions(+), 56 deletions(-) diff --git a/website_support/i18n/es.po b/website_support/i18n/es.po index 5e3ea8605..f8c8c878b 100644 --- a/website_support/i18n/es.po +++ b/website_support/i18n/es.po @@ -6,8 +6,8 @@ msgid "" msgstr "" "Project-Id-Version: Odoo Server 11.0\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2018-07-19 10:23+0000\n" -"PO-Revision-Date: 2018-07-19 10:23+0000\n" +"POT-Creation-Date: 2018-07-20 07:54+0000\n" +"PO-Revision-Date: 2018-07-20 07:54+0000\n" "Last-Translator: <>\n" "Language-Team: \n" "MIME-Version: 1.0\n" @@ -23,9 +23,11 @@ msgid "\n" " % if object.ticket_id.portal_access_key :\n" " View Ticket Online: here
\n" " % endif\n" -" Ticket Number: ${object.ticket_id.id}
\n" -" Ticket Category: ${object.ticket_id.category.name or ''}\n" -"
\n" +" Ticket Number: ${object.ticket_id.ticket_number or object.ticket_id.id}
\n" +" Ticket Category: ${object.ticket_id.category.name or ''}
\n" +" % if object.ticket_id.planned_time_format :\n" +" Planned Date: ${object.ticket_id.planned_time_format}
\n" +" % endif\n" " Ticket Description:
\n" " ${object.ticket_id.description|safe}\n" " \n" @@ -34,11 +36,13 @@ msgstr "\n" " ${object.body|safe}\n" "
\n" " % if object.ticket_id.portal_access_key :\n" -" Ver Ticket Online: aquí
\n" +" Ver ticket online: aquí
\n" +" % endif\n" +" Número de ticket: ${object.ticket_id.ticket_number or object.ticket_id.id}
\n" +" Categoría del ticket: ${object.ticket_id.category.name or ''}
\n" +" % if object.ticket_id.planned_time_format :\n" +" Fecha planificada: ${object.ticket_id.planned_time_format}
\n" " % endif\n" -" Número de ticket: ${object.ticket_id.id}
\n" -" Categoría del ticket: ${object.ticket_id.category.name or ''}\n" -"
\n" " Descripción del ticket:
\n" " ${object.ticket_id.description|safe}\n" " \n" @@ -64,7 +68,7 @@ msgstr "\n" "
\n" " % endif\n" "\n" -"

Se requiere de aprobación antes de que podamos proceder con esta solicitudde soporte, por favor haga click en el link a continuación para aceptar

\n" +"

Se requiere de aprobación antes de que podamos proceder con esta solicitud de soporte, por favor haga click en el link a continuación para aceptar

\n" "
\n" "

Aceptar | No aceptar

\n" "\n" @@ -215,6 +219,37 @@ msgstr "\n" " \n" " " +#. module: website_support +#: model:mail.template,body_html:website_support.support_ticket_sla_alert +msgid "\n" +"

Dear _user_name_,

\n" +" %if object.sla_timer > 0:\n" +"

You have ${object.sla_timer_format} hours remaining for this ticket

\n" +" %endif\n" +" %if object.sla_timer < 0:\n" +"

The SLA is currently ${object.sla_timer_format} hours overdue

\n" +" %endif\n" +"

Person Name: ${object.person_name}

\n" +"

Category: ${object.category.name}

\n" +"

Subject: ${object.subject}

\n" +"

${object.description|safe}

\n" +" \n" +" " +msgstr "\n" +"

Estimado/a _user_name_,

\n" +" %if object.sla_timer > 0:\n" +"

Le quedan ${object.sla_timer_format} horas restantes para sete ticket

\n" +" %endif\n" +" %if object.sla_timer < 0:\n" +"

Su SLA se encuentra ${object.sla_timer_format} horas por encima del límite

\n" +" %endif\n" +"

Nombre de la persona: ${object.person_name}

\n" +"

Categoría: ${object.category.name}

\n" +"

Asunto: ${object.subject}

\n" +"

${object.description|safe}

\n" +" \n" +" " + #. module: website_support #: model:mail.template,body_html:website_support.new_support_ticket_category msgid "\n" @@ -316,6 +351,11 @@ msgstr "1 Estrella" msgid "2 Star" msgstr "2 Estrellas" +#. module: website_support +#: selection:website.support.sla.response,countdown_condition:0 +msgid "24 Hours" +msgstr "24 Hours" + #. module: website_support #: model:ir.ui.view,arch_db:website_support.help_page msgid "3 Star" @@ -394,11 +434,26 @@ msgstr "Añadir adjuntos" msgid "Additional Fields" msgstr "Campos adicionales" +#. module: website_support +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_alert_alert_time +msgid "Alert Time" +msgstr "Hora de alerta" + +#. module: website_support +#: model:ir.ui.view,arch_db:website_support.support_ticket_view_list +msgid "All" +msgstr "Todos" + #. module: website_support #: model:ir.model.fields,field_description:website_support.field_website_support_settings_allow_user_signup msgid "Allow User Signup" msgstr "Permitir registro de usuario" +#. module: website_support +#: model:ir.model.fields,field_description:website_support.field_website_support_settings_allow_website_priority_set +msgid "Allow Website Priority Set" +msgstr "Permitir set de prioridad de la página web" + #. module: website_support #: model:ir.ui.view,arch_db:website_support.website_support_settings_view_form msgid "Apply" @@ -425,7 +480,7 @@ msgstr "Mensaje de aprobación" #: model:website.support.ticket.approval,name:website_support.approval_rejected #: model:website.support.ticket.states,name:website_support.website_ticket_state_approval_rejected msgid "Approval Rejected" -msgstr "Aprobación rechazada" +msgstr "Approval Rejected" #. module: website_support #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_approve_url @@ -444,6 +499,7 @@ msgstr "Nombre de archivo adjunto" #. module: website_support #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_attachment +#: model:ir.ui.view,arch_db:website_support.website_support_ticket_view_form msgid "Attachments" msgstr "Adjuntos" @@ -466,7 +522,7 @@ msgstr "Volver al Inicio de sesión" #. module: website_support #: model:website.support.ticket.categories,name:website_support.website_support_billing_issues msgid "Billing Issues" -msgstr "Incidencias de facturación" +msgstr "Problemas de facturación" #. module: website_support #: model:ir.model.fields,field_description:website_support.field_email_template_preview_built_in @@ -474,6 +530,16 @@ msgstr "Incidencias de facturación" msgid "Built in" msgstr "Incorporado" +#. module: website_support +#: model:ir.model.fields,field_description:website_support.field_website_support_settings_business_hours_id +msgid "Business Hours" +msgstr "Horas laborales" + +#. module: website_support +#: selection:website.support.sla.response,countdown_condition:0 +msgid "Business Only" +msgstr "Solo laborales" + #. module: website_support #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_message_by #: model:ir.ui.view,arch_db:website_support.support_ticket_view_list @@ -511,6 +577,11 @@ msgstr "Categoría" msgid "Category Name" msgstr "Nombre de la categoría" +#. module: website_support +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_response_time_ids +msgid "Category Response Times (Working Hours)" +msgstr "Tiempo de respuesta de la categoría (Horas laborales)" + #. module: website_support #: model:ir.model.fields,field_description:website_support.field_res_users_cat_user_ids #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_categories_cat_user_ids @@ -636,6 +707,11 @@ msgstr "Historial de conversación" msgid "Count" msgstr "Cuenta" +#. module: website_support +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_response_countdown_condition +msgid "Countdown Condition" +msgstr "Condición de cuenta atrás" + #. module: website_support #: model:ir.ui.view,arch_db:website_support.support_help_pages msgid "Create Account" @@ -662,6 +738,11 @@ msgstr "Crear página de ayuda" msgid "Create a help page group" msgstr "Crear un grupo de páginas de ayuda" +#. module: website_support +#: model:ir.actions.act_window,help:website_support.website_support_sla_action +msgid "Create new SLA" +msgstr "Crear nuevo SLA" + #. module: website_support #: model:ir.actions.act_window,help:website_support.website_support_ticket_categories_action msgid "Create new category" @@ -697,6 +778,9 @@ msgstr "Se ha creado una cuenta a través de la web, no tiene acceso al portal ( #: model:ir.model.fields,field_description:website_support.field_website_support_help_page_create_uid #: model:ir.model.fields,field_description:website_support.field_website_support_help_page_feedback_create_uid #: model:ir.model.fields,field_description:website_support.field_website_support_settings_create_uid +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_alert_create_uid +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_create_uid +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_response_create_uid #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_approval_create_uid #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_categories_create_uid #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_close_create_uid @@ -722,6 +806,9 @@ msgstr "Creado por" #: model:ir.model.fields,field_description:website_support.field_website_support_help_page_create_date #: model:ir.model.fields,field_description:website_support.field_website_support_help_page_feedback_create_date #: model:ir.model.fields,field_description:website_support.field_website_support_settings_create_date +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_alert_create_date +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_create_date +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_response_create_date #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_approval_create_date #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_categories_create_date #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_close_create_date @@ -737,6 +824,13 @@ msgstr "Creado por" msgid "Created on" msgstr "Creado en" +#. module: website_support +#: model:ir.model.fields,help:website_support.field_website_support_settings_allow_website_priority_set +msgid "Cusomters can set the priority of a ticket when submitting via the website form\n" +"Partner Only = logged in user" +msgstr "Los clientes pueden establecer la prioridad de un ticket cuando lo den de alta desde la página web\n" +"Solo clientes = usuario registrado" + #. module: website_support #: selection:website.support.ticket.message,by:0 msgid "Customer" @@ -750,7 +844,7 @@ msgstr "Cerrado por cliente" #. module: website_support #: model:website.support.ticket.states,name:website_support.website_ticket_state_customer_replied msgid "Customer Replied" -msgstr "Contestación del cliente" +msgstr "Contestado por cliente" #. module: website_support #: model:ir.ui.menu,name:website_support.website_support_parent_menu @@ -779,8 +873,10 @@ msgid "Departments" msgstr "Departamentos" #. module: website_support +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_description #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_description #: model:ir.ui.view,arch_db:website_support.support_submit_ticket +#: model:ir.ui.view,arch_db:website_support.website_support_ticket_view_form msgid "Description" msgstr "Descripción" @@ -799,6 +895,9 @@ msgstr "URL de desaprobación" #: model:ir.model.fields,field_description:website_support.field_website_support_help_page_display_name #: model:ir.model.fields,field_description:website_support.field_website_support_help_page_feedback_display_name #: model:ir.model.fields,field_description:website_support.field_website_support_settings_display_name +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_alert_display_name +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_display_name +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_response_display_name #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_approval_display_name #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_categories_display_name #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_close_display_name @@ -818,9 +917,15 @@ msgstr "Nombre mostrado" #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_compose_email #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_email #: model:ir.ui.view,arch_db:website_support.support_submit_ticket +#: selection:website.support.sla.alert,type:0 msgid "Email" msgstr "Correo electrónico" +#. module: website_support +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_alert_ids +msgid "Email Alerts" +msgstr "Alertas por correo electrónico" + #. module: website_support #: model:ir.model.fields,field_description:website_support.field_website_support_settings_email_default_category_id msgid "Email Default Category" @@ -831,11 +936,21 @@ msgstr "Categoría por defecto de correo electrónico" msgid "Email Templates" msgstr "Plantillas de correo electrónico" +#. module: website_support +#: selection:website.support.settings,allow_website_priority_set:0 +msgid "Everyone" +msgstr "Todos" + #. module: website_support #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_extra_field_ids msgid "Extra Details" msgstr "Detalles extra" +#. module: website_support +#: model:ir.ui.view,arch_db:website_support.website_support_ticket_view_form +msgid "Extra Fields" +msgstr "Campos extra" + #. module: website_support #: model:ir.model.fields,field_description:website_support.field_website_support_help_page_feedback_ids #: model:ir.ui.view,arch_db:website_support.help_page @@ -867,6 +982,11 @@ msgstr "Texto de opinión" msgid "From" msgstr "De" +#. module: website_support +#: model:ir.model.fields,field_description:website_support.field_website_support_settings_google_recaptcha_active +msgid "Google reCAPTCHA Active" +msgstr "Google reCAPTCHA activo" + #. module: website_support #: model:ir.model.fields,field_description:website_support.field_website_support_help_page_group_id msgid "Group" @@ -911,14 +1031,17 @@ msgstr "Alto" #: model:ir.model.fields,field_description:website_support.field_website_support_help_page_feedback_id #: model:ir.model.fields,field_description:website_support.field_website_support_help_page_id #: model:ir.model.fields,field_description:website_support.field_website_support_settings_id -#: model:ir.model.fields,field_description:website_support.field_website_support_ticket_approval_id_6746 +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_alert_id +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_id +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_response_id +#: model:ir.model.fields,field_description:website_support.field_website_support_ticket_approval_id_7298 #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_categories_id #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_close_id #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_compose_id #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_field_id #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_id #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_message_id -#: model:ir.model.fields,field_description:website_support.field_website_support_ticket_priority_id_6816 +#: model:ir.model.fields,field_description:website_support.field_website_support_ticket_priority_id_7369 #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_states_id #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_subcategory_field_id #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_subcategory_id @@ -926,11 +1049,21 @@ msgstr "Alto" msgid "ID" msgstr "ID" +#. module: website_support +#: model:ir.model.fields,help:website_support.field_website_support_ticket_states_unattended +msgid "If ticked, tickets in this state will appear by default" +msgstr "Si se marca, los tickets de este estado aparecerán por defecto" + #. module: website_support #: model:ir.model.fields,help:website_support.field_website_support_ticket_unattended msgid "In 'Open' state or 'Customer Replied' state taken into consideration name changes" msgstr "En estado 'Abierto' o 'Contestación del cliente' se tendrán en cuenta los cambios de nombre" +#. module: website_support +#: model:ir.model.fields,help:website_support.field_website_support_ticket_sla_alert_ids +msgid "Keep record of SLA alerts sent so we do not resend them" +msgstr "Mantener registro de las alertas de SLA enviadas para no enviarlas de nuevo" + #. module: website_support #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_field_name #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_subcategory_field_name @@ -947,6 +1080,9 @@ msgstr "Descripción" #: model:ir.model.fields,field_description:website_support.field_website_support_help_page___last_update #: model:ir.model.fields,field_description:website_support.field_website_support_help_page_feedback___last_update #: model:ir.model.fields,field_description:website_support.field_website_support_settings___last_update +#: model:ir.model.fields,field_description:website_support.field_website_support_sla___last_update +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_alert___last_update +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_response___last_update #: model:ir.model.fields,field_description:website_support.field_website_support_ticket___last_update #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_approval___last_update #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_categories___last_update @@ -972,6 +1108,9 @@ msgstr "Última modificación en" #: model:ir.model.fields,field_description:website_support.field_website_support_help_page_feedback_write_uid #: model:ir.model.fields,field_description:website_support.field_website_support_help_page_write_uid #: model:ir.model.fields,field_description:website_support.field_website_support_settings_write_uid +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_alert_write_uid +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_response_write_uid +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_write_uid #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_approval_write_uid #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_categories_write_uid #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_close_write_uid @@ -997,6 +1136,9 @@ msgstr "Última actualización por" #: model:ir.model.fields,field_description:website_support.field_website_support_help_page_feedback_write_date #: model:ir.model.fields,field_description:website_support.field_website_support_help_page_write_date #: model:ir.model.fields,field_description:website_support.field_website_support_settings_write_date +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_alert_write_date +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_response_write_date +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_write_date #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_approval_write_date #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_categories_write_date #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_close_write_date @@ -1015,7 +1157,7 @@ msgstr "Última actualización en" #. module: website_support #: model:website.support.ticket.priority,name:website_support.low msgid "Low" -msgstr "Bajo" +msgstr "Baja" #. module: website_support #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_compose_template_id @@ -1077,6 +1219,7 @@ msgstr "Mis tickets" #. module: website_support #: model:ir.model.fields,field_description:website_support.field_website_support_department_name #: model:ir.model.fields,field_description:website_support.field_website_support_department_role_name +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_name #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_approval_name #: model:ir.ui.view,arch_db:website_support.support_submit_ticket msgid "Name" @@ -1109,15 +1252,10 @@ msgstr "Nuevo ticket de soporte para tu categoría" msgid "New Ticket Count" msgstr "Nuevo recuento de ticket" -#. module: website_support -#: model:ir.model.fields,field_description:website_support.field_res_company_next_support_ticket_number -msgid "Next Support Ticket Number" -msgstr "Siguiente número de ticket" - #. module: website_support #: model:website.support.ticket.approval,name:website_support.no_approval_required msgid "No Approval Required" -msgstr "No es necesaria aprobación" +msgstr "No se requiere aprobación" #. module: website_support #: model:ir.actions.act_window,help:website_support.website_support_ticket_tag_action @@ -1145,10 +1283,20 @@ msgstr "Normal" msgid "Number of Pages" msgstr "Número de páginas" +#. module: website_support +#: model:ir.model.fields,help:website_support.field_website_support_sla_alert_alert_time +msgid "Number of hours before or after SLA expiry to send alert" +msgstr "Número de horas para enviar alerta de SLA antes o después" + #. module: website_support #: model:website.support.ticket.states,name:website_support.website_ticket_state_open msgid "Open" -msgstr "Abierto" +msgstr "Abrir" + +#. module: website_support +#: model:ir.ui.view,arch_db:website_support.website_support_ticket_view_form +msgid "Open / Reply" +msgstr "Abrir / Responder" #. module: website_support #: model:ir.model.fields,field_description:website_support.field_website_support_help_page_name @@ -1170,17 +1318,32 @@ msgstr "Páginas" msgid "Parent Category" msgstr "Categoría padre" +#. module: website_support +#: model:ir.model.fields,field_description:website_support.field_website_support_ticket_parent_company_id +msgid "Parent Company" +msgstr "Compañía matriz" + #. module: website_support #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_compose_partner_id #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_partner_id msgid "Partner" msgstr "Empresa" +#. module: website_support +#: selection:website.support.settings,allow_website_priority_set:0 +msgid "Partner Only" +msgstr "Solo cliente" + #. module: website_support #: model:ir.ui.view,arch_db:website_support.account_create msgid "Password" msgstr "Contraseña" +#. module: website_support +#: model:ir.ui.view,arch_db:website_support.website_support_ticket_view_form +msgid "Pause SLA" +msgstr "Pausar SLA" + #. module: website_support #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_person_name msgid "Person Name" @@ -1192,6 +1355,11 @@ msgstr "Nombre de la persona" msgid "Planned Time" msgstr "Tiempo planificado" +#. module: website_support +#: model:ir.model.fields,field_description:website_support.field_website_support_ticket_planned_time_format +msgid "Planned Time Format" +msgstr "Formato de hora planificada" + #. module: website_support #: model:ir.ui.view,arch_db:website_support.support_ticket_survey_page msgid "Please give us feedback on our support service" @@ -1209,6 +1377,7 @@ msgstr "Prioridades" #. module: website_support #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_priority_id +#: model:ir.ui.view,arch_db:website_support.support_submit_ticket msgid "Priority" msgstr "Prioridad" @@ -1258,11 +1427,66 @@ msgstr "Informes" msgid "Request Approval" msgstr "Solicitar aprobación" +#. module: website_support +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_response_response_time +msgid "Response Time" +msgstr "Tiempo de respuesta" + +#. module: website_support +#: model:ir.ui.view,arch_db:website_support.website_support_ticket_view_form +msgid "Resume SLA" +msgstr "Reanudar SLA" + #. module: website_support #: model:ir.model.fields,field_description:website_support.field_website_support_department_contact_role msgid "Role" msgstr "Rol" +#. module: website_support +#: model:ir.model.fields,field_description:website_support.field_res_partner_sla_id +#: model:ir.model.fields,field_description:website_support.field_res_users_sla_id +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_alert_vsa_id +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_response_vsa_id +#: model:ir.model.fields,field_description:website_support.field_website_support_ticket_sla_id +#: model:ir.ui.view,arch_db:website_support.website_support_ticket_view_form +msgid "SLA" +msgstr "SLA" + +#. module: website_support +#: model:ir.model.fields,field_description:website_support.field_website_support_ticket_sla_active +msgid "SLA Active" +msgstr "SLA activo" + +#. module: website_support +#: model:mail.template,subject:website_support.support_ticket_sla_alert +msgid "SLA Alert" +msgstr "Alerta del SLA" + +#. module: website_support +#: model:ir.model.fields,field_description:website_support.field_website_support_ticket_sla_alert_ids +msgid "SLA Alerts" +msgstr "Alertas del SLA" + +#. module: website_support +#: model:ir.model.fields,field_description:website_support.field_website_support_ticket_sla_response_category_id +msgid "SLA Response Category" +msgstr "Categoría de respuesta del SLA" + +#. module: website_support +#: model:ir.model.fields,field_description:website_support.field_website_support_ticket_sla_timer +msgid "SLA Time Remaining" +msgstr "Tiempo restante del SLA" + +#. module: website_support +#: model:ir.model.fields,field_description:website_support.field_website_support_ticket_sla_timer_format +msgid "SLA Timer Format" +msgstr "Formato del temporizador del SLA" + +#. module: website_support +#: model:ir.ui.menu,name:website_support.website_support_sla_menu +msgid "SLA's" +msgstr "SLA's" + #. module: website_support #: model:ir.ui.view,arch_db:website_support.support_help_pages msgid "Search" @@ -1294,6 +1518,7 @@ msgid "Sequence" msgstr "Secuencia" #. module: website_support +#: model:ir.ui.menu,name:website_support.website_support_config_parent_menu #: model:ir.ui.menu,name:website_support.website_support_settings_menu msgid "Settings" msgstr "Ajustes" @@ -1316,7 +1541,7 @@ msgstr "Cerrado por los operarios" #. module: website_support #: model:website.support.ticket.states,name:website_support.website_ticket_state_staff_replied msgid "Staff Replied" -msgstr "Contestado por los operarios" +msgstr "Respondido por los operarios" #. module: website_support #: model:ir.model.fields,field_description:website_support.field_website_support_settings_staff_reply_email_template_id @@ -1332,7 +1557,7 @@ msgstr "Estado" #. module: website_support #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_states_name msgid "State Name" -msgstr "Nombre provincia" +msgstr "Nombre estado" #. module: website_support #: model:ir.ui.menu,name:website_support.website_support_ticket_states_menu @@ -1426,6 +1651,11 @@ msgstr "Correo electrónico de soporte" msgid "Support Rating" msgstr "Puntuación de soporte" +#. module: website_support +#: model:ir.actions.act_window,name:website_support.website_support_sla_action +msgid "Support SLA" +msgstr "SLA del soporte" + #. module: website_support #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_approval_wst_id #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_field_wst_id @@ -1494,7 +1724,6 @@ msgstr "Etiquetas del ticket de soporte" #. module: website_support #: model:ir.actions.act_window,name:website_support.website_support_ticket_action #: model:ir.actions.act_window,name:website_support.website_support_ticket_action_partner -#: model:ir.ui.menu,name:website_support.website_support_config_parent_menu #: model:ir.ui.menu,name:website_support.website_support_ticket_menu #: model:ir.ui.view,arch_db:website_support.view_partner_form_inherit_website_module msgid "Support Tickets" @@ -1537,6 +1766,16 @@ msgstr "Gracias" msgid "Thank you for you feedback about our support" msgstr "Gracias por la opinión sobre nuestro soporte" +#. module: website_support +#: model:ir.model.fields,help:website_support.field_website_support_ticket_states_mail_template_id +msgid "The mail message that the customer gets when the state changes" +msgstr "El mensaje por correo electrónico que el cliente recibe cuando el estado cambia" + +#. module: website_support +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_response_category_id +msgid "Ticket Category" +msgstr "Categoría del ticket" + #. module: website_support #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_ticket_color msgid "Ticket Color" @@ -1560,11 +1799,6 @@ msgstr "ID de ticket" msgid "Ticket Number" msgstr "Número de ticket" -#. module: website_support -#: model:ir.model.fields,field_description:website_support.field_website_support_ticket_ticket_number_display -msgid "Ticket Number Display" -msgstr "Número de ticket a mostrar" - #. module: website_support #: model:ir.model.fields,field_description:website_support.field_res_partner_support_ticket_ids #: model:ir.model.fields,field_description:website_support.field_res_users_support_ticket_ids @@ -1582,6 +1816,7 @@ msgid "Total Support Tickets:" msgstr "Total de tickets de soporte:" #. module: website_support +#: model:ir.model.fields,field_description:website_support.field_website_support_sla_alert_type #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_subcategory_field_type msgid "Type" msgstr "Tipo" @@ -1592,6 +1827,7 @@ msgid "URL" msgstr "URL" #. module: website_support +#: model:ir.model.fields,field_description:website_support.field_website_support_ticket_states_unattended #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_unattended msgid "Unattended" msgstr "Desatendidos" @@ -1601,6 +1837,13 @@ msgstr "Desatendidos" msgid "Unattended Tickets" msgstr "Tickets desatendidos" +#. module: website_support +#: model:ir.actions.server,name:website_support.update_sla_timer_ir_actions_server +#: model:ir.cron,cron_name:website_support.update_sla_timer +#: model:ir.cron,name:website_support.update_sla_timer +msgid "Update SLA Timer" +msgstr "Actualizar temporizador del SLA" + #. module: website_support #: model:website.support.ticket.priority,name:website_support.urgent msgid "Urgent" @@ -1698,6 +1941,21 @@ msgstr "Su ticket de soporte ha sido actualizado" msgid "e.g. John Doe" msgstr "Por ejemplo, John Smith" +#. module: website_support +#: model:ir.ui.view,arch_db:website_support.support_submit_ticket +msgid "reCAPTCHA" +msgstr "reCAPTCHA" + +#. module: website_support +#: model:ir.model.fields,field_description:website_support.field_website_support_settings_google_captcha_client_key +msgid "reCAPTCHA Client Key" +msgstr "reCAPTCHA clave del cliente" + +#. module: website_support +#: model:ir.model.fields,field_description:website_support.field_website_support_settings_google_captcha_secret_key +msgid "reCAPTCHA Secret Key" +msgstr "reCAPTCHA clave secreta" + #. module: website_support #: model:ir.model,name:website_support.model_website_support_department msgid "website.support.department" @@ -1743,6 +2001,21 @@ msgstr "website.support.help.page.feedback" msgid "website.support.settings" msgstr "website.support.settings" +#. module: website_support +#: model:ir.model,name:website_support.model_website_support_sla +msgid "website.support.sla" +msgstr "website.support.sla" + +#. module: website_support +#: model:ir.model,name:website_support.model_website_support_sla_alert +msgid "website.support.sla.alert" +msgstr "website.support.sla.alert" + +#. module: website_support +#: model:ir.model,name:website_support.model_website_support_sla_response +msgid "website.support.sla.response" +msgstr "website.support.sla.response" + #. module: website_support #: model:ir.model,name:website_support.model_website_support_ticket_approval msgid "website.support.ticket.approval" diff --git a/website_support/models/website_support_ticket.py b/website_support/models/website_support_ticket.py index 8d3db8dfe..da436ecd0 100644 --- a/website_support/models/website_support_ticket.py +++ b/website_support/models/website_support_ticket.py @@ -2,14 +2,15 @@ from openerp import api, fields, models from openerp import tools from random import randint -import math import datetime from odoo.tools import DEFAULT_SERVER_DATETIME_FORMAT, DEFAULT_SERVER_DATE_FORMAT -import logging -_logger = logging.getLogger(__name__) from odoo import SUPERUSER_ID from dateutil import tz +import logging +_logger = logging.getLogger(__name__) + + class WebsiteSupportTicket(models.Model): _name = "website.support.ticket" @@ -17,13 +18,14 @@ class WebsiteSupportTicket(models.Model): _order = "create_date desc" _rec_name = "subject" _inherit = ['mail.thread'] + _translate = True @api.model def _read_group_state(self, states, domain, order): """ Read group customization in order to display all the states in the kanban view, even if they are empty """ - + staff_replied_state = self.env['ir.model.data'].get_object('website_support', 'website_ticket_state_staff_replied') customer_replied_state = self.env['ir.model.data'].get_object('website_support', @@ -31,12 +33,12 @@ def _read_group_state(self, states, domain, order): customer_closed = self.env['ir.model.data'].get_object('website_support', 'website_ticket_state_customer_closed') staff_closed = self.env['ir.model.data'].get_object('website_support', 'website_ticket_state_staff_closed') - + exclude_states = [staff_replied_state.id, customer_replied_state.id, customer_closed.id, staff_closed.id] - - #state_ids = states._search([('id','not in',exclude_states)], order=order, access_rights_uid=SUPERUSER_ID) + + # state_ids = states._search([('id','not in',exclude_states)], order=order, access_rights_uid=SUPERUSER_ID) state_ids = states._search([], order=order, access_rights_uid=SUPERUSER_ID) - + return states.browse(state_ids) def _default_state(self): @@ -102,18 +104,23 @@ def _default_approval_id(self): @api.one @api.depends('sla_timer') def _compute_sla_timer_format(self): - #Display negative hours in a positive format + # Display negative hours in a positive format self.sla_timer_format = '{0:02.0f}:{1:02.0f}'.format(*divmod(abs(self.sla_timer) * 60, 60)) @api.model def update_sla_timer(self): - - #Subtract 1 minute from the timer of all active SLA tickets, this includes going into negative - for active_sla_ticket in self.env['website.support.ticket'].search([('sla_active','=',True), ('sla_id','!=',False), ('sla_response_category_id','!=',False)]): - #If we only countdown during busines hours + # Subtract 1 minute from the timer of all active SLA tickets, this includes going into negative + for active_sla_ticket in self.env['website.support.ticket'].search([ + ('sla_active','=',True), + ('sla_id','!=',False), + ('sla_response_category_id','!=',False) + ]): + + # If we only countdown during busines hours if active_sla_ticket.sla_response_category_id.countdown_condition == 'business_only': - #Check if the current time aligns with a timeslot in the settings, setting has to be set for business_only or UserError occurs + # Check if the current time aligns with a timeslot in the settings, + # setting has to be set for business_only or UserError occurs setting_business_hours_id = self.env['ir.default'].get('website.support.settings', 'business_hours_id') current_hour = datetime.datetime.now().hour current_minute = datetime.datetime.now().minute / 60 @@ -121,7 +128,7 @@ def update_sla_timer(self): day_of_week = datetime.datetime.now().weekday() during_work_hours = self.env['resource.calendar.attendance'].search([('calendar_id','=', setting_business_hours_id), ('dayofweek','=',day_of_week), ('hour_from','<',current_hour_float), ('hour_to','>',current_hour_float)]) - #If holiday module is installed take into consideration + # If holiday module is installed take into consideration holiday_module = self.env['ir.module.module'].search([('name','=','hr_public_holidays'), ('state','=','installed')]) if holiday_module: holiday_today = self.env['hr.holidays.public.line'].search([('date','=',datetime.datetime.now().date())]) @@ -165,11 +172,11 @@ def resume_sla(self): @api.one @api.depends('planned_time') def _compute_planned_time_format(self): - + #If it is assigned to the partner, use the partners timezone and date formatting if self.planned_time and self.partner_id and self.partner_id.lang: partner_language = self.env['res.lang'].search([('code','=', self.partner_id.lang)])[0] - + my_planned_time = datetime.datetime.strptime(self.planned_time, DEFAULT_SERVER_DATETIME_FORMAT) #If we have timezone information translate the planned date to local time otherwise UTC @@ -179,10 +186,10 @@ def _compute_planned_time_format(self): self.planned_time_format = local_time.strftime(partner_language.date_format + " " + partner_language.time_format) + " " + self.partner_id.tz else: self.planned_time_format = my_planned_time.strftime(partner_language.date_format + " " + partner_language.time_format) + " UTC" - + else: self.planned_time_format = self.planned_time - + @api.one def _compute_approve_url(self): self.approve_url = "/support/approve/" + str(self.id) @@ -194,12 +201,12 @@ def _compute_disapprove_url(self): @api.onchange('sub_category_id') def _onchange_sub_category_id(self): if self.sub_category_id: - + add_extra_fields = [] - + for extra_field in self.sub_category_id.additional_field_ids: add_extra_fields.append((0, 0, {'name': extra_field.name})) - + self.update({ 'extra_field_ids': add_extra_fields, }) @@ -290,7 +297,7 @@ def request_approval(self): 'context': {'default_ticket_id': self.id, 'default_email': self.email, 'default_subject': self.subject, 'default_approval': True, 'default_body': request_message}, 'target': 'new' } - + @api.multi def open_close_ticket_wizard(self): @@ -439,10 +446,10 @@ class WebsiteSupportTicketSubCategories(models.Model): _order = "sequence asc" sequence = fields.Integer(string="Sequence") - name = fields.Char(required=True, translate=True, string='Sub Category Name') + name = fields.Char(required=True, translate=True, string='Sub Category Name') parent_category_id = fields.Many2one('website.support.ticket.categories', required=True, string="Parent Category") additional_field_ids = fields.One2many('website.support.ticket.subcategory.field', 'wsts_id', string="Additional Fields") - + @api.model def create(self, values): sequence=self.env['ir.sequence'].next_by_code('website.support.ticket.subcategory') From 5a06160ae4907c7e998341808ab0b7bd124a5a93 Mon Sep 17 00:00:00 2001 From: Aitor Bouzas Date: Fri, 20 Jul 2018 11:07:02 +0200 Subject: [PATCH 3/7] More translations --- website_support/i18n/es.po | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website_support/i18n/es.po b/website_support/i18n/es.po index f8c8c878b..5a73b1aee 100644 --- a/website_support/i18n/es.po +++ b/website_support/i18n/es.po @@ -480,7 +480,7 @@ msgstr "Mensaje de aprobación" #: model:website.support.ticket.approval,name:website_support.approval_rejected #: model:website.support.ticket.states,name:website_support.website_ticket_state_approval_rejected msgid "Approval Rejected" -msgstr "Approval Rejected" +msgstr "Aprobación rechazada" #. module: website_support #: model:ir.model.fields,field_description:website_support.field_website_support_ticket_approve_url @@ -1291,7 +1291,7 @@ msgstr "Número de horas para enviar alerta de SLA antes o después" #. module: website_support #: model:website.support.ticket.states,name:website_support.website_ticket_state_open msgid "Open" -msgstr "Abrir" +msgstr "Abierto" #. module: website_support #: model:ir.ui.view,arch_db:website_support.website_support_ticket_view_form From b98a3bf4dfe9989c6d7041c7e62d4c12e70c57e1 Mon Sep 17 00:00:00 2001 From: Aitor Bouzas Date: Fri, 20 Jul 2018 12:04:52 +0200 Subject: [PATCH 4/7] Timezone in website view --- website_support/views/website_support_ticket_templates.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website_support/views/website_support_ticket_templates.xml b/website_support/views/website_support_ticket_templates.xml index 1c7074c9b..327f173cb 100644 --- a/website_support/views/website_support_ticket_templates.xml +++ b/website_support/views/website_support_ticket_templates.xml @@ -142,7 +142,7 @@ - +
BySubjectCategoryStateCreate Date
@@ -615,4 +615,4 @@ - \ No newline at end of file + From a711ae4d2db35bfc8eda89ada799539ee4b2aa9c Mon Sep 17 00:00:00 2001 From: Aitor Bouzas Date: Fri, 20 Jul 2018 12:09:49 +0200 Subject: [PATCH 5/7] Timezone in website view --- website_support/views/website_support_ticket_templates.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website_support/views/website_support_ticket_templates.xml b/website_support/views/website_support_ticket_templates.xml index 327f173cb..414733b17 100644 --- a/website_support/views/website_support_ticket_templates.xml +++ b/website_support/views/website_support_ticket_templates.xml @@ -142,7 +142,7 @@ - +
BySubjectCategoryStateCreate Date
From 249d2a079cc1827849259b85590cee9b1e4057a0 Mon Sep 17 00:00:00 2001 From: Aitor Bouzas Date: Mon, 23 Jul 2018 11:41:52 +0200 Subject: [PATCH 6/7] Adding migration script --- website_support/__manifest__.py | 2 +- .../data/website_support_sequence.xml | 5 +++-- .../migrations/11.0.1.2.14/post-migration.py | 16 ++++++++++++++++ .../migrations/11.0.1.2.14/pre-migrate.py | 2 ++ 4 files changed, 22 insertions(+), 3 deletions(-) create mode 100644 website_support/migrations/11.0.1.2.14/post-migration.py create mode 100644 website_support/migrations/11.0.1.2.14/pre-migrate.py diff --git a/website_support/__manifest__.py b/website_support/__manifest__.py index 11d09d682..1a22a2252 100644 --- a/website_support/__manifest__.py +++ b/website_support/__manifest__.py @@ -1,6 +1,6 @@ { 'name': "Website Help Desk / Support Ticket", - 'version': "1.2.13", + 'version': "1.2.14", 'author': "Sythil Tech", 'category': "Tools", 'support': "steven@sythiltech.com.au", diff --git a/website_support/data/website_support_sequence.xml b/website_support/data/website_support_sequence.xml index 96f44f871..7cf170aaf 100644 --- a/website_support/data/website_support_sequence.xml +++ b/website_support/data/website_support_sequence.xml @@ -4,8 +4,9 @@ website.support.ticket website.support.ticket - TICKET/ - 3 + + no_gap + 0 1 1 diff --git a/website_support/migrations/11.0.1.2.14/post-migration.py b/website_support/migrations/11.0.1.2.14/post-migration.py new file mode 100644 index 000000000..fd5870cd9 --- /dev/null +++ b/website_support/migrations/11.0.1.2.14/post-migration.py @@ -0,0 +1,16 @@ +def migrate(cr, version): + cr.execute('SELECT id, ticket_number_old FROM website_support_ticket') + # RUN THROUGH ALL TICKETS TO CONVERT NUMBERS INTO STRINGS + for record_id, old_number in cr.fetchall(): + new_number = str(old_number) + if new_number: + cr.execute('UPDATE website_support_ticket SET ticket_number=%s WHERE id=%s', + (new_number, record_id)) + + # SELECT MAX TICKET NUMBER TO UPDATE SEQUENCE + cr.execute('SELECT max(ticket_number_old) FROM website_support_ticket') + max_number = cr.fetchone() + cr.execute("UPDATE ir_sequence SET number_next=%s WHERE code='website.support.ticket'", (max_number+1, )) + + # DROP AUXILIAR COLUMN + cr.execute("ALTER TABLE website_support_ticket DROP COLUMN ticket_number_old") diff --git a/website_support/migrations/11.0.1.2.14/pre-migrate.py b/website_support/migrations/11.0.1.2.14/pre-migrate.py new file mode 100644 index 000000000..1f6e0fa2a --- /dev/null +++ b/website_support/migrations/11.0.1.2.14/pre-migrate.py @@ -0,0 +1,2 @@ +def migrate(cr, version): + cr.execute('ALTER TABLE website_support_ticket RENAME COLUMN ticket_number TO ticket_number_old') From ddfaa9711d11caa9fae17a5dfbb685b3d33ccdd8 Mon Sep 17 00:00:00 2001 From: Aitor Bouzas Date: Mon, 23 Jul 2018 12:01:55 +0200 Subject: [PATCH 7/7] Views improvement, added author --- website_support/__manifest__.py | 2 +- website_support/views/menus.xml | 5 +- .../views/website_support_ticket_views.xml | 348 +++++++++--------- 3 files changed, 182 insertions(+), 173 deletions(-) diff --git a/website_support/__manifest__.py b/website_support/__manifest__.py index 1a22a2252..6a7949987 100644 --- a/website_support/__manifest__.py +++ b/website_support/__manifest__.py @@ -1,7 +1,7 @@ { 'name': "Website Help Desk / Support Ticket", 'version': "1.2.14", - 'author': "Sythil Tech", + 'author': "Sythil Tech, Adaptive City", 'category': "Tools", 'support': "steven@sythiltech.com.au", 'summary': "A helpdesk / support ticket system for your website", diff --git a/website_support/views/menus.xml b/website_support/views/menus.xml index 8f1c4910e..984dafb86 100644 --- a/website_support/views/menus.xml +++ b/website_support/views/menus.xml @@ -2,10 +2,10 @@ - + - + @@ -16,6 +16,7 @@ + \ No newline at end of file diff --git a/website_support/views/website_support_ticket_views.xml b/website_support/views/website_support_ticket_views.xml index 53f56ad8f..a732c21b2 100644 --- a/website_support/views/website_support_ticket_views.xml +++ b/website_support/views/website_support_ticket_views.xml @@ -2,181 +2,189 @@ - - website.support.ticket.form.view - website.support.ticket - -
-
-
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- - - -
-
-
-
+ + website.support.ticket.form.view + website.support.ticket + +
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+ + + +
+
+
+
- - website.support.ticket.kanban.view - website.support.ticket - - - - - - - - - -
-
-
- -
    -
  • -
  • -
  • -
  • -
- -
- - - - - - - - website.support.ticket.form.search - website.support.ticket - - - - - - - - - - - - + + website.support.ticket.kanban.view + website.support.ticket + + + + + + + + + +
+
+
+ +
    +
  • +
  • +
  • +
  • +
+ +
+ + + + + - - website.support.ticket.form.graph - website.support.ticket - - - - - - + + website.support.ticket.form.search + website.support.ticket + + + + + + + + + + + + - - website.support.ticket tree view - website.support.ticket - - - - - - - - - - - - - - - - - + + website.support.ticket.form.graph + website.support.ticket + + + + + + - - Support Tickets - website.support.ticket - tree,kanban,form,graph - -

- No Support Tickets found -

-
-
+ + website.support.ticket tree view + website.support.ticket + + + + + + + + + + + + + + + + + - - Support Tickets - website.support.ticket - tree,kanban,form,graph - {"search_default_unattended_tickets":1, 'auto_refresh': 1, 'default_create_user_id': uid} - -

- No Support Tickets found -

-
-
+ + Support Tickets + website.support.ticket + tree,kanban,form,graph + +

+ No Support Tickets found +

+
+
+ + + Support Tickets + website.support.ticket + tree,kanban,form,graph + {"search_default_unattended_tickets":1, 'auto_refresh': 1, 'default_create_user_id': uid} + +

+ No Support Tickets found +

+
+
\ No newline at end of file