diff options
| author | stephanchrst <stephanchrst@gmail.com> | 2022-05-10 17:14:58 +0700 |
|---|---|---|
| committer | stephanchrst <stephanchrst@gmail.com> | 2022-05-10 17:14:58 +0700 |
| commit | 1ca3b3df3421961caec3b747a364071c80f5c7da (patch) | |
| tree | 6778a1f0f3f9b4c6e26d6d87ccde16e24da6c9d6 /sh_helpdesk | |
| parent | b57188be371d36d96caac4b8d65a40745c0e972c (diff) | |
initial commit
Diffstat (limited to 'sh_helpdesk')
254 files changed, 22658 insertions, 0 deletions
diff --git a/sh_helpdesk/README.md b/sh_helpdesk/README.md new file mode 100644 index 0000000..a8da753 --- /dev/null +++ b/sh_helpdesk/README.md @@ -0,0 +1,25 @@ +About +============ +Are you looking for a fully flexible and customizable helpdesk in odoo? Our this apps almost contain everything you need for Service Desk, Technical Support Team, Issue Ticket System which include service request to be managed in Odoo backend. The support ticket will send by email to the customer and admin. Customer can view their ticket from the website portal and easily see the stage of the reported ticket. This desk is fully customizable clean and flexible. + +Installation +============ +1) Copy module files to addon folder. +2) Restart odoo service (sudo service odoo-server restart). +3) Go to your odoo instance and open apps (make sure to activate debug mode). +4) click on update app list. +5) search module name and hit install button. + +Any Problem with module? +===================================== +Please create your ticket here https://softhealer.com/support + +Softhealer Technologies Doubt/Inquiry/Sales/Customization Team +===================================== +Skype: live:softhealertechnologies +What's app: +917984575681 +E-Mail: support@softhealer.com +Website: https://softhealer.com + + + diff --git a/sh_helpdesk/__init__.py b/sh_helpdesk/__init__.py new file mode 100644 index 0000000..ae6b881 --- /dev/null +++ b/sh_helpdesk/__init__.py @@ -0,0 +1,6 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. + +from . import models +from . import controllers +from . import wizard diff --git a/sh_helpdesk/__manifest__.py b/sh_helpdesk/__manifest__.py new file mode 100644 index 0000000..dc9c20a --- /dev/null +++ b/sh_helpdesk/__manifest__.py @@ -0,0 +1,78 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. +{ + "name": + "Helpdesk", + "author": + "Softhealer Technologies", + "website": + "http://www.softhealer.com", + "support": + "support@softhealer.com", + "category": + "Discuss", + "license": + "OPL-1", + "summary": + "Flexible HelpDesk Module, Customizable Help Desk App, Service Desk, HelpDesk With Stages, Help Desk Ticket Management, Helpdesk Email Templates, Helpdesk Chatter, Helpdesk Multi User,Help Desk Multi User Odoo", + "description": + """Are you looking for a fully flexible and customizable helpdesk in odoo? Our this apps almost contain everything you need for Service Desk, Technical Support Team, Issue Ticket System which include service request to be managed in Odoo backend. The support ticket will send by email to the customer and admin. Customer can view their ticket from the website portal and easily see the stage of the reported ticket. This desk is fully customizable clean and flexible. """, + "version": + "14.0.14", + "depends": [ + "mail", + "portal", + "product", + "resource", + ], + "data": [ + "security/sh_helpdesk_security.xml", + "security/send_mail_security.xml", + "security/ir.model.access.csv", + "data/helpdesk_email_data.xml", + "data/helpdesk_data.xml", + "data/helpdesk_cron_data.xml", + "data/helpdesk_stage_data.xml", + "views/helpdesk_menu.xml", + "views/helpdesk_sla_policies.xml", + "views/helpdesk_alarm.xml", + "data/helpdesk_reminder_cron.xml", + "data/helpdesk_reminder_mail_template.xml", + "views/helpdesk_team_view.xml", + "views/helpdesk_ticket_type_view.xml", + "views/helpdesk_subject_type_view.xml", + "views/helpdesk_tags_view.xml", + "views/helpdesk_stages_view.xml", + "views/helpdesk_category_view.xml", + "views/helpdesk_subcategory_view.xml", + "views/helpdesk_priority_view.xml", + "views/helpdesk_config_settings_view.xml", + "views/helpdesk_ticket_view.xml", + "views/helpdesk_assets.xml", + "views/sh_report_helpdesk_ticket_template.xml", + "views/sh_helpdeks_report_portal.xml", + "views/report_views.xml", + "views/sh_ticket_feedback_template.xml", + "views/ticket_dashboard_view.xml", + "views/ticket_dashboard_templates.xml", + "views/res_users.xml", + "views/helpdesk_ticket_multi_action_view.xml", + "views/helpdesk_ticket_update_wizard_view.xml", + "views/helpdesk_ticket_portal_template.xml", + "views/send_mail_quick_reply.xml", + "wizard/mail_compose_view.xml", + ], + "images": [ + 'static/description/background.png', + ], + "application": + True, + "auto_install": + False, + "installable": + True, + "price": + "40", + "currency": + "EUR" +} diff --git a/sh_helpdesk/controllers/__init__.py b/sh_helpdesk/controllers/__init__.py new file mode 100644 index 0000000..5648a73 --- /dev/null +++ b/sh_helpdesk/controllers/__init__.py @@ -0,0 +1,5 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. + +from . import main +from . import portal diff --git a/sh_helpdesk/controllers/main.py b/sh_helpdesk/controllers/main.py new file mode 100644 index 0000000..e9a50b9 --- /dev/null +++ b/sh_helpdesk/controllers/main.py @@ -0,0 +1,644 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. + +from odoo import http +import json +from datetime import datetime +from dateutil.relativedelta import relativedelta +from odoo.tools import DEFAULT_SERVER_DATE_FORMAT +from odoo.exceptions import AccessError, MissingError, UserError +from odoo.http import request, content_disposition +import re + +class DownloadReport(http.Controller): + + def _document_check_access(self, model_name, document_id, access_token=None): + document = request.env[model_name].browse([document_id]) + document_sudo = document.sudo().exists() + if not document_sudo: + raise MissingError(_("This document does not exist.")) + if access_token and document_sudo.report_token and access_token == document_sudo.report_token: + return document_sudo + else: + raise AccessError( + _("Sorry, you are not allowed to access this document.")) + + def _show_report(self, model, report_type, report_ref, download=False): + if report_type not in ('html', 'pdf', 'text'): + raise UserError(_("Invalid report type: %s", report_type)) + + report_sudo = request.env.ref(report_ref).sudo() + + if not isinstance(report_sudo, type(request.env['ir.actions.report'])): + raise UserError( + _("%s is not the reference of a report", report_ref)) + + method_name = '_render_qweb_%s' % (report_type) + report = getattr(report_sudo, method_name)( + [model.id], data={'report_type': report_type})[0] + reporthttpheaders = [ + ('Content-Type', 'application/pdf' if report_type == 'pdf' else 'text/html'), + ('Content-Length', len(report)), + ] + if report_type == 'pdf' and download: + filename = "%s.pdf" % ( + re.sub('\W+', '-', model._get_report_base_filename())) + reporthttpheaders.append( + ('Content-Disposition', content_disposition(filename))) + return request.make_response(report, headers=reporthttpheaders) + + @http.route(['/download/ht/<int:ticket_id>'], type='http', auth="public", website=True) + def download_ticket(self, ticket_id, report_type=None, access_token=None, message=False, download=False, **kw): + try: + ticket_sudo = self._document_check_access( + 'helpdesk.ticket', ticket_id, access_token=access_token) + except (AccessError, MissingError): + return '<br/><br/><center><h1><b>Oops Invalid URL! Please check URL and try again!</b></h1></center>' + report_type = 'pdf' + download = True + return self._show_report(model=ticket_sudo, report_type=report_type, report_ref='sh_helpdesk.action_report_helpdesk_ticket', download=download) + + +class HelpdeskTicketFeedbackController(http.Controller): + + @http.route('/ticket/feedback/<ticket_id>', type="http", auth="public", website=True) + def helpdesk_ticket_feedback(self, ticket_id, **kw): + return http.request.render('sh_helpdesk.helpdesk_ticket_feedback_page', {'ticket': ticket_id}) + + @http.route('/helpdesk/ticket/feedback/<ticket_id>', type="http", auth="public", website=True, csrf=False) + def helpdesk_ticket_feedback_thanks(self, ticket_id, **kw): + dic = {} + if kw.get('smiley') != '': + dic.update({ + 'priority_new': kw.get('smiley'), + }) + if kw.get('comment') != '': + dic.update({ + 'customer_comment': kw.get('comment'), + }) + ticket = request.env['helpdesk.ticket'].sudo().search( + [('id', '=', int(ticket_id))], limit=1) + if ticket: + ticket.sudo().write(dic) + return http.request.render('sh_helpdesk.ticket_feedback_thank_you', {}) + + @http.route('/get_team', type='http', auth="public") + def team_data(self): + team_obj = request.env['helpdesk.team'].sudo().search([]) + res_list = {} + for rec in team_obj: + res = {} + res.update({'name': rec.name}) + res_list.update({rec.id: res}) + return json.dumps(res_list) + + @http.route('/get_team_leader', type='http', auth="public") + def get_team_leader_data(self): + team_heads = request.env['helpdesk.team'].sudo().search([]).mapped('team_head') + res_list = {} + if team_heads: + for rec in team_heads: + res = {} + res.update({'name': rec.name}) + res_list.update({rec.id: res}) + return json.dumps(res_list) + + @http.route([ + '/get-leader-user', + ], type='http', auth="public", method="post", website=True, csrf=False) + def get_data(self, **post): + dic = {} + if int(post.get('team_leader')) != 0: + team_ids = request.env['helpdesk.team'].sudo().search( + [('team_head', '=', int(post.get('team_leader')))]) + for rec in team_ids: + res = {} + res.update({'name': rec.name}) + dic.update({rec.id: res}) + return json.dumps(dic) + + @http.route([ + '/user-group', + ], type='http', auth="public", method="post", website=True, csrf=False) + def get_user_group(self, **post): + dic = {} + support_user = request.env.user.has_group( + 'sh_helpdesk.helpdesk_group_user') + team_leader = request.env.user.has_group( + 'sh_helpdesk.helpdesk_group_team_leader') + manager = request.env.user.has_group( + 'sh_helpdesk.helpdesk_group_manager') + if support_user and not team_leader and not manager: + dic.update({ + 'user': '1' + }) + elif support_user and team_leader and not manager: + dic.update({ + 'leader': '1' + }) + elif support_user and team_leader and manager: + dic.update({ + 'manager': '1' + }) + return json.dumps(dic) + + @http.route([ + '/get-user', + ], type='http', auth="public", method="post", website=True, csrf=False) + def get_user(self, **post): + dic = {} + if int(post.get('team')) != 0: + team_id = request.env['helpdesk.team'].sudo().search( + [('id', '=', int(post.get('team')))]) + for rec in team_id.team_members: + res = {} + res.update({'name': rec.name}) + dic.update({rec.id: res}) + return json.dumps(dic) + + @http.route( + '/get-ticket-counter-data', type='http', auth="public") + def get_ticket_counter_data(self, **kw): + ticket_obj = request.env['helpdesk.ticket'].sudo().search( + [], order='id desc', limit=1) + company_id = request.env.company + ticket_data_dic = {} + ticket_data_list = [] + id_list = [] + data_dict = {} + for stage in company_id.dashboard_filter: + doman = [] + id_list = [] + if kw.get('filter_date') == 'today': + + dt_flt1 = [] + dt_flt1.append('create_date') + dt_flt1.append('>') + dt_flt1.append( + datetime.now().date().strftime("%Y/%m/%d 00:00:00")) + doman.append(tuple(dt_flt1)) + + dt_flt2 = [] + dt_flt2.append('create_date') + dt_flt2.append('<=') + dt_flt2.append( + datetime.now().date().strftime("%Y/%m/%d 23:59:59")) + doman.append(tuple(dt_flt2)) + + elif kw.get('filter_date') == 'yesterday': + + dt_flt1 = [] + dt_flt1.append('create_date') + dt_flt1.append('>') + prev_day = (datetime.now().date() - + relativedelta(days=1)).strftime('%Y/%m/%d 00:00:00') + dt_flt1.append(prev_day) + doman.append(tuple(dt_flt1)) + + dt_flt2 = [] + dt_flt2.append('create_date') + dt_flt2.append('<=') + prev_day = (datetime.now().date() - + relativedelta(days=1)).strftime('%Y/%m/%d 23:59:59') + dt_flt2.append(prev_day) + doman.append(tuple(dt_flt2)) + + elif kw.get('filter_date') == 'weekly': # current week + + dt_flt1 = [] + dt_flt1.append('create_date') + dt_flt1.append('>') + dt_flt1.append((datetime.now().date( + ) - relativedelta(weeks=1, weekday=0)).strftime("%Y/%m/%d 00:00:00")) + doman.append(tuple(dt_flt1)) + + dt_flt2 = [] + dt_flt2.append('create_date') + dt_flt2.append('<=') + dt_flt2.append( + datetime.now().date().strftime("%Y/%m/%d 23:59:59")) + doman.append(tuple(dt_flt2)) + + elif kw.get('filter_date') == 'prev_week': # Previous week + + dt_flt1 = [] + dt_flt1.append('create_date') + dt_flt1.append('>') + dt_flt1.append((datetime.now().date( + ) - relativedelta(weeks=2, weekday=0)).strftime("%Y/%m/%d 00:00:00")) + doman.append(tuple(dt_flt1)) + + dt_flt2 = [] + dt_flt2.append('create_date') + dt_flt2.append('<=') + dt_flt2.append((datetime.now().date( + ) - relativedelta(weeks=1, weekday=6)).strftime("%Y/%m/%d 23:59:59")) + doman.append(tuple(dt_flt2)) + + elif kw.get('filter_date') == 'monthly': # Current Month + + dt_flt1 = [] + dt_flt1.append('create_date') + dt_flt1.append('>') + dt_flt1.append( + (datetime.now().date()).strftime("%Y/%m/01 00:00:00")) + doman.append(tuple(dt_flt1)) + + dt_flt2 = [] + dt_flt2.append('create_date') + dt_flt2.append('<=') + dt_flt2.append( + datetime.now().date().strftime("%Y/%m/%d 23:59:59")) + doman.append(tuple(dt_flt2)) + + elif kw.get('filter_date') == 'prev_month': # Previous Month + + dt_flt1 = [] + dt_flt1.append('create_date') + dt_flt1.append('>') + dt_flt1.append( + (datetime.now().date() - relativedelta(months=1)).strftime("%Y/%m/01 00:00:00")) + doman.append(tuple(dt_flt1)) + + dt_flt2 = [] + dt_flt2.append('create_date') + dt_flt2.append('<') + dt_flt2.append( + datetime.now().date().strftime("%Y/%m/01 00:00:00")) + doman.append(tuple(dt_flt2)) + + elif kw.get('filter_date') == 'cur_year': # Current Year + + dt_flt1 = [] + dt_flt1.append('create_date') + dt_flt1.append('>') + dt_flt1.append( + (datetime.now().date()).strftime("%Y/01/01 00:00:00")) + doman.append(tuple(dt_flt1)) + + dt_flt2 = [] + dt_flt2.append('create_date') + dt_flt2.append('<=') + dt_flt2.append( + datetime.now().date().strftime("%Y/%m/%d 23:59:59")) + doman.append(tuple(dt_flt2)) + + elif kw.get('filter_date') == 'prev_year': # Previous Year + + dt_flt1 = [] + dt_flt1.append('create_date') + dt_flt1.append('>') + dt_flt1.append( + (datetime.now().date() - relativedelta(years=1)).strftime("%Y/01/01 00:00:00")) + doman.append(tuple(dt_flt1)) + + dt_flt2 = [] + dt_flt2.append('create_date') + dt_flt2.append('<') + dt_flt2.append( + datetime.now().date().strftime("%Y/01/01 00:00:00")) + doman.append(tuple(dt_flt2)) + elif kw.get('filter_date') == 'custom': + if kw.get('date_start') and kw.get('date_end'): + dt_flt1 = [] + dt_flt1.append('create_date') + dt_flt1.append('>=') + dt_flt1.append(datetime.strptime( + str(kw.get('date_start')), DEFAULT_SERVER_DATE_FORMAT).strftime("%Y/%m/%d")) + doman.append(tuple(dt_flt1)) + + dt_flt2 = [] + dt_flt2.append('create_date') + dt_flt2.append('<=') + dt_flt2.append(datetime.strptime( + str(kw.get('date_end')), DEFAULT_SERVER_DATE_FORMAT).strftime("%Y/%m/%d")) + doman.append(tuple(dt_flt2)) + if int(kw.get('team')) != 0: + doman.append(('team_id', '=', int(kw.get('team')))) + elif int(kw.get('team')) == 0: + if request.env.user.has_group('sh_helpdesk.helpdesk_group_team_leader') and request.env.user.has_group('sh_helpdesk.helpdesk_group_user') and not request.env.user.has_group('sh_helpdesk.helpdesk_group_manager'): + team_ids = request.env['helpdesk.team'].sudo().search( + ['|', ('team_head', '=', request.env.user.id), ('team_members', 'in', [request.env.user.id])]) + doman.append(('team_id', 'in', team_ids.ids)) + elif not request.env.user.has_group('sh_helpdesk.helpdesk_group_team_leader') and request.env.user.has_group('sh_helpdesk.helpdesk_group_user') and not request.env.user.has_group('sh_helpdesk.helpdesk_group_manager'): + team_ids = request.env['helpdesk.team'].sudo().search( + [('team_members', 'in', [request.env.user.id])]) + doman.append(('team_id', 'in', team_ids.ids)) + + if int(kw.get('team_leader')) != 0: + doman.append(('team_head', '=', int(kw.get('team_leader')))) + elif int(kw.get('team_leader')) == 0: + if request.env.user.has_group('sh_helpdesk.helpdesk_group_team_leader') and request.env.user.has_group('sh_helpdesk.helpdesk_group_user') and not request.env.user.has_group('sh_helpdesk.helpdesk_group_manager'): + doman.append(('|')) + doman.append(('|')) + doman.append(('team_head', '=', request.env.user.id)) + doman.append(('user_id', '=', request.env.user.id)) + doman.append(('sh_user_ids', 'in', [request.env.user.id])) + if int(kw.get('user_id')) != 0: + doman.append(('|')) + doman.append(('user_id', '=', int(kw.get('user_id')))) + doman.append(('sh_user_ids', 'in', [int(kw.get('user_id'))])) + elif int(kw.get('user_id')) == 0: + if request.env.user.has_group('sh_helpdesk.helpdesk_group_team_leader') and request.env.user.has_group('sh_helpdesk.helpdesk_group_user') and not request.env.user.has_group('sh_helpdesk.helpdesk_group_manager'): + doman.append(('|')) + doman.append(('|')) + doman.append(('sh_user_ids', 'in', [request.env.user.id])) + doman.append(('user_id', '=', request.env.user.id)) + doman.append(('team_head', '=', request.env.user.id)) + elif not request.env.user.has_group('sh_helpdesk.helpdesk_group_team_leader') and request.env.user.has_group('sh_helpdesk.helpdesk_group_user') and not request.env.user.has_group('sh_helpdesk.helpdesk_group_manager'): + doman.append(('|')) + doman.append(('user_id', '=', request.env.user.id)) + doman.append(('sh_user_ids', 'in', [request.env.user.id])) + ticket_list = [] + doman.append(('stage_id', '=', stage.id)) + search_tickets = ticket_obj.sudo().search(doman) + if search_tickets: + for ticket in search_tickets: + create_date = datetime.strftime(ticket.create_date,"%Y-%m-%d %H:%M:%S") + write_date = datetime.strftime(ticket.write_date,"%Y-%m-%d %H:%M:%S") + ticket_dic = { + 'ticket_id': ticket.id, + 'ticket_no': ticket.name, + 'partner_id': ticket.partner_id.name, + 'create_date': create_date, + 'write_date': write_date, + 'user_id': ticket.user_id.name, + } + ticket_list.append(ticket_dic) + id_list.append(ticket.id) + search_stage = request.env['helpdesk.stages'].sudo().search([ + ('id', '=', stage.id) + ], limit=1) + if search_stage: + ticket_data_dic.update({search_stage.name: ticket_list}) + list_ids = [id_list] + data_dict.update({search_stage.name: list_ids}) + ticket_data_list.append(search_stage.name) + return request.env['ir.ui.view'].with_context()._render_template('sh_helpdesk.ticket_dashboard_count', { + 'ticket_data_dic': ticket_data_dic, + 'ticket_data_list': ticket_data_list, + 'data_dict': data_dict, + }) + + @http.route([ + '/open-ticket', + ], type='http', auth="public", method="post", website=True, csrf=False) + def open_tickets(self, **kw): + dashboard_id = request.env['ticket.dashboard'].sudo().search( + [('id', '=', 1)], limit=1) + dashboard_id.get_ticket_data(kw.get('ids')) + dic = {} + dic.update({'success': 1}) + return json.dumps(dic) + + @http.route( + '/get-ticket-table-data', type='http', auth="public") + def get_ticket_table_data(self, **kw): + ticket_obj = request.env['helpdesk.ticket'].sudo().search( + [], order='id desc', limit=1) + company_id = request.env.company + ticket_data_dic = {} + ticket_data_list = [] + for stage in company_id.dashboard_tables: + doman = [] + if kw.get('filter_date') == 'today': + + dt_flt1 = [] + dt_flt1.append('create_date') + dt_flt1.append('>') + dt_flt1.append( + datetime.now().date().strftime("%Y/%m/%d 00:00:00")) + doman.append(tuple(dt_flt1)) + + dt_flt2 = [] + dt_flt2.append('create_date') + dt_flt2.append('<=') + dt_flt2.append( + datetime.now().date().strftime("%Y/%m/%d 23:59:59")) + doman.append(tuple(dt_flt2)) + + elif kw.get('filter_date') == 'yesterday': + + dt_flt1 = [] + dt_flt1.append('create_date') + dt_flt1.append('>') + prev_day = (datetime.now().date() - + relativedelta(days=1)).strftime('%Y/%m/%d 00:00:00') + dt_flt1.append(prev_day) + doman.append(tuple(dt_flt1)) + + dt_flt2 = [] + dt_flt2.append('create_date') + dt_flt2.append('<=') + prev_day = (datetime.now().date() - + relativedelta(days=1)).strftime('%Y/%m/%d 23:59:59') + dt_flt2.append(prev_day) + doman.append(tuple(dt_flt2)) + + elif kw.get('filter_date') == 'weekly': # current week + + dt_flt1 = [] + dt_flt1.append('create_date') + dt_flt1.append('>') + dt_flt1.append((datetime.now().date( + ) - relativedelta(weeks=1, weekday=0)).strftime("%Y/%m/%d 00:00:00")) + doman.append(tuple(dt_flt1)) + + dt_flt2 = [] + dt_flt2.append('create_date') + dt_flt2.append('<=') + dt_flt2.append( + datetime.now().date().strftime("%Y/%m/%d 23:59:59")) + doman.append(tuple(dt_flt2)) + + elif kw.get('filter_date') == 'prev_week': # Previous week + + dt_flt1 = [] + dt_flt1.append('create_date') + dt_flt1.append('>') + dt_flt1.append((datetime.now().date( + ) - relativedelta(weeks=2, weekday=0)).strftime("%Y/%m/%d 00:00:00")) + doman.append(tuple(dt_flt1)) + + dt_flt2 = [] + dt_flt2.append('create_date') + dt_flt2.append('<=') + dt_flt2.append((datetime.now().date( + ) - relativedelta(weeks=1, weekday=6)).strftime("%Y/%m/%d 23:59:59")) + doman.append(tuple(dt_flt2)) + + elif kw.get('filter_date') == 'monthly': # Current Month + + dt_flt1 = [] + dt_flt1.append('create_date') + dt_flt1.append('>') + dt_flt1.append( + (datetime.now().date()).strftime("%Y/%m/01 00:00:00")) + doman.append(tuple(dt_flt1)) + + dt_flt2 = [] + dt_flt2.append('create_date') + dt_flt2.append('<=') + dt_flt2.append( + datetime.now().date().strftime("%Y/%m/%d 23:59:59")) + doman.append(tuple(dt_flt2)) + + elif kw.get('filter_date') == 'prev_month': # Previous Month + + dt_flt1 = [] + dt_flt1.append('create_date') + dt_flt1.append('>') + dt_flt1.append( + (datetime.now().date() - relativedelta(months=1)).strftime("%Y/%m/01 00:00:00")) + doman.append(tuple(dt_flt1)) + + dt_flt2 = [] + dt_flt2.append('create_date') + dt_flt2.append('<') + dt_flt2.append( + datetime.now().date().strftime("%Y/%m/01 00:00:00")) + doman.append(tuple(dt_flt2)) + + elif kw.get('filter_date') == 'cur_year': # Current Year + + dt_flt1 = [] + dt_flt1.append('create_date') + dt_flt1.append('>') + dt_flt1.append( + (datetime.now().date()).strftime("%Y/01/01 00:00:00")) + doman.append(tuple(dt_flt1)) + + dt_flt2 = [] + dt_flt2.append('create_date') + dt_flt2.append('<=') + dt_flt2.append( + datetime.now().date().strftime("%Y/%m/%d 23:59:59")) + doman.append(tuple(dt_flt2)) + + elif kw.get('filter_date') == 'prev_year': # Previous Year + + dt_flt1 = [] + dt_flt1.append('create_date') + dt_flt1.append('>') + dt_flt1.append( + (datetime.now().date() - relativedelta(years=1)).strftime("%Y/01/01 00:00:00")) + doman.append(tuple(dt_flt1)) + + dt_flt2 = [] + dt_flt2.append('create_date') + dt_flt2.append('<') + dt_flt2.append( + datetime.now().date().strftime("%Y/01/01 00:00:00")) + doman.append(tuple(dt_flt2)) + elif kw.get('filter_date') == 'custom': + if kw.get('date_start') and kw.get('date_end'): + dt_flt1 = [] + dt_flt1.append('create_date') + dt_flt1.append('>=') + dt_flt1.append(datetime.strptime( + str(kw.get('date_start')), DEFAULT_SERVER_DATE_FORMAT).strftime("%Y/%m/%d")) + doman.append(tuple(dt_flt1)) + + dt_flt2 = [] + dt_flt2.append('create_date') + dt_flt2.append('<=') + dt_flt2.append(datetime.strptime( + str(kw.get('date_end')), DEFAULT_SERVER_DATE_FORMAT).strftime("%Y/%m/%d")) + doman.append(tuple(dt_flt2)) + if int(kw.get('team')) != 0: + doman.append(('team_id', '=', int(kw.get('team')))) + elif int(kw.get('team')) == 0: + if request.env.user.has_group('sh_helpdesk.helpdesk_group_team_leader') and request.env.user.has_group('sh_helpdesk.helpdesk_group_user') and not request.env.user.has_group('sh_helpdesk.helpdesk_group_manager'): + team_ids = request.env['helpdesk.team'].sudo().search( + ['|', ('team_head', '=', request.env.user.id), ('team_members', 'in', [request.env.user.id])]) + doman.append(('team_id', 'in', team_ids.ids)) + elif not request.env.user.has_group('sh_helpdesk.helpdesk_group_team_leader') and request.env.user.has_group('sh_helpdesk.helpdesk_group_user') and not request.env.user.has_group('sh_helpdesk.helpdesk_group_manager'): + team_ids = request.env['helpdesk.team'].sudo().search( + [('team_members', 'in', [request.env.user.id])]) + doman.append(('team_id', 'in', team_ids.ids)) + if int(kw.get('team_leader')) != 0: + doman.append(('team_head', '=', int(kw.get('team_leader')))) + elif int(kw.get('team_leader')) == 0: + if request.env.user.has_group('sh_helpdesk.helpdesk_group_team_leader') and request.env.user.has_group('sh_helpdesk.helpdesk_group_user') and not request.env.user.has_group('sh_helpdesk.helpdesk_group_manager'): + doman.append(('|')) + doman.append(('|')) + doman.append(('team_head', '=', request.env.user.id)) + doman.append(('user_id', '=', request.env.user.id)) + doman.append(('sh_user_ids', 'in', [request.env.user.id])) + if int(kw.get('user_id')) != 0: + doman.append(('|')) + doman.append(('user_id', '=', int(kw.get('user_id')))) + doman.append(('sh_user_ids', 'in', [int(kw.get('user_id'))])) + elif int(kw.get('user_id')) == 0: + if request.env.user.has_group('sh_helpdesk.helpdesk_group_team_leader') and request.env.user.has_group('sh_helpdesk.helpdesk_group_user') and not request.env.user.has_group('sh_helpdesk.helpdesk_group_manager'): + doman.append(('|')) + doman.append(('|')) + doman.append(('user_id', '=', request.env.user.id)) + doman.append(('sh_user_ids', 'in', [request.env.user.id])) + doman.append(('team_head', '=', request.env.user.id)) + elif not request.env.user.has_group('sh_helpdesk.helpdesk_group_team_leader') and request.env.user.has_group('sh_helpdesk.helpdesk_group_user') and not request.env.user.has_group('sh_helpdesk.helpdesk_group_manager'): + doman.append(('|')) + doman.append(('user_id', '=', request.env.user.id)) + doman.append(('sh_user_ids', 'in', [request.env.user.id])) + ticket_list = [] + doman.append(('stage_id', '=', stage.id)) + search_tickets = ticket_obj.sudo().search(doman) + if search_tickets: + for ticket in search_tickets: + create_date = datetime.strftime(ticket.create_date,"%Y-%m-%d %H:%M:%S") + write_date = datetime.strftime(ticket.write_date,"%Y-%m-%d %H:%M:%S") + ticket_dic = { + 'ticket_id': ticket.id, + 'ticket_no': ticket.name, + 'partner_name': ticket.partner_id.name_get()[0][1], + 'partner_mobile':ticket.partner_id.mobile, + 'partner_id':ticket.partner_id.id, + 'create_date': create_date, + 'write_date': write_date, + 'user_id': ticket.user_id.name, + } + ticket_list.append(ticket_dic) + search_stage = request.env['helpdesk.stages'].sudo().search([ + ('id', '=', stage.id) + ], limit=1) + if search_stage: + ticket_data_dic.update({search_stage.name: ticket_list}) + ticket_data_list.append(search_stage.name) + return request.env['ir.ui.view'].with_context()._render_template('sh_helpdesk.ticket_dashboard_tbl', { + 'ticket_data_dic': ticket_data_dic, + 'ticket_data_list': ticket_data_list, + }) + + @http.route( + '/get-mobile-no', type='http', auth="public",csrf=False) + def get_mobile_no(self, **kw): + dic={} + if kw.get('partner_id') and kw.get('partner_id')!='select_partner': + partner_id = request.env['res.partner'].sudo().browse(int(kw.get('partner_id'))) + if partner_id and partner_id.mobile: + dic.update({ + 'mobile':str(partner_id.mobile) + }) + return json.dumps(dic) + + @http.route( + '/send-by-whatsapp', type='http', auth="public",csrf=False) + def send_by_whatsapp(self, **kw): + dic = {} + if kw.get('partner_id')=='select_partner': + dic.update({ + 'msg':'Partner is Required.' + }) + elif kw.get('partner_mobile_no')=='': + dic.update({ + 'msg':'Mobile Number is Required.' + }) + elif kw.get('message')=='': + dic.update({ + 'msg':'Message is Required.' + }) + else: + dic.update({ + 'url':str("https://web.whatsapp.com/send?l=&phone="+kw.get('partner_mobile_no')+"&text=" + kw.get('message')) + }) + return json.dumps(dic)
\ No newline at end of file diff --git a/sh_helpdesk/controllers/portal.py b/sh_helpdesk/controllers/portal.py new file mode 100644 index 0000000..95900a7 --- /dev/null +++ b/sh_helpdesk/controllers/portal.py @@ -0,0 +1,484 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. + +from odoo import fields, http, _ +from odoo.addons.portal.controllers.portal import CustomerPortal, pager as portal_pager +from odoo.http import request +from odoo.tools import date_utils, groupby as groupbyelem +from odoo.osv.expression import AND +from dateutil.relativedelta import relativedelta +from operator import itemgetter +from collections import OrderedDict +from odoo.exceptions import AccessError, MissingError +from odoo.addons.portal.controllers.mail import _message_post_helper +import json +import base64 +import werkzeug + + +class PortalHelpdesk(CustomerPortal): + + def _prepare_portal_layout_values(self): + values = super(PortalHelpdesk, self)._prepare_portal_layout_values() + ticket_domain = [] + if request.env.user.sh_portal_user_access and request.env.user.sh_portal_user_access == 'user': + ticket_domain.append(('|')) + ticket_domain.append(('|')) + ticket_domain.append(('user_id', '=', request.env.user.id)) + ticket_domain.append(('sh_user_ids', 'in', [request.env.user.id])) + ticket_domain.append( + ('partner_id', '=', request.env.user.partner_id.id)) + elif request.env.user.sh_portal_user_access and request.env.user.sh_portal_user_access == 'leader': + ticket_domain.append(('|')) + ticket_domain.append(('|')) + ticket_domain.append(('|')) + ticket_domain.append(('sh_user_ids', 'in', [request.env.user.id])) + ticket_domain.append(('user_id', '=', request.env.user.id)) + ticket_domain.append( + ('partner_id', '=', request.env.user.partner_id.id)) + ticket_domain.append(('team_head', '=', request.env.user.id)) + elif request.env.user.sh_portal_user_access and request.env.user.sh_portal_user_access == 'manager': + ticket_domain.append(('|')) + ticket_domain.append(('|')) + ticket_domain.append(('|')) + ticket_domain.append(('|')) + ticket_domain.append(('|')) + ticket_domain.append(('|')) + ticket_domain.append(('user_id', '=', request.env.user.id)) + ticket_domain.append(('user_id', '=', False)) + ticket_domain.append(('sh_user_ids', 'in', [request.env.user.id])) + ticket_domain.append(('sh_user_ids', '=', False)) + ticket_domain.append( + ('partner_id', '=', request.env.user.partner_id.id)) + ticket_domain.append(('team_head', '=', request.env.user.id)) + ticket_domain.append(('team_head', '=', False)) + else: + ticket_domain.append(('|')) + ticket_domain.append(('|')) + ticket_domain.append(('sh_user_ids', 'in', [request.env.user.id])) + ticket_domain.append(('user_id', '=', request.env.user.id)) + ticket_domain.append( + ('partner_id', '=', request.env.user.partner_id.id)) + + ticket_count = request.env['helpdesk.ticket'].sudo( + ).search_count(ticket_domain) + tickets = request.env['helpdesk.ticket'].sudo().search(ticket_domain) + values['ticket_count'] = ticket_count + values['tickets'] = tickets + return values + + @http.route(['/my/tickets', '/my/tickets/page/<int:page>'], type='http', auth="user", website=True) + def portal_my_tickets(self, page=1, sortby=None, filterby=None, search=None, search_in='all', groupby='create_by', **kw): + values = self._prepare_portal_layout_values() + HelpdeskTicket = request.env['helpdesk.ticket'].sudo() + + searchbar_sortings = { + 'create_date': {'label': _('Newest'), 'order': 'create_date desc'}, + 'name': {'label': _('Name'), 'order': 'name'}, + } + searchbar_inputs = { + 'all': {'input': 'all', 'label': _('Search in All')}, + } + + searchbar_groupby = { + 'create_by': {'input': 'create_by', 'label': _('Created By')}, + 'ticket_type': {'input': 'ticket_type', 'label': _('Ticket Type')}, + 'status': {'input': 'status', 'label': _('Status')}, + 'customer': {'input': 'customer', 'label': _('Customer')}, + 'category': {'input': 'category', 'label': _('Category')}, + 'subcategory': {'input': 'subcategory', 'label': _('Sub Category')}, + 'subject': {'input': 'subject', 'label': _('Subject')}, + 'priority': {'input': 'priority', 'label': _('Priority')}, + 'state': {'input': 'state', 'label': _('Reply Status')}, + } + + today = fields.Date.today() + quarter_start, quarter_end = date_utils.get_quarter(today) + last_week = today + relativedelta(weeks=-1) + last_month = today + relativedelta(months=-1) + last_year = today + relativedelta(years=-1) + + searchbar_filters = { + 'all': {'label': _('All'), 'domain': []}, + 'today': {'label': _('Today'), 'domain': [("create_date", "=", today)]}, + 'week': {'label': _('This week'), 'domain': [('create_date', '>=', date_utils.start_of(today, "week")), ('create_date', '<=', date_utils.end_of(today, 'week'))]}, + 'month': {'label': _('This month'), 'domain': [('create_date', '>=', date_utils.start_of(today, 'month')), ('create_date', '<=', date_utils.end_of(today, 'month'))]}, + 'year': {'label': _('This year'), 'domain': [('create_date', '>=', date_utils.start_of(today, 'year')), ('create_date', '<=', date_utils.end_of(today, 'year'))]}, + 'quarter': {'label': _('This Quarter'), 'domain': [('create_date', '>=', quarter_start), ('create_date', '<=', quarter_end)]}, + 'last_week': {'label': _('Last week'), 'domain': [('create_date', '>=', date_utils.start_of(last_week, "week")), ('create_date', '<=', date_utils.end_of(last_week, 'week'))]}, + 'last_month': {'label': _('Last month'), 'domain': [('create_date', '>=', date_utils.start_of(last_month, 'month')), ('create_date', '<=', date_utils.end_of(last_month, 'month'))]}, + 'last_year': {'label': _('Last year'), 'domain': [('create_date', '>=', date_utils.start_of(last_year, 'year')), ('create_date', '<=', date_utils.end_of(last_year, 'year'))]}, + } + # default sort by value + if not sortby: + sortby = 'create_date' + order = searchbar_sortings[sortby]['order'] + # default filter by value + if not filterby: + filterby = 'all' + domain = AND([searchbar_filters[filterby]['domain']]) + + if search and search_in: + domain = AND([domain, [('name', 'ilike', search)]]) + ticket_domain = [] + if request.env.user.sh_portal_user_access and request.env.user.sh_portal_user_access == 'user': + ticket_domain.append(('|')) + ticket_domain.append(('|')) + ticket_domain.append(('user_id', '=', request.env.user.id)) + ticket_domain.append(('sh_user_ids', 'in', [request.env.user.id])) + ticket_domain.append( + ('partner_id', '=', request.env.user.partner_id.id)) + elif request.env.user.sh_portal_user_access and request.env.user.sh_portal_user_access == 'leader': + ticket_domain.append(('|')) + ticket_domain.append(('|')) + ticket_domain.append(('|')) + ticket_domain.append(('sh_user_ids', 'in', [request.env.user.id])) + ticket_domain.append(('user_id', '=', request.env.user.id)) + ticket_domain.append( + ('partner_id', '=', request.env.user.partner_id.id)) + ticket_domain.append(('team_head', '=', request.env.user.id)) + elif request.env.user.sh_portal_user_access and request.env.user.sh_portal_user_access == 'manager': + ticket_domain.append(('|')) + ticket_domain.append(('|')) + ticket_domain.append(('|')) + ticket_domain.append(('|')) + ticket_domain.append(('|')) + ticket_domain.append(('|')) + ticket_domain.append(('sh_user_ids', 'in', [request.env.user.id])) + ticket_domain.append(('sh_user_ids', '=', False)) + ticket_domain.append(('user_id', '=', request.env.user.id)) + ticket_domain.append(('user_id', '=', False)) + ticket_domain.append( + ('partner_id', '=', request.env.user.partner_id.id)) + ticket_domain.append(('team_head', '=', request.env.user.id)) + ticket_domain.append(('team_head', '=', False)) + else: + ticket_domain.append(('|')) + ticket_domain.append(('|')) + ticket_domain.append(('user_id', '=', request.env.user.id)) + ticket_domain.append(('sh_user_ids', 'in', [request.env.user.id])) + ticket_domain.append( + ('partner_id', '=', request.env.user.partner_id.id)) + domain = AND([domain, ticket_domain]) + + # count for pager + ticket_count = HelpdeskTicket.search_count(domain) + # pager + pager = portal_pager( + url="/my/tickets", + url_args={'sortby': sortby, 'search_in': search_in, + 'search': search, 'filterby': filterby}, + total=ticket_count, + page=page, + step=self._items_per_page + ) + if groupby == 'create_by': + order = "create_uid, %s" % order + elif groupby == 'ticket_type': + order = "ticket_type, %s" % order + elif groupby == 'status': + order = "stage_id, %s" % order + elif groupby == 'customer': + order = "partner_id, %s" % order + elif groupby == 'category': + order = "category_id, %s" % order + elif groupby == 'subcategory': + order = "sub_category_id, %s" % order + elif groupby == 'subject': + order = "subject_id, %s" % order + elif groupby == 'priority': + order = "priority, %s" % order + elif groupby == 'state': + order = 'state,%s' % order + tickets = HelpdeskTicket.search( + domain, order=order, limit=self._items_per_page, offset=pager['offset']) + request.session['my_tickets_history'] = tickets.ids[:100] + if groupby == 'create_by': + grouped_tickets = [HelpdeskTicket.concat( + *g) for k, g in groupbyelem(tickets, itemgetter('create_uid'))] + elif groupby == 'ticket_type': + grouped_tickets = [HelpdeskTicket.concat( + *g) for k, g in groupbyelem(tickets, itemgetter('ticket_type'))] + elif groupby == 'status': + grouped_tickets = [HelpdeskTicket.concat( + *g) for k, g in groupbyelem(tickets, itemgetter('stage_id'))] + elif groupby == 'customer': + grouped_tickets = [HelpdeskTicket.concat( + *g) for k, g in groupbyelem(tickets, itemgetter('partner_id'))] + elif groupby == 'category': + grouped_tickets = [HelpdeskTicket.concat( + *g) for k, g in groupbyelem(tickets, itemgetter('category_id'))] + elif groupby == 'subcategory': + grouped_tickets = [HelpdeskTicket.concat( + *g) for k, g in groupbyelem(tickets, itemgetter('sub_category_id'))] + elif groupby == 'subject': + grouped_tickets = [HelpdeskTicket.concat( + *g) for k, g in groupbyelem(tickets, itemgetter('subject_id'))] + elif groupby == 'priority': + grouped_tickets = [HelpdeskTicket.concat( + *g) for k, g in groupbyelem(tickets, itemgetter('priority'))] + elif groupby == 'state': + grouped_tickets = [HelpdeskTicket.concat( + *g) for k, g in groupbyelem(tickets, itemgetter('state'))] + # content according to pager and archive selected + values.update({ + 'tickets': tickets, + 'grouped_tickets': grouped_tickets, + 'page_name': 'ticket', + 'default_url': '/my/tickets', + 'ticket_count': ticket_count, + 'pager': pager, + 'searchbar_sortings': searchbar_sortings, + 'search_in': search_in, + 'sortby': sortby, + 'groupby': groupby, + 'searchbar_inputs': searchbar_inputs, + 'searchbar_groupby': searchbar_groupby, + 'searchbar_filters': OrderedDict(sorted(searchbar_filters.items())), + 'filterby': filterby, + }) + + return request.render("sh_helpdesk.portal_my_tickets", values) + + @http.route(['/my/tickets/<int:ticket_id>'], type='http', auth="public", website=True) + def portal_my_ticket_detail(self, ticket_id, access_token=None, report_type=None, message=False, download=False, **kw): + try: + ticket_sudo = self._document_check_access( + 'helpdesk.ticket', ticket_id, access_token=access_token) + except (AccessError, MissingError): + return request.redirect('/my') + if report_type in ('html', 'pdf', 'text'): + return self._show_report(model=ticket_sudo, report_type=report_type, report_ref='sh_helpdesk.action_portal_report_helpdesk_ticket', download=download) + if ticket_sudo: + if request.env.company.sh_receive_email_seeing_ticket: + body = _('Ticket viewed by customer %s', + ticket_sudo.partner_id.name) + _message_post_helper( + "helpdesk.ticket", + ticket_sudo.id, + body, + token=ticket_sudo.access_token, + message_type="notification", + subtype_xmlid="mail.mt_note", + partner_ids=ticket_sudo.user_id.sudo().partner_id.ids, + ) + values = { + 'token': access_token, + 'ticket': ticket_sudo, + 'message': message, + 'bootstrap_formatting': True, + 'partner_id': ticket_sudo.partner_id.id, + 'report_type': 'html', + } + + return request.render("sh_helpdesk.portal_ticket_page", values) + + @http.route('/portal-subcategory-data', type="http", auth="public", csrf=False) + def portal_sub_category_data(self, **kw): + dic = {} + if kw.get('category_id') and kw.get('category_id') != 'category': + sub_categ_list = [] + sub_categ_ids = request.env['helpdesk.subcategory'].sudo().search( + [('parent_category_id', '=', int(kw.get('category_id')))]) + for sub in sub_categ_ids: + sub_categ_dic = { + 'id': sub.id, + 'name': sub.name, + } + sub_categ_list.append(sub_categ_dic) + dic.update({ + 'sub_categories': sub_categ_list + }) + else: + dic.update({ + 'sub_categories': [] + }) + return json.dumps(dic) + + @http.route('/portal-partner-data', type="http", auth="public", csrf=False) + def portal_partner_data(self, **kw): + dic = {} + partner_list = [] + for partner in request.env['res.partner'].sudo().search([]): + partner_dic = { + 'id': partner.id, + 'name': partner.name, + } + partner_list.append(partner_dic) + dic.update({ + 'partners': partner_list + }) + return json.dumps(dic) + + @http.route('/portal-user-data', type="http", auth="public", csrf=False) + def portal_user_data(self, **kw): + dic = {} + if kw.get('team_id') and kw.get('team_id') != 'team': + users_list = [] + team_id = request.env['helpdesk.team'].sudo().search( + [('id', '=', int(kw.get('team_id')))]) + for member in team_id.team_members: + user_dic = { + 'id': member.id, + 'name': member.name, + } + users_list.append(user_dic) + dic.update({ + 'users': users_list + }) + else: + dic.update({ + 'users': [] + }) + return json.dumps(dic) + + @http.route('/selected-partner-data', type="http", auth="public", csrf=False) + def selected_partner_data(self, **kw): + dic = {} + if kw.get('partner_id') and kw.get('partner_id') != '': + partner = request.env['res.partner'].sudo().search( + [('id', '=', int(kw.get('partner_id')))], limit=1) + if partner: + dic.update({ + 'name': partner.name, + 'email': partner.email, + }) + return json.dumps(dic) + + @http.route('/portal-create-ticket', type='http', auth='public', csrf=False) + def portal_create_ticket(self, **kw): + + multi_users_value = request.httprequest.form.getlist('portal_assign_multi_user') + if 'users' in multi_users_value: + del multi_users_value[0] + login_user = request.env.user + if login_user and login_user.login != 'public': + partner_id = False + if kw.get('partner_id') and kw.get('partner_id') != '': + partner_id = request.env['res.partner'].sudo().search( + [('id', '=', int(kw.get('partner_id')))], limit=1) + else: + partner_id = request.env['res.partner'].sudo().search( + [('email', '=', kw.get('portal_email'))], limit=1) + if not partner_id: + partner_id = request.env['res.partner'].sudo().create({ + 'name': kw.get('portal_contact_name'), + 'company_type': 'person', + 'email': kw.get('portal_email'), + }) + if partner_id: + ticket_dic = {'partner_id': partner_id.id,'mobile_no': partner_id.mobile, + 'ticket_from_portal': True} + if len(multi_users_value) > 0: + users = [] + for user in multi_users_value: + users.append(int(user)) + multi_users = request.env['res.users'].sudo().browse(users) + if multi_users: + ticket_dic.update({ + 'sh_user_ids': [(6,0,multi_users.ids)] + }) + if kw.get('portal_team') and kw.get('portal_team') != 'team': + team_id = request.env['helpdesk.team'].sudo().browse( + int(kw.get('portal_team'))) + if team_id: + ticket_dic.update({ + 'team_id': team_id.id, + 'team_head': team_id.team_head.id, + }) + if kw.get('portal_assign_user') and kw.get('portal_assign_user') != 'user': + portal_user_id = request.env['res.users'].sudo().browse( + int(kw.get('portal_assign_user'))) + if portal_user_id: + ticket_dic.update({ + 'user_id': portal_user_id.id, + }) + if not ticket_dic.get('team_id') or not ticket_dic.get('user_id'): + if login_user.sh_portal_user_access and request.env.user.has_group('base.group_portal') and login_user.sh_portal_user_access == 'user' or login_user.sh_portal_user_access == 'manager' or login_user.sh_portal_user_access == 'leader': + if request.env.company.sh_default_team_id: + ticket_dic.update({ + 'team_id': request.env.company.sh_default_team_id.id, + 'team_head': request.env.company.sh_default_team_id.team_head.id, + 'user_id': request.env.company.sh_default_user_id.id, + }) + else: + team_id = request.env['helpdesk.team'].sudo().search( + ['|', ('team_head', '=', login_user.id), ('team_members', 'in', [login_user.id])]) + if team_id: + ticket_dic.update({ + 'team_id': team_id[-1].id, + 'team_head': team_id[-1].team_head.id, + 'user_id': login_user.id, + }) + else: + ticket_dic.update({ + 'user_id': login_user.id, + }) + ticket_dic.update({'state': 'staff_replied'}) + else: + if request.env.company.sh_default_team_id: + ticket_dic.update({ + 'team_id': request.env.company.sh_default_team_id.id, + 'team_head': request.env.company.sh_default_team_id.team_head.id, + 'user_id': request.env.company.sh_default_user_id.id, + }) + else: + if not login_user.has_group('base.group_portal') and not login_user.sh_portal_user_access: + team_id = request.env['helpdesk.team'].sudo().search( + ['|', ('team_head', '=', login_user.id), ('team_members', 'in', [login_user.id])]) + if team_id: + ticket_dic.update({ + 'team_id': team_id[-1].id, + 'team_head': team_id[-1].team_head.id, + 'user_id': login_user.id, + }) + else: + ticket_dic.update({ + 'user_id': login_user.id, + }) + if kw.get('portal_contact_name'): + ticket_dic.update({ + 'person_name': kw.get('portal_contact_name'), + }) + if kw.get('portal_email'): + ticket_dic.update({ + 'email': kw.get('portal_email'), + }) + if kw.get('portal_category') and kw.get('portal_category') != 'category': + ticket_dic.update({ + 'category_id': int(kw.get('portal_category')), + }) + if kw.get('portal_subcategory') and kw.get('portal_subcategory') != 'sub_category': + ticket_dic.update({ + 'sub_category_id': int(kw.get('portal_subcategory')), + }) + if kw.get('portal_subject') and kw.get('portal_subject') != 'subject': + ticket_dic.update({ + 'subject_id': int(kw.get('portal_subject')), + }) + if kw.get('portal_description'): + ticket_dic.update({ + 'description': kw.get('portal_description'), + }) + if kw.get('portal_priority') and kw.get('portal_priority') != 'priority': + ticket_dic.update({ + 'priority': int(kw.get('portal_priority')), + }) + ticket_id = request.env['helpdesk.ticket'].sudo().create( + ticket_dic) + if 'portal_file' in request.params: + attached_files = request.httprequest.files.getlist( + 'portal_file') + attachment_ids = [] + for attachment in attached_files: + result = base64.b64encode(attachment.read()) + attachment_id = request.env['ir.attachment'].sudo().create({ + 'name': attachment.filename, + 'res_model': 'helpdesk.ticket', + 'res_id': ticket_id.id, + 'display_name': attachment.filename, + 'datas': result, + }) + attachment_ids.append(attachment_id.id) + ticket_id.attachment_ids = [(6, 0, attachment_ids)] + return werkzeug.utils.redirect("/my/tickets") diff --git a/sh_helpdesk/current_s.txt b/sh_helpdesk/current_s.txt new file mode 100644 index 0000000..2afa5af --- /dev/null +++ b/sh_helpdesk/current_s.txt @@ -0,0 +1 @@ + sh_lead_id = fields.Many2one("crm.lead", string="Lead")
\ No newline at end of file diff --git a/sh_helpdesk/data/helpdesk_cron_data.xml b/sh_helpdesk/data/helpdesk_cron_data.xml new file mode 100644 index 0000000..393f439 --- /dev/null +++ b/sh_helpdesk/data/helpdesk_cron_data.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<odoo> + <record id="cron_helpdesk_ticket_close" model="ir.cron"> + <field name="name">Auto Close Helpdesk Ticket</field> + <field name="interval_number">1</field> + <field name="interval_type">days</field> + <field name="numbercall">-1</field> + <field name="doall" eval="False" /> + <field name="model_id" ref="model_helpdesk_ticket" /> + <field name="code">model._run_auto_close_ticket()</field> + <field name="state">code</field> + </record> +</odoo> diff --git a/sh_helpdesk/data/helpdesk_data.xml b/sh_helpdesk/data/helpdesk_data.xml new file mode 100644 index 0000000..dad1667 --- /dev/null +++ b/sh_helpdesk/data/helpdesk_data.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<odoo> + <record id="helpdesk_ticket_seq" model="ir.sequence"> + <field name="name">Helpdesk Ticket Sequence</field> + <field name="code">helpdesk.ticket</field> + <field name="prefix">TICKET/</field> + <field name="padding">4</field> + <field name="company_id" eval="False" /> + </record> + <record id="helpdesk_tikcet_dashboard" model="ticket.dashboard"> + <field name="name">Ticket Dashboard</field> + </record> +</odoo> diff --git a/sh_helpdesk/data/helpdesk_email_data.xml b/sh_helpdesk/data/helpdesk_email_data.xml new file mode 100644 index 0000000..52dfb34 --- /dev/null +++ b/sh_helpdesk/data/helpdesk_email_data.xml @@ -0,0 +1,807 @@ +<?xml version="1.0" encoding="UTF-8"?> +<odoo> + <record id="sh_ticket_new_template" model="mail.template"> + <field name="name">New Ticket: Send by email</field> + <field name="model_id" ref="sh_helpdesk.model_helpdesk_ticket" /> + <field name="email_from">${object.company_id.partner_id.email_formatted |safe}</field> + <field name="partner_to">${object.partner_id.id}</field> + <field name="subject">${object.company_id.name} Your Ticket is generated (Ref ${object.name or 'n/a' })</field> + <field name="auto_delete" eval="False" /> + <field name="body_html" type="html"> + <div style="margin: 0px; padding: 0px;"> + <table border="0" width="100%" cellpadding="0" bgcolor="#ededed" style="padding: 20px; background-color: #ededed; border-collapse:separate;"> + <tbody> + <!-- HEADER --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#875A7B" style="min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;"> + <tr> + <td valign="middle"> + <span style="font-size:20px; color:white; font-weight: bold;"> + ${object.name} + </span> + </td> + <td valign="middle" align="right"> + <img src="/logo.png?company=${object.company_id.id}" style="padding: 0px; margin: 0px; height: auto; width: 80px;" alt="${object.company_id.name}" /> + </td> + </tr> + </table> + </td> + </tr> + + <!-- CONTENT --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#ffffff" style="min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;"> + <tbody> + <td valign="top" style="font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;"> + <p style="margin: 0px; padding: 0px; font-size: 13px;"> + Dear ${object.partner_id.name} We received your request. + <div class="predefined"></div> + <br /> + <br /> + Our Support Team will contact you as soon as possible. + <br /> + <br /> + <br /> + <center> + <a href="${object.get_portal_url()}" style="background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;" class="o_default_snippet_text">View Ticket</a> + </center> + <br /> + <br /> + </p> + </td> + </tbody> + </table> + </td> + </tr> + + <!-- FOOTER --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#875A7B" style="min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;"> + <tr> + <td valign="middle" align="left" style="color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;"> + ${object.company_id.name} + <br /> + ${object.company_id.phone or ''} + </td> + <td valign="middle" align="right" style="color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;"> + % if object.company_id.email: + <a href="mailto:${object.company_id.email}" style="text-decoration:none; color: white;">${object.company_id.email}</a> + <br /> + % endif + % if object.company_id.website: + <a href="${object.company_id.website}" style="text-decoration:none; color: white;"> + ${object.company_id.website} + </a> + % endif + </td> + </tr> + </table> + </td> + </tr> + </tbody> + </table> + </div> + </field> + </record> + <!-- code by nida --> + <record id="sh_ticket_new_template_to_admin" model="mail.template"> + <field name="name">New Ticket to Admin: Send by email</field> + <field name="model_id" ref="sh_helpdesk.model_helpdesk_ticket" /> + <field name="email_from">${object.company_id.partner_id.email_formatted |safe}</field> + <field name="partner_to">${object.company_id.partner_id.id}</field> + <field name="subject">${object.company_id.name} New Ticket Received In the System(Ref ${object.name or 'n/a' })</field> + <field name="auto_delete" eval="False" /> + <field name="body_html" type="html"> + <div style="margin: 0px; padding: 0px;"> + <table border="0" width="100%" cellpadding="0" bgcolor="#ededed" style="padding: 20px; background-color: #ededed; border-collapse:separate;"> + <tbody> + <!-- HEADER --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#875A7B" style="min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;"> + <tr> + <td valign="middle"> + <span style="font-size:20px; color:white; font-weight: bold;"> + ${object.name} + </span> + </td> + <td valign="middle" align="right"> + <img src="/logo.png?company=${object.company_id.id}" style="padding: 0px; margin: 0px; height: auto; width: 80px;" alt="${object.company_id.name}" /> + </td> + </tr> + </table> + </td> + </tr> + + <!-- CONTENT --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#ffffff" style="min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;"> + <tbody> + <td valign="top" style="font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;"> + <p style="margin: 0px; padding: 0px; font-size: 13px;"> + Dear ${object.company_id.name}, + <br/> + A new ticket is received in the system having following details: + <div class="predefined"></div> + <h2>Ticket Information</h2> + <strong>Ticket :</strong> + ${object.name} + <br /> + <br /> + <strong>Create Date :</strong> + ${object.create_date} + <br /> + <br /> + <strong>Due Date : </strong> + ${object.sh_due_date} + <br /> + <br /> + % if object.subject_id: + <strong>Subject : </strong> + ${object.subject_id.name} + <br /> + <br /> + % endif + % if object.ticket_type: + <strong>Type : </strong> + ${object.ticket_type.name} + <br /> + <br /> + % endif + % if object.category_id: + <strong>Category : </strong> + ${object.category_id.name} + <br /> + <br /> + % endif + % if object.sub_category_id: + <strong>Sub Category : </strong> + ${object.sub_category_id.name} + <br /> + <br /> + % endif + % if object.priority: + <strong>Priority : </strong> + ${object.priority.name} + <br /> + <br /> + % endif + <br /> + <br /> + Please process the ticket with details mentioned above. + <br /> + <br /> + Thankyou + <br/> + <br /> +<!-- <center>--> +<!-- <a href="${object.get_portal_url()}" style="background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;" class="o_default_snippet_text">View Ticket</a>--> +<!-- </center>--> + <br /> + <br /> + </p> + </td> + </tbody> + </table> + </td> + </tr> + + <!-- FOOTER --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#875A7B" style="min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;"> + <tr> + <td valign="middle" align="left" style="color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;"> + ${object.company_id.name} + <br /> + ${object.company_id.phone or ''} + </td> + <td valign="middle" align="right" style="color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;"> + % if object.company_id.email: + <a href="mailto:${object.company_id.email}" style="text-decoration:none; color: white;">${object.company_id.email}</a> + <br /> + % endif + % if object.company_id.website: + <a href="${object.company_id.website}" style="text-decoration:none; color: white;"> + ${object.company_id.website} + </a> + % endif + </td> + </tr> + </table> + </td> + </tr> + </tbody> + </table> + </div> + </field> + </record> + <!-- end by nida --> + <record id="sh_ticket_done_template" model="mail.template"> + <field name="name">Ticket is Resolved: Send by email</field> + <field name="model_id" ref="sh_helpdesk.model_helpdesk_ticket" /> + <field name="email_from">${object.create_uid.partner_id.email_formatted |safe}</field> + <field name="partner_to">${object.partner_id.id}</field> + <field name="subject">${object.company_id.name} Your ticket is resolved (Ref ${object.name or 'n/a' })</field> + <field name="auto_delete" eval="False" /> + <field name="body_html" type="html"> + <div style="margin: 0px; padding: 0px;"> + + + <table border="0" width="100%" cellpadding="0" bgcolor="#ededed" style="padding: 20px; background-color: #ededed; border-collapse:separate;"> + <tbody> + + <!-- HEADER --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#875A7B" style="min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;"> + <tr> + <td valign="middle"> + <span style="font-size:20px; color:white; font-weight: bold;"> + ${object.name} + </span> + </td> + <td valign="middle" align="right"> + <img src="/logo.png?company=${object.company_id.id}" style="padding: 0px; margin: 0px; height: auto; width: 80px;" alt="${object.company_id.name}" /> + </td> + </tr> + </table> + </td> + </tr> + + <!-- CONTENT --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#ffffff" style="min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;"> + <tbody> + <td valign="top" style="font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;"> + <p style="margin: 0px; padding: 0px; font-size: 13px;"> + Dear ${object.partner_id.name}, + <div class="predefined"></div> + <br /> + <br /> + As your request we have resolved your ticket. + <br /> + <br /> + <br /> + <center> + <a href="/my/tickets/${object.id}" style="background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;" class="o_default_snippet_text">View Ticket</a> + </center> + <br /> + <br /> + </p> + </td> + </tbody> + </table> + </td> + </tr> + + <!-- FOOTER --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#875A7B" style="min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;"> + <tr> + <td valign="middle" align="left" style="color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;"> + ${object.company_id.name} + <br /> + ${object.company_id.phone or ''} + </td> + <td valign="middle" align="right" style="color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;"> + % if object.company_id.email: + <a href="mailto:${object.company_id.email}" style="text-decoration:none; color: white;">${object.company_id.email}</a> + <br /> + % endif + % if object.company_id.website: + <a href="${object.company_id.website}" style="text-decoration:none; color: white;"> + ${object.company_id.website} + </a> + % endif + </td> + </tr> + </table> + </td> + </tr> + </tbody> + </table> + + </div> + </field> + </record> + <record id="sh_ticket_cancelled_template" model="mail.template"> + <field name="name">Ticket is Cancelled: Send by email</field> + <field name="model_id" ref="sh_helpdesk.model_helpdesk_ticket" /> + <field name="email_from">${object.create_uid.partner_id.email_formatted |safe}</field> + <field name="partner_to">${object.partner_id.id}</field> + <field name="subject">${object.company_id.name} Your ticket is cancelled (Ref ${object.name or 'n/a' })</field> + <field name="auto_delete" eval="False" /> + <field name="body_html" type="html"> + <div style="margin: 0px; padding: 0px;"> + + + <table border="0" width="100%" cellpadding="0" bgcolor="#ededed" style="padding: 20px; background-color: #ededed; border-collapse:separate;"> + <tbody> + + <!-- HEADER --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#875A7B" style="min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;"> + <tr> + <td valign="middle"> + <span style="font-size:20px; color:white; font-weight: bold;"> + ${object.name} + </span> + </td> + <td valign="middle" align="right"> + <img src="/logo.png?company=${object.company_id.id}" style="padding: 0px; margin: 0px; height: auto; width: 80px;" alt="${object.company_id.name}" /> + </td> + </tr> + </table> + </td> + </tr> + + <!-- CONTENT --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#ffffff" style="min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;"> + <tbody> + <td valign="top" style="font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;"> + <p style="margin: 0px; padding: 0px; font-size: 13px;"> + Dear ${object.partner_id.name}, + <div class="predefined"></div> + <br /> + <br /> + Your ticket is cancelled for now based on some technical issue. + <br /> + <br /> + <br /> + <center> + <a href="/my/tickets/${object.id}" style="background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;" class="o_default_snippet_text">View Ticket</a> + </center> + <br /> + <br /> + </p> + </td> + </tbody> + </table> + </td> + </tr> + + <!-- FOOTER --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#875A7B" style="min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;"> + <tr> + <td valign="middle" align="left" style="color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;"> + ${object.company_id.name} + <br /> + ${object.company_id.phone or ''} + </td> + <td valign="middle" align="right" style="color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;"> + % if object.company_id.email: + <a href="mailto:${object.company_id.email}" style="text-decoration:none; color: white;">${object.company_id.email}</a> + <br /> + % endif + % if object.company_id.website: + <a href="${object.company_id.website}" style="text-decoration:none; color: white;"> + ${object.company_id.website} + </a> + % endif + </td> + </tr> + </table> + </td> + </tr> + </tbody> + </table> + + </div> + </field> + </record> + <record id="sh_ticket_reopened_template" model="mail.template"> + <field name="name">Ticket is Re-Opened: Send by email</field> + <field name="model_id" ref="sh_helpdesk.model_helpdesk_ticket" /> + <field name="email_from">${object.create_uid.partner_id.email_formatted |safe}</field> + <field name="partner_to">${object.partner_id.id}</field> + <field name="subject">${object.company_id.name} Your ticket is re-opened (Ref ${object.name or 'n/a' })</field> + <field name="auto_delete" eval="False" /> + <field name="body_html" type="html"> + <div style="margin: 0px; padding: 0px;"> + + + <table border="0" width="100%" cellpadding="0" bgcolor="#ededed" style="padding: 20px; background-color: #ededed; border-collapse:separate;"> + <tbody> + + <!-- HEADER --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#875A7B" style="min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;"> + <tr> + <td valign="middle"> + <span style="font-size:20px; color:white; font-weight: bold;"> + ${object.name} + </span> + </td> + <td valign="middle" align="right"> + <img src="/logo.png?company=${object.company_id.id}" style="padding: 0px; margin: 0px; height: auto; width: 80px;" alt="${object.company_id.name}" /> + </td> + </tr> + </table> + </td> + </tr> + + <!-- CONTENT --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#ffffff" style="min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;"> + <tbody> + <td valign="top" style="font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;"> + <p style="margin: 0px; padding: 0px; font-size: 13px;"> + Dear ${object.partner_id.name} Your ticket is Re-opened, + <div class="predefined"></div> + <br /> + <br /> + We will follow-up as soon as possible. + <br /> + <br /> + <br /> + <center> + <a href="/my/tickets/${object.id}" style="background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;" class="o_default_snippet_text">View Ticket</a> + </center> + <br /> + <br /> + </p> + </td> + </tbody> + </table> + </td> + </tr> + + <!-- FOOTER --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#875A7B" style="min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;"> + <tr> + <td valign="middle" align="left" style="color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;"> + ${object.company_id.name} + <br /> + ${object.company_id.phone or ''} + </td> + <td valign="middle" align="right" style="color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;"> + % if object.company_id.email: + <a href="mailto:${object.company_id.email}" style="text-decoration:none; color: white;">${object.company_id.email}</a> + <br /> + % endif + % if object.company_id.website: + <a href="${object.company_id.website}" style="text-decoration:none; color: white;"> + ${object.company_id.website} + </a> + % endif + </td> + </tr> + </table> + </td> + </tr> + </tbody> + </table> + + + </div> + </field> + </record> + <record id="sh_ticket_user_allocation_template" model="mail.template"> + <field name="name">Ticket Allocation to assign user: Send by email</field> + <field name="model_id" ref="sh_helpdesk.model_helpdesk_ticket" /> + <field name="subject">${object.company_id.name} Ticket is assign to user (Ref ${object.name or 'n/a' })</field> + <field name="auto_delete" eval="False" /> + <field name="body_html" type="html"> + <div style="margin: 0px; padding: 0px;"> + + <table border="0" width="100%" cellpadding="0" bgcolor="#ededed" style="padding: 20px; background-color: #ededed; border-collapse:separate;"> + <tbody> + + <!-- HEADER --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#875A7B" style="min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;"> + <tr> + <td valign="middle"> + <span style="font-size:20px; color:white; font-weight: bold;"> + ${object.name} + </span> + </td> + <td valign="middle" align="right"> + <img src="/logo.png?company=${object.company_id.id}" style="padding: 0px; margin: 0px; height: auto; width: 80px;" alt="${object.company_id.name}" /> + </td> + </tr> + </table> + </td> + </tr> + + <!-- CONTENT --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#ffffff" style="min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;"> + <tbody> + <td valign="top" style="font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;"> + <p style="margin: 0px; padding: 0px; font-size: 13px;"> + <div class="predefined"></div> + We Have received new ticket from customer. + <br /> + <br /> + Please take a follow-up as soon as possible. + <br /> + <br /> + <br /> + <center> + <a href="${object.form_url}" style="background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;" class="o_default_snippet_text">View Ticket</a> + </center> + <br /> + <br /> + </p> + </td> + </tbody> + </table> + </td> + </tr> + + <!-- FOOTER --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#875A7B" style="min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;"> + <tr> + <td valign="middle" align="left" style="color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;"> + ${object.company_id.name} + <br /> + ${object.company_id.phone or ''} + </td> + <td valign="middle" align="right" style="color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;"> + % if object.company_id.email: + <a href="mailto:${object.company_id.email}" style="text-decoration:none; color: white;">${object.company_id.email}</a> + <br /> + % endif + % if object.company_id.website: + <a href="${object.company_id.website}" style="text-decoration:none; color: white;"> + ${object.company_id.website} + </a> + % endif + </td> + </tr> + </table> + </td> + </tr> + </tbody> + </table> + </div> + </field> + </record> + <record id="sh_ticket_replay_template" model="mail.template"> + <field name="name">Ticket Reply: Send by email</field> + <field name="model_id" ref="sh_helpdesk.model_helpdesk_ticket" /> + <field name="email_from">${object.create_uid.partner_id.email_formatted |safe}</field> + <field name="partner_to">${object.partner_id.id}</field> + <field name="subject">Ticket reply from ${object.company_id.name} (Ref ${object.name or 'n/a' })</field> + <field name="auto_delete" eval="False" /> + <field name="body_html" type="html"> + <div style="margin: 0px; padding: 0px;"> + + <table border="0" width="100%" cellpadding="0" bgcolor="#ededed" style="padding: 20px; background-color: #ededed; border-collapse:separate;"> + <tbody> + + <!-- HEADER --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#875A7B" style="min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;"> + <tr> + <td valign="middle"> + <span style="font-size:20px; color:white; font-weight: bold;"> + ${object.name} + </span> + </td> + <td valign="middle" align="right"> + <img src="/logo.png?company=${object.company_id.id}" style="padding: 0px; margin: 0px; height: auto; width: 80px;" alt="${object.company_id.name}" /> + </td> + </tr> + </table> + </td> + </tr> + + <!-- CONTENT --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#ffffff" style="min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;"> + <tbody> + <td valign="top" style="font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;"> + <p style="margin: 0px; padding: 0px; font-size: 13px;"> + Dear ${object.partner_id.name}, + <div class="predefined"></div> + <br /> + <br /> + Your Ticket is working on we will contact you soon. + <br /> + <br /> + <br /> + <center> + <a href="/my/tickets/${object.id}" style="background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;" class="o_default_snippet_text">View Ticket</a> + </center> + <br /> + <br /> + </p> + </td> + </tbody> + </table> + </td> + </tr> + + <!-- FOOTER --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#875A7B" style="min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;"> + <tr> + <td valign="middle" align="left" style="color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;"> + ${object.company_id.name} + <br /> + ${object.company_id.phone or ''} + </td> + <td valign="middle" align="right" style="color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;"> + % if object.company_id.email: + <a href="mailto:${object.company_id.email}" style="text-decoration:none; color: white;">${object.company_id.email}</a> + <br /> + % endif + % if object.company_id.website: + <a href="${object.company_id.website}" style="text-decoration:none; color: white;"> + ${object.company_id.website} + </a> + % endif + </td> + </tr> + </table> + </td> + </tr> + </tbody> + </table> + + + </div> + </field> + </record> + <record id="sh_ticket_closed_template" model="mail.template"> + <field name="name">Closed Ticket: Send by email</field> + <field name="model_id" ref="sh_helpdesk.model_helpdesk_ticket" /> + <field name="email_from">${object.create_uid.partner_id.email_formatted |safe}</field> + <field name="partner_to">${object.partner_id.id}</field> + <field name="subject">${object.company_id.name} Your ticket is closed (Ref ${object.name or 'n/a' })</field> + <field name="auto_delete" eval="False" /> + <field name="body_html" type="html"> + <div style="margin: 0px; padding: 0px;"> + <table border="0" width="100%" cellpadding="0" bgcolor="#ededed" style="padding: 20px; background-color: #ededed; border-collapse:separate;"> + <tbody> + + <!-- HEADER --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#875A7B" style="min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;"> + <tr> + <td valign="middle"> + <span style="font-size:20px; color:white; font-weight: bold;"> + ${object.name} + </span> + </td> + <td valign="middle" align="right"> + <img src="/logo.png?company=${object.company_id.id}" style="padding: 0px; margin: 0px; height: auto; width: 80px;" alt="${object.company_id.name}" /> + </td> + </tr> + </table> + </td> + </tr> + + <!-- CONTENT --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#ffffff" style="min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;"> + <tbody> + <td valign="top" style="font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;"> + <p style="margin: 0px; padding: 0px; font-size: 13px;"> + Dear ${object.partner_id.name}, + <div class="predefined"></div> + <br /> + <br /> + Your Ticket is closed for now, if you want to Re-open your ticket please give your reply. + <br /> + <br /> + We would like to get your feedback on the support. + <br /> + <br /> + <br /> + <center> + <a href="/ticket/feedback/${object.id}" style="background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;" class="o_default_snippet_text">Give Feedback</a> + </center> + <br /> + <br /> + </p> + </td> + </tbody> + </table> + </td> + </tr> + + <!-- FOOTER --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#875A7B" style="min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;"> + <tr> + <td valign="middle" align="left" style="color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;"> + ${object.company_id.name} + <br /> + ${object.company_id.phone or ''} + </td> + <td valign="middle" align="right" style="color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;"> + % if object.company_id.email: + <a href="mailto:${object.company_id.email}" style="text-decoration:none; color: white;">${object.company_id.email}</a> + <br /> + % endif + % if object.company_id.website: + <a href="${object.company_id.website}" style="text-decoration:none; color: white;"> + ${object.company_id.website} + </a> + % endif + </td> + </tr> + </table> + </td> + </tr> + </tbody> + </table> + </div> + </field> + </record> + <record id="sh_send_whatsapp_email_template" model="mail.template"> + <field name="name">Ticket Whatsapp: Send by email</field> + <field name="model_id" ref="sh_helpdesk.model_helpdesk_ticket" /> + <field name="email_from">${object.create_uid.email_formatted |safe}</field> + <field name="partner_to">${object.partner_id.id}</field> + <field name="subject">${object.company_id.name} (Ref ${object.name or 'n/a' })</field> + <field name="body_html" type="html"> + <div style="margin: 0px; padding: 0px;"> + <p style="margin: 0px; padding: 0px; font-size: 13px;"> + <div style="list-style-type: none;"> + Dear ${object.partner_id.name} ,%0A%0A + Here is the your Ticket *${object.name}* + from ${object.company_id.name} %0A%0A + % if object.company_id.sh_ticket_product_detail: + % if object.product_ids: + <div class="predefined"></div> + + <span style="list-style-type: none;"> + *Following is your product details*.%0A%0A + </span> + %for line in object.product_ids: + <span class="badge badge-info" style="list-style-type:none;"> + ${line.name_get()[0][1]}%0A%0A + </span> + % endfor + % endif + % endif + <br /> + % if object.company_id.sh_pdf_in_message: + <span style="list-style-type: none;">*Click here to download Ticket Document* %20 :${object.sh_ticket_report_url} %0A%0A</span> + % endif + <br /> + % if object.company_id.sh_ticket_url_in_message: + <span style="list-style-type: none;">*Click here to See Ticket History* %20 :${object.portal_ticket_url_wp} %0A%0A</span> + % endif + <br /> + % if object.company_id.sh_signature and object.env.user.sign : + <span style="list-style-type: none;">%20 *${object.env.user.sign}* %0A%0A</span> + % endif + </div> + </p> + </div> + </field> + <field name="lang">${object.partner_id.lang}</field> + <field name="auto_delete" eval="False" /> + </record> +</odoo>
\ No newline at end of file diff --git a/sh_helpdesk/data/helpdesk_reminder_cron.xml b/sh_helpdesk/data/helpdesk_reminder_cron.xml new file mode 100644 index 0000000..18dab78 --- /dev/null +++ b/sh_helpdesk/data/helpdesk_reminder_cron.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<odoo> + <record id="cron_ticket_reminder" model="ir.cron"> + <field name="name">Ticket Reminder</field> + <field name="interval_number">1</field> + <field name="interval_type">minutes</field> + <field name="numbercall">-1</field> + <field name="doall" eval="False" /> + <field name="model_id" ref="model_sh_ticket_alarm" /> + <field name="code">model._run_ticket_reminder()</field> + <field name="state">code</field> + </record> +</odoo> diff --git a/sh_helpdesk/data/helpdesk_reminder_mail_template.xml b/sh_helpdesk/data/helpdesk_reminder_mail_template.xml new file mode 100644 index 0000000..fe5c9e7 --- /dev/null +++ b/sh_helpdesk/data/helpdesk_reminder_mail_template.xml @@ -0,0 +1,187 @@ +<?xml version="1.0" encoding="UTF-8"?> +<odoo> + <data noupdate="1"> + <record id="sh_ticket_reminder_mail_template" model="mail.template"> + <field name="name">Ticket Reminder</field> + <field name="model_id" ref="sh_helpdesk.model_helpdesk_ticket" /> + <field name="email_from">${object.company_id.partner_id.email_formatted |safe}</field> + <field name="subject">${object.company_id.name} Ticket Reminder(Ref ${object.name or 'n/a' })</field> + <field name="auto_delete" eval="False" /> + <field name="body_html" type="html"> + <div style="margin: 0px; padding: 0px;"> + <table border="0" width="100%" cellpadding="0" bgcolor="#ededed" style="padding: 20px; background-color: #ededed; border-collapse:separate;" summary="o_mail_notification"> + <tbody> + + <!-- HEADER --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#875A7B" style="min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;"> + <tr> + <td valign="middle"> + <span style="font-size:20px; color:white; font-weight: bold;"> + <strong>Ticket Remainder (${object.name})</strong> + </span> + </td> + <td valign="middle" align="right"> + <img src="/logo.png?company=${object.company_id.id}" style="padding: 0px; margin: 0px; height: auto; width: 80px;" alt="${object.company_id.name}" /> + </td> + </tr> + </table> + </td> + </tr> + + <!-- CONTENT --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#ffffff" style="min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;"> + <tbody> + <td valign="top" style="font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;"> + <p style="margin: 0px; padding: 0px; font-size: 13px;"> + <div class="predefined"></div> + + <h2>Ticket Information</h2> + <strong>Ticket :</strong> + ${object.name} + <br /> + <br /> + <strong>Create Date :</strong> + ${object.create_date} + <br /> + <br /> + <strong>Due Date : </strong> + ${object.sh_due_date} + <br /> + <br /> + % if object.subject_id: + <strong>Subject : </strong> + ${object.subject_id.name} + <br /> + <br /> + % endif + % if object.ticket_type: + <strong>Type : </strong> + ${object.ticket_type.name} + <br /> + <br /> + % endif + % if object.category_id: + <strong>Category : </strong> + ${object.category_id.name} + <br /> + <br /> + % endif + % if object.sub_category_id: + <strong>Sub Category : </strong> + ${object.sub_category_id.name} + <br /> + <br /> + % endif + % if object.priority: + <strong>Priority : </strong> + ${object.priority.name} + <br /> + <br /> + % endif + % if object.team_id: + <strong>Team : </strong> + ${object.team_id.name} + <br /> + <br /> + % endif + % if object.team_head: + <strong>Team Head : </strong> + ${object.team_head.name} + <br /> + <br /> + % endif + % if object.user_id: + <strong>Assigned To : </strong> + ${object.user_id.name} + <br /> + <br /> + % endif + % if object.sh_user_ids: + <strong>Assign Multi Users :</strong> + % for row in object.sh_user_ids : + <span class="badge badge-info" style="padding-right:5px"> + ${row.name} + </span> + %endfor + <br /> + <br /> + % endif + % if object.tag_ids: + <strong>Tags :</strong> + % for row in object.tag_ids : + <span class="badge badge-info" style="padding-right:5px"> + ${row.name} + </span> + %endfor + <br /> + <br /> + % endif + % if object.product_ids: + <strong>Products :</strong> + % for row in object.product_ids: + <span class="badge badge-info" style="padding-right:5px"> + ${row.name_get()[0][1]} + </span> + %endfor + <br /> + <br /> + % endif + <strong>Partner : </strong> + ${object.partner_id.name} + <br /> + <br /> + <strong>Person Name : </strong> + ${object.person_name} + <br /> + <br /> + <strong>Email : </strong> + ${object.email} + <br /> + <br /> + <br /> + <center> + <a href="${object.form_url}" style="background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;" class="o_default_snippet_text">View Ticket</a> + </center> + </p> + </td> + </tbody> + </table> + </td> + </tr> + + <!-- FOOTER --> + <tr> + <td align="center" style="min-width: 590px;"> + <table width="590" border="0" cellpadding="0" bgcolor="#875A7B" style="min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;"> + <tr> + <td valign="middle" align="left" style="color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;"> + ${object.company_id.name} + <br /> + ${object.company_id.phone or ''} + </td> + <td valign="middle" align="right" style="color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;"> + % if object.company_id.email: + <a href="mailto:${object.company_id.email}" style="text-decoration:none; color: white;">${object.company_id.email}</a> + <br /> + % endif + % if object.company_id.website: + <a href="${object.company_id.website}" style="text-decoration:none; color: white;"> + ${object.company_id.website} + </a> + % endif + </td> + </tr> + </table> + </td> + </tr> + </tbody> + </table> + </div> + </field> + </record> + </data> +</odoo>
\ No newline at end of file diff --git a/sh_helpdesk/data/helpdesk_stage_data.xml b/sh_helpdesk/data/helpdesk_stage_data.xml new file mode 100644 index 0000000..2395d6c --- /dev/null +++ b/sh_helpdesk/data/helpdesk_stage_data.xml @@ -0,0 +1,51 @@ +<?xml version="1.0" encoding="UTF-8"?> +<odoo> + <data noupdate="1"> + <record id="close_stage" model="helpdesk.stages"> + <field name="name">Closed</field> + <field name="sequence">4</field> + <field name="mail_template_ids" eval="[(4, ref('sh_helpdesk.sh_ticket_closed_template'))]" /> + </record> + <record id="done_stage" model="helpdesk.stages"> + <field name="name">Done</field> + <field name="sh_next_stage" ref="close_stage" /> + <field name="sequence">3</field> + <field name="mail_template_ids" eval="[(4, ref('sh_helpdesk.sh_ticket_done_template'))]" /> + </record> + <record id="in_progress_stage" model="helpdesk.stages"> + <field name="name">In Progress</field> + <field name="sh_next_stage" ref="done_stage" /> + <field name="sequence">2</field> + </record> + <record id="new_stage" model="helpdesk.stages"> + <field name="name">New</field> + <field name="sh_next_stage" ref="in_progress_stage" /> + <field name="sequence">1</field> + <field name="mail_template_ids" eval="[(4, ref('sh_helpdesk.sh_ticket_new_template'))]" /> + </record> + <record id="cancel_stage" model="helpdesk.stages"> + <field name="name">Cancelled</field> + <field name="sequence">5</field> + <field name="mail_template_ids" eval="[(4, ref('sh_helpdesk.sh_ticket_cancelled_template'))]" /> + </record> + <record id="reopen_stage" model="helpdesk.stages"> + <field name="name">Reopened</field> + <field name="sequence">6</field> + <field name="sh_next_stage" ref="in_progress_stage" /> + <field name="mail_template_ids" eval="[(4, ref('sh_helpdesk.sh_ticket_reopened_template'))]" /> + </record> + <record id="base.main_company" model="res.company"> + <field name="name">My Company</field> + <field name="partner_id" ref="base.main_partner" /> + <field name="new_stage_id" ref="new_stage" /> + <field name="cancel_stage_id" ref="cancel_stage" /> + <field name="done_stage_id" ref="done_stage" /> + <field name="close_stage_id" ref="close_stage" /> + <field name="reopen_stage_id" ref="reopen_stage" /> + <field name="allocation_mail_template_id" ref="sh_helpdesk.sh_ticket_user_allocation_template" /> + <field name="reply_mail_template_id" ref="sh_helpdesk.sh_ticket_replay_template" /> + <field name="dashboard_filter" eval="[(4, ref('new_stage')),(4, ref('in_progress_stage')),(4, ref('cancel_stage')),(4, ref('done_stage')),(4, ref('close_stage')),(4, ref('reopen_stage'))]" /> + <field name="dashboard_tables" eval="[(4, ref('new_stage')),(4, ref('in_progress_stage')),(4, ref('cancel_stage')),(4, ref('done_stage')),(4, ref('close_stage')),(4, ref('reopen_stage'))]" /> + </record> + </data> +</odoo> diff --git a/sh_helpdesk/doc/changelog.rst b/sh_helpdesk/doc/changelog.rst new file mode 100644 index 0000000..a8a6d12 --- /dev/null +++ b/sh_helpdesk/doc/changelog.rst @@ -0,0 +1,82 @@ +Changelog +========= +14.0.1 +------------------------- +Initial Release + +14.0.2 +------------------------- +-solve issue of mail.template load. + +14.0.3 +------------------------- +-solve issue of display menu of ticket in customer portal and change layout of responsive and change domain in portal. + +14.0.4 +----------------------- +-add one field portal access in user and it's value is portal support user/leader/manager and it is display only for portal user not for internal user. +-change some domain on customer portal helpdesk basis on portal access field which put in user model. +-solve security issue related to portal and portal token and add partner as follower in helpdesk ticket. +-solve bug of email alias ticket creation. +-added partner input in create ticket model popup. + + +14.0.5 ( Date: 26th January 2021) + +--------------------------------- + +[Add] Email Quick Reply Feature. + +14.0.6 (Date : 4th Feb 2021) +----------------------------------- +[UPDATE] added configuration to add multi users in helpdesk ticket configuration. +[UPDATE] added multi users field based on multi users configuration in helpdesk ticket for view. +[UPDATE] display ticket to assigned user as well as assigned multi users also in backend dashboard and create ticket with multi users. +[UPDATE] display ticket to assigned user as well as assigned multi users also in portal. + +14.0.7 (Date : 22nd March 2021) +----------------------------------- +[ADD] add configuration to manage products and field of products in helpdesk ticket model and display in ticket pdf report also. + +14.0.8 (Date : 4th May 2021) +--------------------------------------- +[UPDATE] remove required attribute from new_stage_id field in res.config.setting + +14.0.9 (Date : 17th May 2021) +------------------------------------------ +[ADD]searchpanel is added to list and kanban view of ticket +[ADD]Helpdesk SLA Policy is added. +[ADD]Helpdesk Ticket Reminder is added with configuration. +[UPDATE]changed some menu positions and email template formats. + +14.0.10 (Date : 25th May 2021) +------------------------------------------- +[ADD] whatsapp feature is added in ticket dashboard as well as in ticket form view with some configuration also added. +[UPDATE] fetch tickets with desc order and update team leader filter in ticket dashboard. +[UPDATE] update create date and write date value in dashboard. +[UPDATE] update kanban stages view like if any stages have no tickets then also stages display in kanban view. + +14.0.11 (Date : 5th July 2021) +-------------------------------- +[ADD] email subject field is added in form,kanban view for direct email comes from customer. +[ADD] configuration is added for stop consecutive email from portal when customer see their tickets. + +14.0.12 (Date :15th July 2021) +-------------------------------- +[UPDATE] update filter in one shots and field is added like name,email,email subject etc. +[ADD] auto add follower configuration is added for customer when create ticket. +[ADD] when click on counter tiles it will redirect with records from ticket dashboard. +[UPDATE] update replied status and date when staff replied/customer replied. +[UPDATE] update auto close ticket based on replied date and replied status is staff replied. + +14.0.13 (Date : 20th July 2021) +----------------------------------- +[FIX] small error fixed when close ticket from scheduler. + +14.0.14 (Date: 22th July 2021) +------------------------------------ + +[ADD] Group for allow access mass update multiaction +[ADD] Multi Action for mass update (assign_to,multi_user,state,add/remove follower) +[ADD] "Common for all" in Send Quick Reply +[ADD] "predefined" div class in all template diff --git a/sh_helpdesk/i18n/ar.po b/sh_helpdesk/i18n/ar.po new file mode 100644 index 0000000..c15b5ef --- /dev/null +++ b/sh_helpdesk/i18n/ar.po @@ -0,0 +1,2404 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sh_helpdesk +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 14.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-12-22 10:05+0000\n" +"PO-Revision-Date: 2020-12-22 10:05+0000\n" +"Last-Translator: \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_user_allocation_template +msgid "" +"${object.company_id.name} Ticket is assign to user (Ref ${object.name or " +"'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_new_template +msgid "" +"${object.company_id.name} Your Ticket is generated (Ref ${object.name or " +"'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_cancelled_template +msgid "" +"${object.company_id.name} Your ticket is cancelled (Ref ${object.name or " +"'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_closed_template +msgid "" +"${object.company_id.name} Your ticket is closed (Ref ${object.name or 'n/a' " +"})" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_reopened_template +msgid "" +"${object.company_id.name} Your ticket is re-opened (Ref ${object.name or " +"'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_done_template +msgid "" +"${object.company_id.name} Your ticket is resolved (Ref ${object.name or " +"'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_feedback_thank_you +msgid "&times;" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_reopened_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\t\n" +"\t\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDear ${object.partner_id.name} Your ticket is Re-opened,\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tWe will follow-up as soon as possible.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/my/tickets/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\t\n" +"\t\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_closed_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t\t\tDear ${object.partner_id.name},\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tYour Ticket is closed for now, if you want to Re-open your ticket please give your reply.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tWe would like to get your feedback on the support.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/ticket/feedback/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">Give Feedback</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_new_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" <p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDear ${object.partner_id.name} We received your request.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tOur Support Team will contact you as soon as possible.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"${object.get_portal_url()}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_user_allocation_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t\t\tWe Have received new ticket from customer.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tPlease take a follow-up as soon as possible.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t \t<a href=\"${object.form_url}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t </center>\n" +"\t\t\t\t\t\t\t <br/>\n" +"\t\t\t\t\t\t\t <br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_replay_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDear ${object.partner_id.name},\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tYour Ticket is working on we will contact you soon.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/my/tickets/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\n" +"\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_cancelled_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\n" +"\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDear ${object.partner_id.name},\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t \t\tYour ticket is cancelled for now based on some technical issue.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/my/tickets/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_done_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\n" +"\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDear ${object.partner_id.name},\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t \t\tAs your request we have resolved your ticket.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/my/tickets/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Category:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Created By:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Customer:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Priority:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Reply Status:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Status:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Sub Category:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Subject:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Ticket Type:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_home_menu_ticket +msgid "<em>Ticket</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "<i class=\"fa fa-comment\"/> Send message" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "<i class=\"fa fa-download\"/> Download" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<i class=\"fa fa-plus\"/> Create New" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "<span>Stage :</span>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "<strong class=\"text-muted\">Your Contact</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Assigned User</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +msgid "<strong>Cancelled By</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Cancelled Date</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Cancelled Reason</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Category</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Closed By</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Closed Date</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Create Date</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Customer Comment</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Customer Rating</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Customer</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +msgid "<strong>Description</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Email</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Last Update Date</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Person Name</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Priority</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Replied Date</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +msgid "<strong>Reply Status</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +msgid "<strong>Status</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Sub Category</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Team Head</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Team</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +msgid "<strong>Ticket Status</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Ticket Subject Type</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Ticket Type</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__access_warning +msgid "Access warning" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Action" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_needaction +msgid "Action Needed" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__active +msgid "Active" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_ids +msgid "Activities" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_exception_decoration +msgid "Activity Exception Decoration" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_state +msgid "Activity State" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_type_icon +msgid "Activity Type Icon" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "All" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__ticket_allocated +msgid "Allocated" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Approve" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Archived" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Assign To" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Assign User" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__user_id +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Assigned User" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_attachment_count +msgid "Attachment Count" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__attachment_ids +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Attachments" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.server,name:sh_helpdesk.cron_helpdesk_ticket_close_ir_actions_server +#: model:ir.cron,cron_name:sh_helpdesk.cron_helpdesk_ticket_close +#: model:ir.cron,name:sh_helpdesk.cron_helpdesk_ticket_close +msgid "Auto Close Helpdesk Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__auto_close_ticket +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__auto_close_ticket +msgid "Auto Close Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_team_form_view +msgid "Avatar" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_button_boolean +msgid "Cancel Button" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_reason +msgid "Cancel Reason" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_stage_boolean +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__cancel_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__cancel_stage_id +msgid "Cancel Stage" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Cancel Ticket" +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.cancel_stage +#, python-format +msgid "Cancelled" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_by +msgid "Cancelled By" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_date +msgid "Cancelled Date" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Cancelled Tickets" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__category_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__category +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__category +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Category" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_category_view_form +msgid "Category Name" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__category_bool +msgid "Category Setting" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Close" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__close_date +msgid "Close Date" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Close Ticket" +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.close_stage +#, python-format +msgid "Closed" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__close_by +msgid "Closed By" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Closed Comment" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__closed_stage_boolean +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__close_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__close_stage_id +msgid "Closed Stage" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__color +msgid "Color" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__color +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__color +msgid "Color Index" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__comment +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_feedback_page +msgid "Comment" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_res_company +msgid "Companies" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__company_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__company_id +msgid "Company" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Completed Tickets" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_res_config_settings +msgid "Config Settings" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_config_menu +msgid "Configuration" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "Contact" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Create Date" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Create Helpdesk Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Create Support Request" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Create Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_stages_action +msgid "Create a New Stage" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_subject_type_action +msgid "Create a New Subject Type" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_tags_action +msgid "Create a New Tag" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_team_action +msgid "Create a New Team" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_ticket_action +msgid "Create a New Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_ticket_type_action +msgid "Create a New Ticket Type" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_category_action +msgid "Create new category" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_subcategory_action +msgid "Create new sub category" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#, python-format +msgid "Created By" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__create_uid +msgid "Created by" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__create_date +msgid "Created on" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Current Month" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Current Week" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Current Year" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Custom" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#, python-format +msgid "Customer" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__customer_comment +msgid "Customer Comment" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Customer Name" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__access_url +msgid "Customer Portal URL" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__priority_new +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__customer_rating +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__customer_rating +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Customer Rating" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__state__customer_replied +msgid "Customer Replied" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__dashboard_filter +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__dashboard_filter +msgid "Dashbaord Filter" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__dashboard_tables +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__dashboard_tables +msgid "Dashbaord Tables" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.sh_menu_ticket_dashboard +msgid "Dashboard" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Data not available." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__sh_default_user_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__sh_default_user_id +msgid "Default Assign User" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__sh_default_team_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__sh_default_team_id +msgid "Default Team" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__description +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Description" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__display_name +msgid "Display Name" +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.done_stage +#, python-format +msgid "Done" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__done_button_boolean +msgid "Done Button" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__done_stage_boolean +msgid "Done Stage" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "Download" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__new_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__new_stage_id +msgid "Draft/New Stage" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__email +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Email" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__6 +msgid "Excellent" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_follower_ids +msgid "Followers" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_channel_ids +msgid "Followers (Channels)" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_partner_ids +msgid "Followers (Partners)" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__activity_type_icon +msgid "Font awesome icon e.g. fa-tasks" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__form_url +msgid "Form Url" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Group By" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__sh_group_ids +msgid "Groups" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.module.category,description:sh_helpdesk.module_helpdesk_category +#: model:ir.module.category,name:sh_helpdesk.module_helpdesk_category +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_main_menu +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Helpdesk" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_category_action +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_category_menu +msgid "Helpdesk Categories" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_helpdesk_category +msgid "Helpdesk Category" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_priority_action +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_priority_menu +msgid "Helpdesk Priorities" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_helpdesk_priority +msgid "Helpdesk Priority" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.action_helpdesk_configuration +msgid "Helpdesk Settings" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_stages_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_stages +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_stages_menu +msgid "Helpdesk Stages" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_subcategory_action +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_subcategory_menu +msgid "Helpdesk Sub Categories" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_helpdesk_subcategory +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subcategory_view_form +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subcategory_view_tree +msgid "Helpdesk SubCategory" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_subject_type_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_sub_type +msgid "Helpdesk Subject Type" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_subject_type_menu +msgid "Helpdesk Subject Types" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_tags_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_tags +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_tags_menu +msgid "Helpdesk Tags" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_team_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_team +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_team_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_team_tree_view +msgid "Helpdesk Team" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_team_menu +msgid "Helpdesk Teams" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.report,name:sh_helpdesk.action_portal_report_helpdesk_ticket +#: model:ir.actions.report,name:sh_helpdesk.action_report_helpdesk_ticket +#: model:ir.model,name:sh_helpdesk.model_helpdesk_ticket +msgid "Helpdesk Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Helpdesk Ticket Search" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_ticket_type_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_ticket_type +msgid "Helpdesk Ticket Type" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_ticket_type_menu +msgid "Helpdesk Ticket Types" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_ticket_action +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_tickets_sub_menu +msgid "Helpdesk Tickets" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__4 +msgid "High" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "History" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__id +msgid "ID" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_exception_icon +msgid "Icon" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__activity_exception_icon +msgid "Icon to indicate an exception activity." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_needaction +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_unread +msgid "If checked, new messages require your attention." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_has_error +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_has_sms_error +msgid "If checked, some messages have a delivery error." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__active +msgid "" +"If unchecked, it will allow you to hide the product without removing it." +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.in_progress_stage +#, python-format +msgid "In Progress" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__is_cancel_button_visible +msgid "Is Cancel Button Visible ?" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_is_follower +msgid "Is Follower" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__is_done_button_visible +msgid "Is Resolved Button Visible ?" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_feedback_page +msgid "" +"It looks like you're feeling <span id=\"result\" " +"onclick=\"updateValue(this)\">happy</span> today.." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard____last_update +msgid "Last Modified on" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Last Update Date" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__write_uid +msgid "Last Updated by" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__write_date +msgid "Last Updated on" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Last month" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Last week" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Last year" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__2 +msgid "Low" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__mail_template_ids +msgid "Mail Template" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_main_attachment_id +msgid "Main Attachment" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_has_error +msgid "Message Delivery error" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_ids +msgid "Messages" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "My Ticket" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__name +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Name" +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/models/helpdesk_ticket.py:0 +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.new_stage +#, python-format +msgid "New" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Newest" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_date_deadline +msgid "Next Activity Deadline" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_summary +msgid "Next Activity Summary" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_type_id +msgid "Next Activity Type" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__sh_next_stage +msgid "Next Stage" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_priority_action +msgid "No Helpdesk Tickets priorities found" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/models/helpdesk_ticket.py:0 +#, python-format +msgid "No Subject" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__close_days +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__close_days +msgid "No of Days" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__3 +msgid "Normal" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_needaction_counter +msgid "Number of Actions" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_has_error_counter +msgid "Number of errors" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_needaction_counter +msgid "Number of messages which requires an action" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_has_error_counter +msgid "Number of messages with delivery error" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_unread_counter +msgid "Number of unread messages" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__open_boolean +msgid "Open Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Other Information" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__parent_category_id +msgid "Parent Category" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__partner_id +msgid "Partner" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Partner:" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__person_name +msgid "Person Name" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users__sh_portal_user +msgid "Portal" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users__sh_portal_user_access +msgid "Portal Access" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__access_url +msgid "Portal Access URL" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__res_users__sh_portal_user_access__leader +msgid "Portal Leader" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__res_users__sh_portal_user_access__manager +msgid "Portal Manager" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__res_users__sh_portal_user_access__user +msgid "Portal Support User" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Preview" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Previous Month" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Previous Week" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Previous Year" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__priority +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Priority" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "Rating" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__rating_bool +msgid "Rating Setting" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "Rating: #{o.priority_new} on 3" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +msgid "Rating: #{ticket.priority_new} on 3" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Re-Open Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__reopen_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__reopen_stage_id +msgid "Re-Opened Stage" +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.reopen_stage +#, python-format +msgid "Reopened" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__reopen_stage_boolean +msgid "Reopened Stage" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__replied_date +msgid "Replied Date" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__state +msgid "Replied Status" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Reply" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#, python-format +msgid "Reply Status" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_reporting_menu +msgid "Reporting" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__done_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__done_stage_id +msgid "Resolved Stage" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Resolved Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_user_id +msgid "Responsible User" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_has_sms_error +msgid "SMS Delivery error" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Search in All" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__access_token +msgid "Security Token" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Assign User" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Category" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Select Date" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Priority" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Sub Category" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Subject" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Team" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__sequence +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__sequence +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__sequence +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__sequence +msgid "Sequence" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.menu_config_helpdesk +msgid "Settings" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__state__staff_replied +msgid "Staff Replied" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__stage_id +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_stages_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_stages_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Stage" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Status" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__activity_state +msgid "" +"Status based on activities\n" +"Overdue: Due date is already passed\n" +"Today: Activity date is today\n" +"Planned: Future activities." +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__sub_category_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__sub_category +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__sub_category +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Sub Category" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__name +msgid "Sub Category Name" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__sub_category_bool +msgid "Sub Category Setting" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subcategory_view_form +msgid "SubCategory Name" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Subject" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subject_type_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subject_type_tree_view +msgid "Subject Type" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_feedback_page +msgid "Submit Feedback" +msgstr "" + +#. module: sh_helpdesk +#: model:res.groups,name:sh_helpdesk.helpdesk_group_manager +msgid "Support Manager" +msgstr "" + +#. module: sh_helpdesk +#: model:res.groups,name:sh_helpdesk.helpdesk_group_user +msgid "Support User" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.constraint,message:sh_helpdesk.constraint_helpdesk_tags_name_uniq +msgid "Tag name already exists!" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__tag_ids +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_tags_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_tags_tree_view +msgid "Tags" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__team_id +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Team" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__team_head +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__team_head +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Team Head" +msgstr "" + +#. module: sh_helpdesk +#: model:res.groups,name:sh_helpdesk.helpdesk_group_team_leader +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Team Leader" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__team_members +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_team_form_view +msgid "Team Members" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_feedback_thank_you +msgid "Thank you for your valuable feedback to us." +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_feedback_thank_you +msgid "Thanks!" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "There are currently no tickets for your account." +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "This Quarter" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "This month" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "This week" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "This year" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__allocation_mail_template_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__allocation_mail_template_id +msgid "Ticket Allocation To User Mail Template" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Ticket Cancelled Information" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Ticket Closed Information" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.sh_action_ticket_dashboard +#: model:ir.model,name:sh_helpdesk.model_ticket_dashboard +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_dashboard_menu +msgid "Ticket Dashboard" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Ticket Dashboard Settings" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__ticket_from_portal +msgid "Ticket From Portal" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__ticket_from_website +msgid "Ticket From Website" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Ticket Mail Template Settings" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Ticket No" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__reply_mail_template_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__reply_mail_template_id +msgid "Ticket Reply Mail Template" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Ticket Settings" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Ticket Stage Settings" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__subject_id +msgid "Ticket Subject Type" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__ticket_type +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_type_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_type_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Ticket Type" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_replay_template +msgid "" +"Ticket reply from ${object.company_id.name} (Ref ${object.name or 'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Ticket viewed by customer %s" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/models/helpdesk_ticket_dashboard.py:0 +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_tickets_menu +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_calendar +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_graph +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_pivot +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_home_menu_ticket +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_home_ticket +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Tickets" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +#, python-format +msgid "Today" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__activity_exception_decoration +msgid "Type of the exception activity on record." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_unread +msgid "Unread Messages" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_unread_counter +msgid "Unread Messages Counter" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_res_users +msgid "Users" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__5 +msgid "Very High" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__1 +msgid "Very Low" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__website_message_ids +msgid "Website Messages" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__website_message_ids +msgid "Website communication history" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Yesterday" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/models/helpdesk_ticket.py:0 +#, python-format +msgid "You have not access to edit this support request." +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_feedback_page +msgid "Your Feedback" +msgstr "" diff --git a/sh_helpdesk/i18n/de.po b/sh_helpdesk/i18n/de.po new file mode 100644 index 0000000..c15b5ef --- /dev/null +++ b/sh_helpdesk/i18n/de.po @@ -0,0 +1,2404 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sh_helpdesk +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 14.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-12-22 10:05+0000\n" +"PO-Revision-Date: 2020-12-22 10:05+0000\n" +"Last-Translator: \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_user_allocation_template +msgid "" +"${object.company_id.name} Ticket is assign to user (Ref ${object.name or " +"'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_new_template +msgid "" +"${object.company_id.name} Your Ticket is generated (Ref ${object.name or " +"'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_cancelled_template +msgid "" +"${object.company_id.name} Your ticket is cancelled (Ref ${object.name or " +"'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_closed_template +msgid "" +"${object.company_id.name} Your ticket is closed (Ref ${object.name or 'n/a' " +"})" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_reopened_template +msgid "" +"${object.company_id.name} Your ticket is re-opened (Ref ${object.name or " +"'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_done_template +msgid "" +"${object.company_id.name} Your ticket is resolved (Ref ${object.name or " +"'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_feedback_thank_you +msgid "&times;" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_reopened_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\t\n" +"\t\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDear ${object.partner_id.name} Your ticket is Re-opened,\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tWe will follow-up as soon as possible.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/my/tickets/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\t\n" +"\t\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_closed_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t\t\tDear ${object.partner_id.name},\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tYour Ticket is closed for now, if you want to Re-open your ticket please give your reply.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tWe would like to get your feedback on the support.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/ticket/feedback/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">Give Feedback</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_new_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" <p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDear ${object.partner_id.name} We received your request.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tOur Support Team will contact you as soon as possible.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"${object.get_portal_url()}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_user_allocation_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t\t\tWe Have received new ticket from customer.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tPlease take a follow-up as soon as possible.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t \t<a href=\"${object.form_url}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t </center>\n" +"\t\t\t\t\t\t\t <br/>\n" +"\t\t\t\t\t\t\t <br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_replay_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDear ${object.partner_id.name},\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tYour Ticket is working on we will contact you soon.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/my/tickets/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\n" +"\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_cancelled_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\n" +"\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDear ${object.partner_id.name},\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t \t\tYour ticket is cancelled for now based on some technical issue.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/my/tickets/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_done_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\n" +"\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDear ${object.partner_id.name},\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t \t\tAs your request we have resolved your ticket.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/my/tickets/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Category:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Created By:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Customer:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Priority:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Reply Status:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Status:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Sub Category:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Subject:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Ticket Type:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_home_menu_ticket +msgid "<em>Ticket</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "<i class=\"fa fa-comment\"/> Send message" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "<i class=\"fa fa-download\"/> Download" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<i class=\"fa fa-plus\"/> Create New" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "<span>Stage :</span>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "<strong class=\"text-muted\">Your Contact</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Assigned User</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +msgid "<strong>Cancelled By</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Cancelled Date</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Cancelled Reason</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Category</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Closed By</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Closed Date</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Create Date</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Customer Comment</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Customer Rating</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Customer</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +msgid "<strong>Description</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Email</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Last Update Date</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Person Name</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Priority</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Replied Date</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +msgid "<strong>Reply Status</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +msgid "<strong>Status</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Sub Category</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Team Head</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Team</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +msgid "<strong>Ticket Status</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Ticket Subject Type</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Ticket Type</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__access_warning +msgid "Access warning" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Action" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_needaction +msgid "Action Needed" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__active +msgid "Active" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_ids +msgid "Activities" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_exception_decoration +msgid "Activity Exception Decoration" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_state +msgid "Activity State" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_type_icon +msgid "Activity Type Icon" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "All" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__ticket_allocated +msgid "Allocated" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Approve" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Archived" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Assign To" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Assign User" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__user_id +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Assigned User" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_attachment_count +msgid "Attachment Count" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__attachment_ids +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Attachments" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.server,name:sh_helpdesk.cron_helpdesk_ticket_close_ir_actions_server +#: model:ir.cron,cron_name:sh_helpdesk.cron_helpdesk_ticket_close +#: model:ir.cron,name:sh_helpdesk.cron_helpdesk_ticket_close +msgid "Auto Close Helpdesk Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__auto_close_ticket +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__auto_close_ticket +msgid "Auto Close Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_team_form_view +msgid "Avatar" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_button_boolean +msgid "Cancel Button" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_reason +msgid "Cancel Reason" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_stage_boolean +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__cancel_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__cancel_stage_id +msgid "Cancel Stage" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Cancel Ticket" +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.cancel_stage +#, python-format +msgid "Cancelled" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_by +msgid "Cancelled By" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_date +msgid "Cancelled Date" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Cancelled Tickets" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__category_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__category +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__category +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Category" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_category_view_form +msgid "Category Name" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__category_bool +msgid "Category Setting" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Close" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__close_date +msgid "Close Date" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Close Ticket" +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.close_stage +#, python-format +msgid "Closed" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__close_by +msgid "Closed By" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Closed Comment" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__closed_stage_boolean +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__close_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__close_stage_id +msgid "Closed Stage" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__color +msgid "Color" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__color +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__color +msgid "Color Index" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__comment +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_feedback_page +msgid "Comment" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_res_company +msgid "Companies" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__company_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__company_id +msgid "Company" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Completed Tickets" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_res_config_settings +msgid "Config Settings" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_config_menu +msgid "Configuration" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "Contact" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Create Date" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Create Helpdesk Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Create Support Request" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Create Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_stages_action +msgid "Create a New Stage" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_subject_type_action +msgid "Create a New Subject Type" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_tags_action +msgid "Create a New Tag" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_team_action +msgid "Create a New Team" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_ticket_action +msgid "Create a New Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_ticket_type_action +msgid "Create a New Ticket Type" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_category_action +msgid "Create new category" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_subcategory_action +msgid "Create new sub category" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#, python-format +msgid "Created By" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__create_uid +msgid "Created by" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__create_date +msgid "Created on" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Current Month" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Current Week" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Current Year" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Custom" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#, python-format +msgid "Customer" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__customer_comment +msgid "Customer Comment" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Customer Name" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__access_url +msgid "Customer Portal URL" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__priority_new +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__customer_rating +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__customer_rating +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Customer Rating" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__state__customer_replied +msgid "Customer Replied" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__dashboard_filter +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__dashboard_filter +msgid "Dashbaord Filter" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__dashboard_tables +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__dashboard_tables +msgid "Dashbaord Tables" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.sh_menu_ticket_dashboard +msgid "Dashboard" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Data not available." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__sh_default_user_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__sh_default_user_id +msgid "Default Assign User" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__sh_default_team_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__sh_default_team_id +msgid "Default Team" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__description +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Description" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__display_name +msgid "Display Name" +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.done_stage +#, python-format +msgid "Done" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__done_button_boolean +msgid "Done Button" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__done_stage_boolean +msgid "Done Stage" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "Download" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__new_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__new_stage_id +msgid "Draft/New Stage" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__email +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Email" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__6 +msgid "Excellent" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_follower_ids +msgid "Followers" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_channel_ids +msgid "Followers (Channels)" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_partner_ids +msgid "Followers (Partners)" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__activity_type_icon +msgid "Font awesome icon e.g. fa-tasks" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__form_url +msgid "Form Url" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Group By" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__sh_group_ids +msgid "Groups" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.module.category,description:sh_helpdesk.module_helpdesk_category +#: model:ir.module.category,name:sh_helpdesk.module_helpdesk_category +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_main_menu +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Helpdesk" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_category_action +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_category_menu +msgid "Helpdesk Categories" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_helpdesk_category +msgid "Helpdesk Category" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_priority_action +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_priority_menu +msgid "Helpdesk Priorities" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_helpdesk_priority +msgid "Helpdesk Priority" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.action_helpdesk_configuration +msgid "Helpdesk Settings" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_stages_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_stages +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_stages_menu +msgid "Helpdesk Stages" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_subcategory_action +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_subcategory_menu +msgid "Helpdesk Sub Categories" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_helpdesk_subcategory +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subcategory_view_form +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subcategory_view_tree +msgid "Helpdesk SubCategory" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_subject_type_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_sub_type +msgid "Helpdesk Subject Type" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_subject_type_menu +msgid "Helpdesk Subject Types" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_tags_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_tags +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_tags_menu +msgid "Helpdesk Tags" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_team_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_team +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_team_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_team_tree_view +msgid "Helpdesk Team" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_team_menu +msgid "Helpdesk Teams" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.report,name:sh_helpdesk.action_portal_report_helpdesk_ticket +#: model:ir.actions.report,name:sh_helpdesk.action_report_helpdesk_ticket +#: model:ir.model,name:sh_helpdesk.model_helpdesk_ticket +msgid "Helpdesk Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Helpdesk Ticket Search" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_ticket_type_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_ticket_type +msgid "Helpdesk Ticket Type" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_ticket_type_menu +msgid "Helpdesk Ticket Types" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_ticket_action +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_tickets_sub_menu +msgid "Helpdesk Tickets" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__4 +msgid "High" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "History" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__id +msgid "ID" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_exception_icon +msgid "Icon" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__activity_exception_icon +msgid "Icon to indicate an exception activity." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_needaction +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_unread +msgid "If checked, new messages require your attention." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_has_error +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_has_sms_error +msgid "If checked, some messages have a delivery error." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__active +msgid "" +"If unchecked, it will allow you to hide the product without removing it." +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.in_progress_stage +#, python-format +msgid "In Progress" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__is_cancel_button_visible +msgid "Is Cancel Button Visible ?" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_is_follower +msgid "Is Follower" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__is_done_button_visible +msgid "Is Resolved Button Visible ?" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_feedback_page +msgid "" +"It looks like you're feeling <span id=\"result\" " +"onclick=\"updateValue(this)\">happy</span> today.." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard____last_update +msgid "Last Modified on" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Last Update Date" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__write_uid +msgid "Last Updated by" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__write_date +msgid "Last Updated on" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Last month" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Last week" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Last year" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__2 +msgid "Low" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__mail_template_ids +msgid "Mail Template" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_main_attachment_id +msgid "Main Attachment" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_has_error +msgid "Message Delivery error" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_ids +msgid "Messages" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "My Ticket" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__name +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Name" +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/models/helpdesk_ticket.py:0 +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.new_stage +#, python-format +msgid "New" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Newest" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_date_deadline +msgid "Next Activity Deadline" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_summary +msgid "Next Activity Summary" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_type_id +msgid "Next Activity Type" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__sh_next_stage +msgid "Next Stage" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_priority_action +msgid "No Helpdesk Tickets priorities found" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/models/helpdesk_ticket.py:0 +#, python-format +msgid "No Subject" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__close_days +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__close_days +msgid "No of Days" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__3 +msgid "Normal" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_needaction_counter +msgid "Number of Actions" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_has_error_counter +msgid "Number of errors" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_needaction_counter +msgid "Number of messages which requires an action" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_has_error_counter +msgid "Number of messages with delivery error" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_unread_counter +msgid "Number of unread messages" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__open_boolean +msgid "Open Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Other Information" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__parent_category_id +msgid "Parent Category" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__partner_id +msgid "Partner" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Partner:" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__person_name +msgid "Person Name" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users__sh_portal_user +msgid "Portal" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users__sh_portal_user_access +msgid "Portal Access" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__access_url +msgid "Portal Access URL" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__res_users__sh_portal_user_access__leader +msgid "Portal Leader" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__res_users__sh_portal_user_access__manager +msgid "Portal Manager" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__res_users__sh_portal_user_access__user +msgid "Portal Support User" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Preview" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Previous Month" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Previous Week" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Previous Year" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__priority +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Priority" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "Rating" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__rating_bool +msgid "Rating Setting" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "Rating: #{o.priority_new} on 3" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +msgid "Rating: #{ticket.priority_new} on 3" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Re-Open Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__reopen_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__reopen_stage_id +msgid "Re-Opened Stage" +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.reopen_stage +#, python-format +msgid "Reopened" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__reopen_stage_boolean +msgid "Reopened Stage" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__replied_date +msgid "Replied Date" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__state +msgid "Replied Status" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Reply" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#, python-format +msgid "Reply Status" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_reporting_menu +msgid "Reporting" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__done_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__done_stage_id +msgid "Resolved Stage" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Resolved Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_user_id +msgid "Responsible User" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_has_sms_error +msgid "SMS Delivery error" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Search in All" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__access_token +msgid "Security Token" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Assign User" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Category" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Select Date" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Priority" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Sub Category" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Subject" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Team" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__sequence +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__sequence +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__sequence +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__sequence +msgid "Sequence" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.menu_config_helpdesk +msgid "Settings" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__state__staff_replied +msgid "Staff Replied" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__stage_id +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_stages_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_stages_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Stage" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Status" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__activity_state +msgid "" +"Status based on activities\n" +"Overdue: Due date is already passed\n" +"Today: Activity date is today\n" +"Planned: Future activities." +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__sub_category_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__sub_category +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__sub_category +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Sub Category" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__name +msgid "Sub Category Name" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__sub_category_bool +msgid "Sub Category Setting" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subcategory_view_form +msgid "SubCategory Name" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Subject" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subject_type_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subject_type_tree_view +msgid "Subject Type" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_feedback_page +msgid "Submit Feedback" +msgstr "" + +#. module: sh_helpdesk +#: model:res.groups,name:sh_helpdesk.helpdesk_group_manager +msgid "Support Manager" +msgstr "" + +#. module: sh_helpdesk +#: model:res.groups,name:sh_helpdesk.helpdesk_group_user +msgid "Support User" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.constraint,message:sh_helpdesk.constraint_helpdesk_tags_name_uniq +msgid "Tag name already exists!" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__tag_ids +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_tags_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_tags_tree_view +msgid "Tags" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__team_id +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Team" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__team_head +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__team_head +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Team Head" +msgstr "" + +#. module: sh_helpdesk +#: model:res.groups,name:sh_helpdesk.helpdesk_group_team_leader +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Team Leader" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__team_members +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_team_form_view +msgid "Team Members" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_feedback_thank_you +msgid "Thank you for your valuable feedback to us." +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_feedback_thank_you +msgid "Thanks!" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "There are currently no tickets for your account." +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "This Quarter" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "This month" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "This week" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "This year" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__allocation_mail_template_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__allocation_mail_template_id +msgid "Ticket Allocation To User Mail Template" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Ticket Cancelled Information" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Ticket Closed Information" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.sh_action_ticket_dashboard +#: model:ir.model,name:sh_helpdesk.model_ticket_dashboard +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_dashboard_menu +msgid "Ticket Dashboard" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Ticket Dashboard Settings" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__ticket_from_portal +msgid "Ticket From Portal" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__ticket_from_website +msgid "Ticket From Website" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Ticket Mail Template Settings" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Ticket No" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__reply_mail_template_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__reply_mail_template_id +msgid "Ticket Reply Mail Template" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Ticket Settings" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Ticket Stage Settings" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__subject_id +msgid "Ticket Subject Type" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__ticket_type +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_type_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_type_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Ticket Type" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_replay_template +msgid "" +"Ticket reply from ${object.company_id.name} (Ref ${object.name or 'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Ticket viewed by customer %s" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/models/helpdesk_ticket_dashboard.py:0 +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_tickets_menu +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_calendar +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_graph +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_pivot +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_home_menu_ticket +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_home_ticket +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Tickets" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +#, python-format +msgid "Today" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__activity_exception_decoration +msgid "Type of the exception activity on record." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_unread +msgid "Unread Messages" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_unread_counter +msgid "Unread Messages Counter" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_res_users +msgid "Users" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__5 +msgid "Very High" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__1 +msgid "Very Low" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__website_message_ids +msgid "Website Messages" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__website_message_ids +msgid "Website communication history" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Yesterday" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/models/helpdesk_ticket.py:0 +#, python-format +msgid "You have not access to edit this support request." +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_feedback_page +msgid "Your Feedback" +msgstr "" diff --git a/sh_helpdesk/i18n/es.po b/sh_helpdesk/i18n/es.po new file mode 100644 index 0000000..c15b5ef --- /dev/null +++ b/sh_helpdesk/i18n/es.po @@ -0,0 +1,2404 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sh_helpdesk +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 14.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-12-22 10:05+0000\n" +"PO-Revision-Date: 2020-12-22 10:05+0000\n" +"Last-Translator: \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_user_allocation_template +msgid "" +"${object.company_id.name} Ticket is assign to user (Ref ${object.name or " +"'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_new_template +msgid "" +"${object.company_id.name} Your Ticket is generated (Ref ${object.name or " +"'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_cancelled_template +msgid "" +"${object.company_id.name} Your ticket is cancelled (Ref ${object.name or " +"'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_closed_template +msgid "" +"${object.company_id.name} Your ticket is closed (Ref ${object.name or 'n/a' " +"})" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_reopened_template +msgid "" +"${object.company_id.name} Your ticket is re-opened (Ref ${object.name or " +"'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_done_template +msgid "" +"${object.company_id.name} Your ticket is resolved (Ref ${object.name or " +"'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_feedback_thank_you +msgid "&times;" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_reopened_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\t\n" +"\t\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDear ${object.partner_id.name} Your ticket is Re-opened,\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tWe will follow-up as soon as possible.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/my/tickets/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\t\n" +"\t\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_closed_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t\t\tDear ${object.partner_id.name},\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tYour Ticket is closed for now, if you want to Re-open your ticket please give your reply.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tWe would like to get your feedback on the support.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/ticket/feedback/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">Give Feedback</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_new_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" <p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDear ${object.partner_id.name} We received your request.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tOur Support Team will contact you as soon as possible.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"${object.get_portal_url()}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_user_allocation_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t\t\tWe Have received new ticket from customer.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tPlease take a follow-up as soon as possible.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t \t<a href=\"${object.form_url}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t </center>\n" +"\t\t\t\t\t\t\t <br/>\n" +"\t\t\t\t\t\t\t <br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_replay_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDear ${object.partner_id.name},\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tYour Ticket is working on we will contact you soon.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/my/tickets/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\n" +"\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_cancelled_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\n" +"\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDear ${object.partner_id.name},\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t \t\tYour ticket is cancelled for now based on some technical issue.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/my/tickets/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_done_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\n" +"\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDear ${object.partner_id.name},\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t \t\tAs your request we have resolved your ticket.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/my/tickets/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Category:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Created By:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Customer:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Priority:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Reply Status:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Status:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Sub Category:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Subject:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Ticket Type:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_home_menu_ticket +msgid "<em>Ticket</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "<i class=\"fa fa-comment\"/> Send message" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "<i class=\"fa fa-download\"/> Download" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<i class=\"fa fa-plus\"/> Create New" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "<span>Stage :</span>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "<strong class=\"text-muted\">Your Contact</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Assigned User</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +msgid "<strong>Cancelled By</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Cancelled Date</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Cancelled Reason</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Category</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Closed By</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Closed Date</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Create Date</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Customer Comment</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Customer Rating</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Customer</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +msgid "<strong>Description</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Email</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Last Update Date</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Person Name</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Priority</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Replied Date</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +msgid "<strong>Reply Status</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +msgid "<strong>Status</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Sub Category</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Team Head</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Team</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +msgid "<strong>Ticket Status</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Ticket Subject Type</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Ticket Type</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__access_warning +msgid "Access warning" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Action" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_needaction +msgid "Action Needed" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__active +msgid "Active" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_ids +msgid "Activities" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_exception_decoration +msgid "Activity Exception Decoration" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_state +msgid "Activity State" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_type_icon +msgid "Activity Type Icon" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "All" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__ticket_allocated +msgid "Allocated" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Approve" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Archived" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Assign To" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Assign User" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__user_id +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Assigned User" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_attachment_count +msgid "Attachment Count" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__attachment_ids +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Attachments" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.server,name:sh_helpdesk.cron_helpdesk_ticket_close_ir_actions_server +#: model:ir.cron,cron_name:sh_helpdesk.cron_helpdesk_ticket_close +#: model:ir.cron,name:sh_helpdesk.cron_helpdesk_ticket_close +msgid "Auto Close Helpdesk Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__auto_close_ticket +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__auto_close_ticket +msgid "Auto Close Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_team_form_view +msgid "Avatar" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_button_boolean +msgid "Cancel Button" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_reason +msgid "Cancel Reason" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_stage_boolean +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__cancel_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__cancel_stage_id +msgid "Cancel Stage" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Cancel Ticket" +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.cancel_stage +#, python-format +msgid "Cancelled" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_by +msgid "Cancelled By" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_date +msgid "Cancelled Date" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Cancelled Tickets" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__category_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__category +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__category +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Category" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_category_view_form +msgid "Category Name" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__category_bool +msgid "Category Setting" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Close" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__close_date +msgid "Close Date" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Close Ticket" +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.close_stage +#, python-format +msgid "Closed" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__close_by +msgid "Closed By" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Closed Comment" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__closed_stage_boolean +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__close_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__close_stage_id +msgid "Closed Stage" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__color +msgid "Color" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__color +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__color +msgid "Color Index" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__comment +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_feedback_page +msgid "Comment" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_res_company +msgid "Companies" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__company_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__company_id +msgid "Company" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Completed Tickets" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_res_config_settings +msgid "Config Settings" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_config_menu +msgid "Configuration" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "Contact" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Create Date" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Create Helpdesk Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Create Support Request" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Create Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_stages_action +msgid "Create a New Stage" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_subject_type_action +msgid "Create a New Subject Type" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_tags_action +msgid "Create a New Tag" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_team_action +msgid "Create a New Team" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_ticket_action +msgid "Create a New Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_ticket_type_action +msgid "Create a New Ticket Type" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_category_action +msgid "Create new category" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_subcategory_action +msgid "Create new sub category" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#, python-format +msgid "Created By" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__create_uid +msgid "Created by" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__create_date +msgid "Created on" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Current Month" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Current Week" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Current Year" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Custom" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#, python-format +msgid "Customer" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__customer_comment +msgid "Customer Comment" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Customer Name" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__access_url +msgid "Customer Portal URL" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__priority_new +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__customer_rating +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__customer_rating +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Customer Rating" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__state__customer_replied +msgid "Customer Replied" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__dashboard_filter +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__dashboard_filter +msgid "Dashbaord Filter" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__dashboard_tables +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__dashboard_tables +msgid "Dashbaord Tables" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.sh_menu_ticket_dashboard +msgid "Dashboard" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Data not available." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__sh_default_user_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__sh_default_user_id +msgid "Default Assign User" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__sh_default_team_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__sh_default_team_id +msgid "Default Team" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__description +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Description" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__display_name +msgid "Display Name" +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.done_stage +#, python-format +msgid "Done" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__done_button_boolean +msgid "Done Button" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__done_stage_boolean +msgid "Done Stage" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "Download" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__new_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__new_stage_id +msgid "Draft/New Stage" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__email +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Email" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__6 +msgid "Excellent" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_follower_ids +msgid "Followers" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_channel_ids +msgid "Followers (Channels)" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_partner_ids +msgid "Followers (Partners)" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__activity_type_icon +msgid "Font awesome icon e.g. fa-tasks" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__form_url +msgid "Form Url" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Group By" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__sh_group_ids +msgid "Groups" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.module.category,description:sh_helpdesk.module_helpdesk_category +#: model:ir.module.category,name:sh_helpdesk.module_helpdesk_category +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_main_menu +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Helpdesk" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_category_action +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_category_menu +msgid "Helpdesk Categories" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_helpdesk_category +msgid "Helpdesk Category" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_priority_action +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_priority_menu +msgid "Helpdesk Priorities" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_helpdesk_priority +msgid "Helpdesk Priority" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.action_helpdesk_configuration +msgid "Helpdesk Settings" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_stages_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_stages +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_stages_menu +msgid "Helpdesk Stages" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_subcategory_action +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_subcategory_menu +msgid "Helpdesk Sub Categories" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_helpdesk_subcategory +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subcategory_view_form +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subcategory_view_tree +msgid "Helpdesk SubCategory" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_subject_type_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_sub_type +msgid "Helpdesk Subject Type" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_subject_type_menu +msgid "Helpdesk Subject Types" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_tags_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_tags +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_tags_menu +msgid "Helpdesk Tags" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_team_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_team +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_team_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_team_tree_view +msgid "Helpdesk Team" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_team_menu +msgid "Helpdesk Teams" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.report,name:sh_helpdesk.action_portal_report_helpdesk_ticket +#: model:ir.actions.report,name:sh_helpdesk.action_report_helpdesk_ticket +#: model:ir.model,name:sh_helpdesk.model_helpdesk_ticket +msgid "Helpdesk Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Helpdesk Ticket Search" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_ticket_type_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_ticket_type +msgid "Helpdesk Ticket Type" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_ticket_type_menu +msgid "Helpdesk Ticket Types" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_ticket_action +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_tickets_sub_menu +msgid "Helpdesk Tickets" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__4 +msgid "High" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "History" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__id +msgid "ID" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_exception_icon +msgid "Icon" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__activity_exception_icon +msgid "Icon to indicate an exception activity." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_needaction +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_unread +msgid "If checked, new messages require your attention." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_has_error +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_has_sms_error +msgid "If checked, some messages have a delivery error." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__active +msgid "" +"If unchecked, it will allow you to hide the product without removing it." +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.in_progress_stage +#, python-format +msgid "In Progress" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__is_cancel_button_visible +msgid "Is Cancel Button Visible ?" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_is_follower +msgid "Is Follower" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__is_done_button_visible +msgid "Is Resolved Button Visible ?" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_feedback_page +msgid "" +"It looks like you're feeling <span id=\"result\" " +"onclick=\"updateValue(this)\">happy</span> today.." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard____last_update +msgid "Last Modified on" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Last Update Date" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__write_uid +msgid "Last Updated by" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__write_date +msgid "Last Updated on" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Last month" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Last week" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Last year" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__2 +msgid "Low" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__mail_template_ids +msgid "Mail Template" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_main_attachment_id +msgid "Main Attachment" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_has_error +msgid "Message Delivery error" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_ids +msgid "Messages" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "My Ticket" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__name +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Name" +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/models/helpdesk_ticket.py:0 +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.new_stage +#, python-format +msgid "New" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Newest" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_date_deadline +msgid "Next Activity Deadline" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_summary +msgid "Next Activity Summary" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_type_id +msgid "Next Activity Type" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__sh_next_stage +msgid "Next Stage" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_priority_action +msgid "No Helpdesk Tickets priorities found" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/models/helpdesk_ticket.py:0 +#, python-format +msgid "No Subject" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__close_days +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__close_days +msgid "No of Days" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__3 +msgid "Normal" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_needaction_counter +msgid "Number of Actions" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_has_error_counter +msgid "Number of errors" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_needaction_counter +msgid "Number of messages which requires an action" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_has_error_counter +msgid "Number of messages with delivery error" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_unread_counter +msgid "Number of unread messages" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__open_boolean +msgid "Open Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Other Information" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__parent_category_id +msgid "Parent Category" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__partner_id +msgid "Partner" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Partner:" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__person_name +msgid "Person Name" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users__sh_portal_user +msgid "Portal" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users__sh_portal_user_access +msgid "Portal Access" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__access_url +msgid "Portal Access URL" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__res_users__sh_portal_user_access__leader +msgid "Portal Leader" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__res_users__sh_portal_user_access__manager +msgid "Portal Manager" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__res_users__sh_portal_user_access__user +msgid "Portal Support User" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Preview" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Previous Month" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Previous Week" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Previous Year" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__priority +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Priority" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "Rating" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__rating_bool +msgid "Rating Setting" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "Rating: #{o.priority_new} on 3" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +msgid "Rating: #{ticket.priority_new} on 3" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Re-Open Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__reopen_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__reopen_stage_id +msgid "Re-Opened Stage" +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.reopen_stage +#, python-format +msgid "Reopened" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__reopen_stage_boolean +msgid "Reopened Stage" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__replied_date +msgid "Replied Date" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__state +msgid "Replied Status" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Reply" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#, python-format +msgid "Reply Status" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_reporting_menu +msgid "Reporting" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__done_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__done_stage_id +msgid "Resolved Stage" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Resolved Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_user_id +msgid "Responsible User" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_has_sms_error +msgid "SMS Delivery error" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Search in All" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__access_token +msgid "Security Token" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Assign User" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Category" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Select Date" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Priority" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Sub Category" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Subject" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Team" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__sequence +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__sequence +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__sequence +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__sequence +msgid "Sequence" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.menu_config_helpdesk +msgid "Settings" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__state__staff_replied +msgid "Staff Replied" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__stage_id +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_stages_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_stages_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Stage" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Status" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__activity_state +msgid "" +"Status based on activities\n" +"Overdue: Due date is already passed\n" +"Today: Activity date is today\n" +"Planned: Future activities." +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__sub_category_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__sub_category +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__sub_category +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Sub Category" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__name +msgid "Sub Category Name" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__sub_category_bool +msgid "Sub Category Setting" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subcategory_view_form +msgid "SubCategory Name" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Subject" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subject_type_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subject_type_tree_view +msgid "Subject Type" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_feedback_page +msgid "Submit Feedback" +msgstr "" + +#. module: sh_helpdesk +#: model:res.groups,name:sh_helpdesk.helpdesk_group_manager +msgid "Support Manager" +msgstr "" + +#. module: sh_helpdesk +#: model:res.groups,name:sh_helpdesk.helpdesk_group_user +msgid "Support User" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.constraint,message:sh_helpdesk.constraint_helpdesk_tags_name_uniq +msgid "Tag name already exists!" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__tag_ids +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_tags_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_tags_tree_view +msgid "Tags" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__team_id +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Team" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__team_head +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__team_head +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Team Head" +msgstr "" + +#. module: sh_helpdesk +#: model:res.groups,name:sh_helpdesk.helpdesk_group_team_leader +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Team Leader" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__team_members +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_team_form_view +msgid "Team Members" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_feedback_thank_you +msgid "Thank you for your valuable feedback to us." +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_feedback_thank_you +msgid "Thanks!" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "There are currently no tickets for your account." +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "This Quarter" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "This month" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "This week" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "This year" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__allocation_mail_template_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__allocation_mail_template_id +msgid "Ticket Allocation To User Mail Template" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Ticket Cancelled Information" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Ticket Closed Information" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.sh_action_ticket_dashboard +#: model:ir.model,name:sh_helpdesk.model_ticket_dashboard +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_dashboard_menu +msgid "Ticket Dashboard" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Ticket Dashboard Settings" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__ticket_from_portal +msgid "Ticket From Portal" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__ticket_from_website +msgid "Ticket From Website" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Ticket Mail Template Settings" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Ticket No" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__reply_mail_template_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__reply_mail_template_id +msgid "Ticket Reply Mail Template" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Ticket Settings" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Ticket Stage Settings" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__subject_id +msgid "Ticket Subject Type" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__ticket_type +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_type_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_type_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Ticket Type" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_replay_template +msgid "" +"Ticket reply from ${object.company_id.name} (Ref ${object.name or 'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Ticket viewed by customer %s" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/models/helpdesk_ticket_dashboard.py:0 +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_tickets_menu +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_calendar +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_graph +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_pivot +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_home_menu_ticket +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_home_ticket +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Tickets" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +#, python-format +msgid "Today" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__activity_exception_decoration +msgid "Type of the exception activity on record." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_unread +msgid "Unread Messages" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_unread_counter +msgid "Unread Messages Counter" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_res_users +msgid "Users" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__5 +msgid "Very High" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__1 +msgid "Very Low" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__website_message_ids +msgid "Website Messages" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__website_message_ids +msgid "Website communication history" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Yesterday" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/models/helpdesk_ticket.py:0 +#, python-format +msgid "You have not access to edit this support request." +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_feedback_page +msgid "Your Feedback" +msgstr "" diff --git a/sh_helpdesk/i18n/sh_helpdesk.pot b/sh_helpdesk/i18n/sh_helpdesk.pot new file mode 100644 index 0000000..c15b5ef --- /dev/null +++ b/sh_helpdesk/i18n/sh_helpdesk.pot @@ -0,0 +1,2404 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sh_helpdesk +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 14.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-12-22 10:05+0000\n" +"PO-Revision-Date: 2020-12-22 10:05+0000\n" +"Last-Translator: \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_user_allocation_template +msgid "" +"${object.company_id.name} Ticket is assign to user (Ref ${object.name or " +"'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_new_template +msgid "" +"${object.company_id.name} Your Ticket is generated (Ref ${object.name or " +"'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_cancelled_template +msgid "" +"${object.company_id.name} Your ticket is cancelled (Ref ${object.name or " +"'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_closed_template +msgid "" +"${object.company_id.name} Your ticket is closed (Ref ${object.name or 'n/a' " +"})" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_reopened_template +msgid "" +"${object.company_id.name} Your ticket is re-opened (Ref ${object.name or " +"'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_done_template +msgid "" +"${object.company_id.name} Your ticket is resolved (Ref ${object.name or " +"'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_feedback_thank_you +msgid "&times;" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_reopened_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\t\n" +"\t\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDear ${object.partner_id.name} Your ticket is Re-opened,\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tWe will follow-up as soon as possible.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/my/tickets/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\t\n" +"\t\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_closed_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t\t\tDear ${object.partner_id.name},\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tYour Ticket is closed for now, if you want to Re-open your ticket please give your reply.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tWe would like to get your feedback on the support.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/ticket/feedback/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">Give Feedback</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_new_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" <p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDear ${object.partner_id.name} We received your request.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tOur Support Team will contact you as soon as possible.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"${object.get_portal_url()}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_user_allocation_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t\t\tWe Have received new ticket from customer.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tPlease take a follow-up as soon as possible.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t \t<a href=\"${object.form_url}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t </center>\n" +"\t\t\t\t\t\t\t <br/>\n" +"\t\t\t\t\t\t\t <br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_replay_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDear ${object.partner_id.name},\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tYour Ticket is working on we will contact you soon.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/my/tickets/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\n" +"\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_cancelled_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\n" +"\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDear ${object.partner_id.name},\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t \t\tYour ticket is cancelled for now based on some technical issue.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/my/tickets/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_done_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\n" +"\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDear ${object.partner_id.name},\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t \t\tAs your request we have resolved your ticket.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/my/tickets/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">View Ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Category:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Created By:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Customer:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Priority:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Reply Status:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Status:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Sub Category:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Subject:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Ticket Type:</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_home_menu_ticket +msgid "<em>Ticket</em>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "<i class=\"fa fa-comment\"/> Send message" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "<i class=\"fa fa-download\"/> Download" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<i class=\"fa fa-plus\"/> Create New" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "<span>Stage :</span>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "<strong class=\"text-muted\">Your Contact</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Assigned User</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +msgid "<strong>Cancelled By</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Cancelled Date</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Cancelled Reason</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Category</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Closed By</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Closed Date</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Create Date</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Customer Comment</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Customer Rating</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Customer</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +msgid "<strong>Description</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Email</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Last Update Date</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Person Name</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Priority</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Replied Date</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +msgid "<strong>Reply Status</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +msgid "<strong>Status</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Sub Category</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Team Head</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Team</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +msgid "<strong>Ticket Status</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Ticket Subject Type</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Ticket Type</strong>" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__access_warning +msgid "Access warning" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Action" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_needaction +msgid "Action Needed" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__active +msgid "Active" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_ids +msgid "Activities" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_exception_decoration +msgid "Activity Exception Decoration" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_state +msgid "Activity State" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_type_icon +msgid "Activity Type Icon" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "All" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__ticket_allocated +msgid "Allocated" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Approve" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Archived" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Assign To" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Assign User" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__user_id +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Assigned User" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_attachment_count +msgid "Attachment Count" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__attachment_ids +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Attachments" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.server,name:sh_helpdesk.cron_helpdesk_ticket_close_ir_actions_server +#: model:ir.cron,cron_name:sh_helpdesk.cron_helpdesk_ticket_close +#: model:ir.cron,name:sh_helpdesk.cron_helpdesk_ticket_close +msgid "Auto Close Helpdesk Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__auto_close_ticket +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__auto_close_ticket +msgid "Auto Close Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_team_form_view +msgid "Avatar" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_button_boolean +msgid "Cancel Button" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_reason +msgid "Cancel Reason" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_stage_boolean +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__cancel_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__cancel_stage_id +msgid "Cancel Stage" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Cancel Ticket" +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.cancel_stage +#, python-format +msgid "Cancelled" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_by +msgid "Cancelled By" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_date +msgid "Cancelled Date" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Cancelled Tickets" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__category_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__category +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__category +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Category" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_category_view_form +msgid "Category Name" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__category_bool +msgid "Category Setting" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Close" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__close_date +msgid "Close Date" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Close Ticket" +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.close_stage +#, python-format +msgid "Closed" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__close_by +msgid "Closed By" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Closed Comment" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__closed_stage_boolean +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__close_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__close_stage_id +msgid "Closed Stage" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__color +msgid "Color" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__color +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__color +msgid "Color Index" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__comment +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_feedback_page +msgid "Comment" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_res_company +msgid "Companies" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__company_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__company_id +msgid "Company" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Completed Tickets" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_res_config_settings +msgid "Config Settings" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_config_menu +msgid "Configuration" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "Contact" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Create Date" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Create Helpdesk Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Create Support Request" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Create Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_stages_action +msgid "Create a New Stage" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_subject_type_action +msgid "Create a New Subject Type" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_tags_action +msgid "Create a New Tag" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_team_action +msgid "Create a New Team" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_ticket_action +msgid "Create a New Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_ticket_type_action +msgid "Create a New Ticket Type" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_category_action +msgid "Create new category" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_subcategory_action +msgid "Create new sub category" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#, python-format +msgid "Created By" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__create_uid +msgid "Created by" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__create_date +msgid "Created on" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Current Month" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Current Week" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Current Year" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Custom" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#, python-format +msgid "Customer" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__customer_comment +msgid "Customer Comment" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Customer Name" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__access_url +msgid "Customer Portal URL" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__priority_new +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__customer_rating +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__customer_rating +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Customer Rating" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__state__customer_replied +msgid "Customer Replied" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__dashboard_filter +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__dashboard_filter +msgid "Dashbaord Filter" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__dashboard_tables +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__dashboard_tables +msgid "Dashbaord Tables" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.sh_menu_ticket_dashboard +msgid "Dashboard" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Data not available." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__sh_default_user_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__sh_default_user_id +msgid "Default Assign User" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__sh_default_team_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__sh_default_team_id +msgid "Default Team" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__description +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Description" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__display_name +msgid "Display Name" +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.done_stage +#, python-format +msgid "Done" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__done_button_boolean +msgid "Done Button" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__done_stage_boolean +msgid "Done Stage" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "Download" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__new_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__new_stage_id +msgid "Draft/New Stage" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__email +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Email" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__6 +msgid "Excellent" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_follower_ids +msgid "Followers" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_channel_ids +msgid "Followers (Channels)" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_partner_ids +msgid "Followers (Partners)" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__activity_type_icon +msgid "Font awesome icon e.g. fa-tasks" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__form_url +msgid "Form Url" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Group By" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__sh_group_ids +msgid "Groups" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.module.category,description:sh_helpdesk.module_helpdesk_category +#: model:ir.module.category,name:sh_helpdesk.module_helpdesk_category +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_main_menu +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Helpdesk" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_category_action +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_category_menu +msgid "Helpdesk Categories" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_helpdesk_category +msgid "Helpdesk Category" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_priority_action +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_priority_menu +msgid "Helpdesk Priorities" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_helpdesk_priority +msgid "Helpdesk Priority" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.action_helpdesk_configuration +msgid "Helpdesk Settings" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_stages_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_stages +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_stages_menu +msgid "Helpdesk Stages" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_subcategory_action +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_subcategory_menu +msgid "Helpdesk Sub Categories" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_helpdesk_subcategory +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subcategory_view_form +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subcategory_view_tree +msgid "Helpdesk SubCategory" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_subject_type_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_sub_type +msgid "Helpdesk Subject Type" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_subject_type_menu +msgid "Helpdesk Subject Types" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_tags_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_tags +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_tags_menu +msgid "Helpdesk Tags" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_team_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_team +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_team_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_team_tree_view +msgid "Helpdesk Team" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_team_menu +msgid "Helpdesk Teams" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.report,name:sh_helpdesk.action_portal_report_helpdesk_ticket +#: model:ir.actions.report,name:sh_helpdesk.action_report_helpdesk_ticket +#: model:ir.model,name:sh_helpdesk.model_helpdesk_ticket +msgid "Helpdesk Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Helpdesk Ticket Search" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_ticket_type_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_ticket_type +msgid "Helpdesk Ticket Type" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_ticket_type_menu +msgid "Helpdesk Ticket Types" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_ticket_action +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_tickets_sub_menu +msgid "Helpdesk Tickets" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__4 +msgid "High" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "History" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__id +msgid "ID" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_exception_icon +msgid "Icon" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__activity_exception_icon +msgid "Icon to indicate an exception activity." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_needaction +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_unread +msgid "If checked, new messages require your attention." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_has_error +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_has_sms_error +msgid "If checked, some messages have a delivery error." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__active +msgid "" +"If unchecked, it will allow you to hide the product without removing it." +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.in_progress_stage +#, python-format +msgid "In Progress" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__is_cancel_button_visible +msgid "Is Cancel Button Visible ?" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_is_follower +msgid "Is Follower" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__is_done_button_visible +msgid "Is Resolved Button Visible ?" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_feedback_page +msgid "" +"It looks like you're feeling <span id=\"result\" " +"onclick=\"updateValue(this)\">happy</span> today.." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard____last_update +msgid "Last Modified on" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Last Update Date" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__write_uid +msgid "Last Updated by" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__write_date +msgid "Last Updated on" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Last month" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Last week" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Last year" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__2 +msgid "Low" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__mail_template_ids +msgid "Mail Template" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_main_attachment_id +msgid "Main Attachment" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_has_error +msgid "Message Delivery error" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_ids +msgid "Messages" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "My Ticket" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__name +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Name" +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/models/helpdesk_ticket.py:0 +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.new_stage +#, python-format +msgid "New" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Newest" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_date_deadline +msgid "Next Activity Deadline" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_summary +msgid "Next Activity Summary" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_type_id +msgid "Next Activity Type" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__sh_next_stage +msgid "Next Stage" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_priority_action +msgid "No Helpdesk Tickets priorities found" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/models/helpdesk_ticket.py:0 +#, python-format +msgid "No Subject" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__close_days +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__close_days +msgid "No of Days" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__3 +msgid "Normal" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_needaction_counter +msgid "Number of Actions" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_has_error_counter +msgid "Number of errors" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_needaction_counter +msgid "Number of messages which requires an action" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_has_error_counter +msgid "Number of messages with delivery error" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_unread_counter +msgid "Number of unread messages" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__open_boolean +msgid "Open Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Other Information" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__parent_category_id +msgid "Parent Category" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__partner_id +msgid "Partner" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Partner:" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__person_name +msgid "Person Name" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users__sh_portal_user +msgid "Portal" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users__sh_portal_user_access +msgid "Portal Access" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__access_url +msgid "Portal Access URL" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__res_users__sh_portal_user_access__leader +msgid "Portal Leader" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__res_users__sh_portal_user_access__manager +msgid "Portal Manager" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__res_users__sh_portal_user_access__user +msgid "Portal Support User" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Preview" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Previous Month" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Previous Week" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Previous Year" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__priority +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Priority" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "Rating" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__rating_bool +msgid "Rating Setting" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "Rating: #{o.priority_new} on 3" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +msgid "Rating: #{ticket.priority_new} on 3" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Re-Open Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__reopen_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__reopen_stage_id +msgid "Re-Opened Stage" +msgstr "" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.reopen_stage +#, python-format +msgid "Reopened" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__reopen_stage_boolean +msgid "Reopened Stage" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__replied_date +msgid "Replied Date" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__state +msgid "Replied Status" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Reply" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#, python-format +msgid "Reply Status" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_reporting_menu +msgid "Reporting" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__done_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__done_stage_id +msgid "Resolved Stage" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Resolved Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_user_id +msgid "Responsible User" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_has_sms_error +msgid "SMS Delivery error" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Search in All" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__access_token +msgid "Security Token" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Assign User" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Category" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Select Date" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Priority" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Sub Category" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Subject" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Team" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__sequence +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__sequence +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__sequence +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__sequence +msgid "Sequence" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.menu_config_helpdesk +msgid "Settings" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__state__staff_replied +msgid "Staff Replied" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__stage_id +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_stages_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_stages_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Stage" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Status" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__activity_state +msgid "" +"Status based on activities\n" +"Overdue: Due date is already passed\n" +"Today: Activity date is today\n" +"Planned: Future activities." +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__sub_category_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__sub_category +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__sub_category +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Sub Category" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__name +msgid "Sub Category Name" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__sub_category_bool +msgid "Sub Category Setting" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subcategory_view_form +msgid "SubCategory Name" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Subject" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subject_type_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subject_type_tree_view +msgid "Subject Type" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_feedback_page +msgid "Submit Feedback" +msgstr "" + +#. module: sh_helpdesk +#: model:res.groups,name:sh_helpdesk.helpdesk_group_manager +msgid "Support Manager" +msgstr "" + +#. module: sh_helpdesk +#: model:res.groups,name:sh_helpdesk.helpdesk_group_user +msgid "Support User" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.constraint,message:sh_helpdesk.constraint_helpdesk_tags_name_uniq +msgid "Tag name already exists!" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__tag_ids +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_tags_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_tags_tree_view +msgid "Tags" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__team_id +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Team" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__team_head +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__team_head +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Team Head" +msgstr "" + +#. module: sh_helpdesk +#: model:res.groups,name:sh_helpdesk.helpdesk_group_team_leader +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Team Leader" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__team_members +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_team_form_view +msgid "Team Members" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_feedback_thank_you +msgid "Thank you for your valuable feedback to us." +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_feedback_thank_you +msgid "Thanks!" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "There are currently no tickets for your account." +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "This Quarter" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "This month" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "This week" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "This year" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Ticket" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__allocation_mail_template_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__allocation_mail_template_id +msgid "Ticket Allocation To User Mail Template" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Ticket Cancelled Information" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Ticket Closed Information" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.sh_action_ticket_dashboard +#: model:ir.model,name:sh_helpdesk.model_ticket_dashboard +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_dashboard_menu +msgid "Ticket Dashboard" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Ticket Dashboard Settings" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__ticket_from_portal +msgid "Ticket From Portal" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__ticket_from_website +msgid "Ticket From Website" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Ticket Mail Template Settings" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Ticket No" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__reply_mail_template_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__reply_mail_template_id +msgid "Ticket Reply Mail Template" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Ticket Settings" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Ticket Stage Settings" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__subject_id +msgid "Ticket Subject Type" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__ticket_type +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_type_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_type_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Ticket Type" +msgstr "" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_replay_template +msgid "" +"Ticket reply from ${object.company_id.name} (Ref ${object.name or 'n/a' })" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Ticket viewed by customer %s" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/models/helpdesk_ticket_dashboard.py:0 +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_tickets_menu +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_calendar +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_graph +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_pivot +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_home_menu_ticket +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_home_ticket +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Tickets" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +#, python-format +msgid "Today" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__activity_exception_decoration +msgid "Type of the exception activity on record." +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_unread +msgid "Unread Messages" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_unread_counter +msgid "Unread Messages Counter" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_res_users +msgid "Users" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__5 +msgid "Very High" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__1 +msgid "Very Low" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__website_message_ids +msgid "Website Messages" +msgstr "" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__website_message_ids +msgid "Website communication history" +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Yesterday" +msgstr "" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/models/helpdesk_ticket.py:0 +#, python-format +msgid "You have not access to edit this support request." +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_feedback_page +msgid "Your Feedback" +msgstr "" diff --git a/sh_helpdesk/i18n/sk.po b/sh_helpdesk/i18n/sk.po new file mode 100644 index 0000000..381322e --- /dev/null +++ b/sh_helpdesk/i18n/sk.po @@ -0,0 +1,2890 @@ +# Translation of Odoo Server. +# This file contains the translation of the following modules: +# * sh_helpdesk +# +msgid "" +msgstr "" +"Project-Id-Version: Odoo Server 14.0\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2020-12-22 10:05+0000\n" +"PO-Revision-Date: 2020-12-22 10:05+0000\n" +"Last-Translator: \n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_user_allocation_template +msgid "" +"${object.company_id.name} Ticket is assign to user (Ref ${object.name or " +"'n/a' })" +msgstr "" +"${object.company_id.name} Ticket je priradený užívateľovi (Ref ${object.name or " +"'n/a' })" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_new_template +msgid "" +"${object.company_id.name} Your Ticket is generated (Ref ${object.name or " +"'n/a' })" +msgstr "" +"${object.company_id.name} Váš ticket je vygenerovaný (Ref ${object.name or " +"'n/a' })" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_cancelled_template +msgid "" +"${object.company_id.name} Your ticket is cancelled (Ref ${object.name or " +"'n/a' })" +msgstr "" +"${object.company_id.name} Váš ticket bol zrušený (Ref ${object.name or " +"'n/a' })" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_closed_template +msgid "" +"${object.company_id.name} Your ticket is closed (Ref ${object.name or 'n/a' " +"})" +msgstr "" +"${object.company_id.name} Váš ticket je uzavretý (Ref ${object.name or 'n/a' " +"})" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_reopened_template +msgid "" +"${object.company_id.name} Your ticket is re-opened (Ref ${object.name or " +"'n/a' })" +msgstr "" +"${object.company_id.name} Váš ticket je znovu otvorený (Ref ${object.name or " +"'n/a' })" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_done_template +msgid "" +"${object.company_id.name} Your ticket is resolved (Ref ${object.name or " +"'n/a' })" +msgstr "" +"${object.company_id.name} Váš ticket je vyriešený (Ref ${object.name or " +"'n/a' })" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_feedback_thank_you +msgid "&times;" +msgstr "&krát;" + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_reopened_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\t\n" +"\t\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDobrý deň ${object.partner_id.name} Váš ticket je znovu otvorený,\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tOzveme sa čo najskôr.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/my/tickets/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">Zobraziť ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\t\n" +"\t\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\t\n" +"\t\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDobrý deň ${object.partner_id.name} Váš ticket je znovu otvorený,\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tOzveme sa čo najskôr.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/my/tickets/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">Zobraziť ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\t\n" +"\t\t\t\t\n" +"\t\t\t</div>\n" +" " + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_closed_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t\t\tDobrý deň ${object.partner_id.name},\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tVáš ticket je nateraz uzavretý. Ak chcete toicket znovu otvoriť, pošlite svoju odpoveď na tento mail.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tRadi by sme dostali vašu spätnú väzbu k podpore.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/ticket/feedback/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">Dajte nám spätnú väzbu</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t</div>\n" +" " +msgstr "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t\t\tDobrý deň ${object.partner_id.name},\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tVáš ticket je nateraz uzavretý, ak ho chcete znovu otvoriť odpovedzte prosím na tento mail.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tRadi by sme dostali vašu spätnú väzbu k podpore.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/ticket/feedback/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">Dajte nám spätnú väzbu</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t</div>\n" +" " + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_new_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" <p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDobrý deň ${object.partner_id.name} Dostali sme vašu požiadavku.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tNáš tím podpory vás bude čo najskôr kontaktovať.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"${object.get_portal_url()}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">Zobraziť ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t</div>\n" +" " +msgstr "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" <p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDobrý deň ${object.partner_id.name} Dostali sme vašu požiadavku.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tNáš tím podpory vás bude čo najskôr kontaktovať.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"${object.get_portal_url()}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">Zobraziť ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t</div>\n" +" " + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_user_allocation_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t\t\tOd zákazníka sme dostali nový ticket.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tProsím, skontrolujte to čo najskôr.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t \t<a href=\"${object.form_url}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">Zobraziť ticket</a>\n" +"\t\t\t\t\t\t\t </center>\n" +"\t\t\t\t\t\t\t <br/>\n" +"\t\t\t\t\t\t\t <br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t\t\tOd zákazníka sme dostali nový ticket.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tProsím, skontrolujte to čo najskôr.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t \t<a href=\"${object.form_url}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">Zobraziť ticket</a>\n" +"\t\t\t\t\t\t\t </center>\n" +"\t\t\t\t\t\t\t <br/>\n" +"\t\t\t\t\t\t\t <br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\n" +"\t\t\t</div>\n" +" " + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_replay_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDobrý deň ${object.partner_id.name},\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tNa vašej požiadavke pracujeme, čoskoro vás budeme kontaktovať.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/my/tickets/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">Zobraziť ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\n" +"\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDobrý de ${object.partner_id.name},\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\tNa vašej požiadavke pracujeme, čoskoro vás budeme kontaktovať.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/my/tickets/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">Zobraziť ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\n" +"\t\t\t\n" +"\t\t\t</div>\n" +" " + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_cancelled_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\n" +"\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDobrý de ${object.partner_id.name},\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t \t\tVáš ticket je nateraz zrušený z dôvodu istého technického problému.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/my/tickets/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">Zobraziť ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\n" +"\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDobrý deň ${object.partner_id.name},\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t \t\tVáš ticket je nateraz zrušený z dôvodu istého technického problému.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/my/tickets/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">Zobraziť ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\n" +"\t\t\t</div>\n" +" " + +#. module: sh_helpdesk +#: model:mail.template,body_html:sh_helpdesk.sh_ticket_done_template +msgid "" +"<div style=\"margin: 0px; padding: 0px;\">\n" +"\t\t\t\n" +"\t\t\t\n" +"\t\t\t\t<table border=\"0\" width=\"100%\" cellpadding=\"0\" bgcolor=\"#ededed\" style=\"padding: 20px; background-color: #ededed; border-collapse:separate;\" summary=\"o_mail_notification\">\n" +" <tbody>\n" +"\n" +" <!-- HEADER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\">\n" +" <span style=\"font-size:20px; color:white; font-weight: bold;\">\n" +" ${object.name}\n" +" </span>\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\">\n" +" <img src=\"/logo.png?company=${object.company_id.id}\" style=\"padding: 0px; margin: 0px; height: auto; width: 80px;\" alt=\"${object.company_id.name}\"/>\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- CONTENT -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#ffffff\" style=\"min-width: 590px; background-color: rgb(255, 255, 255); padding: 20px; border-collapse:separate;\">\n" +" <tbody>\n" +" <td valign=\"top\" style=\"font-family:Arial,Helvetica,sans-serif; color: #555; font-size: 14px;\">\n" +" \t<p style=\"margin: 0px; padding: 0px; font-size: 13px;\">\n" +"\t\t\t\t\t\t\t \tDobrý deň ${object.partner_id.name},\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t \t\tNa základe vašej žiadosti sme vyriešili vašu požiadavku.\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<center>\n" +"\t\t\t\t\t\t\t\t\t\t<a href=\"/my/tickets/${object.id}\" style=\"background-color: #1abc9c; padding: 10px; text-decoration: none; color: #fff; border-radius: 5px; font-size: 16px;\" class=\"o_default_snippet_text\">Zobraziť ticket</a>\n" +"\t\t\t\t\t\t\t\t\t</center>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t\t\t<br/>\n" +"\t\t\t\t\t\t\t </p>\n" +" </td>\n" +" </tbody>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +"\n" +" <!-- FOOTER -->\n" +" <tr>\n" +" <td align=\"center\" style=\"min-width: 590px;\">\n" +" <table width=\"590\" border=\"0\" cellpadding=\"0\" bgcolor=\"#875A7B\" style=\"min-width: 590px; background-color: rgb(135,90,123); padding: 20px; border-collapse:separate;\">\n" +" <tr>\n" +" <td valign=\"middle\" align=\"left\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" ${object.company_id.name}<br/>\n" +" ${object.company_id.phone or ''}\n" +" </td>\n" +" <td valign=\"middle\" align=\"right\" style=\"color: #fff; padding-top: 10px; padding-bottom: 10px; font-size: 12px;\">\n" +" % if object.company_id.email:\n" +" <a href=\"mailto:${object.company_id.email}\" style=\"text-decoration:none; color: white;\">${object.company_id.email}</a><br/>\n" +" % endif\n" +" % if object.company_id.website:\n" +" <a href=\"${object.company_id.website}\" style=\"text-decoration:none; color: white;\">\n" +" ${object.company_id.website}\n" +" </a>\n" +" % endif\n" +" </td>\n" +" </tr>\n" +" </table>\n" +" </td>\n" +" </tr>\n" +" </tbody>\n" +" </table>\n" +"\t\t\t\n" +"\t\t\t</div>\n" +" " +msgstr "" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Category:</em>" +msgstr "<em class=\"font-weight-normal text-muted\">Kategória:</em>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Created By:</em>" +msgstr "<em class=\"font-weight-normal text-muted\">Vytvoril:</em>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Customer:</em>" +msgstr "<em class=\"font-weight-normal text-muted\">Zákazník:</em>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Priority:</em>" +msgstr "<em class=\"font-weight-normal text-muted\">Priorita:</em>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Reply Status:</em>" +msgstr "<em class=\"font-weight-normal text-muted\">Stav odpovede:</em>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Status:</em>" +msgstr "<em class=\"font-weight-normal text-muted\">Stav:</em>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Sub Category:</em>" +msgstr "<em class=\"font-weight-normal text-muted\">Podkategória:</em>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Subject:</em>" +msgstr "<em class=\"font-weight-normal text-muted\">Predmet:</em>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<em class=\"font-weight-normal text-muted\">Ticket Type:</em>" +msgstr "<em class=\"font-weight-normal text-muted\">Typ ticketu:</em>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_home_menu_ticket +msgid "<em>Ticket</em>" +msgstr "<em>Ticket</em>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "<i class=\"fa fa-comment\"/> Send message" +msgstr "<i class=\"fa fa-comment\"/> Poslať správu" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "<i class=\"fa fa-download\"/> Download" +msgstr "<i class=\"fa fa-download\"/> Stiahnuť" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "<i class=\"fa fa-plus\"/> Create New" +msgstr "<i class=\"fa fa-plus\"/> Vytvor nový" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "<span>Stage :</span>" +msgstr "<span>Fáza:</span>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "<strong class=\"text-muted\">Your Contact</strong>" +msgstr "<strong class=\"text-muted\">Váš kontakt</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Assigned User</strong>" +msgstr "<strong>Priradený užívateľ</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +msgid "<strong>Cancelled By</strong>" +msgstr "<strong>Zrušil</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Cancelled Date</strong>" +msgstr "<strong>Dátum zrušenia</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Cancelled Reason</strong>" +msgstr "<strong>Dôvod zrušenia</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Category</strong>" +msgstr "<strong>Kategória</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Closed By</strong>" +msgstr "<strong>Uzavreté používateľom</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Closed Date</strong>" +msgstr "<strong>Dátum uzavretia</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Create Date</strong>" +msgstr "<strong>Dátum vytvorenia</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Customer Comment</strong>" +msgstr "<strong>Komentár zákazníka</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Customer Rating</strong>" +msgstr "<strong>Hodnotenie zákazníka</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Customer</strong>" +msgstr "<strong>Zákazník</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +msgid "<strong>Description</strong>" +msgstr "<strong>Popis</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Email</strong>" +msgstr "<strong>Email</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Last Update Date</strong>" +msgstr "<strong>Dátum poslednej aktualizácie</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Person Name</strong>" +msgstr "<strong>Meno osoby</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Priority</strong>" +msgstr "<strong>Priorita</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Replied Date</strong>" +msgstr "<strong>Dátum odpovede</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +msgid "<strong>Reply Status</strong>" +msgstr "<strong>Stav odpovede</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +msgid "<strong>Status</strong>" +msgstr "<strong>Stav</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Sub Category</strong>" +msgstr "<strong>Podkategória</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Team Head</strong>" +msgstr "<strong>Vedúci tímu</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Team</strong>" +msgstr "<strong>Tím</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +msgid "<strong>Ticket Status</strong>" +msgstr "<strong>Stav ticketu</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Ticket Subject Type</strong>" +msgstr "<strong>Typ predmetu ticketu</strong>" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "<strong>Ticket Type</strong>" +msgstr "<strong>Typ ticketu</strong>" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__access_warning +msgid "Access warning" +msgstr "Varovanie o prístupe" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Action" +msgstr "Akcia" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_needaction +msgid "Action Needed" +msgstr "Je potrebná akcia" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__active +msgid "Active" +msgstr "Aktívny" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_ids +msgid "Activities" +msgstr "Činnosti" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_exception_decoration +msgid "Activity Exception Decoration" +msgstr "Výnimka z aktivity" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_state +msgid "Activity State" +msgstr "Stav činnosti" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_type_icon +msgid "Activity Type Icon" +msgstr "Ikona typu aktivity" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "All" +msgstr "Všetky" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__ticket_allocated +msgid "Allocated" +msgstr "Pridelené" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Approve" +msgstr "Schváliť" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Archived" +msgstr "Archivované" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Assign To" +msgstr "Priradené" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Assign User" +msgstr "Priradiť používateľa" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__user_id +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Assigned User" +msgstr "Priradený užívateľ" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_attachment_count +msgid "Attachment Count" +msgstr "Počet príloh" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__attachment_ids +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Attachments" +msgstr "Prílohy" + +#. module: sh_helpdesk +#: model:ir.actions.server,name:sh_helpdesk.cron_helpdesk_ticket_close_ir_actions_server +#: model:ir.cron,cron_name:sh_helpdesk.cron_helpdesk_ticket_close +#: model:ir.cron,name:sh_helpdesk.cron_helpdesk_ticket_close +msgid "Auto Close Helpdesk Ticket" +msgstr "Automatické uzavretie ticketu technickej podpory" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__auto_close_ticket +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__auto_close_ticket +msgid "Auto Close Ticket" +msgstr "Automaticky uzavrieť ticket" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_team_form_view +msgid "Avatar" +msgstr "Avatar" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_button_boolean +msgid "Cancel Button" +msgstr "Tlačidlo Zrušiť" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_reason +msgid "Cancel Reason" +msgstr "Dôvod zrušenia" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_stage_boolean +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__cancel_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__cancel_stage_id +msgid "Cancel Stage" +msgstr "Zrušiť etapu" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Cancel Ticket" +msgstr "Zrušiť ticket" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.cancel_stage +#, python-format +msgid "Cancelled" +msgstr "Zrušený" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_by +msgid "Cancelled By" +msgstr "Zrušil" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__cancel_date +msgid "Cancelled Date" +msgstr "Dátum zrušenia" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Cancelled Tickets" +msgstr "Zrušené tickety" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__category_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__category +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__category +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Category" +msgstr "Kategória" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_category_view_form +msgid "Category Name" +msgstr "Názov kategórie" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__category_bool +msgid "Category Setting" +msgstr "Nastavenie kategórie" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Close" +msgstr "Uzavrieť" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__close_date +msgid "Close Date" +msgstr "Dátum uzavretia" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Close Ticket" +msgstr "Zatvorte ticket" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.close_stage +#, python-format +msgid "Closed" +msgstr "Uzavreté" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__close_by +msgid "Closed By" +msgstr "Uzavreté používateľom" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Closed Comment" +msgstr "Uzavretý komentár" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__closed_stage_boolean +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__close_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__close_stage_id +msgid "Closed Stage" +msgstr "Uzavretá etapa" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__color +msgid "Color" +msgstr "Farba" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__color +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__color +msgid "Color Index" +msgstr "Index farby" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__comment +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_feedback_page +msgid "Comment" +msgstr "Komentovať" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_res_company +msgid "Companies" +msgstr "Spoločnosti" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__company_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__company_id +msgid "Company" +msgstr "Spoločnosť" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Completed Tickets" +msgstr "Dokončené tickety" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_res_config_settings +msgid "Config Settings" +msgstr "Nastavenia konfigurácie" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_config_menu +msgid "Configuration" +msgstr "Konfigurácia" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "Contact" +msgstr "Kontakt" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Create Date" +msgstr "Dátum vytvorenia" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Create Helpdesk Ticket" +msgstr "Vytvorte ticket technickej podpory" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Create Support Request" +msgstr "Vytvorte žiadosť o podporu" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Create Ticket" +msgstr "Vytvorte ticket" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_stages_action +msgid "Create a New Stage" +msgstr "Vytvorte novú etapu" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_subject_type_action +msgid "Create a New Subject Type" +msgstr "Vytvorte nový typ predmetu" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_tags_action +msgid "Create a New Tag" +msgstr "Vytvorte novú značku" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_team_action +msgid "Create a New Team" +msgstr "Vytvorte nový tím" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_ticket_action +msgid "Create a New Ticket" +msgstr "Vytvorte nový ticket" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_ticket_type_action +msgid "Create a New Ticket Type" +msgstr "Vytvorte nový typ ticketu" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_category_action +msgid "Create new category" +msgstr "Vytvorte novú kategóriu" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_subcategory_action +msgid "Create new sub category" +msgstr "Vytvorte novú podkategóriu" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#, python-format +msgid "Created By" +msgstr "Vytvoril" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__create_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__create_uid +msgid "Created by" +msgstr "Vytvoril" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__create_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__create_date +msgid "Created on" +msgstr "Vytvorené" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Current Month" +msgstr "Aktuálny mesiac" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Current Week" +msgstr "Aktuálny týždeň" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Current Year" +msgstr "Aktuálny rok" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Custom" +msgstr "Vlastné" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#, python-format +msgid "Customer" +msgstr "Zákazník" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__customer_comment +msgid "Customer Comment" +msgstr "Komentár zákazníka" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Customer Name" +msgstr "Meno zákazníka" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__access_url +msgid "Customer Portal URL" +msgstr "URL zákazníckeho portálu" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__priority_new +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__customer_rating +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__customer_rating +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Customer Rating" +msgstr "Hodnotenie zákazníka" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__state__customer_replied +msgid "Customer Replied" +msgstr "Zákazník odpovedal" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__dashboard_filter +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__dashboard_filter +msgid "Dashbaord Filter" +msgstr "Dashboard filter" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__dashboard_tables +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__dashboard_tables +msgid "Dashbaord Tables" +msgstr "Tabuľky dashboardu" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.sh_menu_ticket_dashboard +msgid "Dashboard" +msgstr "Dashboard" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Data not available." +msgstr "Údaje nie sú k dispozícii." + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__sh_default_user_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__sh_default_user_id +msgid "Default Assign User" +msgstr "Predvolené priradenie používateľa" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__sh_default_team_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__sh_default_team_id +msgid "Default Team" +msgstr "Predvolený tím" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__description +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Description" +msgstr "Popis" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users__display_name +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__display_name +msgid "Display Name" +msgstr "Zobraziť meno" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.done_stage +#, python-format +msgid "Done" +msgstr "Hotovo" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__done_button_boolean +msgid "Done Button" +msgstr "Tlačidlo Hotovo" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__done_stage_boolean +msgid "Done Stage" +msgstr "Hotovo" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "Download" +msgstr "Stiahnuť" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__new_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__new_stage_id +msgid "Draft/New Stage" +msgstr "Koncept / nová etapa" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__email +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Email" +msgstr "Email" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__6 +msgid "Excellent" +msgstr "Vynikajúci" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_follower_ids +msgid "Followers" +msgstr "Sledovatelia" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_channel_ids +msgid "Followers (Channels)" +msgstr "Sledovatelia (kanály)" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_partner_ids +msgid "Followers (Partners)" +msgstr "Sledovatelia (partneri)" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__activity_type_icon +msgid "Font awesome icon e.g. fa-tasks" +msgstr "Font awesome ikonka napr. fa-tasks" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__form_url +msgid "Form Url" +msgstr "URL adresa formulára" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Group By" +msgstr "Zoskupiť podľa" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__sh_group_ids +msgid "Groups" +msgstr "Skupiny" + +#. module: sh_helpdesk +#: model:ir.module.category,description:sh_helpdesk.module_helpdesk_category +#: model:ir.module.category,name:sh_helpdesk.module_helpdesk_category +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_main_menu +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Helpdesk" +msgstr "Technická podpora" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_category_action +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_category_menu +msgid "Helpdesk Categories" +msgstr "Kategórie technickej podpory" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_helpdesk_category +msgid "Helpdesk Category" +msgstr "Kategória technickej podpory" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_priority_action +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_priority_menu +msgid "Helpdesk Priorities" +msgstr "Priority helpdesku" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_helpdesk_priority +msgid "Helpdesk Priority" +msgstr "Priorita helpdesku" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.action_helpdesk_configuration +msgid "Helpdesk Settings" +msgstr "Nastavenia technickej podpory" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_stages_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_stages +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_stages_menu +msgid "Helpdesk Stages" +msgstr "Etapy technickej podpory" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_subcategory_action +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_subcategory_menu +msgid "Helpdesk Sub Categories" +msgstr "Podkategórie technickej podpory" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_helpdesk_subcategory +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subcategory_view_form +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subcategory_view_tree +msgid "Helpdesk SubCategory" +msgstr "Podkategória technickej podpory" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_subject_type_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_sub_type +msgid "Helpdesk Subject Type" +msgstr "Typ predmetu technickej podpory" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_subject_type_menu +msgid "Helpdesk Subject Types" +msgstr "Typy predmetov technickej podpory" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_tags_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_tags +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_tags_menu +msgid "Helpdesk Tags" +msgstr "Značky technickej podpory" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_team_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_team +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_team_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_team_tree_view +msgid "Helpdesk Team" +msgstr "Tím technickej podpory" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_team_menu +msgid "Helpdesk Teams" +msgstr "Tímy technickej podpory" + +#. module: sh_helpdesk +#: model:ir.actions.report,name:sh_helpdesk.action_portal_report_helpdesk_ticket +#: model:ir.actions.report,name:sh_helpdesk.action_report_helpdesk_ticket +#: model:ir.model,name:sh_helpdesk.model_helpdesk_ticket +msgid "Helpdesk Ticket" +msgstr "Helpdesk ticket" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Helpdesk Ticket Search" +msgstr "Helpdesk vyhľadávanie ticketov" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_ticket_type_action +#: model:ir.model,name:sh_helpdesk.model_helpdesk_ticket_type +msgid "Helpdesk Ticket Type" +msgstr "Typ ticketu technickej podpory" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_ticket_type_menu +msgid "Helpdesk Ticket Types" +msgstr "Typy ticketov pre helpdesk" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.helpdesk_ticket_action +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_tickets_sub_menu +msgid "Helpdesk Tickets" +msgstr "Helpdesk tickety" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__4 +msgid "High" +msgstr "Vysoká" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_ticket_page +msgid "History" +msgstr "História" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users__id +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__id +msgid "ID" +msgstr "ID" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_exception_icon +msgid "Icon" +msgstr "Ikona" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__activity_exception_icon +msgid "Icon to indicate an exception activity." +msgstr "Ikona na označenie aktivity výnimky." + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_needaction +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_unread +msgid "If checked, new messages require your attention." +msgstr "Ak je zaškrtnuté, nové správy si vyžadujú vašu pozornosť." + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_has_error +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_has_sms_error +msgid "If checked, some messages have a delivery error." +msgstr "Ak je zaškrtnuté, pri niektorých správach sa vyskytla chyba doručenia." + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__active +msgid "" +"If unchecked, it will allow you to hide the product without removing it." +msgstr "" +"Ak nie je zaškrtnuté, umožní vám skryť produkt bez jeho odstránenia." + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.in_progress_stage +#, python-format +msgid "In Progress" +msgstr "Prebieha" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__is_cancel_button_visible +msgid "Is Cancel Button Visible ?" +msgstr "Je tlačidlo Zrušiť viditeľné?" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_is_follower +msgid "Is Follower" +msgstr "Je sledovateľ" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__is_done_button_visible +msgid "Is Resolved Button Visible ?" +msgstr "Je tlačidlo vyriešené viditeľné?" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_feedback_page +msgid "" +"It looks like you're feeling <span id=\"result\" " +"onclick=\"updateValue(this)\">happy</span> today.." +msgstr "" +"Vyzerá to, že sa dnes cítiš <span id=\"result\" " +"onclick=\"updateValue(this)\">šťasný</span> .." + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users____last_update +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard____last_update +msgid "Last Modified on" +msgstr "Naposledy upravené" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Last Update Date" +msgstr "Dátum poslednej aktualizácie" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__write_uid +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__write_uid +msgid "Last Updated by" +msgstr "Naposledy aktualizované používateľom" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__write_date +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__write_date +msgid "Last Updated on" +msgstr "Posledná aktualizácia dňa" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Last month" +msgstr "Minulý mesiac" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Last week" +msgstr "Minulý týždeň" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Last year" +msgstr "Minulý rok" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__2 +msgid "Low" +msgstr "Nízka" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__mail_template_ids +msgid "Mail Template" +msgstr "Šablóna mailu" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_main_attachment_id +msgid "Main Attachment" +msgstr "Hlavná príloha" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_has_error +msgid "Message Delivery error" +msgstr "Chyba doručenia správy" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_ids +msgid "Messages" +msgstr "Správy" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "My Ticket" +msgstr "Môj ticket" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_sub_type__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_tags__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket_type__name +#: model:ir.model.fields,field_description:sh_helpdesk.field_ticket_dashboard__name +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Name" +msgstr "Názov" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/models/helpdesk_ticket.py:0 +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.new_stage +#, python-format +msgid "New" +msgstr "Nový" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Newest" +msgstr "Najnovšie" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_date_deadline +msgid "Next Activity Deadline" +msgstr "Termín nasledujúcej aktivity" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_summary +msgid "Next Activity Summary" +msgstr "Zhrnutie ďalšej aktivity" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_type_id +msgid "Next Activity Type" +msgstr "Typ ďalšej aktivity" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__sh_next_stage +msgid "Next Stage" +msgstr "Ďalšia etapa" + +#. module: sh_helpdesk +#: model_terms:ir.actions.act_window,help:sh_helpdesk.helpdesk_priority_action +msgid "No Helpdesk Tickets priorities found" +msgstr "Nenašli sa žiadne priority ticketov technickej podpory" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/models/helpdesk_ticket.py:0 +#, python-format +msgid "No Subject" +msgstr "Bez predmetu" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__close_days +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__close_days +msgid "No of Days" +msgstr "Počet dní" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__3 +msgid "Normal" +msgstr "Normálna" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_needaction_counter +msgid "Number of Actions" +msgstr "Počet akcií" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_has_error_counter +msgid "Number of errors" +msgstr "Počet chýb" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_needaction_counter +msgid "Number of messages which requires an action" +msgstr "Počet správ, ktoré si vyžadujú akciu" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_has_error_counter +msgid "Number of messages with delivery error" +msgstr "Počet správ s chybou doručenia" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__message_unread_counter +msgid "Number of unread messages" +msgstr "Počet neprečítaných správ" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__open_boolean +msgid "Open Ticket" +msgstr "Otvorte ticket" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Other Information" +msgstr "Ďalšie informácie" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__parent_category_id +msgid "Parent Category" +msgstr "Rodičovská kategória" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__partner_id +msgid "Partner" +msgstr "Partner" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Partner:" +msgstr "Partner:" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__person_name +msgid "Person Name" +msgstr "Meno osoby" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users__sh_portal_user +msgid "Portal" +msgstr "Portál" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_users__sh_portal_user_access +msgid "Portal Access" +msgstr "Prístup na portál" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__access_url +msgid "Portal Access URL" +msgstr "URL prístupu na portál" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__res_users__sh_portal_user_access__leader +msgid "Portal Leader" +msgstr "Vedúci portálu" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__res_users__sh_portal_user_access__manager +msgid "Portal Manager" +msgstr "Správca portálu" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__res_users__sh_portal_user_access__user +msgid "Portal Support User" +msgstr "Používateľ podpory portálu" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Preview" +msgstr "Náhľad" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Previous Month" +msgstr "Predchádzajúci mesiac" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Previous Week" +msgstr "Predchádzajúci týždeň" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Previous Year" +msgstr "Predchádzajúci rok" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__priority +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Priority" +msgstr "Priorita" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "Rating" +msgstr "Hodnotenie" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__rating_bool +msgid "Rating Setting" +msgstr "Nastavenie hodnotenia" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_portal_ticket_template +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_template +msgid "Rating: #{o.priority_new} on 3" +msgstr "Hodnotenie: # {o.priority_new} dňa 3" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_portal_content +msgid "Rating: #{ticket.priority_new} on 3" +msgstr "Hodnotenie: # {ticket.priority_new} dňa 3" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Re-Open Ticket" +msgstr "Znovu otvoriť ticket" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__reopen_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__reopen_stage_id +msgid "Re-Opened Stage" +msgstr "Znova otvorená etapa" + +#. module: sh_helpdesk +#. openerp-web +#: code:addons/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js:0 +#: model:helpdesk.stages,name:sh_helpdesk.reopen_stage +#, python-format +msgid "Reopened" +msgstr "Znovu otvorené" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__reopen_stage_boolean +msgid "Reopened Stage" +msgstr "Znovuotvorená etapa" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__replied_date +msgid "Replied Date" +msgstr "Dátum odpovede" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__state +msgid "Replied Status" +msgstr "Stav odpovede" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Reply" +msgstr "Odpovedať" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#, python-format +msgid "Reply Status" +msgstr "Stav odpovede" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_reporting_menu +msgid "Reporting" +msgstr "Reporting" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__done_stage_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__done_stage_id +msgid "Resolved Stage" +msgstr "Vyriešená etapa" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Resolved Ticket" +msgstr "Vyriešený ticket" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__activity_user_id +msgid "Responsible User" +msgstr "Zodpovedný užívateľ" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_has_sms_error +msgid "SMS Delivery error" +msgstr "Chyba doručenia SMS" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Search in All" +msgstr "Hľadať vo všetkých" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__access_token +msgid "Security Token" +msgstr "Bezpečnostný token" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Assign User" +msgstr "Vyberte možnosť priradiť používateľa" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Category" +msgstr "Vybrať kategóriu" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Select Date" +msgstr "Vybrať dátum" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Priority" +msgstr "Vybrať prioritu" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Sub Category" +msgstr "Vybrať podkategóriu" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Subject" +msgstr "Vybrať predmet" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Select Team" +msgstr "Vybrať tím" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_category__sequence +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_priority__sequence +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_stages__sequence +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__sequence +msgid "Sequence" +msgstr "Postupnosť" + +#. module: sh_helpdesk +#: model:ir.ui.menu,name:sh_helpdesk.menu_config_helpdesk +msgid "Settings" +msgstr "Nastavenie" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__state__staff_replied +msgid "Staff Replied" +msgstr "Zamestnanci odpovedali" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__stage_id +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_stages_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_stages_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Stage" +msgstr "Etapa" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Status" +msgstr "Stav" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__activity_state +msgid "" +"Status based on activities\n" +"Overdue: Due date is already passed\n" +"Today: Activity date is today\n" +"Planned: Future activities." +msgstr "" +"Stav na základe aktivít \n" +"Platnosť: Termín platnosti už uplynul \n" +"Dnes: Dátum aktivity je dnes \n" +"Plánované: Budúce činnosti." + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__sub_category_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__sub_category +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__sub_category +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Sub Category" +msgstr "Podkategória" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_subcategory__name +msgid "Sub Category Name" +msgstr "Názov podkategórie" + + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__sub_category_bool +msgid "Sub Category Setting" +msgstr "Nastavenie podkategórie" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subcategory_view_form +msgid "SubCategory Name" +msgstr "Názov podkategórie" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Subject" +msgstr "Predmet" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subject_type_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_subject_type_tree_view +msgid "Subject Type" +msgstr "Typ predmetu" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_feedback_page +msgid "Submit Feedback" +msgstr "Odoslať spätnú väzbu" + +#. module: sh_helpdesk +#: model:res.groups,name:sh_helpdesk.helpdesk_group_manager +msgid "Support Manager" +msgstr "Manažér podpory" + +#. module: sh_helpdesk +#: model:res.groups,name:sh_helpdesk.helpdesk_group_user +msgid "Support User" +msgstr "Používateľ podpory" + +#. module: sh_helpdesk +#: model:ir.model.constraint,message:sh_helpdesk.constraint_helpdesk_tags_name_uniq +msgid "Tag name already exists!" +msgstr "Značka už existuje!" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__tag_ids +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_tags_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_tags_tree_view +msgid "Tags" +msgstr "Značky" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__team_id +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Team" +msgstr "Tím" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__team_head +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__team_head +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +msgid "Team Head" +msgstr "Vedúci tímu" + +#. module: sh_helpdesk +#: model:res.groups,name:sh_helpdesk.helpdesk_group_team_leader +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Team Leader" +msgstr "TeamLeader" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_team__team_members +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_team_form_view +msgid "Team Members" +msgstr "Členovia tímu" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_feedback_thank_you +msgid "Thank you for your valuable feedback to us." +msgstr "Ďakujeme za vašu cennú spätnú väzbu." + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_feedback_thank_you +msgid "Thanks!" +msgstr "Vďaka!" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "There are currently no tickets for your account." +msgstr "Pre váš účet momentálne nie sú k dispozícii žiadne tickety." + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "This Quarter" +msgstr "Tento štvrťrok" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "This month" +msgstr "Tento mesiac" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "This week" +msgstr "Tento týždeň" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "This year" +msgstr "Tento rok" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +msgid "Ticket" +msgstr "Ticket" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__allocation_mail_template_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__allocation_mail_template_id +msgid "Ticket Allocation To User Mail Template" +msgstr "Mailová šablóna priradenia ticketu používateľovi" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Ticket Cancelled Information" +msgstr "Informácie o zrušenom tickete" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_form_view +msgid "Ticket Closed Information" +msgstr "Informácie o uzavretom tickete" + +#. module: sh_helpdesk +#: model:ir.actions.act_window,name:sh_helpdesk.sh_action_ticket_dashboard +#: model:ir.model,name:sh_helpdesk.model_ticket_dashboard +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_dashboard_menu +msgid "Ticket Dashboard" +msgstr "Informačný panel ticketov" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Ticket Dashboard Settings" +msgstr "Nastavenia informačného panelu ticketov" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__ticket_from_portal +msgid "Ticket From Portal" +msgstr "Ticket z portálu" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__ticket_from_website +msgid "Ticket From Website" +msgstr "Ticket z web stránky" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Ticket Mail Template Settings" +msgstr "Nastavenia mail šablóny ticketov" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.ticket_dashboard_tbl +msgid "Ticket No" +msgstr "Ticket č." + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_company__reply_mail_template_id +#: model:ir.model.fields,field_description:sh_helpdesk.field_res_config_settings__reply_mail_template_id +msgid "Ticket Reply Mail Template" +msgstr "Emailová šablóna pre odpovede na tickety" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Ticket Settings" +msgstr "Nastavenia ticketov" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_config_setting_view +msgid "Ticket Stage Settings" +msgstr "Nastavenia etáp ticketov" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__subject_id +msgid "Ticket Subject Type" +msgstr "Typ predmetu ticketu" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__ticket_type +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_search_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_type_form_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_type_tree_view +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Ticket Type" +msgstr "Typ ticketu" + +#. module: sh_helpdesk +#: model:mail.template,subject:sh_helpdesk.sh_ticket_replay_template +msgid "" +"Ticket reply from ${object.company_id.name} (Ref ${object.name or 'n/a' })" +msgstr "" +"Odpoveď na ticket od ${object.company_id.name} (Ref ${object.name or 'n/a' })" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#, python-format +msgid "Ticket viewed by customer %s" +msgstr "Ticket zobrazený zákazníkom %s" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/models/helpdesk_ticket_dashboard.py:0 +#: model:ir.ui.menu,name:sh_helpdesk.helpdesk_tickets_menu +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_calendar +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_graph +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_pivot +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_home_menu_ticket +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_home_ticket +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.portal_my_tickets +#, python-format +msgid "Tickets" +msgstr "Tickety" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/controllers/portal.py:0 +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +#, python-format +msgid "Today" +msgstr "Dnes" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__activity_exception_decoration +msgid "Type of the exception activity on record." +msgstr "Typ výnimky zaznamenanej aktivity." + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_unread +msgid "Unread Messages" +msgstr "Neprečítané správy" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__message_unread_counter +msgid "Unread Messages Counter" +msgstr "Počítadlo neprečítaných správ" + +#. module: sh_helpdesk +#: model:ir.model,name:sh_helpdesk.model_res_users +msgid "Users" +msgstr "Používatelia" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__5 +msgid "Very High" +msgstr "Veľmi vysoká" + +#. module: sh_helpdesk +#: model:ir.model.fields.selection,name:sh_helpdesk.selection__helpdesk_ticket__priority_new__1 +msgid "Very Low" +msgstr "Veľmi nízka" + +#. module: sh_helpdesk +#: model:ir.model.fields,field_description:sh_helpdesk.field_helpdesk_ticket__website_message_ids +msgid "Website Messages" +msgstr "Správy z web stránky" + +#. module: sh_helpdesk +#: model:ir.model.fields,help:sh_helpdesk.field_helpdesk_ticket__website_message_ids +msgid "Website communication history" +msgstr "História komunikácie z web stránky" + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.sh_ticket_dashboard_kanban_view +msgid "Yesterday" +msgstr "Včera" + +#. module: sh_helpdesk +#: code:addons/sh_helpdesk/models/helpdesk_ticket.py:0 +#, python-format +msgid "You have not access to edit this support request." +msgstr "Nemáte prístup na úpravu tejto požiadvky." + +#. module: sh_helpdesk +#: model_terms:ir.ui.view,arch_db:sh_helpdesk.helpdesk_ticket_feedback_page +msgid "Your Feedback" +msgstr "Vaša spätná väzba" diff --git a/sh_helpdesk/models/__init__.py b/sh_helpdesk/models/__init__.py new file mode 100644 index 0000000..ecf1ad2 --- /dev/null +++ b/sh_helpdesk/models/__init__.py @@ -0,0 +1,19 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. + +from . import helpdesk_team +from . import helpdesk_ticket_type +from . import helpdesk_subject_type +from . import helpdesk_tags +from . import helpdesk_stages +from . import helpdesk_category +from . import helpdesk_subcategory +from . import helpdesk_priority +from . import helpdesk_policies +from . import helpdesk_config_settings +from . import res_users +from . import helpdesk_ticket +from . import helpdesk_alarm +from . import helpdesk_ticket_dashboard +from . import send_mail_quick_reply +from . import helpdesk_ticket_update_wizard diff --git a/sh_helpdesk/models/helpdesk_alarm.py b/sh_helpdesk/models/helpdesk_alarm.py new file mode 100644 index 0000000..c7231e6 --- /dev/null +++ b/sh_helpdesk/models/helpdesk_alarm.py @@ -0,0 +1,162 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. + +from odoo import fields, models, api, _ +from odoo.exceptions import ValidationError +from datetime import timedelta + +class TicketAlarm(models.Model): + _name = "sh.ticket.alarm" + _description = "Ticket Reminder" + + name = fields.Char(string="Name", readonly=True) + type = fields.Selection([('email', 'Email'), ( + 'popup', 'Popup')], string="Type", required=True, default='email') + sh_remind_before = fields.Integer( + string="Reminder Before") + sh_reminder_unit = fields.Selection([('Hour(s)', 'Hour(s)'), ( + 'Minute(s)', 'Minute(s)'), ('Second(s)', 'Second(s)')], string="Reminder Unit", default='Hour(s)',required=True) + company_id = fields.Many2one( + 'res.company', 'Company', default=lambda self: self.env.company) + + @api.constrains('sh_remind_before') + def _check_sh_reminder_unit(self): + if self.filtered(lambda c: c.sh_reminder_unit == 'Minute(s)' and c.sh_remind_before < 5): + raise ValidationError(_("Reminder Before can't set less than 5 Minutes.")) + elif self.filtered(lambda c: c.sh_reminder_unit == 'Second(s)' and c.sh_remind_before < 300): + raise ValidationError(_("Reminder Before can't set less than 300 Seconds.")) + elif self.filtered(lambda c: c.sh_reminder_unit == 'Hour(s)' and c.sh_remind_before < 1): + raise ValidationError(_("Reminder Before can't set less than 1 Hour.")) + + def name_get(self): + # Prefetch the fields used by the `name_get`, so `browse` doesn't fetch other fields + self.browse(self.ids).read(['sh_remind_before', 'sh_reminder_unit','type']) + return [(alarm.id, '%s%s%s' % (str(alarm.sh_remind_before)+' ',str(alarm.sh_reminder_unit)+' ','['+str(alarm.type)+']')) + for alarm in self] + + @api.onchange('sh_remind_before','type','sh_reminder_unit') + def _onchange_name(self): + for rec in self: + rec.name = rec.name_get()[0][1] + + @api.model + def _run_ticket_reminder(self): + if self.env.company.sh_display_ticket_reminder: + alarm_ids = self.env['sh.ticket.alarm'].sudo().search([]) + if alarm_ids: + for alarm in alarm_ids: + ticket_ids = self.env['helpdesk.ticket'].sudo().search([('sh_ticket_alarm_ids','in',[alarm.id])]) + if ticket_ids: + for ticket in ticket_ids: + deadline_date = False + if alarm.sh_reminder_unit == 'Hour(s)' and ticket.sh_due_date: + deadline_date_hours_added = ticket.sh_due_date + timedelta(hours = 5,minutes=30,seconds=0) + deadline_date = deadline_date_hours_added - timedelta(hours = alarm.sh_remind_before) + elif alarm.sh_reminder_unit == 'Minute(s)' and ticket.sh_due_date: + deadline_date_minutes_added = ticket.sh_due_date + timedelta(hours = 5,minutes=30,seconds=0) + deadline_date = deadline_date_minutes_added - timedelta(minutes = alarm.sh_remind_before) + elif alarm.sh_reminder_unit == 'Second(s)' and ticket.sh_due_date: + deadline_date_seconds_added = ticket.sh_due_date + timedelta(hours = 5,minutes=30,seconds=0) + deadline_date = deadline_date_seconds_added - timedelta(seconds = alarm.sh_remind_before) + if deadline_date and deadline_date != False: + if alarm.type == 'popup': + now = fields.Datetime.now() + timedelta(hours = 5,minutes=30,seconds=0) + if fields.Date.today() == deadline_date.date() and deadline_date.hour == now.hour and deadline_date.minute == now.minute: + notifications = [] + message="<h2><u>Ticket Information</u></h2></br>" + if ticket.create_date: + message+="<strong>Create Date :</strong>"+str(ticket.create_date) + "</br>" + if ticket.sh_due_date: + message+="<strong>Due Date :</strong>"+str(ticket.sh_due_date) + "</br>" + if ticket.subject_id: + message+="<strong>Subject :</strong>"+str(ticket.subject_id.name) + "</br>" + if ticket.ticket_type: + message+="<strong>Type :</strong>"+str(ticket.ticket_type.name) + "</br>" + if ticket.category_id: + message+="<strong>Category :</strong>"+str(ticket.category_id.name) + "</br>" + if ticket.sub_category_id: + message+="<strong>Sub Category :</strong>"+str(ticket.sub_category_id.name) + "</br>" + if ticket.priority: + message+="<strong>Priority :</strong>"+str(ticket.priority.name) + "</br>" + if ticket.team_id: + message+="<strong>Team :</strong>"+str(ticket.team_id.name) + "</br>" + if ticket.team_head: + message+="<strong>Team Head :</strong>"+str(ticket.team_head.name) + "</br>" + if ticket.user_id: + message+="<strong>Assigned To :</strong>"+str(ticket.user_id.name) + "</br>" + multi_users = [] + if ticket.sh_user_ids: + for user in ticket.sh_user_ids: + if user.name not in multi_users: + multi_users.append(user.name) + if len(multi_users) > 0: + message+='<strong>Assigned Users : </strong>' + for user_name in multi_users: + message+='<span class="badge badge-info" style="padding-right:5px">'+str(user_name) +'</span>' + message+='</br>' + tags = [] + if ticket.tag_ids: + for tag in ticket.tag_ids: + if tag.name not in tags: + tags.append(tag.name) + if len(tags) > 0: + message+='<strong>Tags : </strong>' + for tag_name in tags: + message+='<span class="badge badge-info" style="padding-right:5px">'+str(tag_name) +'</span>' + message+='</br>' + products = [] + if ticket.product_ids: + for product in ticket.product_ids: + if product.name_get()[0][1] not in products: + products.append(product.name_get()[0][1]) + if len(products) > 0: + message+='<strong>Products : </strong>' + for product_name in products: + message+='<span class="badge badge-info" style="padding-right:5px">'+str(product_name) +'</span>' + message+='</br>' + if ticket.partner_id: + message+="<strong>Partner :</strong>"+str(ticket.partner_id.name) + "</br>" + if ticket.person_name: + message+="<strong>Person Name :</strong>"+str(ticket.person_name) + "</br>" + if ticket.email: + message+="<strong>Email :</strong>"+str(ticket.email) + "</br>" + model_href = str(self.env['ir.config_parameter'].sudo().get_param('web.base.url')) + '/web#id='+str(ticket.id)+'&model=helpdesk.ticket&view_type=form' + message+="<a style='color:#7C7BAD;padding-right:10px' class='btn btn-link' data-dismiss='toast'>Close</a>" + message+="<a href="+str(model_href)+" target='_blank' class='btn btn-link' style='padding-right:10px;'>Ticket</a>" + partners=[] + if ticket.team_head: + if ticket.team_head.partner_id.id not in partners: + partners.append(ticket.team_head.partner_id.id) + if ticket.user_id: + if ticket.user_id.partner_id.id not in partners: + partners.append(ticket.user_id.partner_id.id) + if ticket.sh_user_ids: + for user_id in ticket.sh_user_ids: + if user_id.partner_id.id not in partners: + partners.append(user_id.partner_id.id) + if len(partners) > 0: + for partner_id in partners: + notifications.append([ + (self._cr.dbname, 'res.partner', partner_id), + {'type': 'user_connection', 'title': _('Ticket Reminder '+'('+str(ticket.name)+')'), 'message': message, 'sticky': True, 'warning': False} + ]) + self.env['bus.bus'].sendmany(notifications) + elif alarm.type == 'email': + now = fields.Datetime.now() + timedelta(hours = 5,minutes=30,seconds=0) + email_formatted=[] + if ticket.team_head: + if str(ticket.team_head.partner_id.email_formatted) not in email_formatted: + email_formatted.append(str(ticket.team_head.email_formatted)) + if ticket.user_id: + if str(ticket.user_id.partner_id.email_formatted) not in email_formatted: + email_formatted.append(str(ticket.user_id.email_formatted)) + if ticket.sh_user_ids: + for user_id in ticket.sh_user_ids: + if str(user_id.partner_id.email_formatted) not in email_formatted: + email_formatted.append(str(user_id.partner_id.email_formatted)) + if fields.Date.today() == deadline_date.date() and deadline_date.hour == now.hour and deadline_date.minute == now.minute: + reminder_template = self.env.ref('sh_helpdesk.sh_ticket_reminder_mail_template') + if reminder_template and len(email_formatted) > 0: + emails = ','.join(email_formatted) + email_values = {'email_to':emails} + reminder_template.sudo().send_mail(ticket.id, force_send=True,email_values=email_values) diff --git a/sh_helpdesk/models/helpdesk_category.py b/sh_helpdesk/models/helpdesk_category.py new file mode 100644 index 0000000..acbb430 --- /dev/null +++ b/sh_helpdesk/models/helpdesk_category.py @@ -0,0 +1,19 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. + +from odoo import models, fields, api + + +class HelpdeskCategory(models.Model): + _name = 'helpdesk.category' + _description = 'Helpdesk Category' + _rec_name = 'name' + + sequence = fields.Integer(string="Sequence") + name = fields.Char(required=True, string='Name',translate=True) + + @api.model + def create(self, values): + sequence = self.env['ir.sequence'].next_by_code('helpdesk.category') + values['sequence'] = sequence + return super(HelpdeskCategory, self).create(values) diff --git a/sh_helpdesk/models/helpdesk_config_settings.py b/sh_helpdesk/models/helpdesk_config_settings.py new file mode 100644 index 0000000..0136499 --- /dev/null +++ b/sh_helpdesk/models/helpdesk_config_settings.py @@ -0,0 +1,109 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. + +from odoo import models, fields, api + + +class ResCompany(models.Model): + _inherit = 'res.company' + + category = fields.Boolean('Category') + sub_category = fields.Boolean('Sub Category') + customer_rating = fields.Boolean('Customer Rating') + auto_close_ticket = fields.Boolean('Auto Close Ticket') + close_days = fields.Integer('No of Days') + new_stage_id = fields.Many2one( + 'helpdesk.stages', string="Draft/New Stage") + done_stage_id = fields.Many2one('helpdesk.stages', string="Resolved Stage") + cancel_stage_id = fields.Many2one('helpdesk.stages', string="Cancel Stage") + allocation_mail_template_id = fields.Many2one( + 'mail.template', string='Ticket Allocation To User Mail Template') + reply_mail_template_id = fields.Many2one( + 'mail.template', string='Ticket Reply Mail Template') + dashboard_filter = fields.Many2many( + 'helpdesk.stages', 'rel_company_stage_counter', string="Dashbaord Filter", required=True) + dashboard_tables = fields.Many2many( + 'helpdesk.stages', 'rel_company_stage_tables', string="Dashbaord Tables", required=True) + reopen_stage_id = fields.Many2one( + 'helpdesk.stages', string="Re-Opened Stage") + close_stage_id = fields.Many2one('helpdesk.stages', string="Closed Stage") + sh_default_team_id = fields.Many2one( + 'helpdesk.team', string="Default Team") + sh_default_user_id = fields.Many2one( + 'res.users', string="Default Assign User") + sh_display_multi_user = fields.Boolean('Display Multi Users ?') + sh_configure_activate = fields.Boolean( + 'Manage Products') + sh_display_ticket_reminder = fields.Boolean('Ticket Reminder ?') + sh_ticket_product_detail = fields.Boolean( + "Ticket Product details in Message?", default=True) + sh_signature = fields.Boolean("Signature?", default=True) + sh_display_in_chatter = fields.Boolean( + "Display in Chatter Message?", default=True) + sh_pdf_in_message = fields.Boolean( + "Send Report URL in Message?", default=True) + sh_ticket_url_in_message = fields.Boolean("Send Ticket URL in Message?", default=True) + sh_receive_email_seeing_ticket = fields.Boolean('Get email when customer view ticket ?') + sh_auto_add_customer_as_follower = fields.Boolean('Auto add customer as follower when create ticket ?',default=True) + + +class HelpdeskSettings(models.TransientModel): + _inherit = 'res.config.settings' + + company_id = fields.Many2one('res.company', string='Company', required=True, + default=lambda self: self.env.company) + category = fields.Boolean( + string='Category', related='company_id.category', readonly=False) + sub_category = fields.Boolean( + string='Sub Category', related='company_id.sub_category', readonly=False) + customer_rating = fields.Boolean( + string='Customer Rating', related='company_id.customer_rating', readonly=False) + auto_close_ticket = fields.Boolean( + string='Auto Close Ticket', related='company_id.auto_close_ticket', readonly=False) + close_days = fields.Integer( + string='No of Days', related='company_id.close_days', readonly=False) + new_stage_id = fields.Many2one('helpdesk.stages', string="Draft/New Stage", + related='company_id.new_stage_id', readonly=False) + done_stage_id = fields.Many2one( + 'helpdesk.stages', string="Resolved Stage", related='company_id.done_stage_id', readonly=False) + cancel_stage_id = fields.Many2one( + 'helpdesk.stages', string="Cancel Stage", related='company_id.cancel_stage_id', readonly=False) + allocation_mail_template_id = fields.Many2one( + 'mail.template', string='Ticket Allocation To User Mail Template', related='company_id.allocation_mail_template_id', readonly=False) + reply_mail_template_id = fields.Many2one( + 'mail.template', string='Ticket Reply Mail Template', related='company_id.reply_mail_template_id', readonly=False) + dashboard_filter = fields.Many2many('helpdesk.stages', 'rel_company_stage_counter', + string="Dashbaord Filter", related="company_id.dashboard_filter", readonly=False, required=True) + dashboard_tables = fields.Many2many('helpdesk.stages', 'rel_company_stage_tables', + string="Dashbaord Tables", related="company_id.dashboard_tables", readonly=False, required=True) + reopen_stage_id = fields.Many2one( + 'helpdesk.stages', string="Re-Opened Stage", readonly=False, related='company_id.reopen_stage_id') + close_stage_id = fields.Many2one( + 'helpdesk.stages', string="Closed Stage", readonly=False, related='company_id.close_stage_id') + sh_default_team_id = fields.Many2one( + 'helpdesk.team', string="Default Team", readonly=False, related='company_id.sh_default_team_id') + sh_default_user_id = fields.Many2one( + 'res.users', string="Default Assign User", readonly=False, related='company_id.sh_default_user_id') + sh_display_multi_user = fields.Boolean( + 'Display Multi Users ?', related='company_id.sh_display_multi_user', readonly=False) + sh_configure_activate = fields.Boolean( + 'Manage Products', related='company_id.sh_configure_activate', readonly=False) + sh_display_ticket_reminder = fields.Boolean('Ticket Reminder ?',related='company_id.sh_display_ticket_reminder',readonly=False) + sh_ticket_product_detail = fields.Boolean( + "Ticket Product details in Message?",related='company_id.sh_ticket_product_detail',readonly=False) + sh_signature = fields.Boolean("Signature?",related='company_id.sh_signature',readonly=False) + sh_display_in_chatter = fields.Boolean( + "Display in Chatter Message?",related='company_id.sh_display_in_chatter',readonly=False) + sh_pdf_in_message = fields.Boolean( + "Send Report URL in Message?",related='company_id.sh_pdf_in_message',readonly=False) + sh_ticket_url_in_message = fields.Boolean("Send Ticket URL in Message?",related='company_id.sh_ticket_url_in_message',readonly=False) + sh_receive_email_seeing_ticket = fields.Boolean('Get email when customer view ticket ?',related='company_id.sh_receive_email_seeing_ticket',readonly=False) + sh_auto_add_customer_as_follower = fields.Boolean('Auto add customer as follower when create ticket ?',related='company_id.sh_auto_add_customer_as_follower',readonly=False) + + @ api.onchange('sh_default_team_id') + def onchange_sh_default_team_id(self): + if self.sh_default_team_id: + domain = {} + domain = {'sh_default_user_id': [ + ('id', 'in', self.sh_default_team_id.team_members.ids)]} + return {'domain': domain} diff --git a/sh_helpdesk/models/helpdesk_policies.py b/sh_helpdesk/models/helpdesk_policies.py new file mode 100644 index 0000000..6efa762 --- /dev/null +++ b/sh_helpdesk/models/helpdesk_policies.py @@ -0,0 +1,55 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. + +from odoo import models, fields + + +class HelpdeskSLAPolicies(models.Model): + _name = 'sh.helpdesk.sla' + _description = 'Helpdesk SLA Policies' + + def get_deafult_company(self): + company_id = self.env.company + return company_id + + name = fields.Char('Name',required=True) + sh_team_id = fields.Many2one('helpdesk.team','Helpdesk Team',required=True) + sh_ticket_type_id = fields.Many2one('helpdesk.ticket.type','Helpdesk Team Type') + sh_sla_target_type = fields.Selection([('reaching_stage','Reaching Stage'),('assign_to','Assigned To')],default='reaching_stage',string='SLA Target Type') + sh_stage_id = fields.Many2one('helpdesk.stages',string='Reach Stage') + sh_days = fields.Integer('Days',required=True) + sh_hours = fields.Integer('Hours',required=True) + sh_minutes = fields.Integer('Minutes',required=True) + company_id = fields.Many2one( + 'res.company', string="Company", default=get_deafult_company) + sla_ticket_count = fields.Integer(compute='_compute_helpdesk_ticket_sla') + + def _compute_helpdesk_ticket_sla(self): + for record in self: + record.sla_ticket_count = 0 + tickets = self.env['helpdesk.ticket'].search( + [('sh_sla_policy_ids', 'in', self.ids)], limit=None) + record.sla_ticket_count = len(tickets.ids) + + + def action_view_tickets(self): + self.ensure_one() + tickets = self.env['helpdesk.ticket'].sudo().search( + [('sh_sla_policy_ids', 'in', self.ids)]) + action = self.env["ir.actions.actions"]._for_xml_id( + "sh_helpdesk.helpdesk_ticket_action") + if len(tickets) > 1: + action['domain'] = [('id', 'in', tickets.ids)] + elif len(tickets) == 1: + form_view = [ + (self.env.ref('sh_helpdesk.helpdesk_ticket_form_view').id, 'form')] + if 'views' in action: + action['views'] = form_view + \ + [(state, view) + for state, view in action['views'] if view != 'form'] + else: + action['views'] = form_view + action['res_id'] = tickets.id + else: + action = {'type': 'ir.actions.act_window_close'} + return action
\ No newline at end of file diff --git a/sh_helpdesk/models/helpdesk_priority.py b/sh_helpdesk/models/helpdesk_priority.py new file mode 100644 index 0000000..de1bf78 --- /dev/null +++ b/sh_helpdesk/models/helpdesk_priority.py @@ -0,0 +1,20 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. + +from odoo import models, fields, api + + +class HelpdeskPriority(models.Model): + _name = 'helpdesk.priority' + _description = 'Helpdesk Priority' + _rec_name = 'name' + + sequence = fields.Integer(string="Sequence") + name = fields.Char(required=True, translate=True, string="Name") + color = fields.Char(string="Color") + + @api.model + def create(self, values): + sequence = self.env['ir.sequence'].next_by_code('helpdesk.priority') + values['sequence'] = sequence + return super(HelpdeskPriority, self).create(values) diff --git a/sh_helpdesk/models/helpdesk_so.py b/sh_helpdesk/models/helpdesk_so.py new file mode 100644 index 0000000..07806e9 --- /dev/null +++ b/sh_helpdesk/models/helpdesk_so.py @@ -0,0 +1,18 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. + +from odoo import models, fields, api, _ +import random +import datetime +from odoo.exceptions import UserError +from odoo.tools import email_re + + +class HelpdeskSO(models.Model): + _name = 'sh.helpdesk.so' + _inherit = ['portal.mixin', 'mail.thread', 'mail.activity.mixin'] + _description = "Helpdesk Sale Order" + + + + diff --git a/sh_helpdesk/models/helpdesk_stages.py b/sh_helpdesk/models/helpdesk_stages.py new file mode 100644 index 0000000..66e4023 --- /dev/null +++ b/sh_helpdesk/models/helpdesk_stages.py @@ -0,0 +1,31 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. + +from odoo import models, fields + + +class HelpdeskStages(models.Model): + _name = 'helpdesk.stages' + _description = "Helpdesk Stages" + _order = 'sequence ASC' + _rec_name = 'name' + + name = fields.Char("Name", required=True,translate=True) + mail_template_ids = fields.Many2many( + 'mail.template', string='Mail Template') + sh_next_stage = fields.Many2one( + comodel_name='helpdesk.stages', + string='Next Stage', + ) + + sh_group_ids = fields.Many2many( + comodel_name='res.groups', + string='Groups' + ) + is_cancel_button_visible = fields.Boolean( + string='Is Cancel Button Visible ?' + ) + is_done_button_visible = fields.Boolean( + string='Is Resolved Button Visible ?' + ) + sequence = fields.Integer(string="Sequence") diff --git a/sh_helpdesk/models/helpdesk_subcategory.py b/sh_helpdesk/models/helpdesk_subcategory.py new file mode 100644 index 0000000..1dea790 --- /dev/null +++ b/sh_helpdesk/models/helpdesk_subcategory.py @@ -0,0 +1,22 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. + +from odoo import models, fields, api + + +class HelpdeskSubCategory(models.Model): + _name = 'helpdesk.subcategory' + _description = 'Helpdesk SubCategory' + _rec_name = 'name' + + sequence = fields.Integer(string="Sequence") + name = fields.Char(required=True, translate=True, + string='Sub Category Name') + parent_category_id = fields.Many2one( + 'helpdesk.category', required=True, string="Parent Category") + + @api.model + def create(self, values): + sequence = self.env['ir.sequence'].next_by_code('helpdesk.subcategory') + values['sequence'] = sequence + return super(HelpdeskSubCategory, self).create(values) diff --git a/sh_helpdesk/models/helpdesk_subject_type.py b/sh_helpdesk/models/helpdesk_subject_type.py new file mode 100644 index 0000000..b5c4174 --- /dev/null +++ b/sh_helpdesk/models/helpdesk_subject_type.py @@ -0,0 +1,12 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. + +from odoo import models, fields + + +class HelpdeskSubjectType(models.Model): + _name = 'helpdesk.sub.type' + _description = 'Helpdesk Subject Type' + _rec_name = 'name' + + name = fields.Char('Name', required=True,translate=True) diff --git a/sh_helpdesk/models/helpdesk_tags.py b/sh_helpdesk/models/helpdesk_tags.py new file mode 100644 index 0000000..876ca08 --- /dev/null +++ b/sh_helpdesk/models/helpdesk_tags.py @@ -0,0 +1,25 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. + +from odoo import models, fields, api +import random + + +class HelpdeskTags(models.Model): + _name = 'helpdesk.tags' + _description = 'Helpdesk Tags' + _rec_name = 'name' + + name = fields.Char("Name", required=True,translate=True) + color = fields.Integer(string='Color Index') + + _sql_constraints = [ + ('name_uniq', 'unique (name)', "Tag name already exists!"), + ] + + @api.model + def create(self, vals): + res = super(HelpdeskTags, self).create(vals) + number = random.randrange(1, 10) + res.color = number + return res diff --git a/sh_helpdesk/models/helpdesk_team.py b/sh_helpdesk/models/helpdesk_team.py new file mode 100644 index 0000000..437cd67 --- /dev/null +++ b/sh_helpdesk/models/helpdesk_team.py @@ -0,0 +1,45 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. + +from odoo import models, fields + + +class HelpdeskTeam(models.Model): + _name = 'helpdesk.team' + _description = 'Helpdesk Team' + _rec_name = 'name' + + name = fields.Char('Name', required=True,translate=True) + team_head = fields.Many2one('res.users', 'Team Head', required=True,domain=['|',('share','=',False),('sh_portal_user_access','!=',False)]) + team_members = fields.Many2many('res.users', string="Team Members",domain=['|',('share','=',False),('sh_portal_user_access','!=',False)]) + sh_resource_calendar_id = fields.Many2one('resource.calendar',string="Working Schedule",required=True,default=lambda self: self.env.company.resource_calendar_id) + sla_count = fields.Integer(compute='_compute_helpdesk_sla') + + def _compute_helpdesk_sla(self): + for record in self: + record.sla_count = 0 + slas = self.env['helpdesk.ticket'].sudo().search( + [('team_id', '=', self.id),('sh_sla_status_ids','!=',False)]) + record.sla_count = len(slas.ids) + + def action_view_sla(self): + self.ensure_one() + slas = self.env['helpdesk.ticket'].sudo().search( + [('team_id', '=', self.id),('sh_sla_status_ids','!=',False)]) + action = self.env["ir.actions.actions"]._for_xml_id( + "sh_helpdesk.helpdesk_ticket_action") + if len(slas) > 1: + action['domain'] = [('id', 'in', slas.ids)] + elif len(slas) == 1: + form_view = [ + (self.env.ref('sh_helpdesk.helpdesk_ticket_form_view').id, 'form')] + if 'views' in action: + action['views'] = form_view + \ + [(state, view) + for state, view in action['views'] if view != 'form'] + else: + action['views'] = form_view + action['res_id'] = slas.id + else: + action = {'type': 'ir.actions.act_window_close'} + return action
\ No newline at end of file diff --git a/sh_helpdesk/models/helpdesk_ticket.py b/sh_helpdesk/models/helpdesk_ticket.py new file mode 100644 index 0000000..a2bcb45 --- /dev/null +++ b/sh_helpdesk/models/helpdesk_ticket.py @@ -0,0 +1,1079 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. + +from odoo import models, fields, api, _, SUPERUSER_ID +import random +from datetime import timedelta +from odoo.exceptions import UserError +from odoo.tools import email_re +import uuid + + +class HelpdeskSLAStatus(models.Model): + _name = 'sh.helpdesk.sla.status' + _description = "Helpdesk Ticket SLA Status" + _table = 'sh_helpdesk_sla_status' + _order = 'id ASC' + _rec_name = 'sh_sla_id' + + sh_ticket_id = fields.Many2one('helpdesk.ticket', + string='Ticket', + required=True, + ondelete='cascade', + index=True) + sh_sla_id = fields.Many2one('sh.helpdesk.sla', + required=True, + ondelete='cascade') + sh_sla_stage_id = fields.Many2one('helpdesk.stages', + related='sh_sla_id.sh_stage_id', + store=True) + sh_deadline = fields.Datetime("SLA Deadline", + compute='_compute_sh_deadline', + compute_sudo=True, + store=True) + sh_status = fields.Selection([('sla_failed', 'Failed'), + ('sla_passed', 'Passed'), + ('sh_partially_passed', 'Partially Passed')], + string="Status") + color = fields.Integer("Color Index", compute='_compute_sh_color') + sh_done_sla_date = fields.Datetime('SLA Done Date') + + @api.depends('sh_ticket_id.create_date', 'sh_sla_id') + def _compute_sh_deadline(self): + for rec in self: + sla_deadline = rec.sh_ticket_id.create_date + working_schedule = rec.sh_ticket_id.team_id.sh_resource_calendar_id + if not working_schedule: + rec.sh_deadline = sla_deadline + continue + if rec.sh_sla_id.sh_days > 0: + sla_deadline = working_schedule.plan_days( + rec.sh_sla_id.sh_days + 1, + sla_deadline, + compute_leaves=True) + ticket_create_dt = rec.sh_ticket_id.create_date + sla_deadline = sla_deadline.replace( + hour=ticket_create_dt.hour, + minute=ticket_create_dt.minute, + second=ticket_create_dt.second, + microsecond=ticket_create_dt.microsecond) + rec.sh_deadline = working_schedule.plan_hours( + rec.sh_sla_id.sh_hours, sla_deadline, compute_leaves=True) + + @api.depends('sh_status') + def _compute_sh_color(self): + for rec in self: + rec._compute_sh_deadline() + if rec.sh_status == 'sla_failed': + rec.color = 1 + elif rec.sh_status == 'sla_passed': + rec.color = 10 + elif rec.sh_status == 'sh_partially_passed': + rec.color = 4 + else: + rec.color = 0 + + +class HelpdeskTicket(models.Model): + _name = 'helpdesk.ticket' + _inherit = ['portal.mixin', 'mail.thread', 'mail.activity.mixin'] + _description = "Helpdesk Ticket" + _order = 'id DESC' + _rec_name = 'name' + _primary_email = ['email'] + + def get_deafult_company(self): + company_id = self.env.company + return company_id + + @api.model + def get_default_stage(self): + company_id = self.env.company + stage_id = self.env['helpdesk.stages'].sudo().search( + [('id', '=', company_id.new_stage_id.id)], limit=1) + return stage_id.id + + @api.model + def default_due_date(self): + return fields.Datetime.now() + + name = fields.Char("Name", tracking=True) + company_id = fields.Many2one('res.company', + string="Company", + default=get_deafult_company) + done_stage_boolean = fields.Boolean('Done Stage', + compute='_compute_stage_booleans', + store=True) + cancel_stage_boolean = fields.Boolean('Cancel Stage', + compute='_compute_stage_booleans', + store=True) + reopen_stage_boolean = fields.Boolean('Reopened Stage', + compute='_compute_stage_booleans', + store=True) + closed_stage_boolean = fields.Boolean('Closed Stage', + compute='_compute_stage_booleans', + store=True) + open_boolean = fields.Boolean('Open Ticket', + compute='_compute_stage_booleans', + store=True) + cancel_button_boolean = fields.Boolean( + "Cancel Button", + compute='_compute_cancel_button_boolean', + search='_search_cancel_button_boolean') + done_button_boolean = fields.Boolean( + "Done Button", + compute='_compute_done_button_boolean', + search='_search_done_button_boolean') + state = fields.Selection([('customer_replied', 'Customer Replied'), + ('staff_replied', 'Staff Replied')], + string="Replied Status", + default='customer_replied', + required=True, + tracking=True) + active = fields.Boolean( + 'Active', + default=True, + help= + "If unchecked, it will allow you to hide the product without removing it." + ) + ticket_from_website = fields.Boolean('Ticket From Website') + ticket_from_portal = fields.Boolean('Ticket From Portal') + cancel_reason = fields.Char("Cancel Reason", tracking=True, translate=True) + tag_ids = fields.Many2many('helpdesk.tags', string="Tags") + priority = fields.Many2one('helpdesk.priority', + string='Priority', + tracking=True) + stage_id = fields.Many2one('helpdesk.stages', + string="Stage", + default=get_default_stage, + tracking=True, + index=True, + group_expand='_read_group_stage_ids') + ticket_type = fields.Many2one('helpdesk.ticket.type', + string='Ticket Type', + tracking=True) + team_id = fields.Many2one('helpdesk.team', string='Team', tracking=True) + team_head = fields.Many2one('res.users', "Team Head", tracking=True) + user_id = fields.Many2one('res.users', + string="Assigned User", + tracking=True) + subject_id = fields.Many2one('helpdesk.sub.type', + string='Ticket Subject Type', + tracking=True) + category_id = fields.Many2one('helpdesk.category', + string="Category", + tracking=True) + sub_category_id = fields.Many2one('helpdesk.subcategory', + string="Sub Category") + partner_id = fields.Many2one('res.partner', + string='Partner', + tracking=True, + required=True) + person_name = fields.Char(string='Person Name', tracking=True) + email = fields.Char(string='Email', tracking=True) + close_date = fields.Datetime(string='Close Date', tracking=True) + close_by = fields.Many2one('res.users', string='Closed By', tracking=True) + cancel_date = fields.Datetime(string='Cancelled Date', tracking=True) + cancel_by = fields.Many2one('res.users', + string='Cancelled By', + tracking=True) + replied_date = fields.Datetime('Replied Date', tracking=True) + product_ids = fields.Many2many('product.product', string='Products') + + comment = fields.Text(string="Comment", tracking=True, translate=True) + description = fields.Html('Description', tracking=True) + color = fields.Integer(string='Color Index') + priority_new = fields.Selection([('1', 'Very Low'), ('2', 'Low'), + ('3', 'Normal'), ('4', 'High'), + ('5', 'Very High'), ('6', 'Excellent')], + string="Customer Rating", + tracking=True) + customer_comment = fields.Text("Customer Comment", tracking=True) + + attachment_ids = fields.Many2many('ir.attachment', string="Attachments") + form_url = fields.Char('Form Url', compute='_compute_form_url') + category_bool = fields.Boolean(string='Category Setting', + related='company_id.category', + store=True) + sub_category_bool = fields.Boolean(string='Sub Category Setting', + related='company_id.sub_category', + store=True) + rating_bool = fields.Boolean(string='Rating Setting', + related='company_id.customer_rating', + store=True) + ticket_allocated = fields.Boolean("Allocated") + sh_user_ids = fields.Many2many('res.users', string="Assign Multi Users") + sh_display_multi_user = fields.Boolean( + compute="_compute_sh_display_multi_user") + sh_display_product = fields.Boolean(compute='_compute_sh_display_product') + sh_status = fields.Selection([('sla_failed', 'Failed'), + ('sla_passed', 'Passed'), + ('sh_partially_passed', 'Partially Passed')], + string="Status") + sh_sla_policy_ids = fields.Many2many('sh.helpdesk.sla', + 'sh_helpdesk_sla_status', + 'sh_ticket_id', + 'sh_sla_id', + string="Helpdesk SLA Policies", + copy=False) + sh_sla_status_ids = fields.One2many('sh.helpdesk.sla.status', + 'sh_ticket_id', + string="Helpdesk SLA Status") + sh_sla_deadline = fields.Datetime('SLA Deadline', + compute='_compute_sh_sla_deadline', + store=True) + sh_status_boolean = fields.Boolean(compute='_compute_state_boolean') + sh_days_to_reach = fields.Float(string='SLA reached duration', + compute='_compute_days_to_reach', + store=True) + sh_days_to_late = fields.Float(string='SLA late duration', + compute='_compute_days_to_late', + store=True) + sh_due_date = fields.Datetime('Reminder Due Date', + default=default_due_date) + sh_ticket_alarm_ids = fields.Many2many('sh.ticket.alarm', + string='Ticket Reminders') + sh_ticket_report_url = fields.Char(compute='_compute_report_url') + report_token = fields.Char("Access Token") + portal_ticket_url_wp = fields.Char(compute='_compute_ticket_portal_url_wp') + mobile_no = fields.Char('Mobile') + email_subject = fields.Char('Subject') + + # <-- MULTI ACTION FOR MASS UPDATE ASSIGN-TO,MULTI-USER & STATE // ADD/REMOVE FOLLOWER--> + + def action_mass_update_wizard(self): + return { + 'name': + 'Mass Update Ticket', + 'res_model': + 'sh.helpdesk.ticket.mass.update.wizard', + 'view_mode': + 'form', + 'context': { + 'default_helpdesks_ticket_ids': + [(6, 0, self.env.context.get('active_ids'))], + 'default_check_sh_display_multi_user': + self.env.user.company_id.sh_display_multi_user + }, + 'view_id': + self.env.ref( + 'sh_helpdesk.sh_helpdesk_ticket_mass_update_wizard_form_view'). + id, + 'target': + 'new', + 'type': + 'ir.actions.act_window' + } + + @api.model + def _read_group_stage_ids(self, stages, domain, order): + all_stages = self.env['helpdesk.stages'].sudo().search([]) + search_domain = [('id', 'in', all_stages.ids)] + + # perform search + stage_ids = stages._search(search_domain, + order=order, + access_rights_uid=SUPERUSER_ID) + return stages.browse(stage_ids) + + def _search_done_button_boolean(self, operator, value): + not_done_ids = [] + done_ids = [] + for record in self.search([]): + if record.stage_id.is_done_button_visible: + done_ids.append(record.id) + else: + not_done_ids.append(record.id) + if operator == '=': + return [('id', 'in', done_ids)] + elif operator == '!=': + return [('id', 'in', not_done_ids)] + else: + return [] + + def _search_cancel_button_boolean(self, operator, value): + not_cancel_ids = [] + cancel_ids = [] + for record in self.search([]): + if record.stage_id.is_cancel_button_visible: + cancel_ids.append(record.id) + else: + not_cancel_ids.append(record.id) + if operator == '=': + return [('id', 'in', cancel_ids)] + elif operator == '!=': + return [('id', 'in', not_cancel_ids)] + else: + return [] + + def _compute_ticket_portal_url_wp(self): + for rec in self: + rec.portal_ticket_url_wp = False + if rec.company_id.sh_pdf_in_message: + base_url = self.env['ir.config_parameter'].sudo().get_param( + 'web.base.url') + ticket_url = base_url + rec.get_portal_url() + self.sudo().write({'portal_ticket_url_wp': ticket_url}) + + def _get_token(self): + """ Get the current record access token """ + if self.report_token: + return self.report_token + else: + report_token = str(uuid.uuid4()) + self.write({'report_token': report_token}) + return report_token + + def get_download_report_url(self): + url = '' + if self.id: + self.ensure_one() + url = '/download/ht/' + '%s?access_token=%s' % (self.id, + self._get_token()) + return url + + def _compute_report_url(self): + for rec in self: + rec.sh_ticket_report_url = False + if rec.company_id.sh_pdf_in_message: + base_url = self.env['ir.config_parameter'].sudo().get_param( + 'web.base.url') + ticket_url = "%0A%0A Click here to download Ticket Document : %0A" + \ + base_url+rec.get_download_report_url() + self.sudo().write({ + 'sh_ticket_report_url': + base_url + rec.get_download_report_url() + }) + + def action_send_whatsapp(self): + self.ensure_one() + if not self.partner_id.mobile: + raise UserError(_("Partner Mobile Number Not Exist !")) + template = self.env.ref('sh_helpdesk.sh_send_whatsapp_email_template') + + ctx = { + 'default_model': 'helpdesk.ticket', + 'default_res_id': self.ids[0], + 'default_use_template': bool(template.id), + 'default_template_id': template.id, + 'default_composition_mode': 'comment', + 'custom_layout': "mail.mail_notification_paynow", + 'force_email': True, + 'default_is_wp': True, + } + attachment_ids = self.env['ir.attachment'].sudo().search([ + ('res_model', '=', 'helpdesk.ticket'), + ('res_id', '=', str(self.id)) + ]) + if attachment_ids: + ctx.update({'attachment_ids': [(6, 0, attachment_ids.ids)]}) + return { + 'type': 'ir.actions.act_window', + 'view_mode': 'form', + 'res_model': 'mail.compose.message', + 'views': [(False, 'form')], + 'view_id': False, + 'target': 'new', + 'context': ctx, + } + + def _compute_days_to_reach(self): + if self: + for rec in self: + sh_days_to_reach = 0.0 + if rec.sh_sla_status_ids: + for line in rec.sh_sla_status_ids: + if line.sh_deadline and line.sh_done_sla_date: + delta = line.sh_done_sla_date - line.sh_deadline + sh_days_to_reach += delta.days + rec.sh_days_to_reach = sh_days_to_reach + + def _compute_days_to_late(self): + if self: + for rec in self: + sh_days_to_late = 0.0 + if rec.sh_sla_status_ids: + for line in rec.sh_sla_status_ids: + if line.sh_deadline and line.sh_done_sla_date: + delta = line.sh_done_sla_date - line.sh_deadline + sh_days_to_late += delta.days + rec.sh_days_to_late = sh_days_to_late + + def _compute_state_boolean(self): + if self: + for rec in self: + rec.sh_status_boolean = False + sla_passed = rec.sh_sla_status_ids.filtered( + lambda x: x.sh_status == 'sla_passed') + sla_failed = rec.sh_sla_status_ids.filtered( + lambda x: x.sh_status == 'sla_failed') + if sla_passed and sla_failed: + rec.sh_status = 'sh_partially_passed' + + @api.depends('sh_sla_status_ids.sh_deadline') + def _compute_sh_sla_deadline(self): + for rec in self: + sh_deadline = False + status_ids = rec.sh_sla_status_ids.filtered( + lambda x: x.sh_status == False) + rec.sh_sla_deadline = min(status_ids.mapped( + 'sh_deadline')) if status_ids else sh_deadline + + @api.model + def change_sh_status(self): + self.ensure_one() + if self.sh_sla_status_ids: + for line in self.sh_sla_status_ids: + if line.sh_sla_id and line.sh_sla_id.sh_sla_target_type == 'reaching_stage': + if line.sh_sla_id.sh_stage_id.id == self.stage_id.id: + line.sh_done_sla_date = fields.Datetime.now() + line.sh_status = False + self.sh_status = False + if line.sh_done_sla_date and line.sh_deadline: + line.sh_status = 'sla_passed' if line.sh_done_sla_date < line.sh_deadline else 'sla_failed' + self.sh_status = 'sla_passed' if line.sh_done_sla_date < line.sh_deadline else 'sla_failed' + else: + line.sh_status = False if ( + not line.sh_deadline or line.sh_deadline > + fields.Datetime.now()) else 'sla_failed' + self.sh_status = False if ( + not line.sh_deadline or line.sh_deadline > + fields.Datetime.now()) else 'sla_failed' + elif line.sh_sla_id and line.sh_sla_id.sh_sla_target_type == 'assign_to': + if self.user_id or self.sh_user_ids: + line.sh_done_sla_date = fields.Datetime.now() + line.sh_status = False + self.sh_status = False + if line.sh_done_sla_date and line.sh_deadline: + line.sh_status = 'sla_passed' if line.sh_done_sla_date < line.sh_deadline else 'sla_failed' + self.sh_status = 'sla_passed' if line.sh_done_sla_date < line.sh_deadline else 'sla_failed' + else: + line.sh_status = False if ( + not line.sh_deadline or line.sh_deadline > + fields.Datetime.now()) else 'sla_failed' + self.sh_status = False if ( + not line.sh_deadline or line.sh_deadline > + fields.Datetime.now()) else 'sla_failed' + + @api.onchange('team_id', 'ticket_type') + def _onchange_sh_helpdesk_policy_ids(self): + if self: + for rec in self: + rec.sh_sla_policy_ids = [ + (6, 0, + rec.helpdesk_sla_create(rec.team_id.id, + rec.ticket_type.id)) + ] + + @api.depends('company_id') + def _compute_sh_display_multi_user(self): + if self: + for rec in self: + rec.sh_display_multi_user = False + if rec.company_id and rec.company_id.sh_display_multi_user: + rec.sh_display_multi_user = True + + @api.depends('company_id') + def _compute_sh_display_product(self): + if self: + for rec in self: + rec.sh_display_product = False + if rec.company_id and rec.company_id.sh_configure_activate: + rec.sh_display_product = True + + @api.model + def message_new(self, msg_dict, custom_values=None): + """ Overrides mail_thread message_new that is called by the mailgateway + through message_process. + This override updates the document according to the email. + """ + defaults = { + 'email': msg_dict.get('from'), + 'partner_id': msg_dict.get('author_id', False), + 'description': msg_dict.get('body'), + 'email_subject': msg_dict.get('subject') or _("No Subject"), + 'state': 'customer_replied', + 'replied_date': msg_dict.get('date') + } + + return super(HelpdeskTicket, self).message_new(msg_dict, + custom_values=defaults) + + def _message_post_after_hook(self, message, msg_vals): + if self.email and not self.partner_id: + # we consider that posting a message with a specified recipient (not a follower, a specific one) + # on a document without customer means that it was created through the chatter using + # suggested recipients. This heuristic allows to avoid ugly hacks in JS. + new_partner = message.partner_ids.filtered( + lambda partner: partner.email == self.email) + if new_partner: + self.search([ + ('partner_id', '=', False), + ('email', '=', new_partner.email), + ]).write({'partner_id': new_partner.id}) + + return super(HelpdeskTicket, + self)._message_post_after_hook(message, msg_vals) + + def _compute_form_url(self): + if self: + base_url = self.env['ir.config_parameter'].sudo().get_param( + 'web.base.url') + url_str = '' + action = self.env.ref('sh_helpdesk.helpdesk_ticket_action').id + if base_url: + url_str += str(base_url) + '/web#' + for rec in self: + url_str += 'id='+str(rec.id)+'&action='+str(action) + \ + '&model=helpdesk.ticket&view_type=form' + rec.form_url = url_str + + def _compute_access_url(self): + super(HelpdeskTicket, self)._compute_access_url() + for ticket in self: + ticket.access_url = '/my/tickets/%s' % (ticket.id) + + def _get_report_base_filename(self): + self.ensure_one() + return '%s %s' % ('Ticket', self.name) + + @api.model + def helpdesk_sla_create(self, team_id, ticket_type): + self.ensure_one() + sla_policy_ids_list = [] + if self.sh_sla_status_ids: + self.sh_sla_status_ids.unlink() + if team_id: + sla_policy_ids = self.env['sh.helpdesk.sla'].sudo().search([ + ('sh_team_id', '=', team_id) + ]) + if sla_policy_ids: + for policy_id in sla_policy_ids: + if policy_id.id not in sla_policy_ids_list: + sla_policy_ids_list.append(policy_id.id) + if ticket_type: + if team_id: + sla_policy_ids = self.env['sh.helpdesk.sla'].sudo().search([ + ('sh_ticket_type_id', '=', ticket_type), + ('sh_team_id', '=', team_id) + ]) + if sla_policy_ids: + for policy_id in sla_policy_ids: + if policy_id.id not in sla_policy_ids_list: + sla_policy_ids_list.append(policy_id.id) + elif not team_id: + sla_policy_ids = self.env['sh.helpdesk.sla'].sudo().search([ + ('sh_ticket_type_id', '=', ticket_type) + ]) + if sla_policy_ids: + for policy_id in sla_policy_ids: + if policy_id.id not in sla_policy_ids_list: + sla_policy_ids_list.append(policy_id.id) + return sla_policy_ids_list + + @api.model + def create(self, vals): + if vals.get('partner_id') == False and vals.get('email', False): + emails = email_re.findall(vals.get('email') or '') + email = emails and emails[0] or '' + name = str(vals.get('email')).split('"') + partner_id = self.env['res.partner'].create({ + 'name': + name[1], + 'email': + email, + 'company_type': + 'person', + }) + vals.update({ + 'partner_id': partner_id.id, + 'email': email, + 'person_name': partner_id.name, + }) + if self.env.company.sh_default_team_id and not vals.get( + 'team_id') and not vals.get('user_id'): + vals.update({ + 'team_id': + self.env.company.sh_default_team_id.id, + 'team_head': + self.env.company.sh_default_team_id.team_head.id, + 'user_id': + self.env.company.sh_default_user_id.id, + }) + number = random.randrange(1, 10) + company_id = self.env.company + if 'company_id' in vals: + self = self.with_company(vals['company_id']) + vals['name'] = self.env['ir.sequence'].next_by_code( + 'helpdesk.ticket') or _('New') + if company_id.new_stage_id: + vals['stage_id'] = company_id.new_stage_id.id + + vals['color'] = number + res = super(HelpdeskTicket, self).create(vals) + #code by nida + template_id = self.env.ref('sh_helpdesk.sh_ticket_new_template_to_admin').id + template = self.env['mail.template'].browse(template_id) + template.sudo().send_mail(res.id, force_send=True) + # end by nida + if res.sh_sla_status_ids: + for line in res.sh_sla_status_ids: + line.sh_status = res.sh_status + if res.ticket_from_website and res.company_id.new_stage_id.mail_template_ids and res.partner_id: + for template in res.company_id.new_stage_id.mail_template_ids: + template.sudo().send_mail(res.id, force_send=True) + else: + if not res.ticket_from_website and res.company_id.new_stage_id.mail_template_ids and res.partner_id: + for template in res.company_id.new_stage_id.mail_template_ids: + template.sudo().send_mail(res.id, force_send=True) + if res.team_id and res.team_head and res.user_id and res.sh_user_ids: + allocation_template = res.company_id.allocation_mail_template_id + email_formatted = [] + if res.team_head.partner_id.email_formatted not in email_formatted: + email_formatted.append( + res.team_head.partner_id.email_formatted) + if res.user_id.partner_id.email_formatted not in email_formatted: + email_formatted.append(res.user_id.partner_id.email_formatted) + for user in res.sh_user_ids: + if user.id != res.user_id.id: + if user.partner_id.email_formatted not in email_formatted: + email_formatted.append(user.partner_id.email_formatted) + email_formatted_str = ','.join(email_formatted) + email_values = { + 'email_from': str(res.team_head.partner_id.email_formatted), + 'email_to': email_formatted_str + } + if allocation_template: + allocation_template.sudo().send_mail(res.id, + force_send=True, + email_values=email_values) + res.ticket_allocated = True + elif res.team_id and res.team_head and res.user_id and not res.sh_user_ids: + allocation_template = res.company_id.allocation_mail_template_id + email_formatted = [] + if res.team_head.partner_id.email_formatted not in email_formatted: + email_formatted.append( + res.team_head.partner_id.email_formatted) + if res.user_id.partner_id.email_formatted not in email_formatted: + email_formatted.append(res.user_id.partner_id.email_formatted) + email_formatted_str = ','.join(email_formatted) + email_values = { + 'email_from': str(res.team_head.partner_id.email_formatted), + 'email_to': email_formatted_str + } + if allocation_template: + allocation_template.sudo().send_mail(res.id, + force_send=True, + email_values=email_values) + res.ticket_allocated = True + elif res.team_id and res.team_head and not res.user_id and res.sh_user_ids: + allocation_template = res.company_id.allocation_mail_template_id + email_formatted = [] + for user in res.sh_user_ids: + if user.partner_id.email_formatted not in email_formatted: + email_formatted.append(user.partner_id.email_formatted) + email_formatted_str = ','.join(email_formatted) + email_values = { + 'email_from': str(res.team_head.partner_id.email_formatted), + 'email_to': email_formatted_str + } + if allocation_template: + allocation_template.sudo().send_mail(res.id, + force_send=True, + email_values=email_values) + res.ticket_allocated = True + elif not res.team_id and not res.team_head and res.user_id and res.sh_user_ids: + allocation_template = res.company_id.allocation_mail_template_id + email_formatted = [] + if res.user_id.partner_id.email_formatted not in email_formatted: + email_formatted.append(res.user_id.partner_id.email_formatted) + for user in res.sh_user_ids: + if user.id != res.user_id.id: + if user.partner_id.email_formatted not in email_formatted: + email_formatted.append(user.partner_id.email_formatted) + email_formatted_str = ','.join(email_formatted) + email_values = { + 'email_from': str(res.company_id.partner_id.email_formatted), + 'email_to': email_formatted_str + } + if allocation_template: + allocation_template.sudo().send_mail(res.id, + force_send=True, + email_values=email_values) + res.ticket_allocated = True + elif not res.team_id and not res.team_head and res.user_id and not res.sh_user_ids: + allocation_template = res.company_id.allocation_mail_template_id + allocation_template.sudo().write({ + 'email_from': + str(res.company_id.partner_id.email_formatted), + 'email_to': + str(res.user_id.partner_id.email_formatted), + 'partner_to': + str(res.user_id.partner_id.id) + }) + email_values = { + 'email_from': str(res.company_id.partner_id.email_formatted), + 'email_to': str(res.user_id.partner_id.email_formatted) + } + if allocation_template: + allocation_template.sudo().send_mail(res.id, + force_send=True, + email_values=email_values) + res.ticket_allocated = True + elif not res.team_id and not res.team_head and not res.user_id and res.sh_user_ids: + allocation_template = res.company_id.allocation_mail_template_id + email_formatted = [] + for user in res.sh_user_ids: + if user.partner_id.email_formatted not in email_formatted: + email_formatted.append(user.partner_id.email_formatted) + email_formatted_str = ','.join(email_formatted) + email_values = { + 'email_from': str(res.company_id.partner_id.email_formatted), + 'email_to': email_formatted_str + } + if allocation_template: + allocation_template.sudo().send_mail(res.id, + force_send=True, + email_values=email_values) + res.ticket_allocated = True + if self.env.company.sh_auto_add_customer_as_follower: + res.message_subscribe(partner_ids=res.partner_id.ids) + return res + + def write(self, vals): + user_groups = self.env.user.groups_id.ids + if vals.get('stage_id'): + stage_id = self.env['helpdesk.stages'].sudo().search( + [('id', '=', vals.get('stage_id'))], limit=1) + if stage_id and stage_id.sh_group_ids: + is_group_exist = False + list_user_groups = user_groups + list_stage_groups = stage_id.sh_group_ids.ids + for item in list_stage_groups: + if item in list_user_groups: + is_group_exist = True + break + if not is_group_exist: + raise UserError( + _('You have not access to edit this support request.')) + if vals.get('partner_id' + ) and self.env.company.new_stage_id.mail_template_ids: + for rec in self: + for template in rec.company_id.new_stage_id.mail_template_ids: + template.sudo().send_mail(rec.id, force_send=True) + res = super(HelpdeskTicket, self).write(vals) + if vals.get('team_id') and vals.get('team_head') and vals.get( + 'user_id') and vals.get( + 'sh_user_ids') and not vals.get('ticket_allocated'): + allocation_template = self.env.company.allocation_mail_template_id + team_head = self.env['res.users'].sudo().browse( + vals.get('team_head')) + user_id = self.env['res.users'].sudo().browse(vals.get('user_id')) + email_formatted = [] + if team_head.partner_id.email_formatted not in email_formatted: + email_formatted.append(team_head.partner_id.email_formatted) + if user_id.partner_id.email_formatted not in email_formatted: + email_formatted.append(user_id.partner_id.email_formatted) + users = vals.get('sh_user_ids')[0][2] + user_ids = self.env['res.users'].sudo().browse(users) + for user in user_ids: + if user.id != user_id.id: + if user.partner_id.email_formatted not in email_formatted: + email_formatted.append(user.partner_id.email_formatted) + email_formatted_str = ','.join(email_formatted) + email_values = { + 'email_from': str(team_head.partner_id.email_formatted), + 'email_to': email_formatted_str + } + if allocation_template: + for rec in self: + allocation_template.sudo().send_mail( + rec.id, force_send=True, email_values=email_values) + rec.ticket_allocated = True + elif vals.get('team_id') and vals.get('team_head') and vals.get( + 'user_id' + ) and not vals.get('sh_user_ids') and not vals.get('ticket_allocated'): + allocation_template = self.env.company.allocation_mail_template_id + team_head = self.env['res.users'].sudo().browse( + vals.get('team_head')) + user_id = self.env['res.users'].sudo().browse(vals.get('user_id')) + email_formatted = [] + if team_head.partner_id.email_formatted not in email_formatted: + email_formatted.append(team_head.partner_id.email_formatted) + if user_id.partner_id.email_formatted not in email_formatted: + email_formatted.append(user_id.partner_id.email_formatted) + email_formatted_str = ','.join(email_formatted) + email_values = { + 'email_from': str(team_head.partner_id.email_formatted), + 'email_to': email_formatted_str + } + if allocation_template: + for rec in self: + allocation_template.sudo().send_mail( + rec.id, force_send=True, email_values=email_values) + rec.ticket_allocated = True + elif vals.get('team_id') and vals.get( + 'team_head') and not vals.get('user_id') and vals.get( + 'sh_user_ids') and not vals.get('ticket_allocated'): + allocation_template = self.env.company.allocation_mail_template_id + email_formatted = [] + users = vals.get('sh_user_ids')[0][2] + user_ids = self.env['res.users'].sudo().browse(users) + team_head = self.env['res.users'].sudo().browse( + vals.get('team_head')) + for user in user_ids: + if user.partner_id.email_formatted not in email_formatted: + email_formatted.append(user.partner_id.email_formatted) + email_formatted_str = ','.join(email_formatted) + email_values = { + 'email_from': str(team_head.partner_id.email_formatted), + 'email_to': email_formatted_str + } + if allocation_template: + for rec in self: + allocation_template.sudo().send_mail( + rec.id, force_send=True, email_values=email_values) + rec.ticket_allocated = True + elif not vals.get('team_id') and not vals.get( + 'team_head') and vals.get('user_id') and vals.get( + 'sh_user_ids') and not vals.get('ticket_allocated'): + allocation_template = self.env.company.allocation_mail_template_id + email_formatted = [] + user_id = self.env['res.users'].sudo().browse(vals.get('user_id')) + users = vals.get('sh_user_ids')[0][2] + user_ids = self.env['res.users'].sudo().browse(users) + if user_id.partner_id.email_formatted not in email_formatted: + email_formatted.append(user_id.partner_id.email_formatted) + for user in user_ids: + if user.id != user_id.id: + if user.partner_id.email_formatted not in email_formatted: + email_formatted.append(user.partner_id.email_formatted) + email_formatted_str = ','.join(email_formatted) + email_values = { + 'email_from': str(self.env.company.partner_id.email_formatted), + 'email_to': email_formatted_str + } + if allocation_template: + for rec in self: + allocation_template.sudo().send_mail( + rec.id, force_send=True, email_values=email_values) + rec.ticket_allocated = True + elif not vals.get('team_id') and not vals.get( + 'team_head') and vals.get('user_id') and not vals.get( + 'sh_user_ids') and not vals.get('ticket_allocated'): + allocation_template = self.env.company.allocation_mail_template_id + user_id = self.env['res.users'].sudo().browse(vals.get('user_id')) + email_values = { + 'email_from': str(self.env.company.partner_id.email_formatted), + 'email_to': str(user_id.partner_id.email_formatted) + } + if allocation_template: + for rec in self: + allocation_template.sudo().send_mail( + rec.id, force_send=True, email_values=email_values) + rec.ticket_allocated = True + elif not vals.get('team_id') and not vals.get( + 'team_head') and not vals.get('user_id') and vals.get( + 'sh_user_ids') and not vals.get('ticket_allocated'): + allocation_template = self.env.company.allocation_mail_template_id + users = vals.get('sh_user_ids')[0][2] + + user_ids = self.env['res.users'].sudo().browse(users) + email_formatted = [] + for user in user_ids: + if user.partner_id.email_formatted not in email_formatted: + email_formatted.append(user.partner_id.email_formatted) + email_formatted_str = ','.join(email_formatted) + email_values = { + 'email_from': str(self.env.company.partner_id.email_formatted), + 'email_to': email_formatted_str + } + if allocation_template: + for rec in self: + allocation_template.sudo().send_mail( + rec.id, force_send=True, email_values=email_values) + rec.ticket_allocated = True + return res + + def preview_ticket(self): + self.ensure_one() + return { + 'type': 'ir.actions.act_url', + 'target': 'self', + 'url': self.get_portal_url(), + } + + @api.depends('stage_id') + def _compute_stage_booleans(self): + if self: + for rec in self: + rec.cancel_stage_boolean = False + rec.done_stage_boolean = False + rec.reopen_stage_boolean = False + rec.closed_stage_boolean = False + rec.open_boolean = False + if rec.stage_id.id == rec.company_id.cancel_stage_id.id: + rec.cancel_stage_boolean = True + rec.open_boolean = True + elif rec.stage_id.id == rec.company_id.done_stage_id.id: + rec.done_stage_boolean = True + rec.open_boolean = True + elif rec.stage_id.id == rec.company_id.reopen_stage_id.id: + rec.reopen_stage_boolean = True + rec.open_boolean = False + elif rec.stage_id.id == rec.company_id.close_stage_id.id: + rec.closed_stage_boolean = True + rec.open_boolean = True + + @api.depends('stage_id') + def _compute_cancel_button_boolean(self): + if self: + for rec in self: + rec.cancel_button_boolean = False + if rec.stage_id.is_cancel_button_visible: + rec.cancel_button_boolean = True + + @api.depends('stage_id') + def _compute_done_button_boolean(self): + if self: + for rec in self: + rec.done_button_boolean = False + if rec.stage_id.is_done_button_visible: + rec.done_button_boolean = True + + def action_approve(self): + self.ensure_one() + if self.stage_id.sh_next_stage: + self.stage_id = self.stage_id.sh_next_stage.id + self.change_sh_status() + self._compute_sh_sla_deadline() + if self.stage_id.mail_template_ids: + for template in self.stage_id.mail_template_ids: + template.sudo().send_mail(self.id, force_send=True) + + def aciton_draft(self): + self.ensure_one() + if self.company_id and self.company_id.new_stage_id: + self.stage_id = self.company_id.new_stage_id.id + + def action_done(self): + self.ensure_one() + if self.company_id and self.company_id.done_stage_id and self.company_id.done_stage_id.mail_template_ids: + for template in self.company_id.done_stage_id.mail_template_ids: + template.sudo().send_mail(self.id, force_send=True) + self.stage_id = self.company_id.done_stage_id.id + + def action_reply(self): + self.ensure_one() + ir_model_data = self.env['ir.model.data'] + template_id = self.company_id.reply_mail_template_id.id + try: + compose_form_id = ir_model_data.get_object_reference( + 'mail', 'email_compose_message_wizard_form')[1] + except ValueError: + compose_form_id = False + ctx = { + 'default_model': 'helpdesk.ticket', + 'default_res_id': self.ids[0], + 'default_use_template': bool(template_id), + 'default_template_id': template_id, + 'default_composition_mode': 'comment', + 'force_email': True + } + return { + 'type': 'ir.actions.act_window', + 'view_mode': 'form', + 'res_model': 'mail.compose.message', + 'views': [(compose_form_id, 'form')], + 'view_id': compose_form_id, + 'target': 'new', + 'context': ctx, + } + + def action_closed(self): + self.ensure_one() + if self.company_id and self.company_id.close_stage_id and self.company_id.close_stage_id.mail_template_ids: + for template in self.company_id.close_stage_id.mail_template_ids: + template.sudo().send_mail(self.id, force_send=True) + self.write({ + 'close_date': fields.Datetime.now(), + 'close_by': self.env.user.id, + 'closed_stage_boolean': True, + 'stage_id': self.company_id.close_stage_id.id + }) + + def action_cancel(self): + self.ensure_one() + if self.company_id and self.company_id.cancel_stage_id and self.company_id.cancel_stage_id.mail_template_ids: + for template in self.company_id.cancel_stage_id.mail_template_ids: + template.sudo().send_mail(self.id, force_send=True) + stage_id = self.company_id.cancel_stage_id + self.stage_id = stage_id.id + self.cancel_date = fields.Datetime.now() + self.cancel_by = self.env.user.id + self.cancel_stage_boolean = True + + def action_open(self): + if self.company_id and self.company_id.reopen_stage_id and self.company_id.reopen_stage_id.mail_template_ids: + for template in self.company_id.reopen_stage_id.mail_template_ids: + template.sudo().send_mail(self.id, force_send=True) + self.write({ + 'stage_id': self.company_id.reopen_stage_id.id, + 'open_boolean': True, + }) + + @api.onchange('team_id') + def onchange_team(self): + if self.team_id: + self.team_head = self.team_id.team_head + user_ids = self.env['helpdesk.team'].sudo().search([ + ('id', '=', self.team_id.id) + ]) + return { + 'domain': { + 'user_id': [('id', 'in', user_ids.team_members.ids)], + 'sh_user_ids': [('id', 'in', user_ids.team_members.ids)] + } + } + else: + self.team_head = False + + @api.onchange('category_id') + def onchange_category(self): + if self.category_id: + sub_category_ids = self.env['helpdesk.subcategory'].sudo().search([ + ('parent_category_id', '=', self.category_id.id) + ]).ids + return { + 'domain': { + 'sub_category_id': [('id', 'in', sub_category_ids)] + } + } + else: + self.sub_category_id = False + + @api.onchange('partner_id') + def onchange_partner_id(self): + if self.partner_id: + self.person_name = self.partner_id.name + self.email = self.partner_id.email + self.mobile_no = self.partner_id.mobile + else: + self.person_name = False + self.email = False + self.mobile_no = False + + @api.model + def _run_auto_close_ticket(self): + tikcet_ids = self.env['helpdesk.ticket'].sudo().search([ + ('done_stage_boolean', '=', False), + ('cancel_stage_boolean', '=', False) + ]) + for ticket in tikcet_ids: + replied_date = ticket.replied_date + if replied_date and ticket.company_id.auto_close_ticket == True: + no_of_days = ticket.company_id.close_days + end_date = replied_date + timedelta(days=no_of_days) + if end_date < fields.Datetime.now( + ) and ticket.state == 'staff_replied': + ticket.action_closed() diff --git a/sh_helpdesk/models/helpdesk_ticket_dashboard.py b/sh_helpdesk/models/helpdesk_ticket_dashboard.py new file mode 100644 index 0000000..8a175ac --- /dev/null +++ b/sh_helpdesk/models/helpdesk_ticket_dashboard.py @@ -0,0 +1,21 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. + +from odoo import models, fields, _ + + +class TicketDashboard(models.Model): + _name = 'ticket.dashboard' + _description = 'Ticket Dashboard' + + name = fields.Char('Name') + + def get_ticket_data(self, ids): + return { + 'name': _('Tickets'), + 'type': 'ir.actions.act_window', + 'res_model': 'helpdesk.ticket', + 'view_mode': 'tree,form', + 'domain': [('id', 'in', ids)], + 'target': 'current' + } diff --git a/sh_helpdesk/models/helpdesk_ticket_type.py b/sh_helpdesk/models/helpdesk_ticket_type.py new file mode 100644 index 0000000..8b061e3 --- /dev/null +++ b/sh_helpdesk/models/helpdesk_ticket_type.py @@ -0,0 +1,42 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. + +from odoo import models, fields + + +class HelpdeskTicketType(models.Model): + _name = 'helpdesk.ticket.type' + _description = 'Helpdesk Ticket Type' + _rec_name = 'name' + + name = fields.Char('Name', required=True,translate=True) + sla_count = fields.Integer(compute='_compute_helpdesk_sla') + + def _compute_helpdesk_sla(self): + for record in self: + record.sla_count = 0 + slas = self.env['helpdesk.ticket'].sudo().search( + [('ticket_type', '=', self.id),('sh_sla_status_ids','!=',False)]) + record.sla_count = len(slas.ids) + + def action_view_sla(self): + self.ensure_one() + slas = self.env['helpdesk.ticket'].sudo().search( + [('ticket_type', '=', self.id),('sh_sla_status_ids','!=',False)]) + action = self.env["ir.actions.actions"]._for_xml_id( + "sh_helpdesk.helpdesk_ticket_action") + if len(slas) > 1: + action['domain'] = [('id', 'in', slas.ids)] + elif len(slas) == 1: + form_view = [ + (self.env.ref('sh_helpdesk.helpdesk_ticket_form_view').id, 'form')] + if 'views' in action: + action['views'] = form_view + \ + [(state, view) + for state, view in action['views'] if view != 'form'] + else: + action['views'] = form_view + action['res_id'] = slas.id + else: + action = {'type': 'ir.actions.act_window_close'} + return action diff --git a/sh_helpdesk/models/helpdesk_ticket_update_wizard.py b/sh_helpdesk/models/helpdesk_ticket_update_wizard.py new file mode 100644 index 0000000..5e9c342 --- /dev/null +++ b/sh_helpdesk/models/helpdesk_ticket_update_wizard.py @@ -0,0 +1,87 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. +from odoo import fields, models, _, api +from odoo.exceptions import UserError + + +class MassUpdateWizard(models.TransientModel): + + _name = "sh.helpdesk.ticket.mass.update.wizard" + _description = "Mass Update Wizard" + + helpdesks_ticket_ids = fields.Many2many(comodel_name='helpdesk.ticket') + check_assign_to = fields.Boolean(string='Asssign To', default=False) + assign_to = fields.Many2one(comodel_name='res.users', + string='Assign To', + domain=[('share', '=', False)]) + check_sh_display_multi_user = fields.Boolean() + check_assign_to_multiuser = fields.Boolean(default=False, + string="Assign Multi User") + ticket_update_type = fields.Selection([ + ('add', 'Add'), + ('replace', 'Replace'), + ], + default="add", + string="Ticket Type Update") + assign_to_multiuser = fields.Many2many('res.users', + string="Assign Multi Users", + domain=[('share', '=', False)]) + + check_helpdesks_state = fields.Boolean(default=False, string="Stage") + helpdesk_stages = fields.Many2one('helpdesk.stages', string="Stage") + + check_add_remove = fields.Boolean(string="Add/Remove", default=False) + followers = fields.Many2many('res.partner', string="Followers") + + ticket_follower_update_type = fields.Selection([ + ('add', 'Add'), + ('remove', 'Remove'), + ], + default="add", + string="Ticket Type Update") + + def update_record(self): + + # <-- ASSIGN TO UPDATE --> + + if self.check_assign_to == True: + self.helpdesks_ticket_ids.write({'user_id': self.assign_to.id}) + + # <-- ASSIGN MULTIUSER UPDATE --> + + if self.check_assign_to_multiuser == True: + + if self.ticket_update_type == 'add': + get_list = [] + for rec in self.helpdesks_ticket_ids.sh_user_ids: + if rec: + get_list.append(rec.id) + for rec1 in self.assign_to_multiuser: + if rec1: + get_list.append(rec1.id) + self.helpdesks_ticket_ids.write( + {'sh_user_ids': [(6, 0, get_list)]}) + + if self.ticket_update_type == "replace": + self.helpdesks_ticket_ids.write( + {'sh_user_ids': [(6, 0, self.assign_to_multiuser.ids)]}) + + # <-- STATE UPDATE --> + + if self.check_helpdesks_state == True: + for rec in self.helpdesks_ticket_ids: + if self.helpdesk_stages: + rec.stage_id = self.helpdesk_stages.id + + # <-- ADD/REMOVE FOLLOWER UPDATE --> + + for rec in self.helpdesks_ticket_ids: + ids_list = [] + if self.ticket_follower_update_type == "add": + rec.message_subscribe(partner_ids=self.followers.ids) + if self.ticket_follower_update_type == "remove": + for follower in self.followers.ids: + if follower in rec.message_partner_ids.ids: + ids_list.append(follower) + final_list = ids_list + rec.message_unsubscribe(partner_ids=final_list)
\ No newline at end of file diff --git a/sh_helpdesk/models/res_users.py b/sh_helpdesk/models/res_users.py new file mode 100644 index 0000000..d80a80d --- /dev/null +++ b/sh_helpdesk/models/res_users.py @@ -0,0 +1,31 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. + +from odoo import models, fields, api + + +class ResUsers(models.Model): + _inherit = 'res.users' + + sh_portal_user = fields.Boolean(string='Portal',compute='_compute_sh_portal_user',search='_search_sh_portal_user') + sh_portal_user_access = fields.Selection([('user','Portal Support User'),('manager','Portal Manager'),('leader','Portal Leader')],string='Portal Access') + sign = fields.Text('Signature') + + @api.depends('groups_id') + def _compute_sh_portal_user(self): + if self: + for rec in self: + if self.env.ref('base.group_portal').id in rec.groups_id.ids: + rec.sh_portal_user = True + else: + rec.sh_portal_user = False + + def _search_sh_portal_user(self, operator, value): + user_obj = self.env['res.users'] + domain = [] + domain.append(('sh_portal_user', operator, value)) + users = user_obj.sudo().search(domain).ids + if users: + return [('id', 'in', users)] + else: + return []
\ No newline at end of file diff --git a/sh_helpdesk/models/send_mail_quick_reply.py b/sh_helpdesk/models/send_mail_quick_reply.py new file mode 100644 index 0000000..607bf87 --- /dev/null +++ b/sh_helpdesk/models/send_mail_quick_reply.py @@ -0,0 +1,18 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. + +from odoo import models, fields + + +class SendQuickReply(models.Model): + _name = 'sh.quick.reply' + _description = 'Quick Reply' + + name = fields.Char('Title', required=True) + commom_for_all = fields.Boolean(string='Commom For All', default=False) + sh_user_id = fields.Many2one('res.users', + string='User', + required=True, + default=lambda self: self.env.user.id) + active = fields.Boolean(default=True) + sh_description = fields.Html('Body') diff --git a/sh_helpdesk/security/ir.model.access.csv b/sh_helpdesk/security/ir.model.access.csv new file mode 100644 index 0000000..6a44589 --- /dev/null +++ b/sh_helpdesk/security/ir.model.access.csv @@ -0,0 +1,37 @@ +id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink +access_helpdesk_team_manager,access_helpdesk_team_manager,model_helpdesk_team,sh_helpdesk.helpdesk_group_manager,1,1,1,1 +access_helpdesk_team_leader,access_helpdesk_team_leader,model_helpdesk_team,sh_helpdesk.helpdesk_group_team_leader,1,0,0,0 +access_helpdesk_team_user,access_helpdesk_team_user,model_helpdesk_team,sh_helpdesk.helpdesk_group_user,1,0,0,0 +access_helpdesk_ticket_type_manager,access_helpdesk_ticket_type_manager,model_helpdesk_ticket_type,sh_helpdesk.helpdesk_group_manager,1,1,1,1 +access_helpdesk_ticket_type_leader,access_helpdesk_ticket_type_leader,model_helpdesk_ticket_type,sh_helpdesk.helpdesk_group_team_leader,1,0,0,0 +access_helpdesk_ticket_type_user,access_helpdesk_ticket_type_user,model_helpdesk_ticket_type,sh_helpdesk.helpdesk_group_user,1,0,0,0 +access_helpdesk_sub_type_manager,access_helpdesk_sub_type_manager,model_helpdesk_sub_type,sh_helpdesk.helpdesk_group_manager,1,1,1,1 +access_helpdesk_sub_type_leader,access_helpdesk_sub_type_leader,model_helpdesk_sub_type,sh_helpdesk.helpdesk_group_team_leader,1,0,0,0 +access_helpdesk_sub_type_user,access_helpdesk_sub_type_user,model_helpdesk_sub_type,sh_helpdesk.helpdesk_group_user,1,0,0,0 +access_helpdesk_tags_manager,access_helpdesk_tags_manager,model_helpdesk_tags,sh_helpdesk.helpdesk_group_manager,1,1,1,1 +access_helpdesk_tags_leader,access_helpdesk_tags_leader,model_helpdesk_tags,sh_helpdesk.helpdesk_group_team_leader,1,0,0,0 +access_helpdesk_tags_user,access_helpdesk_tags_user,model_helpdesk_tags,sh_helpdesk.helpdesk_group_user,1,0,0,0 +access_helpdesk_stages_manager,access_helpdesk_stages_manager,model_helpdesk_stages,sh_helpdesk.helpdesk_group_manager,1,1,1,1 +access_helpdesk_stages_leader,access_helpdesk_stages_leader,model_helpdesk_stages,sh_helpdesk.helpdesk_group_team_leader,1,1,1,0 +access_helpdesk_stages_user,access_helpdesk_stages_user,model_helpdesk_stages,sh_helpdesk.helpdesk_group_user,1,1,1,0 +access_helpdesk_category_manager,access_helpdesk_category_manager,model_helpdesk_category,sh_helpdesk.helpdesk_group_manager,1,1,1,1 +access_helpdesk_category_leader,access_helpdesk_category_leader,model_helpdesk_category,sh_helpdesk.helpdesk_group_team_leader,1,0,0,0 +access_helpdesk_category_user,access_helpdesk_category_user,model_helpdesk_category,sh_helpdesk.helpdesk_group_user,1,0,0,0 +access_helpdesk_subcategory_manager,access_helpdesk_subcategory_manager,model_helpdesk_subcategory,sh_helpdesk.helpdesk_group_manager,1,1,1,1 +access_helpdesk_subcategory_leader,access_helpdesk_subcategory_leader,model_helpdesk_subcategory,sh_helpdesk.helpdesk_group_team_leader,1,0,0,0 +access_helpdesk_subcategory_user,access_helpdesk_subcategory_user,model_helpdesk_subcategory,sh_helpdesk.helpdesk_group_user,1,0,0,0 +access_helpdesk_priority_manager,access_helpdesk_priority_manager,model_helpdesk_priority,sh_helpdesk.helpdesk_group_manager,1,1,1,1 +access_helpdesk_priority_leader,access_helpdesk_priority_leader,model_helpdesk_priority,sh_helpdesk.helpdesk_group_team_leader,1,0,0,0 +access_helpdesk_priority_user,access_helpdesk_priority_user,model_helpdesk_priority,sh_helpdesk.helpdesk_group_user,1,0,0,0 +access_helpdesk_ticket_manager,access_helpdesk_ticket_manager,model_helpdesk_ticket,sh_helpdesk.helpdesk_group_manager,1,1,1,1 +access_helpdesk_ticket_leader,access_helpdesk_ticket_leader,model_helpdesk_ticket,sh_helpdesk.helpdesk_group_team_leader,1,1,1,0 +access_helpdesk_ticket_user,access_helpdesk_ticket_user,model_helpdesk_ticket,sh_helpdesk.helpdesk_group_user,1,1,1,0 +access_helpdesk_dashboard_manager,access_helpdesk_dashboard_manager,model_ticket_dashboard,sh_helpdesk.helpdesk_group_manager,1,1,1,1 +access_helpdesk_dashboard_leader,access_helpdesk_dashboard_leader,model_ticket_dashboard,helpdesk_group_team_leader,1,1,1,1 +access_helpdesk_dashboard_user,access_helpdesk_dashboard_user,model_ticket_dashboard,sh_helpdesk.helpdesk_group_user,1,1,1,1 +access_sh_quick_reply,access_sh_quick_reply,model_sh_quick_reply,base.group_user,1,1,1,1 +access_sh_quick_reply_user,access_sh_quick_reply_user,model_sh_quick_reply,sh_helpdesk.group_send_quick_reply,1,1,1,1 +access_sh_helpdesk_sla_policy,access_sh_helpdesk_sla_policy,model_sh_helpdesk_sla,base.group_user,1,1,1,1 +access_sh_helpdesk_sla_status,access_sh_helpdesk_sla_status,model_sh_helpdesk_sla_status,base.group_user,1,1,1,1 +access_sh_ticket_alarm,access_sh_ticket_alarm,model_sh_ticket_alarm,base.group_user,1,1,1,1 +access_sh_helpdesk_ticket_mass_update_wizard,access_sh_helpdesk_ticket_mass_update_wizard,model_sh_helpdesk_ticket_mass_update_wizard,base.group_user,1,1,1,1 diff --git a/sh_helpdesk/security/send_mail_security.xml b/sh_helpdesk/security/send_mail_security.xml new file mode 100644 index 0000000..dcee2d3 --- /dev/null +++ b/sh_helpdesk/security/send_mail_security.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<odoo> + <record id="group_send_quick_reply" model="res.groups"> + <field name="name">Send Quick Reply</field> + </record> + <record model="ir.rule" id="sh_send_quick_reply_user_rule"> + <field name="name">Send Quick Reply</field> + <field name="model_id" ref="model_sh_quick_reply" /> + <field name="global" eval="True" /> + <field name="domain_force">['|','|',('sh_user_id','in',[user.id]),('sh_user_id','=',False),('commom_for_all','=',True)]</field> + <field name="groups" eval="[(4, ref('sh_helpdesk.group_send_quick_reply'))]" /> + </record> +</odoo>
\ No newline at end of file diff --git a/sh_helpdesk/security/sh_helpdesk_security.xml b/sh_helpdesk/security/sh_helpdesk_security.xml new file mode 100644 index 0000000..c06e488 --- /dev/null +++ b/sh_helpdesk/security/sh_helpdesk_security.xml @@ -0,0 +1,92 @@ +<?xml version="1.0" encoding="UTF-8"?> +<odoo> + <record model="ir.module.category" id="module_helpdesk_category"> + <field name="name">Helpdesk</field> + <field name="description">Helpdesk</field> + <field name="sequence">20</field> + </record> + <record id="helpdesk_group_user" model="res.groups"> + <field name="name">Support User</field> + <field name="category_id" ref="module_helpdesk_category" /> + <field name="implied_ids" eval="[(4,ref('base.group_user'))]" /> + </record> + <record id="helpdesk_group_team_leader" model="res.groups"> + <field name="name">Team Leader</field> + <field name="category_id" ref="module_helpdesk_category" /> + <field name="implied_ids" eval="[(4,ref('helpdesk_group_user'))]" /> + </record> + <record id="helpdesk_group_manager" model="res.groups"> + <field name="name">Support Manager</field> + <field name="category_id" ref="module_helpdesk_category" /> + <field name="implied_ids" eval="[(4,ref('helpdesk_group_team_leader'))]" /> + <field name="users" eval="[(4, ref('base.user_root')), (4, ref('base.user_admin'))]" /> + </record> + + <record model="ir.rule" id="helpdesk_ticket_comp_rule"> + <field name="name">Helpdesk Ticket multi-company</field> + <field name="model_id" ref="model_helpdesk_ticket" /> + <field name="global" eval="True" /> + <field name="domain_force">['|',('company_id','=',False),('company_id','child_of',[user.company_id.id])]</field> + </record> + <record model="ir.rule" id="helpdesk_ticket_manager_rule"> + <field name="name">Helpdesk Ticket Manager</field> + <field name="model_id" ref="model_helpdesk_ticket" /> + <field name="domain_force">[(1, '=', 1)]</field> + <field name="groups" eval="[(4, ref('sh_helpdesk.helpdesk_group_manager'))]" /> + </record> + <record model="ir.rule" id="helpdesk_ticket_team_leader_rule"> + <field name="name">Helpdesk Ticket Team Leader</field> + <field name="model_id" ref="model_helpdesk_ticket" /> + <field name="global" eval="True" /> + <field name="domain_force">['|','|','|','|','|',('team_head','=',user.id),('team_head','=',False),('user_id','=',user.id),('user_id','=',False),('sh_user_ids','in',[user.id]),('sh_user_ids','=',False)]</field> + <field name="groups" eval="[(4, ref('sh_helpdesk.helpdesk_group_team_leader'))]" /> + </record> + <record model="ir.rule" id="helpdesk_ticket_assigned_user_rule"> + <field name="name">Helpdesk Ticket Assigned User</field> + <field name="model_id" ref="model_helpdesk_ticket" /> + <field name="global" eval="True" /> + <field name="domain_force">['|','|','|',('user_id','in',[user.id]),('user_id','=',False),('sh_user_ids','in',[user.id]),('sh_user_ids','=',False)]</field> + <field name="groups" eval="[(4, ref('sh_helpdesk.helpdesk_group_user'))]" /> + </record> + <record model="ir.rule" id="helpdesk_team_manager_rule"> + <field name="name">Helpdesk Team Manager</field> + <field name="model_id" ref="model_helpdesk_team" /> + <field name="global" eval="True" /> + <field name="domain_force">[(1,'=',1)]</field> + <field name="groups" eval="[(4, ref('sh_helpdesk.helpdesk_group_manager'))]" /> + </record> + <record model="ir.rule" id="helpdesk_team_team_leader_rule"> + <field name="name">Helpdesk Team Team Leader</field> + <field name="model_id" ref="model_helpdesk_team" /> + <field name="global" eval="True" /> + <field name="domain_force">['|','|',('team_head','=',user.id),('team_head','=',False),('team_members','in',[user.id])]</field> + <field name="groups" eval="[(4, ref('sh_helpdesk.helpdesk_group_team_leader'))]" /> + </record> + <record id="group_helpdesk_sla_policy" model="res.groups"> + <field name="name">Helpdesk SLA Policy</field> + <field name="users" eval="[(4, ref('base.user_root')), (4, ref('base.user_admin'))]" /> + </record> + <record model="ir.rule" id="helpdesk_sla_comp_rule"> + <field name="name">Helpdesk SLA multi-company</field> + <field name="model_id" ref="model_sh_helpdesk_sla" /> + <field name="global" eval="True" /> + <field name="domain_force">['|',('company_id','=',False),('company_id', 'in', company_ids)]</field> + </record> + <record id="group_helpdesk_alarm" model="res.groups"> + <field name="name">Helpdesk Ticket Alarm</field> + <field name="users" eval="[(4, ref('base.user_root')), (4, ref('base.user_admin'))]" /> + </record> + <record id="sh_ticket_alarm_comp_rule" model="ir.rule"> + <field name="name">Ticket Alarm multi-company</field> + <field name="model_id" ref="model_sh_ticket_alarm" /> + <field name="domain_force">['|',('company_id','=',False),('company_id', 'in', company_ids)]</field> + </record> + <record id="helpdesk_group_whatsapp" model="res.groups"> + <field name="name">Helpdesk Whatsapp Feature</field> + <field name="users" eval="[(4, ref('base.user_root')), (4, ref('base.user_admin'))]" /> + </record> + + <record id="group_allow_multi_action" model="res.groups"> + <field name="name">Mass Ticket Update</field> + </record> +</odoo>
\ No newline at end of file diff --git a/sh_helpdesk/static/description/0.png b/sh_helpdesk/static/description/0.png Binary files differnew file mode 100644 index 0000000..fc673bb --- /dev/null +++ b/sh_helpdesk/static/description/0.png diff --git a/sh_helpdesk/static/description/1.png b/sh_helpdesk/static/description/1.png Binary files differnew file mode 100644 index 0000000..9558e17 --- /dev/null +++ b/sh_helpdesk/static/description/1.png diff --git a/sh_helpdesk/static/description/10.png b/sh_helpdesk/static/description/10.png Binary files differnew file mode 100644 index 0000000..8f4dbf8 --- /dev/null +++ b/sh_helpdesk/static/description/10.png diff --git a/sh_helpdesk/static/description/11.png b/sh_helpdesk/static/description/11.png Binary files differnew file mode 100644 index 0000000..ee9aa3d --- /dev/null +++ b/sh_helpdesk/static/description/11.png diff --git a/sh_helpdesk/static/description/12.png b/sh_helpdesk/static/description/12.png Binary files differnew file mode 100644 index 0000000..0edce76 --- /dev/null +++ b/sh_helpdesk/static/description/12.png diff --git a/sh_helpdesk/static/description/13.png b/sh_helpdesk/static/description/13.png Binary files differnew file mode 100644 index 0000000..ccacb02 --- /dev/null +++ b/sh_helpdesk/static/description/13.png diff --git a/sh_helpdesk/static/description/14.png b/sh_helpdesk/static/description/14.png Binary files differnew file mode 100644 index 0000000..a292d57 --- /dev/null +++ b/sh_helpdesk/static/description/14.png diff --git a/sh_helpdesk/static/description/15.png b/sh_helpdesk/static/description/15.png Binary files differnew file mode 100644 index 0000000..c298af1 --- /dev/null +++ b/sh_helpdesk/static/description/15.png diff --git a/sh_helpdesk/static/description/16.png b/sh_helpdesk/static/description/16.png Binary files differnew file mode 100644 index 0000000..0763ecd --- /dev/null +++ b/sh_helpdesk/static/description/16.png diff --git a/sh_helpdesk/static/description/17.png b/sh_helpdesk/static/description/17.png Binary files differnew file mode 100644 index 0000000..4c46f18 --- /dev/null +++ b/sh_helpdesk/static/description/17.png diff --git a/sh_helpdesk/static/description/18.png b/sh_helpdesk/static/description/18.png Binary files differnew file mode 100644 index 0000000..2870e5a --- /dev/null +++ b/sh_helpdesk/static/description/18.png diff --git a/sh_helpdesk/static/description/19.png b/sh_helpdesk/static/description/19.png Binary files differnew file mode 100644 index 0000000..2ddfaef --- /dev/null +++ b/sh_helpdesk/static/description/19.png diff --git a/sh_helpdesk/static/description/2.png b/sh_helpdesk/static/description/2.png Binary files differnew file mode 100644 index 0000000..28216bf --- /dev/null +++ b/sh_helpdesk/static/description/2.png diff --git a/sh_helpdesk/static/description/20.png b/sh_helpdesk/static/description/20.png Binary files differnew file mode 100644 index 0000000..583acaf --- /dev/null +++ b/sh_helpdesk/static/description/20.png diff --git a/sh_helpdesk/static/description/21.png b/sh_helpdesk/static/description/21.png Binary files differnew file mode 100644 index 0000000..1a22962 --- /dev/null +++ b/sh_helpdesk/static/description/21.png diff --git a/sh_helpdesk/static/description/22.png b/sh_helpdesk/static/description/22.png Binary files differnew file mode 100644 index 0000000..cb5f20a --- /dev/null +++ b/sh_helpdesk/static/description/22.png diff --git a/sh_helpdesk/static/description/24.png b/sh_helpdesk/static/description/24.png Binary files differnew file mode 100644 index 0000000..2479cd9 --- /dev/null +++ b/sh_helpdesk/static/description/24.png diff --git a/sh_helpdesk/static/description/3.png b/sh_helpdesk/static/description/3.png Binary files differnew file mode 100644 index 0000000..72e1d58 --- /dev/null +++ b/sh_helpdesk/static/description/3.png diff --git a/sh_helpdesk/static/description/4.png b/sh_helpdesk/static/description/4.png Binary files differnew file mode 100644 index 0000000..a725fc0 --- /dev/null +++ b/sh_helpdesk/static/description/4.png diff --git a/sh_helpdesk/static/description/5.png b/sh_helpdesk/static/description/5.png Binary files differnew file mode 100644 index 0000000..73e7c7d --- /dev/null +++ b/sh_helpdesk/static/description/5.png diff --git a/sh_helpdesk/static/description/6.png b/sh_helpdesk/static/description/6.png Binary files differnew file mode 100644 index 0000000..11c1130 --- /dev/null +++ b/sh_helpdesk/static/description/6.png diff --git a/sh_helpdesk/static/description/7.png b/sh_helpdesk/static/description/7.png Binary files differnew file mode 100644 index 0000000..1a66e6f --- /dev/null +++ b/sh_helpdesk/static/description/7.png diff --git a/sh_helpdesk/static/description/8.png b/sh_helpdesk/static/description/8.png Binary files differnew file mode 100644 index 0000000..ba2ef03 --- /dev/null +++ b/sh_helpdesk/static/description/8.png diff --git a/sh_helpdesk/static/description/9.png b/sh_helpdesk/static/description/9.png Binary files differnew file mode 100644 index 0000000..2cc0c59 --- /dev/null +++ b/sh_helpdesk/static/description/9.png diff --git a/sh_helpdesk/static/description/Create Ticket From Inbound Mail.png b/sh_helpdesk/static/description/Create Ticket From Inbound Mail.png Binary files differnew file mode 100644 index 0000000..af0fc27 --- /dev/null +++ b/sh_helpdesk/static/description/Create Ticket From Inbound Mail.png diff --git a/sh_helpdesk/static/description/Dynamic Dashboard.png b/sh_helpdesk/static/description/Dynamic Dashboard.png Binary files differnew file mode 100644 index 0000000..92b6fc4 --- /dev/null +++ b/sh_helpdesk/static/description/Dynamic Dashboard.png diff --git a/sh_helpdesk/static/description/Help Desk Portal.png b/sh_helpdesk/static/description/Help Desk Portal.png Binary files differnew file mode 100644 index 0000000..2e90999 --- /dev/null +++ b/sh_helpdesk/static/description/Help Desk Portal.png diff --git a/sh_helpdesk/static/description/Helpdesk Backend.png b/sh_helpdesk/static/description/Helpdesk Backend.png Binary files differnew file mode 100644 index 0000000..98e6ed3 --- /dev/null +++ b/sh_helpdesk/static/description/Helpdesk Backend.png diff --git a/sh_helpdesk/static/description/Helpdesk Multiple User for Backend.png b/sh_helpdesk/static/description/Helpdesk Multiple User for Backend.png Binary files differnew file mode 100644 index 0000000..7a75cf3 --- /dev/null +++ b/sh_helpdesk/static/description/Helpdesk Multiple User for Backend.png diff --git a/sh_helpdesk/static/description/Helpdesk Multiple User for Portal.png b/sh_helpdesk/static/description/Helpdesk Multiple User for Portal.png Binary files differnew file mode 100644 index 0000000..42a33f4 --- /dev/null +++ b/sh_helpdesk/static/description/Helpdesk Multiple User for Portal.png diff --git a/sh_helpdesk/static/description/Helpdesk Portal Customer.png b/sh_helpdesk/static/description/Helpdesk Portal Customer.png Binary files differnew file mode 100644 index 0000000..3f3d08e --- /dev/null +++ b/sh_helpdesk/static/description/Helpdesk Portal Customer.png diff --git a/sh_helpdesk/static/description/Helpdesk Portal.png b/sh_helpdesk/static/description/Helpdesk Portal.png Binary files differnew file mode 100644 index 0000000..0ad1ece --- /dev/null +++ b/sh_helpdesk/static/description/Helpdesk Portal.png diff --git a/sh_helpdesk/static/description/Helpdesk Quick Reply.png b/sh_helpdesk/static/description/Helpdesk Quick Reply.png Binary files differnew file mode 100644 index 0000000..3fbfd9d --- /dev/null +++ b/sh_helpdesk/static/description/Helpdesk Quick Reply.png diff --git a/sh_helpdesk/static/description/Helpdesk SLA Policy.png b/sh_helpdesk/static/description/Helpdesk SLA Policy.png Binary files differnew file mode 100644 index 0000000..1f0128c --- /dev/null +++ b/sh_helpdesk/static/description/Helpdesk SLA Policy.png diff --git a/sh_helpdesk/static/description/Helpdesk Ticket Reminder.png b/sh_helpdesk/static/description/Helpdesk Ticket Reminder.png Binary files differnew file mode 100644 index 0000000..4f0f2ae --- /dev/null +++ b/sh_helpdesk/static/description/Helpdesk Ticket Reminder.png diff --git a/sh_helpdesk/static/description/Helpdesk Whatsapp.png b/sh_helpdesk/static/description/Helpdesk Whatsapp.png Binary files differnew file mode 100644 index 0000000..b5e4b9d --- /dev/null +++ b/sh_helpdesk/static/description/Helpdesk Whatsapp.png diff --git a/sh_helpdesk/static/description/Leader.png b/sh_helpdesk/static/description/Leader.png Binary files differnew file mode 100644 index 0000000..6d07694 --- /dev/null +++ b/sh_helpdesk/static/description/Leader.png diff --git a/sh_helpdesk/static/description/Manage Products.png b/sh_helpdesk/static/description/Manage Products.png Binary files differnew file mode 100644 index 0000000..c178995 --- /dev/null +++ b/sh_helpdesk/static/description/Manage Products.png diff --git a/sh_helpdesk/static/description/Multi_user/MU1.png b/sh_helpdesk/static/description/Multi_user/MU1.png Binary files differnew file mode 100644 index 0000000..6d0cb6a --- /dev/null +++ b/sh_helpdesk/static/description/Multi_user/MU1.png diff --git a/sh_helpdesk/static/description/Multi_user/MU2.png b/sh_helpdesk/static/description/Multi_user/MU2.png Binary files differnew file mode 100644 index 0000000..18ac3d6 --- /dev/null +++ b/sh_helpdesk/static/description/Multi_user/MU2.png diff --git a/sh_helpdesk/static/description/Multi_user/MU3.png b/sh_helpdesk/static/description/Multi_user/MU3.png Binary files differnew file mode 100644 index 0000000..eef1c17 --- /dev/null +++ b/sh_helpdesk/static/description/Multi_user/MU3.png diff --git a/sh_helpdesk/static/description/Multi_user/MU4.png b/sh_helpdesk/static/description/Multi_user/MU4.png Binary files differnew file mode 100644 index 0000000..18ab344 --- /dev/null +++ b/sh_helpdesk/static/description/Multi_user/MU4.png diff --git a/sh_helpdesk/static/description/Multi_user/MU5.png b/sh_helpdesk/static/description/Multi_user/MU5.png Binary files differnew file mode 100644 index 0000000..8f8ac9b --- /dev/null +++ b/sh_helpdesk/static/description/Multi_user/MU5.png diff --git a/sh_helpdesk/static/description/Multi_user/MU6.png b/sh_helpdesk/static/description/Multi_user/MU6.png Binary files differnew file mode 100644 index 0000000..95ab7ea --- /dev/null +++ b/sh_helpdesk/static/description/Multi_user/MU6.png diff --git a/sh_helpdesk/static/description/My-Company-Your-Ticket-is-generated-Ref-TICKET-0012-Odoo.png b/sh_helpdesk/static/description/My-Company-Your-Ticket-is-generated-Ref-TICKET-0012-Odoo.png Binary files differnew file mode 100644 index 0000000..fc3089c --- /dev/null +++ b/sh_helpdesk/static/description/My-Company-Your-Ticket-is-generated-Ref-TICKET-0012-Odoo.png diff --git a/sh_helpdesk/static/description/Ticket-Dashboard-Odoo.png b/sh_helpdesk/static/description/Ticket-Dashboard-Odoo.png Binary files differnew file mode 100644 index 0000000..1d962f8 --- /dev/null +++ b/sh_helpdesk/static/description/Ticket-Dashboard-Odoo.png diff --git a/sh_helpdesk/static/description/Update Mass Ticket.png b/sh_helpdesk/static/description/Update Mass Ticket.png Binary files differnew file mode 100644 index 0000000..12c9ced --- /dev/null +++ b/sh_helpdesk/static/description/Update Mass Ticket.png diff --git a/sh_helpdesk/static/description/Userwise Helpdesk.png b/sh_helpdesk/static/description/Userwise Helpdesk.png Binary files differnew file mode 100644 index 0000000..c6c28cd --- /dev/null +++ b/sh_helpdesk/static/description/Userwise Helpdesk.png diff --git a/sh_helpdesk/static/description/aarab.png b/sh_helpdesk/static/description/aarab.png Binary files differnew file mode 100644 index 0000000..143ffc9 --- /dev/null +++ b/sh_helpdesk/static/description/aarab.png diff --git a/sh_helpdesk/static/description/assign user.png b/sh_helpdesk/static/description/assign user.png Binary files differnew file mode 100644 index 0000000..53855ab --- /dev/null +++ b/sh_helpdesk/static/description/assign user.png diff --git a/sh_helpdesk/static/description/auto_add_follower.gif b/sh_helpdesk/static/description/auto_add_follower.gif Binary files differnew file mode 100644 index 0000000..722ef5d --- /dev/null +++ b/sh_helpdesk/static/description/auto_add_follower.gif diff --git a/sh_helpdesk/static/description/auto_close_ticket.gif b/sh_helpdesk/static/description/auto_close_ticket.gif Binary files differnew file mode 100644 index 0000000..562087e --- /dev/null +++ b/sh_helpdesk/static/description/auto_close_ticket.gif diff --git a/sh_helpdesk/static/description/background.png b/sh_helpdesk/static/description/background.png Binary files differnew file mode 100644 index 0000000..8b874b0 --- /dev/null +++ b/sh_helpdesk/static/description/background.png diff --git a/sh_helpdesk/static/description/captcha.png b/sh_helpdesk/static/description/captcha.png Binary files differnew file mode 100644 index 0000000..d5aa040 --- /dev/null +++ b/sh_helpdesk/static/description/captcha.png diff --git a/sh_helpdesk/static/description/dashboard_counter_click.gif b/sh_helpdesk/static/description/dashboard_counter_click.gif Binary files differnew file mode 100644 index 0000000..dfda309 --- /dev/null +++ b/sh_helpdesk/static/description/dashboard_counter_click.gif diff --git a/sh_helpdesk/static/description/email.png b/sh_helpdesk/static/description/email.png Binary files differnew file mode 100644 index 0000000..1e19e4b --- /dev/null +++ b/sh_helpdesk/static/description/email.png diff --git a/sh_helpdesk/static/description/eng.png b/sh_helpdesk/static/description/eng.png Binary files differnew file mode 100644 index 0000000..91ed524 --- /dev/null +++ b/sh_helpdesk/static/description/eng.png diff --git a/sh_helpdesk/static/description/feedback portal.png b/sh_helpdesk/static/description/feedback portal.png Binary files differnew file mode 100644 index 0000000..60bf40b --- /dev/null +++ b/sh_helpdesk/static/description/feedback portal.png diff --git a/sh_helpdesk/static/description/feedback.png b/sh_helpdesk/static/description/feedback.png Binary files differnew file mode 100644 index 0000000..c683ade --- /dev/null +++ b/sh_helpdesk/static/description/feedback.png diff --git a/sh_helpdesk/static/description/german.png b/sh_helpdesk/static/description/german.png Binary files differnew file mode 100644 index 0000000..13efbe5 --- /dev/null +++ b/sh_helpdesk/static/description/german.png diff --git a/sh_helpdesk/static/description/helpdesk backend new.png b/sh_helpdesk/static/description/helpdesk backend new.png Binary files differnew file mode 100644 index 0000000..5d3f57c --- /dev/null +++ b/sh_helpdesk/static/description/helpdesk backend new.png diff --git a/sh_helpdesk/static/description/helpdesk_1.png b/sh_helpdesk/static/description/helpdesk_1.png Binary files differnew file mode 100644 index 0000000..e845752 --- /dev/null +++ b/sh_helpdesk/static/description/helpdesk_1.png diff --git a/sh_helpdesk/static/description/helpdesk_2.png b/sh_helpdesk/static/description/helpdesk_2.png Binary files differnew file mode 100644 index 0000000..5fe66df --- /dev/null +++ b/sh_helpdesk/static/description/helpdesk_2.png diff --git a/sh_helpdesk/static/description/helpdesk_3.png b/sh_helpdesk/static/description/helpdesk_3.png Binary files differnew file mode 100644 index 0000000..c59976a --- /dev/null +++ b/sh_helpdesk/static/description/helpdesk_3.png diff --git a/sh_helpdesk/static/description/hot tag.png b/sh_helpdesk/static/description/hot tag.png Binary files differnew file mode 100644 index 0000000..080c9a4 --- /dev/null +++ b/sh_helpdesk/static/description/hot tag.png diff --git a/sh_helpdesk/static/description/icon.png b/sh_helpdesk/static/description/icon.png Binary files differnew file mode 100644 index 0000000..c71a110 --- /dev/null +++ b/sh_helpdesk/static/description/icon.png diff --git a/sh_helpdesk/static/description/image1.png b/sh_helpdesk/static/description/image1.png Binary files differnew file mode 100644 index 0000000..c024f59 --- /dev/null +++ b/sh_helpdesk/static/description/image1.png diff --git a/sh_helpdesk/static/description/image2.png b/sh_helpdesk/static/description/image2.png Binary files differnew file mode 100644 index 0000000..76e94d4 --- /dev/null +++ b/sh_helpdesk/static/description/image2.png diff --git a/sh_helpdesk/static/description/image3.png b/sh_helpdesk/static/description/image3.png Binary files differnew file mode 100644 index 0000000..0cf2363 --- /dev/null +++ b/sh_helpdesk/static/description/image3.png diff --git a/sh_helpdesk/static/description/index.html b/sh_helpdesk/static/description/index.html new file mode 100644 index 0000000..46bb1ea --- /dev/null +++ b/sh_helpdesk/static/description/index.html @@ -0,0 +1,2002 @@ +<!DOCTYPE html> +<html> + <head> + <title></title> + <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.0/css/bootstrap.min.css"> + </link> + <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script> + <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.16.0/umd/popper.min.js"></script> + <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js"></script> + <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"> + </link> + </head> + <body> + <!-- heading --> + <section id="sh_module_heading" style="padding-top: 50px;"> + <div class="container"> + <div class="sh_center text-center"> + <h4 style="font-size: 30px;font-weight: 600;color: #212121;margin-bottom: 20px;">Help Desk</h4> + <img src="shape.png" style="width: 100px;display: block;text-align: center;margin: auto;margin-bottom: 20px;" /> + <p style="color: #777;font-size: 18px;margin: 0;letter-spacing: 1px;"> + Are you looking for fully flexible and customisable helpdesk in odoo? Our this apps almost contain everything you need for Service Desk, Technical Support Team, Issue Ticket System which include service request to be managed in Odoo backend. Support ticket will send by email to customer and admin. Customer can view their ticket from the website portal and easily see stage of the reported ticket. This desk is fully customizable clean and flexible. + </p> + </div> + <div class="alert alert-success" style="margin-top: 30px;"> + <a href="https://apps.odoo.com/apps/modules/14.0/sh_website_helpdesk/"><strong>Help Desk Website</strong> Advance modules.</a> + </div> + <div class="alert alert-danger" style="margin-top: 30px;"> + <a href="https://apps.odoo.com/apps/modules/14.0/sh_all_in_one_helpdesk/"><strong>All In One Helpdesk</strong> Advance Module.</a> + </div> + </div> + </section> + <div class="container"> + <div class="sh_center text-center"> + <h4 style="font-size:30px; font-weight:600; color:#212121; margin-bottom:20px">About Addons</h4> + <hr style="width:100px; border-width:2px; border-color:#1976d2"> + </div> + <table class="table" style="border:1px solid black;"> + <thead class="thead-dark"> + <tr> + <th scope="col" style="border:1px solid black;">Sr No.</th> + <th scope="col" style="border:1px solid black;">Addons</th> + <th scope="col" style="border:1px solid black;">Price</th> + </tr> + </thead> + <tbody> + <tr> + <th scope="row" style="border:1px solid black">1</th> + <td style="border:1px solid black"> + <a href="https://apps.odoo.com/apps/modules/14.0/sh_helpdesk_crm/"><strong>Manage CRM With Helpdesk + </strong></a> + </td> + <td style="border:1px solid black">10 Eur</td> + </tr> + <tr> + <th scope="row" style="border:1px solid black">2</th> + <td style="border:1px solid black"> + <a href="https://apps.odoo.com/apps/modules/14.0/sh_helpdesk_so/"><strong>Manage Sale Order With Helpdesk + </strong></a> + </td> + <td style="border:1px solid black">10 Eur</td> + </tr> + <tr> + <th scope="row" style="border:1px solid black">3</th> + <td style="border:1px solid black"> + <a href="https://apps.odoo.com/apps/modules/14.0/sh_helpdesk_po/"><strong>Manage Purchase Order With Helpdesk + </strong></a> + </td> + <td style="border:1px solid black">10 Eur</td> + </tr> + <tr> + <th scope="row" style="border:1px solid black">4</th> + <td style="border:1px solid black"> + <a href="https://apps.odoo.com/apps/modules/14.0/sh_helpdesk_invoice/"><strong>Manage Invoice With Helpdesk + </strong></a> + </td> + <td style="border:1px solid black">10 Eur</td> + </tr> + <tr> + <th scope="row" style="border:1px solid black">5</th> + <td style="border:1px solid black"> + <a href="https://apps.odoo.com/apps/modules/14.0/sh_helpdesk_timesheet/"><strong>Helpdesk Timesheet + </strong></a> + </td> + <td style="border:1px solid black">10 Eur</td> + </tr> + <tr> + <th scope="row" style="border:1px solid black">6</th> + <td style="border:1px solid black"> + <a href="https://apps.odoo.com/apps/modules/14.0/sh_helpdesk_task/"><strong>Helpdesk Support Ticket To Task + </strong></a> + </td> + <td style="border:1px solid black">10 Eur</td> + </tr> + </tbody> + </table> + </div> + <section id="sh_key_features" style="padding: 50px 0px;"> + <div class="container"> + <div class="sh_center text-center" style="margin-bottom: 40px;"> + <h4 style="font-size: 30px;font-weight: 600;color: #212121;margin-bottom: 20px;">Key Features</h4> + <hr style="width: 100px;border-width: 2px;border-color: #1976d2;" /> + </div> + + <div class="row"> + <div class="col-md-6"> + <a href="https://youtu.be/fgHNH_W69wM?list=PL-zDV7_rrd2qrjmF5c5l95nDkYxulAqc_" target="_blank" class="sh_shape_snippet" style="display: block;margin-top: 30px;"> + <img src="Update Mass Ticket.png" style="width: 100%;border: 2px solid #aaaaaa;" /> + </a> + </div> + <div class="col-md-6"> + <a href="https://youtu.be/2QfGoSuDQho?list=PL-zDV7_rrd2qrjmF5c5l95nDkYxulAqc_" target="_blank" class="sh_shape_snippet" style="display: block;margin-top: 30px;"> + <img src="Helpdesk Whatsapp.png" style="width: 100%;border: 2px solid #aaaaaa;" /> + </a> + </div> + </div> + <div class="row"> + <div class="col-md-6"> + <a href="https://youtu.be/OKfhkva1gi4?list=PL-zDV7_rrd2qrjmF5c5l95nDkYxulAqc_" target="_blank" class="sh_shape_snippet" style="display: block;margin-top: 30px;"> + <img src="Helpdesk SLA Policy.png" style="width: 100%;border: 2px solid #aaaaaa;" /> + </a> + </div> + <div class="col-md-6"> + <a href="https://youtu.be/OKfhkva1gi4?list=PL-zDV7_rrd2qrjmF5c5l95nDkYxulAqc_" target="_blank" class="sh_shape_snippet" style="display: block;margin-top: 30px;"> + <img src="Helpdesk Ticket Reminder.png" style="width: 100%;border: 2px solid #aaaaaa;" /> + </a> + </div> + </div> + <div class="row"> + <div class="col-md-12"> + <a href="https://www.youtube.com/watch?v=KHJByCfaGCM&list=PL-zDV7_rrd2pdNKurRK-TyKxYjImOJZ_W&index=5" target="_blank" class="sh_shape_snippet" style="display: block;margin-top: 30px;"> + <img src="helpdesk backend new.png" style="width: 100%;border: 2px solid #aaaaaa;" /> + </a> + </div> + </div> + <div class="row"> + <div class="col-md-6"> + <a href="https://youtu.be/c8tg6ibCmu0?list=PL-zDV7_rrd2pdNKurRK-TyKxYjImOJZ_W" target="_blank" class="sh_shape_snippet" style="display: block;margin-top: 30px;"> + <img src="stages.png" style="width: 100%;border: 2px solid #aaaaaa;" /> + </a> + </div> + <div class="col-md-6"> + <a href="https://youtu.be/TKpTTetT5RI?list=PL-zDV7_rrd2pdNKurRK-TyKxYjImOJZ_W" target="_blank" class="sh_shape_snippet" style="display: block;margin-top: 30px;"> + <img src="email.png" style="width: 100%;border: 2px solid #aaaaaa;" /> + </a> + </div> + </div> + <div class="row"> + <div class="col-md-4"> + <a href="https://youtu.be/EQ8tPyc-vY4?list=PL-zDV7_rrd2pdNKurRK-TyKxYjImOJZ_W" target="_blank" class="sh_shape_snippet" style="display: block;margin-top: 30px;"> + <img src="Dynamic Dashboard.png" style="width: 100%;border: 2px solid #aaaaaa;" /> + </a> + </div> + <div class="col-md-4"> + <a href="https://youtu.be/JBAJSu0ixjg?list=PL-zDV7_rrd2pdNKurRK-TyKxYjImOJZ_W" target="_blank" class="sh_shape_snippet" style="display: block;margin-top: 30px;"> + <img src="Create Ticket From Inbound Mail.png" style="width: 100%;border: 2px solid #aaaaaa;" /> + </a> + </div> + <div class="col-md-4"> + <a href="https://youtu.be/EZ9sVoIA1CU?list=PL-zDV7_rrd2pdNKurRK-TyKxYjImOJZ_W" target="_blank" class="sh_shape_snippet" style="display: block;margin-top: 30px;"> + <img src="Userwise Helpdesk.png" style="width: 100%;border: 2px solid #aaaaaa;" /> + </a> + </div> + </div> + <div class="row"> + <div class="col-md-6"> + <a href="https://youtu.be/h3CU7u4ThnM?list=PL-zDV7_rrd2pdNKurRK-TyKxYjImOJZ_W" target="_blank" class="sh_shape_snippet" style="display: block;margin-top: 30px;"> + <img src="Helpdesk Portal.png" style="width: 100%;border: 2px solid #aaaaaa;" /> + </a> + </div> + <div class="col-md-6"> + <a href="https://youtu.be/OuDPDrDw2bo?list=PL-zDV7_rrd2pdNKurRK-TyKxYjImOJZ_W" target="_blank" class="sh_shape_snippet" style="display: block;margin-top: 30px;"> + <img src="Helpdesk Portal Customer.png" style="width: 100%;border: 2px solid #aaaaaa;" /> + </a> + </div> + </div> + <div class="row"> + <div class="col-md-12"> + <a href="https://youtu.be/IzfPcQ1yRI0?list=PL-zDV7_rrd2qrjmF5c5l95nDkYxulAqc_" target="_blank" class="sh_shape_snippet" style="display: block;margin-top: 30px;"> + <img src="Helpdesk Quick Reply.png" style="width: 100%;border: 2px solid #aaaaaa;" /> + </a> + </div> + </div> + <div class="row"> + <div class="col-md-6"> + <a href="https://youtu.be/FGT8dzXtsMc?list=PL-zDV7_rrd2qrjmF5c5l95nDkYxulAqc_" target="_blank" class="sh_shape_snippet" style="display: block;margin-top: 30px;"> + <img src="Helpdesk Multiple User for Backend.png" style="width: 100%;border: 2px solid #aaaaaa;" /> + </a> + </div> + <div class="col-md-6"> + <a href="https://youtu.be/QCjDno_5ZyU?list=PL-zDV7_rrd2qrjmF5c5l95nDkYxulAqc_" target="_blank" class="sh_shape_snippet" style="display: block;margin-top: 30px;"> + <img src="Helpdesk Multiple User for Portal.png" style="width: 100%;border: 2px solid #aaaaaa;" /> + </a> + </div> + </div> + <div class="row"> + <div class="col-md-12"> + <a href="https://youtu.be/5YtrTn12BfU?list=PL-zDV7_rrd2qrjmF5c5l95nDkYxulAqc_" target="_blank" class="sh_shape_snippet" style="display: block;margin-top: 30px;"> + <img src="Manage Products.png" style="width: 100%;border: 2px solid #aaaaaa;" /> + </a> + </div> + </div> + </div> + </section> + + <!-- video --> + <!-- <section id="sh_video" style="margin-top: 50px;text-align: center;"> + <div class="container"> + <h4 style="font-size: 30px; font-weight: 600; color: #212121; margin-bottom: 20px;">Videos</h4> + <hr style="width: 80px; border-width: 2px; border-color: #1976d2;" /> + + <div class="row" style="margin-top: 30px;"> + + <div class="col-md-4"> + <div class="sh_icon" style="border: 2px solid #aaa;margin-bottom: 20px;box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12);"> + <a href="https://youtu.be/EQ8tPyc-vY4?list=PL-zDV7_rrd2pdNKurRK-TyKxYjImOJZ_W" target="_blank" style="color: #212121;font-weight: 600;vertical-align: middle;padding-left: 10px;padding: 20px;display: block;text-decoration: none;"> + Dynamic Dashboard + </a> + </div> + </div> + <div class="col-md-4"> + <div class="sh_icon" style="border: 2px solid #aaa;margin-bottom: 20px;box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12);"> + <a href="https://www.youtube.com/watch?v=N-sNKjDTMtA&feature=youtu.be" target="_blank" style="color: #212121;font-weight: 600;vertical-align: middle;padding-left: 10px;padding: 20px;display: block;text-decoration: none;"> + Help Desk + </a> + </div> + </div> + <div class="col-md-4"> + <div class="sh_icon" style="border: 2px solid #aaa;margin-bottom: 20px;box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12);"> + <a href="https://youtu.be/EZ9sVoIA1CU?list=PL-zDV7_rrd2pdNKurRK-TyKxYjImOJZ_W" target="_blank" style="color: #212121;font-weight: 600;vertical-align: middle;padding-left: 10px;padding: 20px;display: block;text-decoration: none;"> + Userwise Help Desk + </a> + </div> + </div> + </div> + </div> + </section> --> + <!-- feature --> + <section id="sh_feature" style="padding-top: 50px;"> + <div class="container"> + <div class="sh_center text-center"> + <h4 style="font-size: 30px;font-weight: 600;color: #212121;margin-bottom: 20px;">Hot Features</h4> + <hr style="width: 100px;border-width: 2px;border-color: #1976d2;" /> + </div> + <div class="row"> + <div class="col-md-12"> + <div class="sh_icon" style="border: 1px solid #aaa;padding: 20px;margin-bottom: 20px;box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12);"> + <span class="fa fa-circle" style="background-color: #1976d2;width: 35px;height: 35px;text-align: center;line-height: 35px;border-radius: 50%;color: #fff;font-size: 16px;"></span> + <span style="color: #212121;font-weight: 600;vertical-align: middle;padding-left: 10px;">Auto Change Replied Status Based On Customer/Staff Replied.<img src="hot tag.png" style="max-width:80px; padding-left:10px"> + </span> + </div> + </div> + </div> + <div class="row"> + <div class="col-md-4"> + <div class="sh_icon" style="border: 1px solid #aaa;padding: 20px;margin-bottom: 20px;box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12);"> + <span class="fa fa-circle" style="background-color: #1976d2;width: 35px;height: 35px;text-align: center;line-height: 35px;border-radius: 50%;color: #fff;font-size: 16px;"></span> + <span style="color: #212121;font-weight: 600;vertical-align: middle;padding-left: 10px;">Helpdesk Whatsapp<img src="hot tag.png" style="max-width:25%; padding-left:10px"> + </span> + </div> + </div> + <div class="col-md-4"> + <div class="sh_icon" style="border: 1px solid #aaa;padding: 20px;margin-bottom: 20px;box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12);"> + <span class="fa fa-circle" style="background-color: #1976d2;width: 35px;height: 35px;text-align: center;line-height: 35px;border-radius: 50%;color: #fff;font-size: 16px;"></span> + <span style="color: #212121;font-weight: 600;vertical-align: middle;padding-left: 10px;">Helpdesk SLA Policy<img src="hot tag.png" style="max-width:25%; padding-left:10px"> + </span> + </div> + </div> + <div class="col-md-4"> + <div class="sh_icon" style="border: 1px solid #aaa;padding: 20px;margin-bottom: 20px;box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12);"> + <span class="fa fa-circle" style="background-color: #1976d2;width: 35px;height: 35px;text-align: center;line-height: 35px;border-radius: 50%;color: #fff;font-size: 16px;"></span> + <span style="color: #212121;font-weight: 600;vertical-align: middle;padding-left: 10px;">Helpdesk Ticket Alarm<img src="hot tag.png" style="max-width:25%; padding-left:10px"> + </span> + </div> + </div> + <div class="col-md-4"> + <div class="sh_icon" style="border: 1px solid #aaa;padding: 20px;margin-bottom: 20px;box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12);"> + <span class="fa fa-circle" style="background-color: #1976d2;width: 35px;height: 35px;text-align: center;line-height: 35px;border-radius: 50%;color: #fff;font-size: 16px;"></span> + <span style="color: #212121;font-weight: 600;vertical-align: middle;padding-left: 10px;">Search panel<img src="new tag.png" style="max-width:50%; padding-left:10px"> + </span> + </div> + </div> + <div class="col-md-4"> + <div class="sh_icon" style="border: 1px solid #aaa;padding: 20px;margin-bottom: 20px;box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12);"> + <span class="fa fa-circle" style="background-color: #1976d2;width: 35px;height: 35px;text-align: center;line-height: 35px;border-radius: 50%;color: #fff;font-size: 16px;"></span> + <span style="color: #212121;font-weight: 600;vertical-align: middle;padding-left: 10px;">Manage Products<img src="new tag.png" style="max-width:50%; padding-left:10px"> + </span> + </div> + </div> + <div class="col-md-4"> + <div class="sh_icon" style="border: 1px solid #aaa;padding: 20px;margin-bottom: 20px;box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12);"> + <span class="fa fa-circle" style="background-color: #1976d2;width: 35px;height: 35px;text-align: center;line-height: 35px;border-radius: 50%;color: #fff;font-size: 16px;"></span> + <span style="color: #212121;font-weight: 600;vertical-align: middle;padding-left: 10px;">Helpdesk Multiple User<img src="new tag.png" style="max-width:50%; padding-left:10px"> + </span> + </div> + </div> + <div class="col-md-4"> + <div class="sh_icon" style="border: 1px solid #aaa;padding: 20px;margin-bottom: 20px;box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12);"> + <span class="fa fa-circle" style="background-color: #1976d2;width: 35px;height: 35px;text-align: center;line-height: 35px;border-radius: 50%;color: #fff;font-size: 16px;"></span> + <span style="color: #212121;font-weight: 600;vertical-align: middle;padding-left: 10px;">Helpdesk Quick Reply + </span> + </div> + </div> + <div class="col-md-4"> + <div class="sh_icon" style="border: 1px solid #aaa;padding: 20px;margin-bottom: 20px;box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12);"> + <div style="background-color: #1976d2;display: inline-block;border-radius: 50%;"> + <span class="fa fa-tachometer" style="width: 35px;height: 35px;text-align: center;line-height: 32px;border-radius: 50%;color: #fff;font-size: 16px;"></span> + </div> + <span style="color: #212121;font-weight: 600;vertical-align: middle;padding-left: 10px;">Ticket on Portal</span> + </div> + </div> + <div class="col-md-4"> + <div class="sh_icon" style="border: 1px solid #aaa;padding: 20px;margin-bottom: 20px;box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12);"> + <div class="fa fa-puzzle-piece " style="background-color: #1976d2;width: 35px;height: 35px;text-align: center;line-height: 32px;border-radius: 50%;color: #fff;font-size: 16px;"></div> + <span style="color: #212121;font-weight: 600;vertical-align: middle;padding-left: 10px;">Dynamic Stages</span> + </div> + </div> + <div class="col-md-4"> + <div class="sh_icon" style="border: 1px solid #aaa;padding: 20px;margin-bottom: 20px;box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12);"> + <span class="fa fa-address-card-o" style="background-color: #1976d2;width: 35px;height: 35px;text-align: center;line-height: 32px;border-radius: 50%;color: #fff;font-size: 16px;"></span> + <span style="color: #212121;font-weight: 600;vertical-align: middle;padding-left: 8px;">Dynamic Dashboard Table</span> + </div> + </div> + <div class="col-md-4"> + <div class="sh_icon" style="border: 1px solid #aaa;padding: 20px;margin-bottom: 20px;box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12);"> + <span class="fa fa-circle" style="background-color: #1976d2;width: 35px;height: 35px;text-align: center;line-height: 35px;border-radius: 50%;color: #fff;font-size: 16px;"></span> + <span style="color: #212121;font-weight: 600;vertical-align: middle;padding-left: 10px;">Dynamic Dashboard Filter</span> + </div> + </div> + <div class="col-md-4"> + <div class="sh_icon" style="border: 1px solid #aaa;padding: 20px;box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12);"> + <span class="fa fa-check-square " style="background-color: #1976d2;width: 35px;height: 35px;text-align: center;line-height: 35px;border-radius: 50%;color: #fff;font-size: 16px;"></span> + <span style="color: #212121;font-weight: 600;vertical-align: middle;padding-left: 10px;">Reply via E-Mails</span> + </div> + </div> + <div class="col-md-4"> + <div class="sh_icon" style="border: 1px solid #aaa;padding: 20px;box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12);"> + <span class="fa fa-eye-slash" style="background-color: #1976d2;width: 35px;height: 35px;text-align: center;line-height: 35px;border-radius: 50%;color: #fff;font-size: 16px;"></span> + <span style="color: #212121;font-weight: 600;vertical-align: middle;padding-left: 10px;">Customer Feedback</span> + </div> + </div> + <div class="col-md-4"> + <div class="sh_icon" style="border: 1px solid #aaa;padding: 20px;margin-bottom: 20px;box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12);"> + <span class="fa fa-mobile" style="background-color: #1976d2;width: 35px;height: 35px;text-align: center;line-height: 35px;border-radius: 50%;color: #fff;font-size: 20px;"></span> + <span style="color: #212121;font-weight: 600;vertical-align: middle;padding-left: 10px;">PDF Report</span> + </div> + </div> + <div class="col-md-4"> + <div class="sh_icon" style="border: 1px solid #aaa;padding: 20px;margin-bottom: 20px;box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12);"> + <span class="fa fa-cog" style="background-color: #1976d2;width: 35px;height: 35px;text-align: center;line-height: 35px;border-radius: 50%;color: #fff;font-size: 16px;"></span> + <span style="color: #212121;font-weight: 600;vertical-align: middle;padding-left: 10px;">Auto Close Ticket</span> + </div> + </div> + <div class="col-md-4"> + <div class="sh_icon" style="border: 1px solid #aaa;padding: 20px;box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12);"> + <span class="fa fa-pencil-square-o" style="background-color: #1976d2;width: 35px;height: 35px;text-align: center;line-height: 35px;border-radius: 50%;color: #fff;font-size: 16px;"></span> + <span style="color: #212121;font-weight: 600;vertical-align: middle;padding-left: 10px;">Readymade Email Template</span> + </div> + </div> + </div> + </div> + </section> + <section id="sh_features" style="padding: 50px 0px;"> + <div class="container"> + <div class="sh_center text-center" style="margin-bottom: 40px;"> + <h4 style="font-size: 30px;font-weight: 600;color: #212121;margin-bottom: 20px;">Features</h4> + <hr style="width: 100px;border-width: 2px;border-color: #1976d2;" /> + </div> + <ul style="padding: 0;list-style: none;"> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + You can update multiple tickets using "Mass-Action". <span class="badge badge-danger" style="background-color: #f44336 !important; + padding: 5px 14px; + border-radius: 3px; + color: #fff; + font-size: 9px; + text-transform: uppercase; + font-weight: bold; + box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);">New</span> + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + Configuration added to send common quick reply. <span class="badge badge-danger" style="background-color: #f44336 !important; + padding: 5px 14px; + border-radius: 3px; + color: #fff; + font-size: 9px; + text-transform: uppercase; + font-weight: bold; + box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);">New</span> + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + When an inbound email comes then the email subject shows in the form view & kanban view. <span class="badge badge-danger" style="background-color: #f44336 !important; + padding: 5px 14px; + border-radius: 3px; + color: #fff; + font-size: 9px; + text-transform: uppercase; + font-weight: bold; + box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);">New</span> + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + Email notification goes to the assigned user when customers see tickets from the portal. <span class="badge badge-danger" style="background-color: #f44336 !important; + padding: 5px 14px; + border-radius: 3px; + color: #fff; + font-size: 9px; + text-transform: uppercase; + font-weight: bold; + box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);">New</span> + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + You can send helpdesk tickets direct to the customer's WhatsApp. <span class="badge badge-danger" style="background-color: #C62828 !important; + padding: 5px 14px; + border-radius: 3px; + color: #fff; + font-size: 9px; + text-transform: uppercase; + font-weight: bold; + box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);">HOT</span> + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + You can use the helpdesk SLA policy for good customer support. <span class="badge badge-danger" style="background-color: #C62828 !important; + padding: 5px 14px; + border-radius: 3px; + color: #fff; + font-size: 9px; + text-transform: uppercase; + font-weight: bold; + box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);">HOT</span> + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + You can set a helpdesk ticket alarm for different tasks. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + You can edit multiple tickets in the list view. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + Easy to use search panel in the list & kanban view. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + You can manage products in tickets as well you can display products in the ticket PDF report. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + You can assign a single ticket to more than one user. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + In this update you have 'Send Quick Reply Template' feature. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + Easy to enable 'Send Quick Reply' features. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + Easy to create default reply templates for perticular questions. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + Users can see only their own quick replay templates. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + Only that user can see 'Quick Reply' menu if 'Send Quick Reply' group is enable. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + Access rights for Helpdesk Manager, Helpdesk Team Leader, Helpdesk User. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + Easy to create ticket by helpdesk user. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + Easy to define stages as per your requirement. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + Easy to set access right and email templates for perticular stages. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + Easy to set days for auto closing tickets. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + Fully customise and dynamic dashboard. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + Easy to define dynamic filter for dashboard. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + Well organized data in table formate on dashboard. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + Well organized data in table formate on dashboard. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + Well organized calender, pivot, graph, kanban views. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + Customer see ticket status from portal and email links. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + Well organized portal for ticket. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + Easy to group by, search, and create ticket on portal. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + Auto notifies via email to assigned user and customer while the ticket is created. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + Auto share feedback link while ticket is closed. + </li> + <li style="border: 2px solid #aaa;padding: 20px;margin-bottom: 20px;font-size: 16px;color: #212121;font-weight: 600;letter-spacing: 1px;display: block;"><span class="fa fa-hand-o-right" style="color: #1976d2;font-weight: 600;font-size: 18px;padding-right: 10px;"></span> + Easy to chat with customer from chatter. + </li> + </ul> + </div> + </section> +<section id="sh_tab" style="padding-top: 50px;"> + <div class="container"> + <ul class="nav nav-tabs justify-content-center" role="tablist" style="justify-content: center; padding-bottom: 10px; border-bottom: 2px solid #aaa;"> + <li class="nav-item" style="background-color: rgba(25, 118, 210, 0.6); color: #fff; border-radius: 0; font-weight: 600; font-size: 14px; margin: 0 5px;"> + <a class="nav-link active" data-toggle="tab" href="#Setup" style="color: #333; border: 2px solid #1c76d2;">Setup</a> + </li> + <li class="nav-item" style="background-color: rgba(25, 118, 210, 0.6); color: #fff; border-radius: 0; font-weight: 600; font-size: 14px; margin: 0 5px;"> + <a class="nav-link" data-toggle="tab" href="#Release" style="color: #333; border: 2px solid #1c76d2;">Releases</a> + </li> + <li class="nav-item" style="background-color: rgba(25, 118, 210, 0.6); color: #fff; border-radius: 0; font-weight: 600; font-size: 14px; margin: 0 5px;"> + <a class="nav-link" data-toggle="tab" href="#FAQ" style="color: #333; border: 2px solid #1c76d2;">FAQs</a> + </li> + <li class="nav-item" style="background-color: rgba(25, 118, 210, 0.6); color: #fff; border-radius: 0; font-weight: 600; font-size: 14px; margin: 0 5px;"> + <a class="nav-link" data-toggle="tab" href="#Support" style="color: #333; border: 2px solid #1c76d2;">Support</a> + </li> + </ul> + <div class="tab-content" style="margin-top: 30px;"> + <!-- tab 2 --> + <div id="Setup" class="tab-pane active"> + <section id="sh_sub_tab" style="padding-top: 15px;"> + <div class="container"> + <ul class="nav nav-tabs justify-content-center" role="tablist" style="justify-content: center; padding-bottom: 10px; border-bottom: 2px solid #aaa;"> + <li class="nav-item" style="background-color: rgba(25, 118, 210, 0.6); color: #fff; border-radius: 0; font-weight: 600; font-size: 14px; margin: 0 5px;"> + <a class="nav-link active" data-toggle="tab" href="#Backend" style="color: #333; border: 2px solid #1c76d2;">Backend</a> + </li> + <li class="nav-item" style="background-color: rgba(25, 118, 210, 0.6); color: #fff; border-radius: 0; font-weight: 600; font-size: 14px; margin: 0 5px;"> + <a class="nav-link" data-toggle="tab" href="#Portal" style="color: #333; border: 2px solid #1c76d2;">Portal</a> + </li> + <li class="nav-item position-relative" style="background-color: rgba(25, 118, 210, 0.6); color: #fff; border-radius: 0; font-weight: 600; font-size: 14px; margin: 0 5px;"> + <a class="nav-link" data-toggle="tab" href="#updates" style="color: #333; border: 2px solid #1c76d2;">Latest Updates</a> + <img class="position-absolute fixed-top" src="new.png" alt="new_tag_ribbon" style="height: 35px;" /> + </li> + <li class="nav-item position-relative" style="background-color: rgba(25, 118, 210, 0.6); color: #fff; border-radius: 0; font-weight: 600; font-size: 14px; margin: 0 5px;"> + <a class="nav-link" data-toggle="tab" href="#wp" style="color: #333; border: 2px solid #1c76d2;">Helpdesk Whatsapp</a> + <img class="position-absolute fixed-top" src="new.png" alt="new_tag_ribbon" style="height: 35px;" /> + </li> + </ul> + </div> + </section> + <div class="container tab-content" style="margin-top: 30px;"> + <div class="tab-pane active" id="Backend"> + <section id="sh_module_heading" style="padding-top: 50px;"> + <div class="container"> + <div class="sh_center text-center"> + + + <h2 align="center"> + <a style="background-color: #1976d2; color: white; border-color: #1976d2; position: relative; overflow: hidden;padding: 1%;text-decoration: none;border-radius: 0px;display: inline-block;" class="btn btn-success btn-lg" href="https://youtu.be/kEpp1eHiPSs" target="_blank"><span class="o_ripple d-block position-absolute rounded-circle" style="height: 398px; width: 398px; top: -164px; left: -147.891px;"></span>Helpdesk - Stages Configuration Flow<img src="neww.png" style="max-width: 100%;padding-left: 10px;height: 20px;width: auto;vertical-align: text-bottom;" /></a> + </h2> + + + </div> + </div> +</section> <br/> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Access group for "Helpdesk Manager", "Helpdesk Team Leader", "Helpdesk User" + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="0.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Helpdesk Teams menu and list view. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="1.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Helpdesk Teams" form view. Where you can define team member and team leader or set team as default. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="2.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Helpdesk Tickets Type" menu and list view. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="3.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Helpdesk Subject Types" menu and list view. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="4.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Helpdesk Tags" menu and list view. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="5.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Helpdesk Stages" menu and list view. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="6.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Helpdesk Stages" form view. Where you can define stages and it's access rights, E-Mail template, next stage. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="7.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Helpdesk Categories" menu and list view. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="8.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Helpdesk Sub Categories" menu and list view. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="9.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Helpdesk Priorities" menu and list view. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="10.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Helpdesk Setting" View. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="11.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Helpdesk Ticket" Kanban view. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="12.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Helpdesk Ticket" List view. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="13.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Helpdesk Ticket" Pivot view. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="14.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Helpdesk Ticket" Graph view. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="15.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Helpdesk Ticket" Calender view. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="16.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Helpdesk Ticket" Schedule activity view. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="17.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Helpdesk Ticket" form view. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="18.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Helpdesk Ticket" form attachment view. Where you can attach document received from customer. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="19.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + When ticket is created that time customer will notify via email. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="new request.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + When ticket is created that time assign user will notify via email. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="assign user.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + When you click on the 'Reply' button on the form, this wizard will appear where you can set an email template as per reply. In Email, there is one link 'View Ticket', Where customer can see the ticket status. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="20.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + 'Replied Date' added after reply and replied status will change 'Staff Replied'. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="21.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + While ticket is closed, customer will notify via email with feedback link. click on link. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="22.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + After click on link customer will see this view, where customer give feedback with comment. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="feedback portal.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Thank you message after submit feedback. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="thank.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Customer feedback. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="feedback.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Ticket Close" information will added here. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="ticket close.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Chat with customer in chatter. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="24.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Ticket on Portal. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="portal 1.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + List view on portal. You can group by, create and search tickets. You can create a ticket only if you have the + <a href="https://apps.odoo.com/apps/modules/14.0/sh_website_helpdesk/"> + <strong>Website Help Desk</strong> + </a> + module installed. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="portal list options.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Helpdesk Portal ticket in PDF for backend. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="pdf.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + 'Ticket Dashboard' for Helpdesk Manager. Where you can filter data with various filters and see data in well organized table formate. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="Ticket-Dashboard-Odoo.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + 'Ticket Dashboard' for Helpdesk Team Leader. Where leader can see only his team data and filter data with various filters, see data in well organized table formate. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="Leader.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + 'Ticket Dashboard' for Helpdesk User. Where user can see only ticket which is assigned, filter data with date filters and see data in well organized table formate. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="user.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <!-- Send Quick Reply --> + <div class="sh_center text-center"> + <h4 style="font-size: 30px; font-weight: 600; color: #212121; margin-bottom: 20px;">Send Quick Reply</h4> + <hr style="width: 100px; border-width: 2px; border-color: #1976d2;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Goto user config setting, Enable 'Send Quick Reply'. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="quick_reply/1.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + After that you can see the 'Send Quick Reply' menu, sub menu and 'Quick Reply Template' list view. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="quick_reply/2.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + 'Send Quick Reply Mail Template' Form View, Here you can create quick reply template. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="quick_reply/3.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Now go to Setting ==> Technical ==> Template. Open 'Ticket Reply : Send by Email'. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="quick_reply/4.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + In 'Ticket Reply : Send by Email', click on mark point(it will display, if debug mode is on). + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="quick_reply/5.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + After that you will see window like code editor, here you have to past '<div class="predefined"> </div> ' code at mark place in screenshot. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="quick_reply/6.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Now goto helpdesk ticket form view and click on 'Reply'. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="quick_reply/7.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Here select appropriate quick reply template and you can see the reply message in message box. And click on 'Send' Enjoy... + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="quick_reply/8.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <!-- Send Quick Reply --> + <!-- Multi User Backend --> + <div class="sh_center text-center"> + <h4 style="font-size: 30px; font-weight: 600; color: #212121; margin-bottom: 20px;">Multi User</h4> + <hr style="width: 100px; border-width: 2px; border-color: #1976d2;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Goto user config setting, Enable 'Display Multi User'. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="Multi_user/MU1.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + You can select more than one user for each tickets. All assign multi user can see the ticket. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="Multi_user/MU2.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + 'Technical Leader' user can see the ticket. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="Multi_user/MU3.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + 'Technical B' user can see the ticket. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="Multi_user/MU4.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + 'Technical A' user can see the ticket. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="Multi_user/MU5.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + 'Technical C' user can not see the ticket because ticket was not assigned. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="Multi_user/MU6.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="sh_center text-center"> + <h4 style="font-size: 30px; font-weight: 600; color: #212121; margin-bottom: 20px;">Manage Products</h4> + <hr style="width: 100px; border-width: 2px; border-color: #1976d2;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Goto user config setting, Enable 'Manage Products'. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="helpdesk_1.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + You can select products for each ticket. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="helpdesk_2.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Ticket PDF report with the products. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="helpdesk_3.png" style="margin-bottom: 10px;" /> + </div> + <!-- Multi User Backend --> + <!-- conf img --> + </div> + + <div class="tab-pane fade" id="Portal"> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + In User configuration there is access rights for only portal users.(Only visible when portal user true) + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="portal/3p.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Portal Manager" + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="portal/5p.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Portal Leader" + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="portal/6p.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Portal User" + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="portal/7p.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + If you want to set access for the portal customer then, 'Portal Access' leave it blank + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="portal/8p.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Login with Portal Support User and click on "Create". + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="portal/1p.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + This Wizard will popout after click on create. Here Only Portal Manager,Leader, Manager can select partners. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="portal/2p.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Login with 'Portal Customer'. Customer can only create ticket for self only. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="portal/9p.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Login with 'Portal Support Leader'. If the customer exists then all required fields fill automatically. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="portal/11p.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + If any new customer arrived, then create ticket with name and email, it will create new customer in backend. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="portal/12p.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + New customer created and it will automatically added to followers. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="portal/13p.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Created cutomer form view. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="portal/14p.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + In portal you can download ticket in PDF formate also. Just click 'Download'. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="portal pdf 14.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Ticket in PDF formate. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="pdf img.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + </div> + + <div class="tab-pane fade" id="updates"> + <div class="sh_center text-center"> + <h4 style="font-size: 20px; font-weight: 600; color: #212121; margin-bottom: 20px;">v 14.0.14</h4> + + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + You can update multiple tickets using "Mass-Action". You can update assigned to person, stage, assign multi-user & add/remove followers. + + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="mass.gif" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + You can send common quick reply. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="reply.gif" style="width: 100%; margin-bottom: 10px;" /><br/> + </div> + + + + <hr style="border-width: 2px; border-color: #1976d2;" /> + + <div class="sh_center text-center"> + <h4 style="font-size: 20px; font-weight: 600; color: #212121; margin-bottom: 20px;">v 14.0.12</h4> + + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + We were by default adding customers as followers on ticket create, to make this better we have given configuration to on/off these auto-add followers. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="auto_add_follower.gif" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + We have updated the auto-close mechanism based on the last replied date of staff. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="auto_close_ticket.gif" style="width: 100%; margin-bottom: 10px;" /><br/> + <img src="resolved_ticket.gif" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Auto Update Replied Status & Replied Date Based On Customer/Staff Replied To Ticket". + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="reply_status.gif" style="width: 100%; margin-bottom: 10px;" /> + </div> + + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Default search updated with name, customer,multi-user, assigned to user, email, email subject, mobile number fields. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="search_field.gif" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + We have updated the counter tiles click records list. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="dashboard_counter_click.gif" style="width: 100%; margin-bottom: 10px;" /> + </div> + + + <hr style="border-width: 2px; border-color: #1976d2;" /> + + + <div class="sh_center text-center"> + <h4 style="font-size: 20px; font-weight: 600; color: #212121; margin-bottom: 20px;">v 14.0.11</h4> + + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + First, choose a timezone. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="ssn1.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Based on timezone create date and last update date comes. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="ssn2.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Create date and last update date at the portal. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="ssn3.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + When direct/inbound email comes then the email subject shows in the form view. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="ssn4.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + When direct/inbound email comes then the email subject shows in the kanban view. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="ssn5.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Enable "Get email when customer view ticket?". + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="ssn6.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + When customers see tickets from portal then email notification goes to assigned user. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="ssn7.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + + <hr style="border-width: 2px; border-color: #1976d2;" /> + + <div class="sh_center text-center"> + <h4 style="font-size: 30px; font-weight: 600; color: #212121; margin-bottom: 20px;">Helpdesk SLA</h4> + <hr style="width: 100px; border-width: 2px; border-color: #1976d2;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Helpdesk SLA Policy & Helpdesk Ticket Reminder security groups. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="s1.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Go to the configuration => "Helpdesk SLA Policies". + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="s2.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + The "Helpdesk SLA Policy" form view looks like this, you can see SLA tickets from the smart button "SLA Tickets". + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="s3.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "SLA Tickets" form view looks like this. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="s4.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + You can see helpdesk SLA tickets also from the helpdesk ticket types using the smart button "Helpdesk SLA". + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="s5.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "SLA Tickets" form view looks like this. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="s6.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Helpdesk Teams" form view. Where you can define working schedule as well as see helpdesk SLA ticket using the smart button "Helpdesk SLA". + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="s7.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + The search panel in the helpdesk tickets looks like this, you can filter SLA using different filters. + <br /> + Note: Search panel and multi-edit option available in only v13 & v14. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="s8.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + You can edit multiple records from the helpdesk tickets list view. + <br /> + Note: Search panel and multi-edit option available in only v13 & v14. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="s9.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + "Helpdesk Ticket" form view, create a ticket and save it. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="s10.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + The "Helpdesk Ticket" form view with SLA policies. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="s11.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + In the helpdesk ticket form view, you can see SLA deadline, Now we press the "Approve" button. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="s12.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + When press on the "Approve" button and all policies are approved then stage change to "Done". + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="s13.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + You can do helpdesk SLA analysis from the "Reporting" menu. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="s14.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="sh_center text-center"> + <h4 style="font-size: 30px; font-weight: 600; color: #212121; margin-bottom: 20px;">Helpdesk Ticket Alarm</h4> + <hr style="width: 100px; border-width: 2px; border-color: #1976d2;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Enable "Ticket Reminder". + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="s15.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Go to the configuration => "Helpdesk Ticket Alarm". + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="s16.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Helpdesk ticket alarm form view looks like this. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="s17.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Helpdesk ticket alarm form view with the ticket reminder. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="s20.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Helpdesk ticket reminders can run using a cron job. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="s21.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Helpdesk ticket reminders popup looks like this. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="s22.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Helpdesk ticket reminders email looks like this. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="s23.png" style="width: 100%; margin-bottom: 10px;" /><br /> + <br /> + <img src="s24.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + </div> + + <div class="tab-pane fade" id="wp"> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + In "User", enable the "Helpdesk Whatsapp Feature" option. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="w1.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Whatsapp message description with the configuration setting. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="w4.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Set the signature in the message, <br /> + 1) Go to Preferences. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="w2.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + 2) Add Signature. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="w3.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Click "Send By WhatsApp" Button in helpdesk tickets. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="w5.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + Choose recipient, template and edit Message as required and click send by whatsapp. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="w6.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + This is the output shown in the WhatsApp messenger. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="w7.png" style="width: 100%; margin-bottom: 10px;" /><br /> + <img src="w8.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + In helpdesk ticket chatter you can see the message which is sent. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="w9.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + You can send a Whatsapp message direct from the dashboard. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="w10.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + After that one wizard opens, select details and press "Send". + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="w11.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + This is the output shown in the WhatsApp messenger. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="w12.png" style="width: 100%; margin-bottom: 10px;" /><br /> + <img src="w13.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + When you click "Send By WhatsApp" Button in helpdesk tickets, this wizard opens choose details and if you click send then mail is sent.<br /> + + If you click send by WhatsApp it sends the message on WhatsApp. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="w14.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + <div class="confi_img" style="text-align: center;"> + <p style="color: #1976d2; font-size: 18px; margin-bottom: 10px; letter-spacing: 1px;"> + The sent email looks like this. + </p> + <hr style="width: 100px; border-width: 2px; border-color: #d3d3d3;" /> + <img src="w15.png" style="width: 100%; margin-bottom: 10px;" /><br /> + <img src="w16.png" style="width: 100%; margin-bottom: 10px;" /> + </div> + </div> + </div> + </div> + + <div id="Release" class="tab-pane fade"> + <div class="sh_content" style="border: 2px solid #aaa; padding: 20px; margin-bottom: 20px;"> + <h4 style="font-size: 16px; margin: 0; color: #212121; text-decoration: none; font-weight: 600; letter-spacing: 1px; display: block;"> + <span class="fa fa-hand-o-right" style="color: #1976d2; font-weight: 600; font-size: 18px; padding-right: 10px;"></span> <span>Version 14.0.14</span> | <span style="color: #1976d2;">Released on : 24 July 2021</span> + </h4> + <ul class="list-unstyled" style="list-style-type: disc; font-size: 16px; padding-left: 20px; color: #555; margin: 0; padding-top: 20px;"> + + <li> + <span class="badge badge-success" style="background-color: #43a047 !important; padding: 5px 17px; border-radius: 3px;color: #fff;font-size: 9px;text-transform: uppercase;font-weight: bold;box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);">New</span> Update mass ticket using "Multi Action". + </li> + <li> + <span class="badge badge-success" style="background-color: #43a047 !important; padding: 5px 17px; border-radius: 3px;color: #fff;font-size: 9px;text-transform: uppercase;font-weight: bold;box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);">New</span> Configuration added to send common quick reply. + </li> + + </ul> + </div> + <div class="sh_content" style="border:2px solid #aaa; padding:20px; margin-bottom:20px"> + + <h4 style="font-size:16px; margin:0; color:#212121; text-decoration:none; font-weight:600; letter-spacing:1px; display:block"><span class="fa fa-hand-o-right" style="color:#1976d2; font-weight:600; font-size:18px; padding-right:10px"></span> <span>Version 14.0.13</span> | <span style="color:#1976d2">Released on : 20 July 2021</span></h4> + <ul style="font-size:16px; padding-left:20px; color:#555; margin:0; padding-top:20px"> + <li> + <span class="badge badge-warning" style="background: #FF9800; +padding: 5px 10px; +border-radius: 3px; +color: #fff; +font-size: 9px; +text-transform: uppercase; +font-weight: bold; +box-shadow: 0 1px 3px rgba(0,0,0,0.12), 0 1px 2px rgba(0,0,0,0.24);">Update</span> Close Ticket From Scheduler Updated. + </li> + </ul> + </div> + <div class="sh_content" style="border: 2px solid #aaa; padding: 20px; margin-bottom: 20px;"> + <h4 style="font-size: 16px; margin: 0; color: #212121; text-decoration: none; font-weight: 600; letter-spacing: 1px; display: block;"> + <span class="fa fa-hand-o-right" style="color: #1976d2; font-weight: 600; font-size: 18px; padding-right: 10px;"></span> <span>Version 14.0.12</span> | <span style="color: #1976d2;">Released on : 16 July 2021</span> + </h4> + <ul class="list-unstyled" style="list-style-type: disc; font-size: 16px; padding-left: 20px; color: #555; margin: 0; padding-top: 20px;"> + <li> + <span class="badge badge-warning" style="background: #ff9800;padding: 5px 10px;border-radius: 3px;color: #fff;font-size: 9px;text-transform: uppercase;font-weight: bold;box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);">Update</span> Default search updated with name, customer,multi-user, assigned to user,email, email subject, mobile number fields. + </li> + <li> + <span class="badge badge-warning" style="background: #ff9800;padding: 5px 10px;border-radius: 3px;color: #fff;font-size: 9px;text-transform: uppercase;font-weight: bold;box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);">Update</span> Auto add follower configuration is added for a customer when creating a ticket. + </li> + + <li> + <span class="badge badge-success" style="background-color: #43a047 !important; padding: 5px 17px; border-radius: 3px;color: #fff;font-size: 9px;text-transform: uppercase;font-weight: bold;box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);">New</span> We have updated the counter tiles click records list. + </li> + <li> + <span class="badge badge-warning" style="background: #ff9800;padding: 5px 10px;border-radius: 3px;color: #fff;font-size: 9px;text-transform: uppercase;font-weight: bold;box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);">Update</span> Auto Change Replied Status Based On Customer/Staff Replied. + </li> + <li> + <span class="badge badge-warning" style="background: #ff9800;padding: 5px 10px;border-radius: 3px;color: #fff;font-size: 9px;text-transform: uppercase;font-weight: bold;box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);">Update</span> Updated auto close mechanism based on last replied date of staff. + </li> + + </ul> + </div> + <div class="sh_content" style="border: 2px solid #aaa; padding: 20px; margin-bottom: 20px;"> + <h4 style="font-size: 16px; margin: 0; color: #212121; text-decoration: none; font-weight: 600; letter-spacing: 1px; display: block;"> + <span class="fa fa-hand-o-right" style="color: #1976d2; font-weight: 600; font-size: 18px; padding-right: 10px;"></span> <span>Version 14.0.11</span> | <span style="color: #1976d2;">Released on : 5 July 2021</span> + </h4> + <ul class="list-unstyled" style="list-style-type: disc; font-size: 16px; padding-left: 20px; color: #555; margin: 0; padding-top: 20px;"> + + <li> + <span class="badge badge-success" style="background-color: #43a047 !important; padding: 5px 17px; border-radius: 3px;color: #fff;font-size: 9px;text-transform: uppercase;font-weight: bold;box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);">New</span> When direct/inbound email comes then the email subject shows in the form view & kanban view. + </li> + <li> + <span class="badge badge-success" style="background-color: #43a047 !important; padding: 5px 17px; border-radius: 3px;color: #fff;font-size: 9px;text-transform: uppercase;font-weight: bold;box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);">New</span> When customers see tickets from portal then email notification goes to assigned user configurations added. + </li> + <li> + <span class="badge badge-success" style="background-color: #43a047 !important; padding: 5px 17px; border-radius: 3px;color: #fff;font-size: 9px;text-transform: uppercase;font-weight: bold;box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);">New</span> Timezone wise create date and last update date shows in the portal form. + </li> + </ul> + </div> + <div class="sh_content" style="border: 2px solid #aaa; padding: 20px; margin-bottom: 20px;"> + <h4 style="font-size: 16px; margin: 0; color: #212121; text-decoration: none; font-weight: 600; letter-spacing: 1px; display: block;"> + <span class="fa fa-hand-o-right" style="color: #1976d2; font-weight: 600; font-size: 18px; padding-right: 10px;"></span> <span>Version 14.0.10</span> | <span style="color: #1976d2;">Released on : 4 June 2021</span> + </h4> + <ul class="list-unstyled" style="list-style-type: disc; font-size: 16px; padding-left: 20px; color: #555; margin: 0; padding-top: 20px;"> + <li> + <span + class="badge badge-success" + style=" + background-color: #43a047 !important; + padding: 5px 17px; + border-radius: 3px; + color: #fff; + font-size: 9px; + text-transform: uppercase; + font-weight: bold; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); + " + > + New + </span> + Helpdesk Whatsapp Feature Added. + </li> + </ul> + </div> + <div class="sh_content" style="border: 2px solid #aaa; padding: 20px; margin-bottom: 20px;"> + <h4 style="font-size: 16px; margin: 0; color: #212121; text-decoration: none; font-weight: 600; letter-spacing: 1px; display: block;"> + <span class="fa fa-hand-o-right" style="color: #1976d2; font-weight: 600; font-size: 18px; padding-right: 10px;"></span> <span>Version 14.0.9</span> | <span style="color: #1976d2;">Released on : 29 May 2021</span> + </h4> + <ul class="list-unstyled" style="list-style-type: disc; font-size: 16px; padding-left: 20px; color: #555; margin: 0; padding-top: 20px;"> + <li> + <span + class="badge badge-success" + style=" + background-color: #43a047 !important; + padding: 5px 17px; + border-radius: 3px; + color: #fff; + font-size: 9px; + text-transform: uppercase; + font-weight: bold; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); + " + > + New + </span> + Helpdesk SLA Policy Added. + </li> + <li> + <span + class="badge badge-success" + style=" + background-color: #43a047 !important; + padding: 5px 17px; + border-radius: 3px; + color: #fff; + font-size: 9px; + text-transform: uppercase; + font-weight: bold; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); + " + > + New + </span> + Helpdesk Ticket Reminder Added. + </li> + <li> + <span + class="badge badge-success" + style=" + background-color: #43a047 !important; + padding: 5px 17px; + border-radius: 3px; + color: #fff; + font-size: 9px; + text-transform: uppercase; + font-weight: bold; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); + " + > + New + </span> + Multiple edit records added in ticket list view. + </li> + <li> + <span + class="badge badge-success" + style=" + background-color: #43a047 !important; + padding: 5px 17px; + border-radius: 3px; + color: #fff; + font-size: 9px; + text-transform: uppercase; + font-weight: bold; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); + " + > + New + </span> + Search panel is added in ticket list & kanban view. + </li> + </ul> + </div> + <div class="sh_content" style="border: 2px solid #aaa; padding: 20px; margin-bottom: 20px;"> + <h4 style="font-size: 16px; margin: 0; color: #212121; text-decoration: none; font-weight: 600; letter-spacing: 1px; display: block;"> + <span class="fa fa-hand-o-right" style="color: #1976d2; font-weight: 600; font-size: 18px; padding-right: 10px;"></span> <span>Version 14.0.8</span> | <span style="color: #1976d2;">Released on : 4 May 2021</span> + </h4> + <ul class="list-unstyled" style="list-style-type: disc; font-size: 16px; padding-left: 20px; color: #555; margin: 0; padding-top: 20px;"> + <li> + <span + class="badge badge-info" + style=" + background: #2196f3; + padding: 5px 15px; + border-radius: 3px; + color: #fff; + font-size: 9px; + text-transform: uppercase; + font-weight: bold; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); + " + > + Fixed + </span> + Minor Bug Fixed. + </li> + </ul> + </div> + <div class="sh_content" style="border: 2px solid #aaa; padding: 20px; margin-bottom: 20px;"> + <h4 style="font-size: 16px; margin: 0; color: #212121; text-decoration: none; font-weight: 600; letter-spacing: 1px; display: block;"> + <span class="fa fa-hand-o-right" style="color: #1976d2; font-weight: 600; font-size: 18px; padding-right: 10px;"></span> <span>Version 14.0.7</span> | <span style="color: #1976d2;">Released on : 30 March 2021</span> + </h4> + <ul class="list-unstyled" style="list-style-type: disc; font-size: 16px; padding-left: 20px; color: #555; margin: 0; padding-top: 20px;"> + <li> + <span + class="badge badge-success" + style=" + background-color: #43a047 !important; + padding: 5px 17px; + border-radius: 3px; + color: #fff; + font-size: 9px; + text-transform: uppercase; + font-weight: bold; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); + " + > + New + </span> + Manage Products Added. + </li> + </ul> + </div> + <div class="sh_content" style="border: 2px solid #aaa; padding: 20px; margin-bottom: 20px;"> + <h4 style="font-size: 16px; margin: 0; color: #212121; text-decoration: none; font-weight: 600; letter-spacing: 1px; display: block;"> + <span class="fa fa-hand-o-right" style="color: #1976d2; font-weight: 600; font-size: 18px; padding-right: 10px;"></span> <span>Version 14.0.6</span> | + <span style="color: #1976d2;">Released on : 4 February 2021</span> + </h4> + <ul class="list-unstyled" style="list-style-type: disc; font-size: 16px; padding-left: 20px; color: #555; margin: 0; padding-top: 20px;"> + <li> + <span + class="badge badge-success" + style=" + background-color: #43a047 !important; + padding: 5px 17px; + border-radius: 3px; + color: #fff; + font-size: 9px; + text-transform: uppercase; + font-weight: bold; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); + " + > + New + </span> + Multi User Added. + </li> + </ul> + </div> + <div class="sh_content" style="border: 2px solid #aaa; padding: 20px; margin-bottom: 20px;"> + <h4 style="font-size: 16px; margin: 0; color: #212121; text-decoration: none; font-weight: 600; letter-spacing: 1px; display: block;"> + <span class="fa fa-hand-o-right" style="color: #1976d2; font-weight: 600; font-size: 18px; padding-right: 10px;"></span> <span>Version 14.0.5</span> | + <span style="color: #1976d2;">Released on : 1 February 2021</span> + </h4> + <ul class="list-unstyled" style="list-style-type: disc; font-size: 16px; padding-left: 20px; color: #555; margin: 0; padding-top: 20px;"> + <li> + <span + class="badge badge-warning" + style=" + background: #ff9800; + padding: 5px 10px; + border-radius: 3px; + color: #fff; + font-size: 9px; + text-transform: uppercase; + font-weight: bold; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); + " + > + Update + </span> + Quick Reply Templates. + </li> + </ul> + </div> + <div class="sh_content" style="border: 2px solid #aaa; padding: 20px; margin-bottom: 20px;"> + <h4 style="font-size: 16px; margin: 0; color: #212121; text-decoration: none; font-weight: 600; letter-spacing: 1px; display: block;"> + <span class="fa fa-hand-o-right" style="color: #1976d2; font-weight: 600; font-size: 18px; padding-right: 10px;"></span> <span>Version 14.0.4</span> | + <span style="color: #1976d2;">Released on : 1 December 2020</span> + </h4> + <ul class="list-unstyled" style="list-style-type: disc; font-size: 16px; padding-left: 20px; color: #555; margin: 0; padding-top: 20px;"> + <li> + <span + class="badge badge-warning" + style=" + background: #ff9800; + padding: 5px 10px; + border-radius: 3px; + color: #fff; + font-size: 9px; + text-transform: uppercase; + font-weight: bold; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); + " + > + Update + </span> + Make Separate Portal Access Rights. + </li> + </ul> + </div> + <div class="sh_content" style="border: 2px solid #aaa; padding: 20px; margin-bottom: 20px;"> + <h4 style="font-size: 16px; margin: 0; color: #212121; text-decoration: none; font-weight: 600; letter-spacing: 1px; display: block;"> + <span class="fa fa-hand-o-right" style="color: #1976d2; font-weight: 600; font-size: 18px; padding-right: 10px;"></span> <span>Version 14.0.3</span> | + <span style="color: #1976d2;">Released on : 1 December 2020</span> + </h4> + <ul class="list-unstyled" style="list-style-type: disc; font-size: 16px; padding-left: 20px; color: #555; margin: 0; padding-top: 20px;"> + <li> + <span + class="badge badge-info" + style=" + background: #2196f3; + padding: 5px 15px; + border-radius: 3px; + color: #fff; + font-size: 9px; + text-transform: uppercase; + font-weight: bold; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); + " + > + Fixed + </span> + Portal Side Domain Related Issue Fixed. + </li> + <li> + <span + class="badge badge-warning" + style=" + background: #ff9800; + padding: 5px 10px; + border-radius: 3px; + color: #fff; + font-size: 9px; + text-transform: uppercase; + font-weight: bold; + box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24); + " + > + Update + </span> + Dashboard Responsive View Updated. + </li> + </ul> + </div> + <div class="sh_content" style="border: 2px solid #aaa; padding: 20px; margin-bottom: 20px;"> + <h4 style="font-size: 16px; margin: 0; color: #212121; text-decoration: none; font-weight: 600; letter-spacing: 1px; display: block;"> + <span class="fa fa-hand-o-right" style="color: #1976d2; font-weight: 600; font-size: 18px; padding-right: 10px;"></span> <span>Version 14.0.2</span> | + <span style="color: #1976d2;">Released on : 24 November 2020</span> + </h4> + <ul class="list-unstyled" style="list-style-type: disc; font-size: 16px; padding-left: 20px; color: #555; margin: 0; padding-top: 20px;"> + <li>Mail Template Error Fix.</li> + </ul> + </div> + <div class="sh_content" style="border: 2px solid #aaa; padding: 20px; margin-bottom: 20px;"> + <h4 style="font-size: 16px; margin: 0; color: #212121; text-decoration: none; font-weight: 600; letter-spacing: 1px; display: block;"> + <span class="fa fa-hand-o-right" style="color: #1976d2; font-weight: 600; font-size: 18px; padding-right: 10px;"></span> <span>Version 14.0.1</span> | + <span style="color: #1976d2;">Released on : 13 October 2020</span> + </h4> + <ul class="list-unstyled" style="list-style-type: disc; font-size: 16px; padding-left: 20px; color: #555; margin: 0; padding-top: 20px;"> + <li>Initial Release.</li> + </ul> + </div> + </div> + + <div id="FAQ" class="tab-pane fade"> + <div class="demo"> + <div class="panel-group" id="accordion" role="tablist"> + <div class="panel panel-default" style="border: 2px solid #aaa; padding: 20px; margin-bottom: 20px;"> + <div class="panel-heading" role="tab" id="headingOne" style="border: 0; padding: 0;"> + <h4 class="panel-title" style="margin: 0;"> + <a + role="button" + data-toggle="collapse" + data-parent="#accordion" + href="#collapseOne" + aria-expanded="true" + aria-controls="collapseOne" + style="font-size: 16px; margin: 0; color: #212121; text-decoration: none; font-weight: 600; letter-spacing: 1px; display: flex;" + > + <span class="fa fa-hand-o-right" style="color: #1976d2; font-weight: 600; font-size: 18px; padding-right: 10px;"></span> + Is this app compatible with Odoo Community as well as Enterprise? + <!-- <span class="fa fa-plus" style="float: right;background-color: #1976d2;width: 35px;height: 35px;text-align: center;line-height: 35px;color: #fff;border-radius: 50%;margin-top: -8px;"></span> --> + </a> + </h4> + </div> + <div id="collapseOne1" class="panel-collapse collapse show" role="tabpanel" aria-labelledby="headingOne"> + <div class="panel-body" style="padding-top: 20px;"> + <ul style="list-style-type: disc; font-size: 16px; padding-left: 30px; color: #555; margin: 0;"> + <li style="margin-bottom: 5px;">Yes, this app works perfectly with Odoo Enterprise as well as Community.</li> + </ul> + </div> + </div> + </div> + <div class="panel panel-default" style="border: 2px solid #aaa; padding: 20px; margin-bottom: 20px;"> + <div class="panel-heading" role="tab" id="headingThree" style="border: 0; padding: 0;"> + <h4 class="panel-title" style="margin: 0;"> + <a + class="collapsed" + role="button" + data-toggle="collapse" + data-parent="#accordion" + href="#collapseThree" + aria-expanded="false" + aria-controls="collapseThree" + style="font-size: 16px; margin: 0; color: #212121; text-decoration: none; font-weight: 600; letter-spacing: 1px; display: flex;" + > + <span class="fa fa-hand-o-right" style="color: #1976d2; font-weight: 600; font-size: 18px; padding-right: 10px;"></span> + I want to some customization in this app. How can I request it? + <!-- <span class="fa fa-plus" style="float: right;background-color: #1976d2;width: 35px;height: 35px;text-align: center;line-height: 35px;color: #fff;border-radius: 50%;margin-top: -8px;"></span> --> + </a> + </h4> + </div> + <div id="collapseThree3" class="panel-collapse collapse show" role="tabpanel" aria-labelledby="headingThree"> + <div class="panel-body" style="padding-top: 20px;"> + <ul style="list-style-type: disc; font-size: 16px; padding-left: 30px; color: #555; margin: 0;"> + <li style="margin-bottom: 5px;"> + Please Contact Us at <a href="mailto:sales@softhealer.com" style="color: #007bff; font-weight: 600; text-decoration: none;">sales@softhealer.com</a>to request customization. + </li> + </ul> + </div> + </div> + </div> + <div class="panel panel-default" style="border: 2px solid #aaa; padding: 20px; margin-bottom: 20px;"> + <div class="panel-heading" role="tab" id="headingThree" style="border: 0; padding: 0;"> + <h4 class="panel-title" style="margin: 0;"> + <a + class="collapsed" + role="button" + data-toggle="collapse" + data-parent="#accordion" + href="#collapseThree" + aria-expanded="false" + aria-controls="collapseThree" + style="font-size: 16px; margin: 0; color: #212121; text-decoration: none; font-weight: 600; letter-spacing: 1px; display: flex;" + > + <span class="fa fa-hand-o-right" style="color: #1976d2; font-weight: 600; font-size: 18px; padding-right: 10px;"></span> + Do i get free support? + </a> + </h4> + </div> + <div id="collapseThree3" class="panel-collapse collapse show" role="tabpanel" aria-labelledby="headingThree"> + <div class="panel-body" style="padding-top: 20px;"> + <ul style="list-style-type: disc; font-size: 16px; padding-left: 30px; color: #555; margin: 0;"> + <li style="margin-bottom: 5px;">Yes, we provide free support for 90 days.</li> + </ul> + </div> + </div> + </div> + </div> + </div> + </div> + + <div id="Support" class="tab-pane fade"> + <div class="row"> + <div class="col-md"> + <div class="sh_content" style="border: 2px solid #aaa; padding: 20px; margin-bottom: 20px;"> + <h4> + <a href="mailto:support@softhealer.com" style="text-decoration: none; color: #212121; font-size: 18px; font-weight: 600; letter-spacing: 1px;"> + <span class="fa fa-envelope" style="color: #1976d2; padding-right: 10px; font-size: 20px;"></span> Please mail us for support on <b style="color: #1976d2;">support@softhealer.com</b> + </a> + </h4> + + </div> + </div> + + </div> + </div> + </div> + </div> +</section> + + <!--Multi Language --> + <section id="sh_multi_language" style="margin: 50px 0;"> + <div class="container"> + <div class="sh_center text-center"> + <h4 style="font-size: 30px;font-weight: 600;color: #212121;margin-bottom: 20px;">Multi-Languages</h4> + <hr style="width: 100px;border-width: 2px;border-color: #1976d2;" /> + We have added predefined some languages(English, German / Deutsch, Arabic, Spanish / Español) in module, If you want to add other language you can contact us on <a href="mailto:support@softhealer.com">support@softhealer.com</a>. We use google translator tools for multi-languages so possible translations can be not accurate. we accept suggest to make more accurate translations also on <a href="mailto:support@softhealer.com">support@softhealer.com</a>. + <br/><br/> + </div> + <div class="row"> + <div class="col-lg-12 col-md-12 col-sm-12 col-12"> + <div class="img" style="text-align: center;"> + <img src="eng.png" title="English" alt="english" style="object-fit: cover;margin: 10px 10px;" /> + <img src="german.png" title="Germany" alt="germany" style="object-fit: cover;margin: 10px 10px;" /> + <img src="aarab.png" title="Arab" alt="arab" style="object-fit: cover;margin: 10px 10px;" /> + <img src="spanish.jpg" title="Spanish" alt="spanish" style="object-fit: cover;margin: 10px 10px;" /> + </div> + </div> + </div> + </div> + </section> + <section id="sh_like_module" style="margin: 50px 0;"> + <div class="container"> + <div class="sh_center text-center"> + <h4 style="font-size: 30px;font-weight: 600;color: #212121;margin-bottom: 20px;">You May Also Like</h4> + <hr style="width: 100px;border-width: 2px;border-color: #1976d2;" /> + </div> + <!-- Indicators --> + <!-- Content --> + <div class="carousel-inner"> + <!-- #01 --> + <div class="row"> + <div class="col-md-4"> + <div class="sh_content" style="text-align: center;border: 1px solid #aaa;box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12);"> + <div class="sh_img" style="padding: 10px;border-bottom: 1px solid #aaa;"> + <a href="https://www.odoo.com/apps/modules/13.0/hr_employee_medical/"> + <img src="image1.png" style="width: 100%;height: 200px;object-fit: contain;"></img> + </a> + </div> + <h4 style="font-size: 20px;font-weight: 600;color: #212121;padding: 10px;margin: 0;"> Employee Medical Examination + </h4> + </div> + </div> + <div class="col-md-4"> + <div class="sh_content" style="text-align: center;border: 1px solid #aaa;box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12);"> + <div class="sh_img" style="padding: 10px;border-bottom: 1px solid #aaa;"> + <a href="https://www.odoo.com/apps/modules/13.0/sh_certificate/"> + <img src="image2.png" style="width: 100%;height: 200px;object-fit: contain;"></img> + </a> + </div> + <h4 style="font-size: 20px;font-weight: 600;color: #212121;padding: 10px;margin: 0;"> Certificates and Letters + </h4> + </div> + </div> + <div class="col-md-4"> + <div class="sh_content" style="text-align: center;border: 1px solid #aaa;box-shadow: 0 2px 5px 0 rgba(0,0,0,0.16), 0 2px 10px 0 rgba(0,0,0,0.12);"> + <div class="sh_img" style="padding: 10px;border-bottom: 1px solid #aaa;"> + <a href="https://www.odoo.com/apps/modules/13.0/sh_event_seat_booking/"> + <img src="image3.png" style="width: 100%;height: 200px;object-fit: contain;"></img> + </a> + </div> + <h4 style="font-size: 20px;font-weight: 600;color: #212121;padding: 10px;margin: 0;"> Event Seat Booking + </h4> + </div> + </div> + </div> + <!-- Controls --> + </div> + </div> + </section> + </body> +</html>
\ No newline at end of file diff --git a/sh_helpdesk/static/description/like_1.png b/sh_helpdesk/static/description/like_1.png Binary files differnew file mode 100644 index 0000000..b668d6b --- /dev/null +++ b/sh_helpdesk/static/description/like_1.png diff --git a/sh_helpdesk/static/description/like_2.png b/sh_helpdesk/static/description/like_2.png Binary files differnew file mode 100644 index 0000000..6fa1167 --- /dev/null +++ b/sh_helpdesk/static/description/like_2.png diff --git a/sh_helpdesk/static/description/like_3.png b/sh_helpdesk/static/description/like_3.png Binary files differnew file mode 100644 index 0000000..86b2318 --- /dev/null +++ b/sh_helpdesk/static/description/like_3.png diff --git a/sh_helpdesk/static/description/mass.gif b/sh_helpdesk/static/description/mass.gif Binary files differnew file mode 100644 index 0000000..55b2be0 --- /dev/null +++ b/sh_helpdesk/static/description/mass.gif diff --git a/sh_helpdesk/static/description/new request.png b/sh_helpdesk/static/description/new request.png Binary files differnew file mode 100644 index 0000000..6dd183d --- /dev/null +++ b/sh_helpdesk/static/description/new request.png diff --git a/sh_helpdesk/static/description/new tag.png b/sh_helpdesk/static/description/new tag.png Binary files differnew file mode 100644 index 0000000..2783b91 --- /dev/null +++ b/sh_helpdesk/static/description/new tag.png diff --git a/sh_helpdesk/static/description/new.png b/sh_helpdesk/static/description/new.png Binary files differnew file mode 100644 index 0000000..a4ed7f2 --- /dev/null +++ b/sh_helpdesk/static/description/new.png diff --git a/sh_helpdesk/static/description/neww.png b/sh_helpdesk/static/description/neww.png Binary files differnew file mode 100644 index 0000000..893150c --- /dev/null +++ b/sh_helpdesk/static/description/neww.png diff --git a/sh_helpdesk/static/description/pdf img.png b/sh_helpdesk/static/description/pdf img.png Binary files differnew file mode 100644 index 0000000..6287b8b --- /dev/null +++ b/sh_helpdesk/static/description/pdf img.png diff --git a/sh_helpdesk/static/description/pdf.png b/sh_helpdesk/static/description/pdf.png Binary files differnew file mode 100644 index 0000000..26d7ec6 --- /dev/null +++ b/sh_helpdesk/static/description/pdf.png diff --git a/sh_helpdesk/static/description/portal 1.png b/sh_helpdesk/static/description/portal 1.png Binary files differnew file mode 100644 index 0000000..be0fe6b --- /dev/null +++ b/sh_helpdesk/static/description/portal 1.png diff --git a/sh_helpdesk/static/description/portal form.png b/sh_helpdesk/static/description/portal form.png Binary files differnew file mode 100644 index 0000000..159fd23 --- /dev/null +++ b/sh_helpdesk/static/description/portal form.png diff --git a/sh_helpdesk/static/description/portal list options.png b/sh_helpdesk/static/description/portal list options.png Binary files differnew file mode 100644 index 0000000..6436f7e --- /dev/null +++ b/sh_helpdesk/static/description/portal list options.png diff --git a/sh_helpdesk/static/description/portal pdf 14.png b/sh_helpdesk/static/description/portal pdf 14.png Binary files differnew file mode 100644 index 0000000..d671d3b --- /dev/null +++ b/sh_helpdesk/static/description/portal pdf 14.png diff --git a/sh_helpdesk/static/description/portal pdf.png b/sh_helpdesk/static/description/portal pdf.png Binary files differnew file mode 100644 index 0000000..b0822be --- /dev/null +++ b/sh_helpdesk/static/description/portal pdf.png diff --git a/sh_helpdesk/static/description/portal/10p.png b/sh_helpdesk/static/description/portal/10p.png Binary files differnew file mode 100644 index 0000000..5289d7d --- /dev/null +++ b/sh_helpdesk/static/description/portal/10p.png diff --git a/sh_helpdesk/static/description/portal/11p.png b/sh_helpdesk/static/description/portal/11p.png Binary files differnew file mode 100644 index 0000000..355f454 --- /dev/null +++ b/sh_helpdesk/static/description/portal/11p.png diff --git a/sh_helpdesk/static/description/portal/12p.png b/sh_helpdesk/static/description/portal/12p.png Binary files differnew file mode 100644 index 0000000..31c794e --- /dev/null +++ b/sh_helpdesk/static/description/portal/12p.png diff --git a/sh_helpdesk/static/description/portal/13p.png b/sh_helpdesk/static/description/portal/13p.png Binary files differnew file mode 100644 index 0000000..b166b42 --- /dev/null +++ b/sh_helpdesk/static/description/portal/13p.png diff --git a/sh_helpdesk/static/description/portal/14p.png b/sh_helpdesk/static/description/portal/14p.png Binary files differnew file mode 100644 index 0000000..961012b --- /dev/null +++ b/sh_helpdesk/static/description/portal/14p.png diff --git a/sh_helpdesk/static/description/portal/1p.png b/sh_helpdesk/static/description/portal/1p.png Binary files differnew file mode 100644 index 0000000..cabb21c --- /dev/null +++ b/sh_helpdesk/static/description/portal/1p.png diff --git a/sh_helpdesk/static/description/portal/2p.png b/sh_helpdesk/static/description/portal/2p.png Binary files differnew file mode 100644 index 0000000..c3828f4 --- /dev/null +++ b/sh_helpdesk/static/description/portal/2p.png diff --git a/sh_helpdesk/static/description/portal/3p.png b/sh_helpdesk/static/description/portal/3p.png Binary files differnew file mode 100644 index 0000000..3829c71 --- /dev/null +++ b/sh_helpdesk/static/description/portal/3p.png diff --git a/sh_helpdesk/static/description/portal/4p.png b/sh_helpdesk/static/description/portal/4p.png Binary files differnew file mode 100644 index 0000000..b01606f --- /dev/null +++ b/sh_helpdesk/static/description/portal/4p.png diff --git a/sh_helpdesk/static/description/portal/5p.png b/sh_helpdesk/static/description/portal/5p.png Binary files differnew file mode 100644 index 0000000..de82294 --- /dev/null +++ b/sh_helpdesk/static/description/portal/5p.png diff --git a/sh_helpdesk/static/description/portal/6p.png b/sh_helpdesk/static/description/portal/6p.png Binary files differnew file mode 100644 index 0000000..bdb1a82 --- /dev/null +++ b/sh_helpdesk/static/description/portal/6p.png diff --git a/sh_helpdesk/static/description/portal/7p.png b/sh_helpdesk/static/description/portal/7p.png Binary files differnew file mode 100644 index 0000000..f14bbf3 --- /dev/null +++ b/sh_helpdesk/static/description/portal/7p.png diff --git a/sh_helpdesk/static/description/portal/8p.png b/sh_helpdesk/static/description/portal/8p.png Binary files differnew file mode 100644 index 0000000..eee71cd --- /dev/null +++ b/sh_helpdesk/static/description/portal/8p.png diff --git a/sh_helpdesk/static/description/portal/9p.png b/sh_helpdesk/static/description/portal/9p.png Binary files differnew file mode 100644 index 0000000..a2dbfa6 --- /dev/null +++ b/sh_helpdesk/static/description/portal/9p.png diff --git a/sh_helpdesk/static/description/quick_reply/0.png b/sh_helpdesk/static/description/quick_reply/0.png Binary files differnew file mode 100644 index 0000000..90b4766 --- /dev/null +++ b/sh_helpdesk/static/description/quick_reply/0.png diff --git a/sh_helpdesk/static/description/quick_reply/1.png b/sh_helpdesk/static/description/quick_reply/1.png Binary files differnew file mode 100644 index 0000000..115dcb3 --- /dev/null +++ b/sh_helpdesk/static/description/quick_reply/1.png diff --git a/sh_helpdesk/static/description/quick_reply/10.png b/sh_helpdesk/static/description/quick_reply/10.png Binary files differnew file mode 100644 index 0000000..e07df42 --- /dev/null +++ b/sh_helpdesk/static/description/quick_reply/10.png diff --git a/sh_helpdesk/static/description/quick_reply/11.png b/sh_helpdesk/static/description/quick_reply/11.png Binary files differnew file mode 100644 index 0000000..c0bf5cd --- /dev/null +++ b/sh_helpdesk/static/description/quick_reply/11.png diff --git a/sh_helpdesk/static/description/quick_reply/2.png b/sh_helpdesk/static/description/quick_reply/2.png Binary files differnew file mode 100644 index 0000000..56eb891 --- /dev/null +++ b/sh_helpdesk/static/description/quick_reply/2.png diff --git a/sh_helpdesk/static/description/quick_reply/3.png b/sh_helpdesk/static/description/quick_reply/3.png Binary files differnew file mode 100644 index 0000000..bf710d6 --- /dev/null +++ b/sh_helpdesk/static/description/quick_reply/3.png diff --git a/sh_helpdesk/static/description/quick_reply/4.png b/sh_helpdesk/static/description/quick_reply/4.png Binary files differnew file mode 100644 index 0000000..8ec1d3f --- /dev/null +++ b/sh_helpdesk/static/description/quick_reply/4.png diff --git a/sh_helpdesk/static/description/quick_reply/5.png b/sh_helpdesk/static/description/quick_reply/5.png Binary files differnew file mode 100644 index 0000000..a41df80 --- /dev/null +++ b/sh_helpdesk/static/description/quick_reply/5.png diff --git a/sh_helpdesk/static/description/quick_reply/6.png b/sh_helpdesk/static/description/quick_reply/6.png Binary files differnew file mode 100644 index 0000000..2528933 --- /dev/null +++ b/sh_helpdesk/static/description/quick_reply/6.png diff --git a/sh_helpdesk/static/description/quick_reply/7.png b/sh_helpdesk/static/description/quick_reply/7.png Binary files differnew file mode 100644 index 0000000..b5be66e --- /dev/null +++ b/sh_helpdesk/static/description/quick_reply/7.png diff --git a/sh_helpdesk/static/description/quick_reply/8.png b/sh_helpdesk/static/description/quick_reply/8.png Binary files differnew file mode 100644 index 0000000..d44c544 --- /dev/null +++ b/sh_helpdesk/static/description/quick_reply/8.png diff --git a/sh_helpdesk/static/description/quick_reply/9.png b/sh_helpdesk/static/description/quick_reply/9.png Binary files differnew file mode 100644 index 0000000..4eb3e0b --- /dev/null +++ b/sh_helpdesk/static/description/quick_reply/9.png diff --git a/sh_helpdesk/static/description/reply.gif b/sh_helpdesk/static/description/reply.gif Binary files differnew file mode 100644 index 0000000..4974c5e --- /dev/null +++ b/sh_helpdesk/static/description/reply.gif diff --git a/sh_helpdesk/static/description/reply_status.gif b/sh_helpdesk/static/description/reply_status.gif Binary files differnew file mode 100644 index 0000000..24f21e7 --- /dev/null +++ b/sh_helpdesk/static/description/reply_status.gif diff --git a/sh_helpdesk/static/description/resolved_ticket.gif b/sh_helpdesk/static/description/resolved_ticket.gif Binary files differnew file mode 100644 index 0000000..1690de0 --- /dev/null +++ b/sh_helpdesk/static/description/resolved_ticket.gif diff --git a/sh_helpdesk/static/description/s1.png b/sh_helpdesk/static/description/s1.png Binary files differnew file mode 100644 index 0000000..e80c2af --- /dev/null +++ b/sh_helpdesk/static/description/s1.png diff --git a/sh_helpdesk/static/description/s10.png b/sh_helpdesk/static/description/s10.png Binary files differnew file mode 100644 index 0000000..9a6b100 --- /dev/null +++ b/sh_helpdesk/static/description/s10.png diff --git a/sh_helpdesk/static/description/s11.png b/sh_helpdesk/static/description/s11.png Binary files differnew file mode 100644 index 0000000..26f92f9 --- /dev/null +++ b/sh_helpdesk/static/description/s11.png diff --git a/sh_helpdesk/static/description/s12.png b/sh_helpdesk/static/description/s12.png Binary files differnew file mode 100644 index 0000000..53bd041 --- /dev/null +++ b/sh_helpdesk/static/description/s12.png diff --git a/sh_helpdesk/static/description/s13.png b/sh_helpdesk/static/description/s13.png Binary files differnew file mode 100644 index 0000000..efcf1f7 --- /dev/null +++ b/sh_helpdesk/static/description/s13.png diff --git a/sh_helpdesk/static/description/s14.png b/sh_helpdesk/static/description/s14.png Binary files differnew file mode 100644 index 0000000..6542782 --- /dev/null +++ b/sh_helpdesk/static/description/s14.png diff --git a/sh_helpdesk/static/description/s15.png b/sh_helpdesk/static/description/s15.png Binary files differnew file mode 100644 index 0000000..53641b3 --- /dev/null +++ b/sh_helpdesk/static/description/s15.png diff --git a/sh_helpdesk/static/description/s16.png b/sh_helpdesk/static/description/s16.png Binary files differnew file mode 100644 index 0000000..7a1a4e4 --- /dev/null +++ b/sh_helpdesk/static/description/s16.png diff --git a/sh_helpdesk/static/description/s17.png b/sh_helpdesk/static/description/s17.png Binary files differnew file mode 100644 index 0000000..1d6625e --- /dev/null +++ b/sh_helpdesk/static/description/s17.png diff --git a/sh_helpdesk/static/description/s18.png b/sh_helpdesk/static/description/s18.png Binary files differnew file mode 100644 index 0000000..f458f53 --- /dev/null +++ b/sh_helpdesk/static/description/s18.png diff --git a/sh_helpdesk/static/description/s19.png b/sh_helpdesk/static/description/s19.png Binary files differnew file mode 100644 index 0000000..fbbbadf --- /dev/null +++ b/sh_helpdesk/static/description/s19.png diff --git a/sh_helpdesk/static/description/s2.png b/sh_helpdesk/static/description/s2.png Binary files differnew file mode 100644 index 0000000..84785f6 --- /dev/null +++ b/sh_helpdesk/static/description/s2.png diff --git a/sh_helpdesk/static/description/s20.png b/sh_helpdesk/static/description/s20.png Binary files differnew file mode 100644 index 0000000..6c90b71 --- /dev/null +++ b/sh_helpdesk/static/description/s20.png diff --git a/sh_helpdesk/static/description/s21.png b/sh_helpdesk/static/description/s21.png Binary files differnew file mode 100644 index 0000000..db4f6ab --- /dev/null +++ b/sh_helpdesk/static/description/s21.png diff --git a/sh_helpdesk/static/description/s22.png b/sh_helpdesk/static/description/s22.png Binary files differnew file mode 100644 index 0000000..bf791ea --- /dev/null +++ b/sh_helpdesk/static/description/s22.png diff --git a/sh_helpdesk/static/description/s23.png b/sh_helpdesk/static/description/s23.png Binary files differnew file mode 100644 index 0000000..f870df8 --- /dev/null +++ b/sh_helpdesk/static/description/s23.png diff --git a/sh_helpdesk/static/description/s24.png b/sh_helpdesk/static/description/s24.png Binary files differnew file mode 100644 index 0000000..5043e5b --- /dev/null +++ b/sh_helpdesk/static/description/s24.png diff --git a/sh_helpdesk/static/description/s3.png b/sh_helpdesk/static/description/s3.png Binary files differnew file mode 100644 index 0000000..e9a5e70 --- /dev/null +++ b/sh_helpdesk/static/description/s3.png diff --git a/sh_helpdesk/static/description/s4.png b/sh_helpdesk/static/description/s4.png Binary files differnew file mode 100644 index 0000000..ac6fc76 --- /dev/null +++ b/sh_helpdesk/static/description/s4.png diff --git a/sh_helpdesk/static/description/s5.png b/sh_helpdesk/static/description/s5.png Binary files differnew file mode 100644 index 0000000..0482864 --- /dev/null +++ b/sh_helpdesk/static/description/s5.png diff --git a/sh_helpdesk/static/description/s6.png b/sh_helpdesk/static/description/s6.png Binary files differnew file mode 100644 index 0000000..8e2e00b --- /dev/null +++ b/sh_helpdesk/static/description/s6.png diff --git a/sh_helpdesk/static/description/s7.png b/sh_helpdesk/static/description/s7.png Binary files differnew file mode 100644 index 0000000..3feb383 --- /dev/null +++ b/sh_helpdesk/static/description/s7.png diff --git a/sh_helpdesk/static/description/s8.png b/sh_helpdesk/static/description/s8.png Binary files differnew file mode 100644 index 0000000..038e365 --- /dev/null +++ b/sh_helpdesk/static/description/s8.png diff --git a/sh_helpdesk/static/description/s9.png b/sh_helpdesk/static/description/s9.png Binary files differnew file mode 100644 index 0000000..ad97018 --- /dev/null +++ b/sh_helpdesk/static/description/s9.png diff --git a/sh_helpdesk/static/description/search_field.gif b/sh_helpdesk/static/description/search_field.gif Binary files differnew file mode 100644 index 0000000..254c4ef --- /dev/null +++ b/sh_helpdesk/static/description/search_field.gif diff --git a/sh_helpdesk/static/description/setting.png b/sh_helpdesk/static/description/setting.png Binary files differnew file mode 100644 index 0000000..9ce7d2b --- /dev/null +++ b/sh_helpdesk/static/description/setting.png diff --git a/sh_helpdesk/static/description/shape.png b/sh_helpdesk/static/description/shape.png Binary files differnew file mode 100644 index 0000000..5063a6b --- /dev/null +++ b/sh_helpdesk/static/description/shape.png diff --git a/sh_helpdesk/static/description/slovak.png b/sh_helpdesk/static/description/slovak.png Binary files differnew file mode 100644 index 0000000..5e5da84 --- /dev/null +++ b/sh_helpdesk/static/description/slovak.png diff --git a/sh_helpdesk/static/description/spanish.jpg b/sh_helpdesk/static/description/spanish.jpg Binary files differnew file mode 100644 index 0000000..4a6df1f --- /dev/null +++ b/sh_helpdesk/static/description/spanish.jpg diff --git a/sh_helpdesk/static/description/ssn1.png b/sh_helpdesk/static/description/ssn1.png Binary files differnew file mode 100644 index 0000000..3bdcf3d --- /dev/null +++ b/sh_helpdesk/static/description/ssn1.png diff --git a/sh_helpdesk/static/description/ssn2.png b/sh_helpdesk/static/description/ssn2.png Binary files differnew file mode 100644 index 0000000..4f80976 --- /dev/null +++ b/sh_helpdesk/static/description/ssn2.png diff --git a/sh_helpdesk/static/description/ssn3.png b/sh_helpdesk/static/description/ssn3.png Binary files differnew file mode 100644 index 0000000..26a8a8b --- /dev/null +++ b/sh_helpdesk/static/description/ssn3.png diff --git a/sh_helpdesk/static/description/ssn4.png b/sh_helpdesk/static/description/ssn4.png Binary files differnew file mode 100644 index 0000000..c89a9c1 --- /dev/null +++ b/sh_helpdesk/static/description/ssn4.png diff --git a/sh_helpdesk/static/description/ssn5.png b/sh_helpdesk/static/description/ssn5.png Binary files differnew file mode 100644 index 0000000..149e776 --- /dev/null +++ b/sh_helpdesk/static/description/ssn5.png diff --git a/sh_helpdesk/static/description/ssn6.png b/sh_helpdesk/static/description/ssn6.png Binary files differnew file mode 100644 index 0000000..c32c0f2 --- /dev/null +++ b/sh_helpdesk/static/description/ssn6.png diff --git a/sh_helpdesk/static/description/ssn7.png b/sh_helpdesk/static/description/ssn7.png Binary files differnew file mode 100644 index 0000000..716849d --- /dev/null +++ b/sh_helpdesk/static/description/ssn7.png diff --git a/sh_helpdesk/static/description/stages.png b/sh_helpdesk/static/description/stages.png Binary files differnew file mode 100644 index 0000000..2e2ad31 --- /dev/null +++ b/sh_helpdesk/static/description/stages.png diff --git a/sh_helpdesk/static/description/thank.png b/sh_helpdesk/static/description/thank.png Binary files differnew file mode 100644 index 0000000..4584aa2 --- /dev/null +++ b/sh_helpdesk/static/description/thank.png diff --git a/sh_helpdesk/static/description/ticket close.png b/sh_helpdesk/static/description/ticket close.png Binary files differnew file mode 100644 index 0000000..c6e5e87 --- /dev/null +++ b/sh_helpdesk/static/description/ticket close.png diff --git a/sh_helpdesk/static/description/user.png b/sh_helpdesk/static/description/user.png Binary files differnew file mode 100644 index 0000000..10dad93 --- /dev/null +++ b/sh_helpdesk/static/description/user.png diff --git a/sh_helpdesk/static/description/w1.png b/sh_helpdesk/static/description/w1.png Binary files differnew file mode 100644 index 0000000..5f364de --- /dev/null +++ b/sh_helpdesk/static/description/w1.png diff --git a/sh_helpdesk/static/description/w10.png b/sh_helpdesk/static/description/w10.png Binary files differnew file mode 100644 index 0000000..2b40f43 --- /dev/null +++ b/sh_helpdesk/static/description/w10.png diff --git a/sh_helpdesk/static/description/w11.png b/sh_helpdesk/static/description/w11.png Binary files differnew file mode 100644 index 0000000..856fae1 --- /dev/null +++ b/sh_helpdesk/static/description/w11.png diff --git a/sh_helpdesk/static/description/w12.png b/sh_helpdesk/static/description/w12.png Binary files differnew file mode 100644 index 0000000..19c9d8f --- /dev/null +++ b/sh_helpdesk/static/description/w12.png diff --git a/sh_helpdesk/static/description/w13.png b/sh_helpdesk/static/description/w13.png Binary files differnew file mode 100644 index 0000000..e45399c --- /dev/null +++ b/sh_helpdesk/static/description/w13.png diff --git a/sh_helpdesk/static/description/w14.png b/sh_helpdesk/static/description/w14.png Binary files differnew file mode 100644 index 0000000..388f10d --- /dev/null +++ b/sh_helpdesk/static/description/w14.png diff --git a/sh_helpdesk/static/description/w15.png b/sh_helpdesk/static/description/w15.png Binary files differnew file mode 100644 index 0000000..feea24e --- /dev/null +++ b/sh_helpdesk/static/description/w15.png diff --git a/sh_helpdesk/static/description/w16.png b/sh_helpdesk/static/description/w16.png Binary files differnew file mode 100644 index 0000000..1999d69 --- /dev/null +++ b/sh_helpdesk/static/description/w16.png diff --git a/sh_helpdesk/static/description/w2.png b/sh_helpdesk/static/description/w2.png Binary files differnew file mode 100644 index 0000000..307032c --- /dev/null +++ b/sh_helpdesk/static/description/w2.png diff --git a/sh_helpdesk/static/description/w3.png b/sh_helpdesk/static/description/w3.png Binary files differnew file mode 100644 index 0000000..6fe0d5e --- /dev/null +++ b/sh_helpdesk/static/description/w3.png diff --git a/sh_helpdesk/static/description/w4.png b/sh_helpdesk/static/description/w4.png Binary files differnew file mode 100644 index 0000000..73eba14 --- /dev/null +++ b/sh_helpdesk/static/description/w4.png diff --git a/sh_helpdesk/static/description/w5.png b/sh_helpdesk/static/description/w5.png Binary files differnew file mode 100644 index 0000000..a95d9f1 --- /dev/null +++ b/sh_helpdesk/static/description/w5.png diff --git a/sh_helpdesk/static/description/w6.png b/sh_helpdesk/static/description/w6.png Binary files differnew file mode 100644 index 0000000..4c73dfa --- /dev/null +++ b/sh_helpdesk/static/description/w6.png diff --git a/sh_helpdesk/static/description/w7.png b/sh_helpdesk/static/description/w7.png Binary files differnew file mode 100644 index 0000000..1fa1357 --- /dev/null +++ b/sh_helpdesk/static/description/w7.png diff --git a/sh_helpdesk/static/description/w8.png b/sh_helpdesk/static/description/w8.png Binary files differnew file mode 100644 index 0000000..4d30c32 --- /dev/null +++ b/sh_helpdesk/static/description/w8.png diff --git a/sh_helpdesk/static/description/w9.png b/sh_helpdesk/static/description/w9.png Binary files differnew file mode 100644 index 0000000..b593634 --- /dev/null +++ b/sh_helpdesk/static/description/w9.png diff --git a/sh_helpdesk/static/description/web 1.png b/sh_helpdesk/static/description/web 1.png Binary files differnew file mode 100644 index 0000000..62ff8fe --- /dev/null +++ b/sh_helpdesk/static/description/web 1.png diff --git a/sh_helpdesk/static/description/web 2.png b/sh_helpdesk/static/description/web 2.png Binary files differnew file mode 100644 index 0000000..c788960 --- /dev/null +++ b/sh_helpdesk/static/description/web 2.png diff --git a/sh_helpdesk/static/description/web 3.png b/sh_helpdesk/static/description/web 3.png Binary files differnew file mode 100644 index 0000000..bd6eb3d --- /dev/null +++ b/sh_helpdesk/static/description/web 3.png diff --git a/sh_helpdesk/static/src/css/bootstrap-multiselect.min.css b/sh_helpdesk/static/src/css/bootstrap-multiselect.min.css new file mode 100644 index 0000000..5a99da0 --- /dev/null +++ b/sh_helpdesk/static/src/css/bootstrap-multiselect.min.css @@ -0,0 +1 @@ +span.multiselect-native-select{position:relative}span.multiselect-native-select select{border:0!important;clip:rect(0 0 0 0)!important;height:1px!important;margin:-1px -1px -1px -3px!important;overflow:hidden!important;padding:0!important;position:absolute!important;width:1px!important;left:50%;top:30px}.multiselect.dropdown-toggle:after{display:none}.multiselect-container{position:absolute;list-style-type:none;margin:0;padding:0}.multiselect-container .multiselect-reset .input-group{width:93%}.multiselect-container .multiselect-filter>.fa-search{z-index:1;padding-left:.75rem}.multiselect-container .multiselect-filter>input.multiselect-search{border:none;border-bottom:1px solid #d3d3d3;padding-left:2rem;margin-left:-1.625rem;border-bottom-right-radius:0;border-bottom-left-radius:0}.multiselect-container .multiselect-filter>input.multiselect-search:focus{border-bottom-right-radius:.25rem;border-bottom-left-radius:.25rem}.multiselect-container .multiselect-filter>.multiselect-moz-clear-filter{margin-left:-1.5rem;display:none}.multiselect-container .multiselect-option.multiselect-group-option-indented{padding-left:1.75rem}.multiselect-container .multiselect-all,.multiselect-container .multiselect-group,.multiselect-container .multiselect-option{padding:.25rem .25rem .25rem .75rem}.multiselect-container .multiselect-all.dropdown-item,.multiselect-container .multiselect-all.dropdown-toggle,.multiselect-container .multiselect-group.dropdown-item,.multiselect-container .multiselect-group.dropdown-toggle,.multiselect-container .multiselect-option.dropdown-item,.multiselect-container .multiselect-option.dropdown-toggle{cursor:pointer}.multiselect-container .multiselect-all .form-check-label,.multiselect-container .multiselect-group .form-check-label,.multiselect-container .multiselect-option .form-check-label{cursor:pointer}.multiselect-container .multiselect-all.active:not(.multiselect-active-item-fallback),.multiselect-container .multiselect-all:not(.multiselect-active-item-fallback):active,.multiselect-container .multiselect-group.active:not(.multiselect-active-item-fallback),.multiselect-container .multiselect-group:not(.multiselect-active-item-fallback):active,.multiselect-container .multiselect-option.active:not(.multiselect-active-item-fallback),.multiselect-container .multiselect-option:not(.multiselect-active-item-fallback):active{background-color:#d3d3d3;color:#000}.multiselect-container .multiselect-all .form-check,.multiselect-container .multiselect-group .form-check,.multiselect-container .multiselect-option .form-check{padding:0 5px 0 20px}.multiselect-container .multiselect-all:focus,.multiselect-container .multiselect-group:focus,.multiselect-container .multiselect-option:focus{outline:0}.form-inline .multiselect-container span.form-check{padding:3px 20px 3px 40px}.input-group.input-group-sm>.multiselect-native-select .multiselect{padding:.25rem .5rem;font-size:.875rem;line-height:1.5;padding-right:1.75rem;height:calc(1.5em + .5rem + 2px)}.input-group>.multiselect-native-select{flex:1 1 auto;width:1%}.input-group>.multiselect-native-select>div.btn-group{width:100%}.input-group>.multiselect-native-select:not(:first-child) .multiselect{border-top-left-radius:0;border-bottom-left-radius:0}.input-group>.multiselect-native-select:not(:last-child) .multiselect{border-top-right-radius:0;border-bottom-right-radius:0}
\ No newline at end of file diff --git a/sh_helpdesk/static/src/css/feedback.scss b/sh_helpdesk/static/src/css/feedback.scss new file mode 100644 index 0000000..ba8f07a --- /dev/null +++ b/sh_helpdesk/static/src/css/feedback.scss @@ -0,0 +1,73 @@ +form { + &#smileys { + input[type="radio"] { + width: 90px; + height: 90px; + border: none; + cursor: pointer; + transition: border .2s ease; + filter: grayscale(100%); + margin: 0 5px; + transition: all .2s ease; + &:focus { + outline: 0; + } + &:hover, &:checked { + filter: grayscale(0); + } + + &.very-sad { + background: url('/sh_helpdesk/static/src/img/emg1.svg') center; + background-size: cover; + } + &.sad { + background: url('/sh_helpdesk/static/src/img/emg4.svg') center; + background-size: cover; + } + + &.neutral { + background: url('/sh_helpdesk/static/src/img/emg5.svg') center; + background-size: cover; + } + &.happy { + background: url('/sh_helpdesk/static/src/img/emg3.svg') center; + background-size: cover; + } + &.very-happy { + background: url('/sh_helpdesk/static/src/img/emg2.svg') center; + background-size: cover; + } + } + } +} + +.mtt { + position: fixed; + bottom: 10px; + right: 20px; + color: #999; + text-decoration: none; + + span { + color: #e74c3c; + } + + &:hover { + color: #666; + + span { + color: #c0392b; + } + } +} + #smileys input[type="radio"] { + -webkit-appearance: none; + -moz-appearance: none; + appearance: none; + } + + + + + +
\ No newline at end of file diff --git a/sh_helpdesk/static/src/css/ticket_dashboard.css b/sh_helpdesk/static/src/css/ticket_dashboard.css new file mode 100644 index 0000000..fa2baf3 --- /dev/null +++ b/sh_helpdesk/static/src/css/ticket_dashboard.css @@ -0,0 +1,125 @@ + +.btn-success { + border: none; + background: #fff; + border-radius: 5px; + padding: 7px 16px; + text-transform: uppercase; + font-weight: 500; + font-size: 11px; + letter-spacing: 0.5px; + color: #003e85; + box-shadow: 0 3px 5px #d4d4d4; +} +.o_kanban_view.o_kanban_ungrouped { + padding: 0 !important; +} +.o_kanban_view.o_kanban_ungrouped .o_kanban_record{margin:4px 0px !important;} +/*****************change in counter-area***********************/ +section { + padding: 20px 0px; +} +.counter-area .custom-card { + margin-bottom: 20px; + border: 0; + box-shadow: 0 3px 8px 0 rgba(162, 169, 204, 0.24), 0 3px 16px 0 rgba(162, 169, 204, 0.24); +} +.counter-area .card { + position: relative; + display: flex; + flex-direction: column; + min-width: 0; + word-wrap: break-word; + background-color: #fff; + background-clip: border-box; + border: 1px solid #e1e6f1; + border-radius: 0px; +} +.counter-area .sh-card-body { + flex: 1 1 auto; + padding: 15px 20px; +} +.counter-area .sh-card-body .media i { + font-size: 50px; +} +.counter-area .sh-card-body .media .media-body { + margin-top: 15px; +} +.counter-area .fs-20 { + font-size: 20px; +} +.counter-area h3 { + margin-bottom: 0.5rem; + font-weight: 700; + line-height: 1.2; + margin-top: 0; +} +.counter-area p { + font-size: 15px; + font-weight: 600; +} +.counter-area .card .dash1, +.counter-area .card { + border-radius: 5px; +} +.counter-area .custom-card:hover { + cursor: pointer; +} +/********************change in table-area******************/ +.table-area .table { + border-collapse: collapse; + box-shadow: 0 3px 8px 0 rgba(162, 169, 204, 0.24), 0 3px 16px 0 rgba(162, 169, 204, 0.24); + margin-bottom: 30px; + +} +.table-area .table tr td { + padding: 8px; + font-size: 15px; +} +.table-area .table tr th { + padding: 10px; + font-size: 15px; +} +.table-area .table tr:nth-child(even) { + background-color: #f2f2f2; +} +.table-area .table { + padding: 20px 0px; +} +.table-area .table .badge { + padding: 8px 10px; + width: 70px; +} + +/*effect*/ +.card { + display: inline-block; + transition-duration: $defaultDuration; + transition-property: transform; +} +.card:hover { + transform: scale(1.1); + box-shadow: 0 5px 10px 0 rgba(162, 169, 204, 0.24), 0 5px 19px 0 rgba(162, 169, 204, 0.24); +} +/*filter*/ +.filter .col2 { + padding: 0px 28px; +} + +/* 30-11-2020 */ + + +@media only screen and (max-width: 576px){ + .sh_drop_btn .sh_btn select, + input[type="date"]{margin: 5px 0px;} +} + + + + + + + + + + diff --git a/sh_helpdesk/static/src/img/emg1.svg b/sh_helpdesk/static/src/img/emg1.svg new file mode 100644 index 0000000..3a0a6e0 --- /dev/null +++ b/sh_helpdesk/static/src/img/emg1.svg @@ -0,0 +1,3 @@ +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="126" height="126" viewBox="0 0 126 126"> + <image x="4" y="4" width="118" height="118" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHYAAAB2CAMAAAAqeZcjAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAOVBMVEXeNTT////eNTTeNTTeNTTeNTTeNTTeNTTeNTTeNTTeNTTeNTTeNTTeNTTeNTTeNTTeNTTeNTQAAAAZgENQAAAAEXRSTlMAABBAcICvv+9gMN8gn49QzwAJzRkAAAABYktHRBJ7vGwAAAAACXBIWXMAAC4jAAAuIwF4pT92AAAAB3RJTUUH5AQCETgG/ZBN9gAABSNJREFUaN7lm9vSoyAMgK0cVTy9/8tuazlLIFZo/5nNxc7srvI1IQkQYtddlJ5QxoWQ+yFSCM4G0uPffxxyCTlSPu1JmTgdm2D7gcs9K5IPCK2vYJ/MHSV8qIdVs8RBD50XVQVLBJ6pVSa3sQBUPIUtrz/T/01uYdVpVMnZGvnsuLKzt3H1MbZfTq4Kzps6OTpLu3URS4IYlfNampB1DrhT0tIFbKjqhgnJV6AFP3VJvJTHjv77IueasY18d9jOqSuLHT6ExmB5Sh857FyaoQLYM9WCxvbu50p2HfoS5tyahxMMYvvN2VfhKGfxIn4LuBDWo9JPoYfCaS6AdVSJXEEhGWWKm8Y66nZhy5CW5FhJrHtyvgt9yXzmJrGiKtXj8hx2ruJMyRFN/CawQ3Wqxx0g7FjZwiFXB8YJ208tqI77dqsT1qx0W11q123+9MZYYnL/7XiNpTd5g5yx1sQ3c1NKRk+jCLvUd2InJj+zGKvMmtOC6tKQirD63+XHK11elDTJKsASZ4U2YsxMAqxWdmpF7TrtscLHEs/DGwkJ1A2UbeRPAYM7rGqvrFNXWez8BWWtuovBmuTVVFmrrjTYodESEIt25kFjebAOp2RkjNHyEqHo8zk4pw/OqZ5/67Xy4LCjwOUSndYFNJAG7f2BHQqLu9vv5td/W8wBFZitld3j4KnZnRJy8+CdAsCQWPWvP7BvZWSXf7aYPP0aAjS/1pftGsyh4YLKALxAEf8xyAu0YccnlhbsFxRr4NBGYTWLPuwvAPWoiTWWfZggBqe2C0oncOyO/mPgzujtANPDBBNHjZfL2n6NpWS63hgnkwq84mpuV+l5/AI+xMxc0ULU+ofPfNWWImyymoFYWY/+XQApForWw87ZKou1rTZhYURCCGbbPj6fyz+h85SeZIkYs4qYaRBFF60qBid/gZVd0flaYPffYpsdQv4k9n+Z2x8F0I/SxZeTozEubimoJmZTgVj4Kspo4rW8zNcUYpb58qampthNTXELV1W43YC+d3wNazS+TGbDWtyeJ0QR+r4z5oyRSy+67XnpMBK/SeOLWimwzQ/mTEsRR6+AyaC+iwWltD7GjYiDphOS7YIQiBjUKNSx2kCLHQlTaYjVTC2miPA2L6oNQuQnOSgiFEsmT6HYho9s2tGD9MgCUR+qOnEbNs9QmkMv22DfCgtExXLY6Ks6nQtPinpVlV2CMyysjTHFP/+efgaeGf0KB2A2U/zrUaVOj8ozwak8cPp8qx+YUYVdRy01BxBn6lRUGIjClLEddSnXHF2ZI2Fn7bgCU7S39ReJytmrBLmpoj10RWHuUdD39LY55fSC8JUtXMhsF6leoSO62qeBsvnrJ3aZ6t0VBu5sYlRgLtuW61SXXAKsWbsUdLUYmHnc8lkzKeQcbdRZAHeRymSmuAUIi33EGCBxkWq9KlqJ1Hz9GnkOf7p1s8S1ccNLcr57s/31loAp3RLQqAHCliKBBggvAV/2IljsmGC7R6IVpR7VWPArrTznYu9falyq26bFE2O1b0pLaoBowbt11qbJVrjGDYfOwMiGwyrtld4pQiDbK7v7zaTeKSKOiGats8o/j15qnb3TKOyfD6aLjcJxW/SEa4vuhuCQdr0tuoubwHdME3hwHP2oCbxLtbzTTMt7/M3D8mHLe5ds8BfnBn/Czl+wiM8b/A9Lw58zvCV5zL/5OUMGnBFx/+ONw9SXPlWZ63yq8pILH+aUAu0KtvvNZ0hafvDRldWaDBU+MfsHyhvJnqAIa8AAAAAASUVORK5CYII="/> +</svg> diff --git a/sh_helpdesk/static/src/img/emg2.svg b/sh_helpdesk/static/src/img/emg2.svg new file mode 100644 index 0000000..41d852e --- /dev/null +++ b/sh_helpdesk/static/src/img/emg2.svg @@ -0,0 +1,31 @@ +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="126" height="126" viewBox="0 0 126 126"> + <metadata><?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> +<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.6-c138 79.159824, 2016/09/14-01:09:01 "> + <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> + <rdf:Description rdf:about=""/> + </rdf:RDF> +</x:xmpmeta> + + + + + + + + + + + + + + + + + + + + + +<?xpacket end="w"?></metadata> +<image x="4" y="4" width="118" height="118" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHYAAAB2CAMAAAAqeZcjAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAOVBMVEV21TL///921TJ21TJ21TJ21TJ21TJ21TJ21TJ21TJ21TJ21TJ21TJ21TJ21TJ21TJ21TJ21TIAAAC2ih+nAAAAEXRSTlMAABBAcICvv+9gMN8gn49QzwAJzRkAAAABYktHRBJ7vGwAAAAACXBIWXMAAC4jAAAuIwF4pT92AAAAB3RJTUUH5AQCEToxdxuKewAABS1JREFUaN7lm9mypCAMhj2yqrj0+7/sdNuERROWFk+fqsnFVM2MzSchQAi/XVdpPeNCKqUfu2mlpBhYX/77n92qkCOX0wO1SfLxFmw/SP1ImpZDQa9rsE/mo8jk0A5rZl0G3fu8mCZYpsqZtsvsMpaAqqeJ5fUn/t/sEtacWtVSrIeYHVdxjjZpPsb2yylUyXEzp0AXeFhnsSyao3pecwOyzhF3Qj2dwcZd3Uqm5GuiRa+6ID9KY8fw9yoVmkcfheGwnZeuJHb4EHoE69PykcLOuRHKgANXLcXY3r+uFvXQlwkf1jIeYBLbb96/poxytmDGbxGXwgZU/il07zDOJbCeqgt3UMpGjXFxrKduFSkDbmhbKNY/OV+Fvmw+c1GsakoNuDKFnZsEE9oizF8EOzSnBtyBwo6NPRxz7cQ4YfvpDqrnvsPqhIWdbmtL7botHN4jlsHaf3m+Hq2HdYOdsc7FF9cmzMagRwfs0j6IvcH6LI5YA3vOHVS/DJkD1v67/ninS5vRsFhFWOa9cI+Bm1mEtZ2d7qJ2nY1YFWJZEOE3GYu6G3X2pniKGNJjzf2d9d01Djv/QmdddxfAwuJ1a2dddzVgh5u2gKPZYB4sVkb7MGajEILntwjDn8/Ra/rgg+r5t952nmx2VGVriV3WFdWQBT36HTtkNnef76b3f1fMITswOy/7x8lTsz8lpMYhOAWQU2K1b79j353RXfrZ7OIZ1hCo8XWx7PZgSTUXVQboDYqFj1FRYB07PrE847+oWENP7SKsZfEf9wZkP1piwbM/MInJoe2i0gk9d8fwMTIzegfA9AOTSRa1l1q1wxpLznU9OCexFATF1VRWGUT8Qj4kYKx4ZtaGh8901ZYX+GSFhkS+H/27AJItFK27n5NVFudb68JMi4yxkrR9fD6XfsKuU3aQdUGbTQyGQWVDtKkBTn8Dq7ts8N2BfXwXe9sh5E9i/5ex/dIE+tJy8cuLIzi3bCtoZpBUFGx8DW2E+Zrf5lsag20+n9S0NJfUZFO4piZdAvrO+G6s0YQ2QcKaS8/NXF/6nKkANT49Tx9GntkbnX4SJshQsWdanjl6jVs+Tz3ZHqT41aA9xo3pg6Y9h9TdQ8EpHHOSRWWO1XBSruG6ujSCXWFoM0WErZrrjhDYpVlUREiUTKAeW8x1l9zoD2xrfbZA5E6tuiiuVldJwB6PC0TJcpi/LV/y89cfhdGXVM7H+eKf5+auy5kv6aCVJCj+9UWlzkAdIBMlfROUVvAFxj4wFxZ2Q1XCTPR4DOs5eBgAxJSWscew5DSdi4qGBxWzhya2bhu4qrxo38eKnkkKZt1tGJ9jndpGDARWtM9eUfBSoRaZLoBD6y5kTJFYS5GrChQ2WO31U14lNtEJGcxR9cFlG0vq8FQqC4RfGupqMZnLGUHpHNPCO3Dx8vFFquFHGZhWOWklzEDkItVFlS64E2D8rb+Twk2lhLnNELk2vvGSXHoXf0ESMOGSgJsEEK4USQgggkW/OkelzbVJyj0QKUo7KnjwV6Q852LvXxIutZVpSaSt+0VpaA8KJHiXztoclcLdLDj0Di4UHDaRVwbZiCqUV3bXxaRBRnCcEbdJZ02YDVRJZ68IhcOMeaoUCh9l0VOZLLobooSrXhbdHUXgjxIReJR3fCQC7zDJO09I3o/fPCwfSt47VOCvzgJ/Js5fsKjPBf67p+nPGd6GHhcufs6QACdMXf94Y3d11acqc5tPVV5W8WFObqLVYLvvfIZk7QsfXbles6HBJ2b/AFtQyZ4+62AyAAAAAElFTkSuQmCC"/> +</svg> diff --git a/sh_helpdesk/static/src/img/emg3.svg b/sh_helpdesk/static/src/img/emg3.svg new file mode 100644 index 0000000..c194ab4 --- /dev/null +++ b/sh_helpdesk/static/src/img/emg3.svg @@ -0,0 +1,31 @@ +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="126" height="126" viewBox="0 0 126 126"> + <metadata><?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> +<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.6-c138 79.159824, 2016/09/14-01:09:01 "> + <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> + <rdf:Description rdf:about=""/> + </rdf:RDF> +</x:xmpmeta> + + + + + + + + + + + + + + + + + + + + + +<?xpacket end="w"?></metadata> +<image x="4" y="4" width="118" height="118" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHYAAAB2CAMAAAAqeZcjAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAqFBMVEXw2Tj////w2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2Tjw2TgAAADSEAb/AAAANnRSTlMAABBAcICvv+9gMN8gn49QzwEIEQMPeVpNhQ4MX9v+0EMFDWzW/fWxBBOD5fHAcR8WnfnrKy0P/JC0AAAAAWJLR0Q3MLi4RwAAAAlwSFlzAAAuIwAALiMBeKU/dgAAAAd0SU1FB+QEAhICEC6rmIcAAAUrSURBVGje5Ztns6s4DIY5uAKGZHvP9t5b/v9P24S4gmULsE/uzOrDnbknxE8ky01+aZqN1hLKuBDyOpsUgrOOtPjvv8y2CdlTPlyjNnDaV8G2HZfXpEneIbzegr0xryjjXTmsGiUOOvs8qSJYIvBM7TI5jAWg4mZsuv8b/5gcwqpVq5Kz0yJn+xNbZxtXu7HttEpVsN/UKtFZPK2zWBKMUTmech1yGgPuEI10Bhu6esYMyftAC37qFPlSGtv73xep1FzGyE+H83rqSmK7ndAlWK6mjxR2zPVQBuyFakJjW/dzJdsOvRtzac3DDgax7dnFV+Eoa/NG/DngQliPSvdCZ4fjXADrqBK5gkLWyxg3jnXU84YtQ9yibUWx7snxKPRu45obxYqiVI/LU9ixSDJFWzTjN4LtilM9bgdh+8IRDrl6YKyw7VCD6riPtFphzUp3LkttmrPfvUssMXP/4fG6tNbMG2SNtSE+ODfFrPc8WmCn8knszMzPbIlVZs2pQXXTkFpg9d/l7pUubUqaySrAEheFOmbCTAKsdnaoRW0anbHCxxIvwysZCdwNnK2UTwGDO6yq76xzV1ns+ArOWncngzWTV1VnrbvSYLtKS8DSdDJ3GsuDdThmPWOM5pcIRW/PwXN655Lq9r9WOw822wvcXKKndQE1pEHXdsZ2mcXd7XfT6z83j4EOjDbK7nHw1OxOCal+8E4B4JA46V8/Yx/OyCb9bHby9GsIUP/aXLZrMIeaCyoD8AJF/MegLNCB7W9YmolfUKyBhzYKq1n0xf4C0I+SWBPZFzOIwa5tgtIJPHZ7/zFwZ/RIgOHFDCaOai81a/s1llzoWhOcxFTAXXOpXaWX8RP4EDN9RTOj1j98pqu2FBGTk2mI5f1oHwWQbKHoNMc5WWWxsdUhzLRICMFs2/vbc+kn9DylO1ki2ixiphtENkWLmsHJZ2Blk02+Gtjrc7HVDiFvJPb/0rdPGkBPmi5eeXI0wcUtBcXMbCoQC19B6814zS/zJY2YZT6/qSlpdlOT3cIVNW43oI8dX8UajW+D2bBmt+clTRdJOOIwUtL0mZYijl4lTR/jesRBs6RpFOpYXc5OpmsxRYRyFhQRsiWTm731Nq7hd95NfaoP/C22QNS89/4HGOqHH32c+DQsECHKYZ98+tllytelpsvnX3wJfyxsjHHFv6++/ubb/HU5uZ0Mv/ue/AB+bjoTWer88aefL4/wJKYyNTdy+eXX334H+ldTRmRh948/Xe1nBDzuTT3n8tff4p/479JPKGwZ+1+/5DSsi4qKehWzqwQmAJ24Al+0b0NFz8AZ0eFWhI6hTu0MdESsaJ+9oqBYoRa4XTAB3XYho1BiLQFuyUxhg2y9fsqrxAZ4WjdjVOy4bCM86WlqLTHfVNDVYnIvpxikc0wL70yIp90XqYouZWBS5KSVphAeuUi1WSURdwKEPvR3nNmhlDBbT4tcG1e8JOcuxE+QBAxxSUAlAYQtRQICCE/uMe1pP262TVDuEZGilKOaCL6KlGdd7H2ThEtlZVo80lZ9UVrUA4QE79BZm0alcJUFhy7ASMFhEXmltxsRSHllc1xM6u0IliOimnRWce/Lm6SzR4TC/g3osFEovJRFDzhZdNMFG67tsuhmKQK/YkTgwb5jlwi8iUneaULyvnznYdopeW+iAn+xFvgTtn6DRewX+M+Rhl9neFj0uHDwdYYEOGHi+Msbc6g3vaoylnlV5W4bXszJDbQt2OY5ryFpe8JLV9Zr0hV4xew/JpkpXMKgL6gAAAAASUVORK5CYII="/> +</svg> diff --git a/sh_helpdesk/static/src/img/emg4.svg b/sh_helpdesk/static/src/img/emg4.svg new file mode 100644 index 0000000..d2676d8 --- /dev/null +++ b/sh_helpdesk/static/src/img/emg4.svg @@ -0,0 +1,31 @@ +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="126" height="126" viewBox="0 0 126 126"> + <metadata><?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> +<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.6-c138 79.159824, 2016/09/14-01:09:01 "> + <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> + <rdf:Description rdf:about=""/> + </rdf:RDF> +</x:xmpmeta> + + + + + + + + + + + + + + + + + + + + + +<?xpacket end="w"?></metadata> +<image x="4" y="4" width="118" height="118" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHYAAAB2CAMAAAAqeZcjAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAn1BMVEX/Xjv/////Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/Xjv/XjsAAADKjgyyAAAAM3RSTlMAABBAcICvv+9gMN8gn49Qz9YtAfZaFp35ySsTg+X+20IDDWz90G0PDF+X7KR5VI0YCBE+Y8WIAAAAAWJLR0Q0qbHp/QAAAAlwSFlzAAAuIwAALiMBeKU/dgAAAAd0SU1FB+QEAhIHJHJomHcAAAUwSURBVGje5Ztpk9s2DIa1onhIomQn2/TOpve2zdHD//+/1ZZ5SiAJWuQ6M8WHzGQt8zFA8IJeNk2mtaSjjHNxWkxwzmhPWvz3HxbLQg4dG0+gjawbqmDbnolT1ATrEV7nYM/ME8pYXw4rJ4GDLj7PsgiWcDxTuUx2YwNQfjY6X/6FPya7sHLTqmD0sMrZ4UC32cbkzdh23qRqsN/kJtEpnNZJLPHGqJgOqQ45TB53BCOdwPquHjFD8jLQvJ86A1+KYwf3+zyWmusYuelw3E5dUWx/I3QNFpvpI4adUj2UADuhmtHY1v5cQfOhF6M2rZnfwUFse7TxlTjK1pwRf/S4IaxD7W6FLg7D3ADWUgVyBQ3ZICAujLXUY8aWATawLRBrn5z2Qi82bbkglhelOlwWw05FkglsUY9fANsXpzrcPoQdCkfY56qBscG2Yw2q5V7TaoPVK92xLLVpjm73rrFEz/27x+vaWj1vkC3WhHjn3ATZ4Hi0ws7lk9ianp/pGiv1mlODaqchucKqv4ubV7q4SaEnKw9LbBTqmA4z8bDK2bEWtWlUxnIXS5wMr2TEc9dztlI+eQxmsbK+s9ZdabDTCzhr3J01Vk9eVZ017gqN7SstAWtTydwrLPPWYcgGSmmXXiJkd34uPKf3NqnO/2uV88FmB46bS9S0zkMNKdCpXbB9YnG3+934+m+KOUEHJhNl+3jw1GxPCbF+cE4BwSFxUL9+wV6dEU382eTk6dYQQv1rctmswSzUnFcZCC9QxH0slAUqsMMZ2yXi5xVrwkMbhVWs7sH8gqAfJbE6sg96EAe7tvFKJ+GxO7iPBXdG1wQYH/RgYqj2YrO2W2NJha7VwYlMBU5xNbardDJ+Dj5EdV91iVHrHj7jVdsOEZODboim/WivBZBkoeiwxDlaZTGxVSFMtEgIwWzbh/Nz8SfUPKU6WSDaLGK6G3gyRYuaxol7YEWTTL4a2NN9sdUOIZ8l9v/St3caQHeaLl54ctTBxS0FxUxvKhALX0Eb9HhNL/MljehlPr2pKWlmU5PcwhU1Zjag1x1fxRqNa6PesCa35yVNFUkY4jBS0tSZtkMcvUqaOsYNiINmSVMo1LG6nB1012KKCOXMKyIkSyYbk6S7qh8YpSRjCKgDf4stELnIbi05EBwp4/ELRBnlMElDCqIZ4TQ3Mc4q/pGonoencpLozswqdaa1NWMcrChTTmFXogQ9PNLJGiIzytgdVroUXkBVD3F80b71XR2ZGTbnoTT5Wfbq9WOsZ72iffwVxWvX1XFbQpWdUx88ffEGbIS7zmJeyHz5lcVOgXgMtlb39TffQr3kOYt6/fTd92+flk9ZZHBKDX73w49ANwmdPRkv2376+dUvaZkL+fX8/ae3vz0Dn+kRL0OvFsFU/P2Pd09zes7+8+n9B/IMpJQO8Zz5IvX545smbY+f/vobymNdCAdepJqsAleix38Q1LP9C/SrracBr40rviRnNsR3kASMsCSgkgDClCIDAghH7jHf0j5sps2g3AOQopSj6gi+iJRnW+z9nIRLZWVaDGirvigN9AAhwdt11u5AKVxlwaENMFJwWERe6ey9OFJe2ewXkzp7r/WIqCadle4uPks6u0co7L4BHTOFwmtZ9IiTRTe9t7XNl0U3axH4CSMC9zbxN4nAG0jy3kUk7+s7D/ONkvcGFPjzrcCf0O0NFn67wH+JdPg6w9XAw9HO6wwRcMT4/ssbS6izrqpMZa6qXCzjYk5qoOVgm/tcQ1J2h0tXxmvSF7hi9h9Isw2rVFvpSQAAAABJRU5ErkJggg=="/> +</svg> diff --git a/sh_helpdesk/static/src/img/emg5.svg b/sh_helpdesk/static/src/img/emg5.svg new file mode 100644 index 0000000..669c404 --- /dev/null +++ b/sh_helpdesk/static/src/img/emg5.svg @@ -0,0 +1,31 @@ +<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="126" height="126" viewBox="0 0 126 126"> + <metadata><?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?> +<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="Adobe XMP Core 5.6-c138 79.159824, 2016/09/14-01:09:01 "> + <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> + <rdf:Description rdf:about=""/> + </rdf:RDF> +</x:xmpmeta> + + + + + + + + + + + + + + + + + + + + + +<?xpacket end="w"?></metadata> +<image x="4" y="4" width="118" height="118" xlink:href="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHYAAAB2CAMAAAAqeZcjAAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAQlBMVEX////9oTT9oTT9oTT9oTT9oTT9oTT9oTT9oTT9oTT9oTT9oTT9oTT9oTT9oTT9oTT9oTT9oTT9oTT9oTT9oTQAAAAEkcH8AAAAFHRSTlMAABBAcICvv+9gMN8gn49Qz3iKfscNRVgAAAABYktHRBXl2PmjAAAACXBIWXMAAC4jAAAuIwF4pT92AAAAB3RJTUUH5AQCEgU4VF+mugAABJJJREFUaN7lm9t2rCAMQBXkIl7n1P//1mMdrkoABfWheehabXH2JCQBQ6gqS+oEQbghlDG+bMIZo6TFKOXJuq78EntMNLRbvNLRRtyCRS3lS1A4bVFZ7MpckoS25bD9wNOgm85jXwSLWTpTqoyzsQCUrULG35/+f+MsbH/4VE7JtPNZMZGjt9H+MhaNB1cF560/ODpB17DYiVE+THVEpsHhdvgC1lV1joWkfKh1vuqIzmKF/TzDKUxpI9sdZnEO216E7sG8PYMdQjOUALZMNSZjkfm6nJyH/goxbk1RGhbNxr79NaoT8TNKwVrU5ip0U/jIDWANlSesoCERfM+FsYY6J24ZYDl8Fog1I4dc6K8MLhfEsqJUi0tD2KGIM3m5I4xti1MtbgthRWELu9w1MLxU1N1BNdwZebFqpZvLUutaRcfoo2KV+7PjdS9I5Q0cMHFmbvKJ0BqBJi7oxEZUfiZ7aq/WnDuoJg31O6z8O7+80oWll9NL/f50cVVPNzP2KdvdRa1r6bHMp+yFfVOqYI+67FZ/+go7zG5/v7JGXePMwwPKanV1ilTJ61Zltbp8t8zOSZWaDJHO3EosVb+CDwhCSBNfIvpmHQfn9NZxKiSVRxBWsLRcItM6g76fBC3ItvEAlUzMfje8/utiDoe4g21lOXyCsOYtYQmVf8xbABgSk1ZwFa4dLDQ2mjztGgIwv5Xly8JMdMgyMtZBKraHAV6gDCtWVmMM7h3rFGtwHlayGjO1/RNYy7Kdsbd3rFM6gWNX2MOAnZHyo05HLQWx9ueFsrZdY+khLFORK41DQGxtFVdDu0rL40dgSFXJKMNqlicYa14+g1XbuonapKom5b/E+DSUHNG3ABItFE2bnQNVlsrYVpqwCmBXwRinbNvFOi7w7xWh8hQzjnz3wmewTGLZU1iF429gudb6UezyLpb8KexfmduXAuildPFwclTGTVsKimHVpiJh4SuIFSpe48t8SSxWy3x8U1MSqzc10S1cUSxVWzi5Ye2ewRpYbHteEtsb0zZqlh/AynfaJuHVqyR2sKI18qJZEmtQ8dfqcjJZURMtImj5/AvKJ4p1igjRkomSnyUoP1Es11GbViAqg3ULRMnlsFwss22cXvzLxKrinz6nSCx1ZmIH7brnCrufiISfVhDrlOKJMrZ0XLtq/1LR/oEjCnZU9oEDmcan7O3HTypGXWVvP2yjRzf+yninmZWJjye4tx6kShN7DlK1V/Hyx8az359cMxc/JKegiR0z39QS0PlbAm5qgFDutIhou8eYT1OiP7NNaG4pxm1tC0LY4q082sJbGgKxLzUulW3TorvPgrElm9IOGgSwdgteVn5uDq1wDzQcGgMnNhwWaa80qtrnqmFsfjOpdVJmR0QMm9U629td+adaZ3Mahe0T0O5ko/C+LbpLa4uuW+cg8nxbdL1vAl9SmsCd9vNLTeC1r+W9CbS87+88jBdb3mtvgz87NvhjcrzBwq43+G+Whq8zfMV7ryPzOkMAHBCWf3ljM/WpqypDmasqm3OlX8wJBdpZbP3ONSQpL1y60lrjtsAVs/8ZBPfzqOToTQAAAABJRU5ErkJggg=="/> +</svg> diff --git a/sh_helpdesk/static/src/js/bootstrap-multiselect.min.js b/sh_helpdesk/static/src/js/bootstrap-multiselect.min.js new file mode 100644 index 0000000..1bae7b0 --- /dev/null +++ b/sh_helpdesk/static/src/js/bootstrap-multiselect.min.js @@ -0,0 +1 @@ +!function(root,factory){"function"==typeof define&&define.amd&&"function"==typeof require&&"function"==typeof require.specified&&require.specified("knockout")?define(["jquery","knockout"],factory):factory(root.jQuery,root.ko)}(this,(function($,ko){"use strict";function forEach(array,callback){for(var index=0;index<array.length;++index)callback(array[index],index)}function Multiselect(select,options){this.$select=$(select),this.options=this.mergeOptions($.extend({},options,this.$select.data())),this.$select.attr("data-placeholder")&&(this.options.nonSelectedText=this.$select.data("placeholder")),this.originalOptions=this.$select.clone()[0].options,this.query="",this.searchTimeout=null,this.lastToggledInput=null,this.options.multiple="multiple"===this.$select.attr("multiple"),this.options.onChange=$.proxy(this.options.onChange,this),this.options.onSelectAll=$.proxy(this.options.onSelectAll,this),this.options.onDeselectAll=$.proxy(this.options.onDeselectAll,this),this.options.onDropdownShow=$.proxy(this.options.onDropdownShow,this),this.options.onDropdownHide=$.proxy(this.options.onDropdownHide,this),this.options.onDropdownShown=$.proxy(this.options.onDropdownShown,this),this.options.onDropdownHidden=$.proxy(this.options.onDropdownHidden,this),this.options.onInitialized=$.proxy(this.options.onInitialized,this),this.options.onFiltering=$.proxy(this.options.onFiltering,this),this.buildContainer(),this.buildButton(),this.buildDropdown(),this.buildReset(),this.buildSelectAll(),this.buildDropdownOptions(),this.buildFilter(),this.updateButtonText(),this.updateSelectAll(!0),this.options.enableClickableOptGroups&&this.options.multiple&&this.updateOptGroups(),this.options.wasDisabled=this.$select.prop("disabled"),this.options.disableIfEmpty&&$("option",this.$select).length<=0&&this.disable(),this.$select.wrap('<span class="multiselect-native-select" />').after(this.$container),this.options.onInitialized(this.$select,this.$container)}void 0!==ko&&ko.bindingHandlers&&!ko.bindingHandlers.multiselect&&(ko.bindingHandlers.multiselect={after:["options","value","selectedOptions","enable","disable"],init:function(element,valueAccessor,allBindings,viewModel,bindingContext){var $element=$(element),config=ko.toJS(valueAccessor());if($element.multiselect(config),allBindings.has("options")){var options=allBindings.get("options");ko.isObservable(options)&&ko.computed({read:function(){options(),setTimeout((function(){var ms=$element.data("multiselect");ms&&ms.updateOriginalOptions(),$element.multiselect("rebuild")}),1)},disposeWhenNodeIsRemoved:element})}if(allBindings.has("value")){var value=allBindings.get("value");ko.isObservable(value)&&ko.computed({read:function(){value(),setTimeout((function(){$element.multiselect("refresh")}),1)},disposeWhenNodeIsRemoved:element}).extend({rateLimit:100,notifyWhenChangesStop:!0})}if(allBindings.has("selectedOptions")){var selectedOptions=allBindings.get("selectedOptions");ko.isObservable(selectedOptions)&&ko.computed({read:function(){selectedOptions(),setTimeout((function(){$element.multiselect("refresh")}),1)},disposeWhenNodeIsRemoved:element}).extend({rateLimit:100,notifyWhenChangesStop:!0})}var setEnabled=function(enable){setTimeout((function(){enable?$element.multiselect("enable"):$element.multiselect("disable")}))};if(allBindings.has("enable")){var enable=allBindings.get("enable");ko.isObservable(enable)?ko.computed({read:function(){setEnabled(enable())},disposeWhenNodeIsRemoved:element}).extend({rateLimit:100,notifyWhenChangesStop:!0}):setEnabled(enable)}if(allBindings.has("disable")){var disable=allBindings.get("disable");ko.isObservable(disable)?ko.computed({read:function(){setEnabled(!disable())},disposeWhenNodeIsRemoved:element}).extend({rateLimit:100,notifyWhenChangesStop:!0}):setEnabled(!disable)}ko.utils.domNodeDisposal.addDisposeCallback(element,(function(){$element.multiselect("destroy")}))},update:function(element,valueAccessor,allBindings,viewModel,bindingContext){var $element=$(element),config=ko.toJS(valueAccessor());$element.multiselect("setOptions",config),$element.multiselect("rebuild")}}),Multiselect.prototype={defaults:{buttonText:function(selectedOptions,select){if(this.disabledText.length>0&&select.prop("disabled"))return this.disabledText;if(0===selectedOptions.length)return this.nonSelectedText;if(this.allSelectedText&&selectedOptions.length===$("option",$(select)).length&&1!==$("option",$(select)).length&&this.multiple)return this.selectAllNumber?this.allSelectedText+" ("+selectedOptions.length+")":this.allSelectedText;if(0!=this.numberDisplayed&&selectedOptions.length>this.numberDisplayed)return selectedOptions.length+" "+this.nSelectedText;var selected="",delimiter=this.delimiterText;return selectedOptions.each((function(){var label=void 0!==$(this).attr("label")?$(this).attr("label"):$(this).text();selected+=label+delimiter})),selected.substr(0,selected.length-this.delimiterText.length)},buttonTitle:function(options,select){if(0===options.length)return this.nonSelectedText;var selected="",delimiter=this.delimiterText;return options.each((function(){var label=void 0!==$(this).attr("label")?$(this).attr("label"):$(this).text();selected+=label+delimiter})),selected.substr(0,selected.length-this.delimiterText.length)},checkboxName:function(option){return!1},optionLabel:function(element){return $(element).attr("label")||$(element).text()},optionClass:function(element){return $(element).attr("class")||""},onChange:function(option,checked){},onDropdownShow:function(event){},onDropdownHide:function(event){},onDropdownShown:function(event){},onDropdownHidden:function(event){},onSelectAll:function(){},onDeselectAll:function(){},onInitialized:function($select,$container){},onFiltering:function($filter){},enableHTML:!1,buttonClass:"custom-select",inheritClass:!1,buttonWidth:"auto",buttonContainer:'<div class="btn-group" />',dropRight:!1,dropUp:!1,selectedClass:"active",maxHeight:!1,includeSelectAllOption:!1,includeSelectAllIfMoreThan:0,selectAllText:" Select all",selectAllValue:"multiselect-all",selectAllName:!1,selectAllNumber:!0,selectAllJustVisible:!0,enableFiltering:!1,enableCaseInsensitiveFiltering:!1,enableFullValueFiltering:!1,enableClickableOptGroups:!1,enableCollapsibleOptGroups:!1,collapseOptGroupsByDefault:!1,filterPlaceholder:"Search",filterBehavior:"text",includeFilterClearBtn:!0,preventInputChangeEvent:!1,nonSelectedText:"None selected",nSelectedText:"selected",allSelectedText:"All selected",numberDisplayed:3,disableIfEmpty:!1,disabledText:"",delimiterText:", ",includeResetOption:!1,includeResetDivider:!1,resetText:"Reset",indentGroupOptions:!0,templates:{button:'<button type="button" class="multiselect dropdown-toggle" data-toggle="dropdown"><span class="multiselect-selected-text"></span></button>',popupContainer:'<div class="multiselect-container dropdown-menu"></div>',filter:'<div class="multiselect-filter d-flex align-items-center"><i class="fas fa-sm fa-search text-muted"></i><input type="search" class="multiselect-search form-control" /></div>',option:'<button type="button" class="multiselect-option dropdown-item"></button>',divider:'<div class="dropdown-divider"></div>',optionGroup:'<button type="button" class="multiselect-group dropdown-item"></button>',resetButton:'<div class="multiselect-reset text-center p-2"><button type="button" class="btn btn-sm btn-block btn-outline-secondary"></button></div>'}},constructor:Multiselect,buildContainer:function(){this.$container=$(this.options.buttonContainer),this.$container.on("show.bs.dropdown",this.options.onDropdownShow),this.$container.on("hide.bs.dropdown",this.options.onDropdownHide),this.$container.on("shown.bs.dropdown",this.options.onDropdownShown),this.$container.on("hidden.bs.dropdown",this.options.onDropdownHidden)},buildButton:function(){this.$button=$(this.options.templates.button).addClass(this.options.buttonClass),this.$select.attr("class")&&this.options.inheritClass&&this.$button.addClass(this.$select.attr("class")),this.$select.prop("disabled")?this.disable():this.enable(),this.options.buttonWidth&&"auto"!==this.options.buttonWidth&&(this.$button.css({width:"100%",overflow:"hidden","text-overflow":"ellipsis"}),this.$container.css({width:this.options.buttonWidth}));var tabindex=this.$select.attr("tabindex");tabindex&&this.$button.attr("tabindex",tabindex),this.$container.prepend(this.$button)},buildDropdown:function(){this.$popupContainer=$(this.options.templates.popupContainer),this.options.dropRight?this.$container.addClass("dropright"):this.options.dropUp&&this.$container.addClass("dropup"),this.options.maxHeight&&this.$popupContainer.css({"max-height":this.options.maxHeight+"px","overflow-y":"auto","overflow-x":"hidden"}),this.$popupContainer.on("touchstart click",(function(e){e.stopPropagation()})),this.$container.append(this.$popupContainer)},buildDropdownOptions:function(){this.$select.children().each($.proxy((function(index,element){var $element=$(element),tag=$element.prop("tagName").toLowerCase();$element.prop("value")!==this.options.selectAllValue&&("optgroup"===tag?this.createOptgroup(element):"option"===tag&&("divider"===$element.data("role")?this.createDivider():this.createOptionValue(element,!1)))}),this)),$(this.$popupContainer).off("change",'> *:not(.multiselect-group) input[type="checkbox"], > *:not(.multiselect-group) input[type="radio"]'),$(this.$popupContainer).on("change",'> *:not(.multiselect-group) input[type="checkbox"], > *:not(.multiselect-group) input[type="radio"]',$.proxy((function(event){var $target=$(event.target),checked=$target.prop("checked")||!1,isSelectAllOption=$target.val()===this.options.selectAllValue;this.options.selectedClass&&(checked?$target.closest(".multiselect-option").addClass(this.options.selectedClass):$target.closest(".multiselect-option").removeClass(this.options.selectedClass));var value=$target.val(),$option=this.getOptionByValue(value),$optionsNotThis=$("option",this.$select).not($option),$checkboxesNotThis=$("input",this.$container).not($target);if(isSelectAllOption?checked?this.selectAll(this.options.selectAllJustVisible,!0):this.deselectAll(this.options.selectAllJustVisible,!0):(checked?($option.prop("selected",!0),this.options.multiple?$option.prop("selected",!0):(this.options.selectedClass&&$($checkboxesNotThis).closest(".dropdown-item").removeClass(this.options.selectedClass),$($checkboxesNotThis).prop("checked",!1),$optionsNotThis.prop("selected",!1),this.$button.click()),"active"===this.options.selectedClass&&$optionsNotThis.closest(".dropdown-item").css("outline","")):$option.prop("selected",!1),this.options.onChange($option,checked),this.updateSelectAll(),this.options.enableClickableOptGroups&&this.options.multiple&&this.updateOptGroups()),this.$select.change(),this.updateButtonText(),this.options.preventInputChangeEvent)return!1}),this)),$(".multiselect-option",this.$popupContainer).off("mousedown"),$(".multiselect-option",this.$popupContainer).on("mousedown",(function(e){if(e.shiftKey)return!1})),$(this.$popupContainer).off("touchstart click",".multiselect-option, .multiselect-all, .multiselect-group"),$(this.$popupContainer).on("touchstart click",".multiselect-option, .multiselect-all, .multiselect-group",$.proxy((function(event){event.stopPropagation();var $target=$(event.target),$input;if(event.shiftKey&&this.options.multiple){$target.is("input")||(event.preventDefault(),($target=$target.closest(".multiselect-option").find("input")).prop("checked",!$target.prop("checked")));var checked=$target.prop("checked")||!1;if(null!==this.lastToggledInput&&this.lastToggledInput!==$target){var from=this.$popupContainer.find(".multiselect-option:visible").index($target.closest(".multiselect-option")),to=this.$popupContainer.find(".multiselect-option:visible").index(this.lastToggledInput.closest(".multiselect-option"));if(from>to){var tmp=to;to=from,from=tmp}++to;var range=this.$popupContainer.find(".multiselect-option:not(.multiselect-filter-hidden)").slice(from,to).find("input");range.prop("checked",checked),this.options.selectedClass&&range.closest(".multiselect-option").toggleClass(this.options.selectedClass,checked);for(var i=0,j=range.length;i<j;i++){var $checkbox=$(range[i]),$option;this.getOptionByValue($checkbox.val()).prop("selected",checked)}}$target.trigger("change")}else if(!$target.is("input")){var $checkbox;if(($checkbox=$target.closest(".multiselect-option, .multiselect-all").find(".form-check-input")).length>0)$checkbox.prop("checked",!$checkbox.prop("checked")),$checkbox.change();else if(this.options.enableClickableOptGroups&&this.options.multiple&&!$target.hasClass("caret-container")){var groupItem=$target;groupItem.hasClass("multiselect-group")||(groupItem=$target.closest(".multiselect-group")),($checkbox=groupItem.find(".form-check-input")).length>0&&($checkbox.prop("checked",!$checkbox.prop("checked")),$checkbox.change())}event.preventDefault()}$target.closest(".multiselect-option").find("input[type='checkbox'], input[type='radio']").length>0?this.lastToggledInput=$target:this.lastToggledInput=null,$target.blur()}),this)),this.$container.off("keydown.multiselect").on("keydown.multiselect",$.proxy((function(event){if(!$("input.multiselect-search",this.$container).is(":focus"))if(9===event.keyCode&&this.$container.hasClass("show"))this.$button.click();else{var $items=$(this.$container).find(".multiselect-option:not(.disabled), .multiselect-group:not(.disabled), .multiselect-all").filter(":visible");if(!$items.length)return;var index=$items.index($items.filter(":focus")),$current=$items.eq(index);if(32===event.keyCode){var $checkbox=$current.find("input");$checkbox.prop("checked",!$checkbox.prop("checked")),$checkbox.change(),event.preventDefault()}13===event.keyCode&&setTimeout((function(){$current.focus()}),0)}}),this)),this.options.enableClickableOptGroups&&this.options.multiple&&($(".multiselect-group input",this.$popupContainer).off("change"),$(".multiselect-group input",this.$popupContainer).on("change",$.proxy((function(event){event.stopPropagation();var $target,checked=$(event.target).prop("checked")||!1,$item=$(event.target).closest(".dropdown-item"),$group,$inputs=$item.nextUntil(".multiselect-group").not(".multiselect-filter-hidden").not(".disabled").find("input"),$options=[];this.options.selectedClass&&(checked?$item.addClass(this.options.selectedClass):$item.removeClass(this.options.selectedClass)),$.each($inputs,$.proxy((function(index,input){var $input=$(input),value=$input.val(),$option=this.getOptionByValue(value);checked?($input.prop("checked",!0),$input.closest(".dropdown-item").addClass(this.options.selectedClass),$option.prop("selected",!0)):($input.prop("checked",!1),$input.closest(".dropdown-item").removeClass(this.options.selectedClass),$option.prop("selected",!1)),$options.push(this.getOptionByValue(value))}),this)),this.options.onChange($options,checked),this.$select.change(),this.updateButtonText(),this.updateSelectAll()}),this))),this.options.enableCollapsibleOptGroups&&this.options.multiple&&($(".multiselect-group .caret-container",this.$popupContainer).off("click"),$(".multiselect-group .caret-container",this.$popupContainer).on("click",$.proxy((function(event){var $group,$inputs=$(event.target).closest(".multiselect-group").nextUntil(".multiselect-group").not(".multiselect-filter-hidden"),visible=!0;$inputs.each((function(){visible=visible&&!$(this).hasClass("multiselect-collapsible-hidden")})),visible?$inputs.hide().addClass("multiselect-collapsible-hidden"):$inputs.show().removeClass("multiselect-collapsible-hidden")}),this)))},createCheckbox:function($item,label,name,value,title,inputType){var $wrapper=$("<span />");if($wrapper.addClass("form-check"),this.options.enableHTML&&$(label).length>0)$wrapper.append($(label));else{var $checkboxLabel=$('<label class="form-check-label" />');$checkboxLabel.text(label),$wrapper.append($checkboxLabel)}var $checkbox=$('<input class="form-check-input"/>').attr("type",inputType);return $checkbox.val(value),$wrapper.prepend($checkbox),name&&$checkbox.attr("name",name),$item.prepend($wrapper),$item.attr("title",title||label),$checkbox},createOptionValue:function(element,isGroupOption){var $element=$(element);$element.is(":selected")&&$element.prop("selected",!0);var label=this.options.optionLabel(element),classes=this.options.optionClass(element),value=$element.val(),inputType=this.options.multiple?"checkbox":"radio",title=$element.attr("title"),$option=$(this.options.templates.option);$option.addClass(classes),isGroupOption&&this.options.indentGroupOptions&&$option.addClass("multiselect-group-option-indented"),this.options.collapseOptGroupsByDefault&&"optgroup"===$(element).parent().prop("tagName").toLowerCase()&&($option.addClass("multiselect-collapsible-hidden"),$option.hide());var name=this.options.checkboxName($element),$checkbox=this.createCheckbox($option,label,name,value,title,inputType),selected=$element.prop("selected")||!1;value===this.options.selectAllValue&&($option.addClass("multiselect-all"),$option.removeClass("multiselect-option"),$checkbox.parent().parent().addClass("multiselect-all")),this.$popupContainer.append($option),$element.is(":disabled")&&$checkbox.attr("disabled","disabled").prop("disabled",!0).closest(".dropdown-item").addClass("disabled"),$checkbox.prop("checked",selected),selected&&this.options.selectedClass&&$checkbox.closest(".dropdown-item").addClass(this.options.selectedClass)},createDivider:function(element){var $divider=$(this.options.templates.divider);this.$popupContainer.append($divider)},createOptgroup:function(group){var $group=$(group),label=$group.attr("label"),value=$group.attr("value"),title=$group.attr("title"),$groupOption=$("<span class='multiselect-group dropdown-item-text'></span>");if(this.options.enableClickableOptGroups&&this.options.multiple){$groupOption=$(this.options.templates.optionGroup);var $checkbox=this.createCheckbox($groupOption,label,null,value,title,"checkbox")}else this.options.enableHTML?$groupOption.html(" "+label):$groupOption.text(" "+label);var classes=this.options.optionClass(group);$groupOption.addClass(classes),this.options.enableCollapsibleOptGroups&&this.options.multiple&&($groupOption.find(".form-check").addClass("d-inline-block"),$groupOption.append('<span class="caret-container dropdown-toggle pl-1"></span>')),$group.is(":disabled")&&$groupOption.addClass("disabled"),this.$popupContainer.append($groupOption),$("option",group).each($.proxy((function($,group){this.createOptionValue(group,!0)}),this))},buildReset:function(){if(this.options.includeResetOption){if(this.options.includeResetDivider){var divider=$(this.options.templates.divider);divider.addClass("mt-0"),this.$popupContainer.prepend(divider)}var $resetButton=$(this.options.templates.resetButton);this.options.enableHTML?$("button",$resetButton).html(this.options.resetText):$("button",$resetButton).text(this.options.resetText),$("button",$resetButton).click($.proxy((function(){this.clearSelection()}),this)),this.$popupContainer.prepend($resetButton)}},buildSelectAll:function(){var alreadyHasSelectAll;if("number"==typeof this.options.selectAllValue&&(this.options.selectAllValue=this.options.selectAllValue.toString()),!this.hasSelectAll()&&this.options.includeSelectAllOption&&this.options.multiple&&$("option",this.$select).length>this.options.includeSelectAllIfMoreThan){this.options.includeSelectAllDivider&&this.$popupContainer.prepend($(this.options.templates.divider));var $option=$(this.options.templates.li||this.options.templates.option),$checkbox=this.createCheckbox($option,this.options.selectAllText,this.options.selectAllName,this.options.selectAllValue,this.options.selectAllText,"checkbox");$option.addClass("multiselect-all"),$option.removeClass("multiselect-option"),$option.find(".form-check-label").addClass("font-weight-bold"),this.$popupContainer.prepend($option),$checkbox.prop("checked",!1)}},buildFilter:function(){if(this.options.enableFiltering||this.options.enableCaseInsensitiveFiltering){var enableFilterLength=Math.max(this.options.enableFiltering,this.options.enableCaseInsensitiveFiltering);this.$select.find("option").length>=enableFilterLength&&(this.$filter=$(this.options.templates.filter),$("input",this.$filter).attr("placeholder",this.options.filterPlaceholder),this.options.includeFilterClearBtn?(this.isFirefox()&&0===this.$filter.find(".multiselect-clear-filter").length&&this.$filter.append("<i class='fas fa-times text-muted multiselect-clear-filter multiselect-moz-clear-filter'></i>"),this.$filter.find(".multiselect-clear-filter").on("click",$.proxy((function(event){clearTimeout(this.searchTimeout),this.query="",this.$filter.find(".multiselect-search").val(""),$(".dropdown-item",this.$popupContainer).show().removeClass("multiselect-filter-hidden"),this.updateSelectAll(),this.options.enableClickableOptGroups&&this.options.multiple&&this.updateOptGroups()}),this))):(this.$filter.find(".multiselect-search").attr("type","text"),this.$filter.find(".multiselect-clear-filter").remove()),this.$popupContainer.prepend(this.$filter),this.$filter.val(this.query).on("click",(function(event){event.stopPropagation()})).on("input keydown",$.proxy((function(event){13===event.which&&event.preventDefault(),this.isFirefox()&&this.options.includeFilterClearBtn&&(event.target.value?this.$filter.find(".multiselect-moz-clear-filter").show():this.$filter.find(".multiselect-moz-clear-filter").hide()),clearTimeout(this.searchTimeout),this.searchTimeout=this.asyncFunction($.proxy((function(){var currentGroup,currentGroupVisible;this.query!==event.target.value&&(this.query=event.target.value,$.each($(".multiselect-option, .multiselect-group",this.$popupContainer),$.proxy((function(index,element){var value=$("input",element).length>0?$("input",element).val():"",text=$(".form-check-label",element).text(),filterCandidate="";if("text"===this.options.filterBehavior?filterCandidate=text:"value"===this.options.filterBehavior?filterCandidate=value:"both"===this.options.filterBehavior&&(filterCandidate=text+"\n"+value),value!==this.options.selectAllValue&&text){var showElement=!1;if(this.options.enableCaseInsensitiveFiltering&&(filterCandidate=filterCandidate.toLowerCase(),this.query=this.query.toLowerCase()),this.options.enableFullValueFiltering&&"both"!==this.options.filterBehavior){var valueToMatch=filterCandidate.trim().substring(0,this.query.length);this.query.indexOf(valueToMatch)>-1&&(showElement=!0)}else filterCandidate.indexOf(this.query)>-1&&(showElement=!0);showElement||($(element).css("display","none"),$(element).addClass("multiselect-filter-hidden")),showElement&&($(element).css("display","block"),$(element).removeClass("multiselect-filter-hidden")),$(element).hasClass("multiselect-group")?(currentGroup=element,currentGroupVisible=showElement):(showElement&&$(currentGroup).show().removeClass("multiselect-filter-hidden"),!showElement&¤tGroupVisible&&$(element).show().removeClass("multiselect-filter-hidden"))}}),this)));this.updateSelectAll(),this.options.enableClickableOptGroups&&this.options.multiple&&this.updateOptGroups(),this.options.onFiltering(event.target)}),this),300,this)}),this)))}},destroy:function(){this.$container.remove(),this.$select.show(),this.$select.prop("disabled",this.options.wasDisabled),this.$select.data("multiselect",null)},refresh:function(){var inputs={};$(".multiselect-option input",this.$popupContainer).each((function(){inputs[$(this).val()]=$(this)})),$("option",this.$select).each($.proxy((function(index,element){var $elem=$(element),$input=inputs[$(element).val()];$elem.is(":selected")?($input.prop("checked",!0),this.options.selectedClass&&$input.closest(".multiselect-option").addClass(this.options.selectedClass)):($input.prop("checked",!1),this.options.selectedClass&&$input.closest(".multiselect-option").removeClass(this.options.selectedClass)),$elem.is(":disabled")?$input.attr("disabled","disabled").prop("disabled",!0).closest(".multiselect-option").addClass("disabled"):$input.prop("disabled",!1).closest(".multiselect-option").removeClass("disabled")}),this)),this.updateButtonText(),this.updateSelectAll(),this.options.enableClickableOptGroups&&this.options.multiple&&this.updateOptGroups()},select:function(selectValues,triggerOnChange){$.isArray(selectValues)||(selectValues=[selectValues]);for(var i=0;i<selectValues.length;i++){var value=selectValues[i];if(null!=value){var $option=this.getOptionByValue(value),$checkbox=this.getInputByValue(value);void 0!==$option&&void 0!==$checkbox&&(this.options.multiple||this.deselectAll(!1),this.options.selectedClass&&$checkbox.closest(".dropdown-item").addClass(this.options.selectedClass),$checkbox.prop("checked",!0),$option.prop("selected",!0),triggerOnChange&&this.options.onChange($option,!0))}}this.updateButtonText(),this.updateSelectAll(),this.options.enableClickableOptGroups&&this.options.multiple&&this.updateOptGroups()},clearSelection:function(){this.deselectAll(!1),this.updateButtonText(),this.updateSelectAll(),this.options.enableClickableOptGroups&&this.options.multiple&&this.updateOptGroups()},deselect:function(deselectValues,triggerOnChange){$.isArray(deselectValues)||(deselectValues=[deselectValues]);for(var i=0;i<deselectValues.length;i++){var value=deselectValues[i];if(null!=value){var $option=this.getOptionByValue(value),$checkbox=this.getInputByValue(value);void 0!==$option&&void 0!==$checkbox&&(this.options.selectedClass&&$checkbox.closest(".dropdown-item").removeClass(this.options.selectedClass),$checkbox.prop("checked",!1),$option.prop("selected",!1),triggerOnChange&&this.options.onChange($option,!1))}}this.updateButtonText(),this.updateSelectAll(),this.options.enableClickableOptGroups&&this.options.multiple&&this.updateOptGroups()},selectAll:function(justVisible,triggerOnSelectAll){var justVisible=void 0===justVisible||justVisible,allOptions=$(".multiselect-option:not(.disabled)",this.$popupContainer),visibleOptions=$(".multiselect-option:not(.disabled):not(.multiselect-filter-hidden):not(.multiselect-collapisble-hidden)",this.$popupContainer).filter(":visible");justVisible?($("input:enabled",visibleOptions).prop("checked",!0),visibleOptions.addClass(this.options.selectedClass),$("input:enabled",visibleOptions).each($.proxy((function(index,element){var value=$(element).val(),option=this.getOptionByValue(value);$(option).prop("selected",!0)}),this))):($("input:enabled",allOptions).prop("checked",!0),allOptions.addClass(this.options.selectedClass),$("input:enabled",allOptions).each($.proxy((function(index,element){var value=$(element).val(),option=this.getOptionByValue(value);$(option).prop("selected",!0)}),this))),$('.multiselect-option input[value="'+this.options.selectAllValue+'"]',this.$popupContainer).prop("checked",!0),this.options.enableClickableOptGroups&&this.options.multiple&&this.updateOptGroups(),this.updateButtonText(),this.updateSelectAll(),triggerOnSelectAll&&this.options.onSelectAll()},deselectAll:function(justVisible,triggerOnDeselectAll){var justVisible=void 0===justVisible||justVisible,allOptions=$(".multiselect-option:not(.disabled):not(.multiselect-group)",this.$popupContainer),visibleOptions=$(".multiselect-option:not(.disabled):not(.multiselect-filter-hidden):not(.multiselect-collapisble-hidden)",this.$popupContainer).filter(":visible");justVisible?($('input[type="checkbox"]:enabled',visibleOptions).prop("checked",!1),visibleOptions.removeClass(this.options.selectedClass),$('input[type="checkbox"]:enabled',visibleOptions).each($.proxy((function(index,element){var value=$(element).val(),option=this.getOptionByValue(value);$(option).prop("selected",!1)}),this))):($('input[type="checkbox"]:enabled',allOptions).prop("checked",!1),allOptions.removeClass(this.options.selectedClass),$('input[type="checkbox"]:enabled',allOptions).each($.proxy((function(index,element){var value=$(element).val(),option=this.getOptionByValue(value);$(option).prop("selected",!1)}),this))),$('.multiselect-all input[value="'+this.options.selectAllValue+'"]',this.$popupContainer).prop("checked",!1),this.options.enableClickableOptGroups&&this.options.multiple&&this.updateOptGroups(),this.updateButtonText(),this.updateSelectAll(),triggerOnDeselectAll&&this.options.onDeselectAll()},rebuild:function(){this.$popupContainer.html(""),this.options.multiple="multiple"===this.$select.attr("multiple"),this.buildSelectAll(),this.buildDropdownOptions(),this.buildFilter(),this.updateButtonText(),this.updateSelectAll(!0),this.options.enableClickableOptGroups&&this.options.multiple&&this.updateOptGroups(),this.options.disableIfEmpty&&$("option",this.$select).length<=0?this.disable():this.enable(),this.options.dropRight?this.$container.addClass("dropright"):this.options.dropUp&&this.$container.addClass("dropup")},dataprovider:function(dataprovider){var groupCounter=0,$select=this.$select.empty();$.each(dataprovider,(function(index,option){var $tag;if($.isArray(option.children))groupCounter++,$tag=$("<optgroup/>").attr({label:option.label||"Group "+groupCounter,disabled:!!option.disabled,value:option.value}),forEach(option.children,(function(subOption){var attributes={value:subOption.value,label:subOption.label||subOption.value,title:subOption.title,selected:!!subOption.selected,disabled:!!subOption.disabled};for(var key in subOption.attributes)attributes["data-"+key]=subOption.attributes[key];$tag.append($("<option/>").attr(attributes))}));else{var attributes={value:option.value,label:option.label||option.value,title:option.title,class:option.class,selected:!!option.selected,disabled:!!option.disabled};for(var key in option.attributes)attributes["data-"+key]=option.attributes[key];($tag=$("<option/>").attr(attributes)).text(option.label||option.value)}$select.append($tag)})),this.rebuild()},enable:function(){this.$select.prop("disabled",!1),this.$button.prop("disabled",!1).removeClass("disabled"),this.updateButtonText()},disable:function(){this.$select.prop("disabled",!0),this.$button.prop("disabled",!0).addClass("disabled"),this.updateButtonText()},setOptions:function(options){this.options=this.mergeOptions(options)},mergeOptions:function(options){return $.extend(!0,{},this.defaults,this.options,options)},hasSelectAll:function(){return $(".multiselect-all",this.$popupContainer).length>0},updateOptGroups:function(){var $groups=$(".multiselect-group",this.$popupContainer),selectedClass=this.options.selectedClass;$groups.each((function(){var $options=$(this).nextUntil(".multiselect-group").not(".multiselect-filter-hidden").not(".disabled"),checked=!0;$options.each((function(){var $input;$("input",this).prop("checked")||(checked=!1)})),selectedClass&&(checked?$(this).addClass(selectedClass):$(this).removeClass(selectedClass)),$("input",this).prop("checked",checked)}))},updateSelectAll:function(notTriggerOnSelectAll){if(this.hasSelectAll()){var allBoxes=$(".multiselect-option:not(.multiselect-filter-hidden):not(.multiselect-group):not(.disabled) input:enabled",this.$popupContainer),allBoxesLength=allBoxes.length,checkedBoxesLength=allBoxes.filter(":checked").length,selectAllItem=$(".multiselect-all",this.$popupContainer),selectAllInput=selectAllItem.find("input");checkedBoxesLength>0&&checkedBoxesLength===allBoxesLength?(selectAllInput.prop("checked",!0),selectAllItem.addClass(this.options.selectedClass)):(selectAllInput.prop("checked",!1),selectAllItem.removeClass(this.options.selectedClass))}},updateButtonText:function(){var options=this.getSelected();this.options.enableHTML?$(".multiselect .multiselect-selected-text",this.$container).html(this.options.buttonText(options,this.$select)):$(".multiselect .multiselect-selected-text",this.$container).text(this.options.buttonText(options,this.$select)),$(".multiselect",this.$container).attr("title",this.options.buttonTitle(options,this.$select))},getSelected:function(){return $("option",this.$select).filter(":selected")},getOptionByValue:function(value){for(var options=$("option",this.$select),valueToCompare=value.toString(),i=0;i<options.length;i+=1){var option=options[i];if(option.value===valueToCompare)return $(option)}},getInputByValue:function(value){for(var checkboxes=$(".multiselect-option input:not(.multiselect-search)",this.$popupContainer),valueToCompare=value.toString(),i=0;i<checkboxes.length;i+=1){var checkbox=checkboxes[i];if(checkbox.value===valueToCompare)return $(checkbox)}},updateOriginalOptions:function(){this.originalOptions=this.$select.clone()[0].options},asyncFunction:function(callback,timeout,self){var args=Array.prototype.slice.call(arguments,3);return setTimeout((function(){callback.apply(self||window,args)}),timeout)},setAllSelectedText:function(allSelectedText){this.options.allSelectedText=allSelectedText,this.updateButtonText()},isFirefox:function(){var firefoxIdentifier="firefox",valueNotFoundIndex=-1;return!(!navigator||!navigator.userAgent)&&navigator.userAgent.toLocaleLowerCase().indexOf("firefox")>-1}},$.fn.multiselect=function(option,parameter,extraOptions){return this.each((function(){var data=$(this).data("multiselect"),options;data||(data=new Multiselect(this,"object"==typeof option&&option),$(this).data("multiselect",data)),"string"==typeof option&&(data[option](parameter,extraOptions),"destroy"===option&&$(this).data("multiselect",!1))}))},$.fn.multiselect.Constructor=Multiselect,$((function(){$("select[data-role=multiselect]").multiselect()}))}));
\ No newline at end of file diff --git a/sh_helpdesk/static/src/js/filter.js b/sh_helpdesk/static/src/js/filter.js new file mode 100644 index 0000000..4c0d4f7 --- /dev/null +++ b/sh_helpdesk/static/src/js/filter.js @@ -0,0 +1,348 @@ +$(document).ready(function (e) { + $.ajax({ + url: "/user-group", + data: {}, + type: "post", + cache: false, + success: function (result) { + var datas = JSON.parse(result); + if (datas.user == "1") { + $("#leader_div").addClass("o_hidden"); + $("#team_div").addClass("o_hidden"); + $("#assign_user_div").addClass("o_hidden"); + } else if (datas.leader == "1") { + $("#leader_div").addClass("o_hidden"); + } else if (datas.manager == "1") { + $("#leader_div").removeClass("o_hidden"); + $("#team_div").removeClass("o_hidden"); + $("#assign_user_div").removeClass("o_hidden"); + } + }, + }); + var filter_date = $("#days_filter").children("option:selected").val(); + if (filter_date == "custom") { + $("#start_date").removeClass("o_hidden"); + $("#end_date").removeClass("o_hidden"); + } else { + $("#start_date").addClass("o_hidden"); + $("#end_date").addClass("o_hidden"); + $("#start_date").val(""); + $("#end_date").val(""); + } + $.get( + "/get-ticket-table-data", + { + team: $("#team").val(), + team_leader: $("#team_leader").val(), + user_id: $("#assign_user").val(), + filter_date: $("#days_filter").children("option:selected").val(), + date_start: $("#start_date").val(), + date_end: $("#end_date").val(), + }, + function (result) { + $("#js_ticket_tbl_div").replaceWith(result); + } + ); + $.get( + "/get-ticket-counter-data", + { + team: $("#team").val(), + team_leader: $("#team_leader").val(), + user_id: $("#assign_user").val(), + filter_date: $("#days_filter").children("option:selected").val(), + date_start: $("#start_date").val(), + date_end: $("#end_date").val(), + }, + function (result) { + $("#js_ticket_count_div").replaceWith(result); + } + ); + $.get("/get_team", function (data) { + obj = JSON.parse(data); + + for (var key in obj) { + $("#team").append('<option value="' + key + '" >' + obj[key].name + "</option>"); + } + }); + $.get("/get_team_leader", function (data) { + obj = JSON.parse(data); + + for (var key in obj) { + $("#team_leader").append('<option value="' + key + '" >' + obj[key].name + "</option>"); + $("#assign_user").append('<option value="' + key + '" >' + obj[key].name + "</option>"); + } + }); + $(document).on("click", ".custom", function (e) { + var self = this; + var values = $(this).attr("data-res_ids"); + $.ajax({ + url: "/open-ticket", + data: { ids: values }, + type: "post", + cache: false, + success: function (result) { + var datas = JSON.parse(result); + }, + }); + }); + $(document).on("click", ".mark-whatsapp", function (e) { + var $el = $(e.target).parents("tr").find("#partner_id").attr("value"); + var $mobile = $(e.target).parents("tr").find("#partner_id").attr("data-mobile"); + var partner_id = parseInt($el); + $(".whatsapp_modal").modal("show"); + $("#ticket_partner_id").val(partner_id); + $("#partner_mobile_no").val($mobile); + }); + $(document).on("change", "#ticket_partner_id", function (e) { + $.ajax({ + url: "/get-mobile-no", + data: {'partner_id':$('#ticket_partner_id').val()}, + type: "post", + cache: false, + success: function (result) { + var datas = JSON.parse(result); + if(datas.mobile){ + $("#partner_mobile_no").val(datas.mobile); + } + }, + }); + }); + $(document).on("click", "#send", function (e) { + $.ajax({ + url: "/send-by-whatsapp", + data: {'partner_id':$('#ticket_partner_id').val(),'partner_mobile_no':$('#partner_mobile_no').val(),'message':$('#whatsapp_message').val( )}, + type: "post", + cache: false, + success: function (result) { + var datas = JSON.parse(result); + if(datas.msg){ + alert(datas.msg); + } + else{ + if(datas.url){ + window.open(datas.url, '_blank'); + } + } + }, + }); + }); + $(document).on("change", "#days_filter", function (e) { + var filter_date = $("#days_filter").children("option:selected").val(); + if (filter_date == "custom") { + $("#start_date").removeClass("o_hidden"); + $("#end_date").removeClass("o_hidden"); + } else { + $("#start_date").addClass("o_hidden"); + $("#end_date").addClass("o_hidden"); + $("#start_date").val(""); + $("#end_date").val(""); + } + $.get( + "/get-ticket-table-data", + { + team: $("#team").val(), + team_leader: $("#team_leader").val(), + user_id: $("#assign_user").val(), + filter_date: $("#days_filter").children("option:selected").val(), + date_start: $("#start_date").val(), + date_end: $("#end_date").val(), + }, + function (result) { + $("#js_ticket_tbl_div").replaceWith(result); + } + ); + $.get( + "/get-ticket-counter-data", + { + team: $("#team").val(), + team_leader: $("#team_leader").val(), + user_id: $("#assign_user").val(), + filter_date: $("#days_filter").children("option:selected").val(), + date_start: $("#start_date").val(), + date_end: $("#end_date").val(), + }, + function (result) { + $("#js_ticket_count_div").replaceWith(result); + } + ); + }); + $(document).on("change", "#assign_user", function (e) { + $.get( + "/get-ticket-table-data", + { + team: $("#team").val(), + team_leader: $("#team_leader").val(), + user_id: $("#assign_user").val(), + filter_date: $("#days_filter").children("option:selected").val(), + date_start: $("#start_date").val(), + date_end: $("#end_date").val(), + }, + function (result) { + $("#js_ticket_tbl_div").replaceWith(result); + } + ); + $.get( + "/get-ticket-counter-data", + { + team: $("#team").val(), + team_leader: $("#team_leader").val(), + user_id: $("#assign_user").val(), + filter_date: $("#days_filter").children("option:selected").val(), + date_start: $("#start_date").val(), + date_end: $("#end_date").val(), + }, + function (result) { + $("#js_ticket_count_div").replaceWith(result); + } + ); + }); + $(document).on("change", "#start_date", function (e) { + $.get( + "/get-ticket-table-data", + { + team: $("#team").val(), + team_leader: $("#team_leader").val(), + user_id: $("#assign_user").val(), + filter_date: $("#days_filter").children("option:selected").val(), + date_start: $("#start_date").val(), + date_end: $("#end_date").val(), + }, + function (result) { + $("#js_ticket_tbl_div").replaceWith(result); + } + ); + $.get( + "/get-ticket-counter-data", + { + team: $("#team").val(), + team_leader: $("#team_leader").val(), + user_id: $("#assign_user").val(), + filter_date: $("#days_filter").children("option:selected").val(), + date_start: $("#start_date").val(), + date_end: $("#end_date").val(), + }, + function (result) { + $("#js_ticket_count_div").replaceWith(result); + } + ); + }); + $(document).on("change", "#end_date", function (e) { + $.get( + "/get-ticket-table-data", + { + team: $("#team").val(), + team_leader: $("#team_leader").val(), + user_id: $("#assign_user").val(), + filter_date: $("#days_filter").children("option:selected").val(), + date_start: $("#start_date").val(), + date_end: $("#end_date").val(), + }, + function (result) { + $("#js_ticket_tbl_div").replaceWith(result); + } + ); + $.get( + "/get-ticket-counter-data", + { + team: $("#team").val(), + team_leader: $("#team_leader").val(), + user_id: $("#assign_user").val(), + filter_date: $("#days_filter").children("option:selected").val(), + date_start: $("#start_date").val(), + date_end: $("#end_date").val(), + }, + function (result) { + $("#js_ticket_count_div").replaceWith(result); + } + ); + }); + $(document).on("change", "#team_leader", function (e) { + $.ajax({ + url: "/get-leader-user", + data: { team_leader: $("#team_leader").val() }, + type: "post", + cache: false, + success: function (result) { + var datas = JSON.parse(result); + $("#team > option").remove(); + $("#team").append('<option value="0">Team</option>'); + for (var key in datas) { + $("#team").append('<option value="' + key + '" >' + datas[key].name + "</option>"); + } + }, + }); + $.get( + "/get-ticket-table-data", + { + team: $("#team").val(), + team_leader: $("#team_leader").val(), + user_id: $("#assign_user").val(), + filter_date: $("#days_filter").children("option:selected").val(), + date_start: $("#start_date").val(), + date_end: $("#end_date").val(), + }, + function (result) { + $("#js_ticket_tbl_div").replaceWith(result); + } + ); + $.get( + "/get-ticket-counter-data", + { + team: $("#team").val(), + team_leader: $("#team_leader").val(), + user_id: $("#assign_user").val(), + filter_date: $("#days_filter").children("option:selected").val(), + date_start: $("#start_date").val(), + date_end: $("#end_date").val(), + }, + function (result) { + $("#js_ticket_count_div").replaceWith(result); + } + ); + }); + $(document).on("change", "#team", function (e) { + $.ajax({ + url: "/get-user", + data: { team: $("#team").val() }, + type: "post", + cache: false, + success: function (result) { + var datas = JSON.parse(result); + $("#assign_user > option").remove(); + $("#assign_user").append('<option value="0" selected="True">Assign User</option>'); + for (var key in datas) { + $("#assign_user").append('<option value="' + key + '" >' + datas[key].name + "</option>"); + } + }, + }); + $.get( + "/get-ticket-table-data", + { + team: $("#team").val(), + team_leader: $("#team_leader").val(), + user_id: $("#assign_user").val(), + filter_date: $("#days_filter").children("option:selected").val(), + date_start: $("#start_date").val(), + date_end: $("#end_date").val(), + }, + function (result) { + $("#js_ticket_tbl_div").replaceWith(result); + } + ); + $.get( + "/get-ticket-counter-data", + { + team: $("#team").val(), + team_leader: $("#team_leader").val(), + user_id: $("#assign_user").val(), + filter_date: $("#days_filter").children("option:selected").val(), + date_start: $("#start_date").val(), + date_end: $("#end_date").val(), + }, + function (result) { + $("#js_ticket_count_div").replaceWith(result); + } + ); + }); +}); + diff --git a/sh_helpdesk/static/src/js/helpdesk_ticket_dasboard.js b/sh_helpdesk/static/src/js/helpdesk_ticket_dasboard.js new file mode 100644 index 0000000..6f2ab06 --- /dev/null +++ b/sh_helpdesk/static/src/js/helpdesk_ticket_dasboard.js @@ -0,0 +1,68 @@ +odoo.define('sh_helpdesk.helpdesk_ticket_dasboard', function (require) { + var ajax = require('web.ajax'); + var core = require('web.core'); + var rpc = require('web.rpc'); + + var qweb = core.qweb; + var _t = core._t; + var KanbanRenderer = require("web.KanbanRenderer"); +KanbanRenderer.include({ + events: _.extend({}, KanbanRenderer.prototype.events || {}, { + "click .sh_tile_click": "action_all_tickets", + }), + action_all_tickets: function (event) { + console.log("clicked"); + event.stopPropagation(); + event.preventDefault(); + var self = this; + var $el = $(event.currentTarget).attr("data-res_ids"); + if ($el == undefined){ + this._rpc({ + model: "ir.model.data", + method: "xmlid_to_res_model_res_id", + args: ["sh_helpdesk.helpdesk_ticket_form_view"], + }).then(function (data) { + self.do_action( + { + name: _t("Tickets"), + type: "ir.actions.act_window", + res_model: "helpdesk.ticket", + view_mode: "kanban,tree,form", + views: [ + [false, "kanban"], + [false, "list"], + [data[1], "form"], + ], + domain: [["id", "in", []]], + target: "current", + }, + ); + }); + } + else{ + var list_value = JSON.parse($el); + this._rpc({ + model: "ir.model.data", + method: "xmlid_to_res_model_res_id", + args: ["sh_helpdesk.helpdesk_ticket_form_view"], + }).then(function (data) { + self.do_action( + { + name: _t("Tickets"), + type: "ir.actions.act_window", + res_model: "helpdesk.ticket", + view_mode: "kanban,tree,form", + views: [ + [false, "kanban"], + [false, "list"], + [data[1], "form"], + ], + domain: [["id", "in", list_value]], + target: "current", + }, + ); + }); + } + }, +}); +});
\ No newline at end of file diff --git a/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js b/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js new file mode 100644 index 0000000..7f9504e --- /dev/null +++ b/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js @@ -0,0 +1,10 @@ +odoo.define('sh_helpdesk.helpdesk_ticket_kanban_examples', function (require) { +'use strict'; + +var core = require('web.core'); +var kanbanExamplesRegistry = require('web.kanban_examples_registry'); +var _lt = core._lt; +kanbanExamplesRegistry.add('sh_helpdesk', { + ghostColumns: [_lt('New'), _lt('In Progress'), _lt('Done'), _lt('Closed'), _lt('Reopened'), _lt('Cancelled')], +}); +}); diff --git a/sh_helpdesk/static/src/js/portal.js b/sh_helpdesk/static/src/js/portal.js new file mode 100644 index 0000000..fcf43e7 --- /dev/null +++ b/sh_helpdesk/static/src/js/portal.js @@ -0,0 +1,131 @@ +$(document).ready(function (e) { + + $(function(){ + $('#portal_assign_multi_user').multiselect(); + }); + + $("#new_request").click(function () { + $("#createticketModal").modal("show"); + }); + $.ajax({ + url: "/portal-subcategory-data", + data: { category_id: $("#portal_category").val() }, + type: "post", + cache: false, + success: function (result) { + var datas = JSON.parse(result); + $("#portal_subcategory > option").remove(); + $("#portal_subcategory").append('<option value="' + "sub_category" + '">' + "Select Sub Category" + "</option>"); + _.each(datas.sub_categories, function (data) { + $("#portal_subcategory").append('<option value="' + data.id + '">' + data.name + "</option>"); + }); + }, + }); + + $.ajax({ + url: "/portal-partner-data", + data: {}, + type: "post", + async: false, + cache: false, + success: function (result) { + var datas = JSON.parse(result); + $("#partner_ids > option").remove(); + _.each(datas.partners, function (data) { + $("#partner_ids").append('<option data-id="' + data.id + '" value="' + data.name + '">'); + }); + }, + }); + $(document).on("change", "#partner", function (e) { + var option = $("#partner_ids").find("[value='" + $("#partner").val() + "']"); + var partner = option.data("id"); + $("#partner_id").val(""); + $("#partner_id").val(partner); + if ($("#partner_id").val() != "") { + $.ajax({ + url: "/selected-partner-data", + data: { partner_id: $("#partner_id").val() }, + type: "post", + cache: false, + success: function (result) { + var datas = JSON.parse(result); + $("#portal_contact_name").val(datas.name); + $("#portal_email").val(datas.email); + }, + }); + } else { + $("#portal_contact_name").val(""); + $("#portal_email").val(""); + } + }); + $.ajax({ + url: "/portal-subcategory-data", + data: { category_id: $("#portal_category").val() }, + type: "post", + cache: false, + success: function (result) { + var datas = JSON.parse(result); + $("#portal_subcategory > option").remove(); + $("#portal_subcategory").append('<option value="' + "sub_category" + '">' + "Select Sub Category" + "</option>"); + _.each(datas.sub_categories, function (data) { + $("#portal_subcategory").append('<option value="' + data.id + '">' + data.name + "</option>"); + }); + }, + }); + $.ajax({ + url: "/portal-user-data", + data: { team_id: $("#portal_team").val() }, + type: "post", + cache: false, + success: function (result) { + var datas = JSON.parse(result); + $("#portal_assign_user > option").remove(); + $("#portal_assign_user").append('<option value="' + "user" + '">' + "Select Assign User" + "</option>"); + $("#portal_assign_multi_user").multiselect('destroy'); + $("#portal_assign_multi_user > option").remove(); + $("#portal_assign_multi_user").append('<option value="' + "users" + '">' + "Select Multi Users" + "</option>"); + _.each(datas.users, function (data) { + $("#portal_assign_user").append('<option value="' + data.id + '">' + data.name + "</option>"); + $("#portal_assign_multi_user").append('<option value="' + data.id + '">' + data.name + "</option>"); + }); + $("#portal_assign_multi_user").multiselect(); + }, + }); + $(document).on("change", "#portal_category", function (e) { + $.ajax({ + url: "/portal-subcategory-data", + data: { category_id: $("#portal_category").val() }, + type: "post", + cache: false, + success: function (result) { + var datas = JSON.parse(result); + $("#portal_subcategory > option").remove(); + $("#portal_subcategory").append('<option value="' + "sub_category" + '">' + "Select Sub Category" + "</option>"); + _.each(datas.sub_categories, function (data) { + $("#portal_subcategory").append('<option value="' + data.id + '">' + data.name + "</option>"); + }); + }, + }); + }); + $(document).on("change", "#portal_team", function (e) { + $.ajax({ + url: "/portal-user-data", + data: { team_id: $("#portal_team").val() }, + type: "post", + cache: false, + success: function (result) { + var datas = JSON.parse(result); + $("#portal_assign_user > option").remove(); + $("#portal_assign_multi_user").multiselect('destroy'); + $("#portal_assign_multi_user > option").remove(); + $("#portal_assign_user").append('<option value="' + "user" + '">' + "Select Assign User" + "</option>"); + $("#portal_assign_multi_user").append('<option value="' + "users" + '">' + "Select Multi Users" + "</option>"); + _.each(datas.users, function (data) { + $("#portal_assign_user").append('<option value="' + data.id + '">' + data.name + "</option>"); + $("#portal_assign_multi_user").append('<option value="' + data.id + '">' + data.name + "</option>"); + }); + $("#portal_assign_multi_user").multiselect(); + }, + }); + }); +}); diff --git a/sh_helpdesk/views/helpdesk_alarm.xml b/sh_helpdesk/views/helpdesk_alarm.xml new file mode 100644 index 0000000..7676004 --- /dev/null +++ b/sh_helpdesk/views/helpdesk_alarm.xml @@ -0,0 +1,44 @@ +<?xml version="1.0" encoding="utf-8"?> +<odoo> + <record id="sh_helpdesk_alarm_view_form" model="ir.ui.view"> + <field name="name">sh.ticket.alarm</field> + <field name="model">sh.ticket.alarm</field> + <field name="arch" type="xml"> + <form> + <sheet> + <group> + <group> + <field name="name" force_save="1"/> + <field name="sh_remind_before" /> + <field name="sh_reminder_unit" /> + </group> + <group> + <field name="type" /> + <field name="company_id" groups="base.group_multi_company" /> + </group> + </group> + </sheet> + </form> + </field> + </record> + <record id="sh_helpdesk_alarm_tree_view" model="ir.ui.view"> + <field name="name">sh.ticket.alarm</field> + <field name="model">sh.ticket.alarm</field> + <field name="arch" type="xml"> + <tree> + <field name="name" /> + <field name="type" /> + <field name="sh_remind_before" /> + <field name="sh_reminder_unit" /> + <field name="company_id" groups="base.group_multi_company" /> + </tree> + </field> + </record> + <record id="sh_helpdesk_alarm_action" model="ir.actions.act_window"> + <field name="name">Ticket Alarm</field> + <field name="res_model">sh.ticket.alarm</field> + <field name="type">ir.actions.act_window</field> + <field name="view_mode">tree,form</field> + </record> + <menuitem id="sh_helpdesk_alarm_manu" name="Helpdesk Ticket Alarm" action="sh_helpdesk_alarm_action" parent="sh_helpdesk.helpdesk_config_menu" groups="sh_helpdesk.group_helpdesk_alarm" sequence="10" /> +</odoo>
\ No newline at end of file diff --git a/sh_helpdesk/views/helpdesk_assets.xml b/sh_helpdesk/views/helpdesk_assets.xml new file mode 100644 index 0000000..791aacf --- /dev/null +++ b/sh_helpdesk/views/helpdesk_assets.xml @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="utf-8"?> +<odoo> + <template id="assets_backend" name="helpdesk assets" inherit_id="web.assets_backend"> + <xpath expr="." position="inside"> + <script type="text/javascript" src="/sh_helpdesk/static/src/js/helpdesk_ticket_kanban_examples.js"></script> + <script type="text/javascript" src="/sh_helpdesk/static/src/js/helpdesk_ticket_dasboard.js"/> + </xpath> + </template> +</odoo> diff --git a/sh_helpdesk/views/helpdesk_category_view.xml b/sh_helpdesk/views/helpdesk_category_view.xml new file mode 100644 index 0000000..e1405d5 --- /dev/null +++ b/sh_helpdesk/views/helpdesk_category_view.xml @@ -0,0 +1,46 @@ +<?xml version="1.0" encoding="utf-8"?> +<odoo> + <record id="helpdesk_category_view_form" model="ir.ui.view"> + <field name="name">helpdesk.category.view.form</field> + <field name="model">helpdesk.category</field> + <field name="arch" type="xml"> + <form> + <sheet> + <!-- <field name="image_medium" widget="image" class="oe_avatar"/> --> + <div class="oe_title"> + <label class="oe_edit_only" for="name" string="Category Name" /> + <h2><field name="name" /></h2> + </div> + </sheet> + </form> + </field> + </record> + + <record id="helpdesk_category_view_tree" model="ir.ui.view"> + <field name="name">helpdesk.category.view.tree</field> + <field name="model">helpdesk.category</field> + <field name="arch" type="xml"> + <tree> + <field name="sequence" widget="handle" /> + <field name="name" /> + </tree> + </field> + </record> + + <record id="helpdesk_category_action" model="ir.actions.act_window"> + <field name="name">Helpdesk Categories</field> + <field name="res_model">helpdesk.category</field> + <field name="view_mode">tree,form</field> + <field name="help" type="html"> + <p class="oe_view_nocontent_create">Create new category</p> + </field> + </record> + + <record id="sequence_helpdesk_category_seq" model="ir.sequence"> + <field name="name">Helpdesk Category Sequence</field> + <field name="code">helpdesk.category</field> + <field eval="1" name="number_next" /> + <field eval="1" name="number_increment" /> + </record> + <menuitem id="helpdesk_category_menu" name="Helpdesk Categories" parent="sh_helpdesk.helpdesk_config_menu" action="helpdesk_category_action" sequence="6" /> +</odoo> diff --git a/sh_helpdesk/views/helpdesk_config_settings_view.xml b/sh_helpdesk/views/helpdesk_config_settings_view.xml new file mode 100644 index 0000000..b7383dd --- /dev/null +++ b/sh_helpdesk/views/helpdesk_config_settings_view.xml @@ -0,0 +1,300 @@ +<?xml version="1.0" encoding="utf-8"?> +<odoo> + <record id="helpdesk_config_setting_view" model="ir.ui.view"> + <field name="name">helpdesk.config.setting.view</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[hasclass('settings')]" position="inside"> + <div class="app_settings_block" data-string="Helpdesk Settings" string="Helpdesk" data-key="sh_helpdesk"> + <div> + <h2>Ticket Settings</h2> + <field name="company_id" invisible="1" /> + + <div class="row o_settings_container"> + <div class="col-6 o_setting_box"> + <div class="o_setting_right_pane"> + <label for="category" /> + <br /> + <field name="category" class="oe_inline" /> + </div> + <div class="o_setting_left_pane"></div> + </div> + <div class="col-6 o_setting_box"> + <div class="o_setting_right_pane"> + <label for="sub_category" /> + <br /> + <field name="sub_category" class="oe_inline" /> + </div> + <div class="o_setting_left_pane"></div> + </div> + </div> + <div class="row o_settings_container"> + <div class="col-6 o_setting_box"> + <div class="o_setting_right_pane"> + <label for="customer_rating" /> + <br /> + <field name="customer_rating" class="oe_inline" /> + </div> + <div class="o_setting_left_pane"></div> + </div> + <div class="col-6 o_setting_box"> + <div class="o_setting_right_pane"> + <label for="auto_close_ticket" /> + <br /> + <field name="auto_close_ticket" class="oe_inline" /> + </div> + <div class="o_setting_left_pane"></div> + </div> + </div> + <div class="row o_settings_container" attrs="{'invisible':[('auto_close_ticket','=',False)]}"> + <div class="col-6 o_setting_box"> + <div class="o_setting_right_pane"> + <label for="close_days" /> + <br /> + <field name="close_days" class="oe_inline" attrs="{'required':[('auto_close_ticket','=',True)]}" /> + </div> + <div class="o_setting_left_pane"></div> + </div> + </div> + </div> + <div class="row o_settings_container"> + <div class="col-6 o_setting_box"> + <div class="o_setting_right_pane"> + <label for="sh_default_team_id" /> + <br /> + <field name="sh_default_team_id" class="oe_inline" /> + </div> + <div class="o_setting_left_pane"></div> + </div> + <div class="col-6 o_setting_box" attrs="{'invisible':[('sh_default_team_id','=',False)]}"> + <div class="o_setting_right_pane"> + <label for="sh_default_user_id" /> + <br /> + <field name="sh_default_user_id" class="oe_inline" attrs="{'required':[('sh_default_team_id','!=',False)]}"/> + </div> + <div class="o_setting_left_pane"></div> + </div> + </div> + <div> + <h2>Ticket Stage Settings</h2> + <div class="row o_settings_container"> + <div class="col-6 o_setting_box"> + <div class="o_setting_right_pane"> + <label for="new_stage_id" /> + <br /> + <field name="new_stage_id" class="oe_inline" /> + </div> + <div class="o_setting_left_pane"></div> + </div> + <div class="col-6 o_setting_box"> + <div class="o_setting_right_pane"> + <label for="reopen_stage_id" /> + <br /> + <field name="reopen_stage_id" class="oe_inline" /> + </div> + <div class="o_setting_left_pane"></div> + </div> + </div> + <div class="row o_settings_container"> + <div class="col-6 o_setting_box"> + <div class="o_setting_right_pane"> + <label for="cancel_stage_id" /> + <br /> + <field name="cancel_stage_id" class="oe_inline" /> + </div> + <div class="o_setting_left_pane"></div> + </div> + <div class="col-6 o_setting_box"> + <div class="o_setting_right_pane"> + <label for="done_stage_id" /> + <br /> + <field name="done_stage_id" class="oe_inline" /> + </div> + <div class="o_setting_left_pane"></div> + </div> + </div> + <div class="row o_settings_container"> + <div class="col-6 o_setting_box"> + <div class="o_setting_right_pane"> + <label for="close_stage_id" /> + <br /> + <field name="close_stage_id" class="oe_inline" /> + </div> + <div class="o_setting_left_pane"></div> + </div> + </div> + </div> + <div> + <h2>Ticket Mail Template Settings</h2> + + <div class="row o_settings_container"> + <div class="col-6 o_setting_box"> + <div class="o_setting_right_pane"> + <label for="allocation_mail_template_id" /> + <br /> + <field name="allocation_mail_template_id" class="oe_inline" /> + </div> + <div class="o_setting_left_pane"></div> + </div> + <div class="col-6 o_setting_box"> + <div class="o_setting_right_pane"> + <label for="reply_mail_template_id" /> + <br /> + <field name="reply_mail_template_id" class="oe_inline" /> + </div> + <div class="o_setting_left_pane"></div> + </div> + <div class="col-6 o_setting_box"> + <div class="o_setting_right_pane"> + <label for="sh_receive_email_seeing_ticket" /> + <br /> + <field name="sh_receive_email_seeing_ticket" class="oe_inline" /> + </div> + <div class="o_setting_left_pane"></div> + </div> + </div> + </div> + <div> + <h2>Ticket Dashboard Settings</h2> + + <div class="row o_settings_container"> + <div class="col-6 o_setting_box"> + <div class="o_setting_right_pane"> + <label for="dashboard_filter" /> + <br /> + <field name="dashboard_filter" class="oe_inline" widget="many2many_tags" /> + </div> + <div class="o_setting_left_pane"></div> + </div> + <div class="col-6 o_setting_box"> + <div class="o_setting_right_pane"> + <label for="dashboard_tables" /> + <br /> + <field name="dashboard_tables" class="oe_inline" widget="many2many_tags" /> + </div> + <div class="o_setting_left_pane"></div> + </div> + </div> + </div> + <h2 id="multi_users">Multi Users in Ticket Configuration</h2> + <div class="row mt16 o_settings_container" id="multi_users_div"> + <div class="col-6 o_setting_box"> + <div class="o_setting_left_pane"> + <field name="sh_display_multi_user" /> + </div> + <div class="o_setting_right_pane"> + <label for="sh_display_multi_user" /> + <div class="text-muted"></div> + </div> + </div> + </div> + <h2 id="manage_products">Manage Products Inside Helpdesk Ticket</h2> + <div class="row mt16 o_settings_container" id="manage_products_div"> + <div class="col-6 o_setting_box"> + <div class="o_setting_left_pane"> + <field name="sh_configure_activate" /> + </div> + <div class="o_setting_right_pane"> + <label for="sh_configure_activate" /> + <div class="text-muted"></div> + </div> + </div> + </div> + <h2 id="manage_reminder">Helpdesk Ticket Reminder Configuration</h2> + <div class="row mt16 o_settings_container" id="manage_reminder_div"> + <div class="col-6 o_setting_box"> + <div class="o_setting_left_pane"> + <field name="sh_display_ticket_reminder" /> + </div> + <div class="o_setting_right_pane"> + <label for="sh_display_ticket_reminder" /> + <div class="text-muted"></div> + </div> + </div> + </div> + <h2 id="manage_whatsapp">Helpdesk Ticket Send Whatsapp Configuration</h2> + <div class="row mt16 o_settings_container"> + <div class="col-12 col-lg-6 o_setting_box"> + <div class="o_setting_left_pane"> + <field name="sh_ticket_product_detail" /> + </div> + <div class="o_setting_right_pane"> + <label for="sh_ticket_product_detail" /> + <div class="text-muted"> + Show Ticket Product details in message + </div> + </div> + </div> + <div class="col-12 col-lg-6 o_setting_box"> + <div class="o_setting_left_pane"> + <field name="sh_signature" /> + </div> + <div class="o_setting_right_pane"> + <label for="sh_signature" /> + <div class="text-muted"> + Show Signature + </div> + </div> + </div> + <div class="col-12 col-lg-6 o_setting_box"> + <div class="o_setting_left_pane"> + <field name="sh_display_in_chatter" /> + </div> + <div class="o_setting_right_pane"> + <label for="sh_display_in_chatter" /> + <div class="text-muted"> + Show Message in Chatter + </div> + </div> + </div> + + <div class="col-12 col-lg-6 o_setting_box"> + <div class="o_setting_left_pane"> + <field name="sh_pdf_in_message" /> + </div> + <div class="o_setting_right_pane"> + <label for="sh_pdf_in_message" /> + <div class="text-muted"> + Send Report Url in Message + </div> + </div> + </div> + <div class="col-12 col-lg-6 o_setting_box"> + <div class="o_setting_left_pane"> + <field name="sh_ticket_url_in_message" /> + </div> + <div class="o_setting_right_pane"> + <label for="sh_ticket_url_in_message" /> + <div class="text-muted"> + Send Ticket Url in Message + </div> + </div> + </div> + </div> + <h2 id="manage_follower">Helpdesk Auto Add Followers Configuration</h2> + <div class="row mt16 o_settings_container" id="manage_auto_add_followers_div"> + <div class="col-6 o_setting_box"> + <div class="o_setting_left_pane"> + <field name="sh_auto_add_customer_as_follower" /> + </div> + <div class="o_setting_right_pane"> + <label for="sh_auto_add_customer_as_follower" /> + <div class="text-muted"></div> + </div> + </div> + </div> + </div> + </xpath> + </field> + </record> + <record id="action_helpdesk_configuration" model="ir.actions.act_window"> + <field name="name">Helpdesk Settings</field> + <field name="type">ir.actions.act_window</field> + <field name="res_model">res.config.settings</field> + <field name="view_mode">form</field> + <field name="target">inline</field> + <field name="context">{'module' : 'sh_helpdesk'}</field> + </record> + <menuitem id="menu_config_helpdesk" name="Settings" parent="sh_helpdesk.helpdesk_config_menu" sequence="11" action="action_helpdesk_configuration" groups="base.group_system,sh_helpdesk.helpdesk_group_manager" /> +</odoo> diff --git a/sh_helpdesk/views/helpdesk_menu.xml b/sh_helpdesk/views/helpdesk_menu.xml new file mode 100644 index 0000000..1264ed3 --- /dev/null +++ b/sh_helpdesk/views/helpdesk_menu.xml @@ -0,0 +1,15 @@ +<?xml version="1.0" encoding="UTF-8"?> +<odoo> + <menuitem id="helpdesk_main_menu" name="Helpdesk" web_icon="sh_helpdesk,static/description/icon.png" /> + <menuitem id="helpdesk_reporting_menu" name="Reporting" parent="helpdesk_main_menu" sequence="3" /> + <menuitem id="helpdesk_config_menu" name="Configuration" parent="helpdesk_main_menu" sequence="5" groups="sh_helpdesk.helpdesk_group_manager" /> + <!-- <record id="sh_helpdesk.new_stage" model="helpdesk.stages"> + <field name="sh_next_stage" ref="sh_helpdesk.in_progress_stage" /> + </record> + <record id="sh_helpdesk.in_progress_stage" model="helpdesk.stages"> + <field name="sh_next_stage" ref="sh_helpdesk.done_stage" /> + </record> + <record id="sh_helpdesk.done_stage" model="helpdesk.stages"> + <field name="sh_next_stage" ref="sh_helpdesk.close_stage" /> + </record> --> +</odoo> diff --git a/sh_helpdesk/views/helpdesk_priority_view.xml b/sh_helpdesk/views/helpdesk_priority_view.xml new file mode 100644 index 0000000..119aafe --- /dev/null +++ b/sh_helpdesk/views/helpdesk_priority_view.xml @@ -0,0 +1,32 @@ +<?xml version="1.0" encoding="utf-8"?> +<odoo> + <record id="helpdesk_priority_view_tree" model="ir.ui.view"> + <field name="name">helpdesk.priority.view.tree</field> + <field name="model">helpdesk.priority</field> + <field name="arch" type="xml"> + <tree editable="top"> + <field name="sequence" widget="handle" /> + <field name="name" /> + </tree> + </field> + </record> + + <record id="helpdesk_priority_action" model="ir.actions.act_window"> + <field name="name">Helpdesk Priorities</field> + <field name="res_model">helpdesk.priority</field> + <field name="view_mode">tree</field> + <field name="help" type="html"> + <p> + No Helpdesk Tickets priorities found + </p> + </field> + </record> + + <record id="helpdesk_priority_seq" model="ir.sequence"> + <field name="name">helpdesk priority sequence</field> + <field name="code">helpdesk.priority</field> + <field eval="1" name="number_next" /> + <field eval="1" name="number_increment" /> + </record> + <menuitem id="helpdesk_priority_menu" name="Helpdesk Priorities" parent="sh_helpdesk.helpdesk_config_menu" action="helpdesk_priority_action" sequence="8" /> +</odoo> diff --git a/sh_helpdesk/views/helpdesk_sla_policies.xml b/sh_helpdesk/views/helpdesk_sla_policies.xml new file mode 100644 index 0000000..a284134 --- /dev/null +++ b/sh_helpdesk/views/helpdesk_sla_policies.xml @@ -0,0 +1,71 @@ +<?xml version="1.0" encoding="utf-8"?> +<odoo> + <record id="sh_helpdesk_sla_policies_form_view" model="ir.ui.view"> + <field name="name">sh.helpdesk.sla</field> + <field name="model">sh.helpdesk.sla</field> + <field name="arch" type="xml"> + <form string="Helpdesk SLA Policies"> + <sheet> + <div class="oe_button_box" name="button_box"> + <button name="action_view_tickets" type="object" class="oe_stat_button" icon="fa-ticket" attrs="{'invisible':[('sla_ticket_count','=',0)]}"> + <div class="o_stat_info"> + <field name="sla_ticket_count" class="o_stat_value" /> + <span class="o_stat_text">SLA Tickets</span> + </div> + </button> + </div> + <div class="oe_title"> + <h1> + <field name="name"/> + </h1> + </div> + <group> + <group> + <field name="sh_team_id"/> + <field name="company_id"/> + </group> + <group> + <field name="sh_ticket_type_id"/> + </group> + </group> + <group string="SLA Target"> + <group> + <field name="sh_sla_target_type" widget="radio"/> + <field name="sh_stage_id" attrs="{'required':[('sh_sla_target_type','=','reaching_stage')],'invisible':[('sh_sla_target_type','=','assign_to')]}"/> + </group> + <group> + <div class="o_td_label"> + <label for="sh_days" string="Reach In"/> + </div> + <div class="o_row"> + <field name="sh_days"/> days<br/> + <field name="sh_hours"/> hours<br/> + <field name="sh_minutes"/> minutes<br/> + </div> + </group> + </group> + </sheet> + </form> + </field> + </record> + <record id="sh_helpdesk_sla_policies_tree_view" model="ir.ui.view"> + <field name="name">sh.helpdesk.sla</field> + <field name="model">sh.helpdesk.sla</field> + <field name="arch" type="xml"> + <tree string="Helpdesk SLA Policies"> + <field name="name"/> + <field name="sh_team_id"/> + <field name="sh_ticket_type_id"/> + <field name="sh_sla_target_type" widget="radio"/> + <field name="sh_stage_id"/> + </tree> + </field> + </record> + <record id="sh_sla_policies_action" model="ir.actions.act_window"> + <field name="name">Helpdesk SLA Policies</field> + <field name="type">ir.actions.act_window</field> + <field name="res_model">sh.helpdesk.sla</field> + <field name="view_mode">tree,form</field> + </record> + <menuitem id="sh_menu_helpdesk_sla" name="Helpdesk SLA Policies" parent="sh_helpdesk.helpdesk_config_menu" action="sh_sla_policies_action" sequence="9" groups="sh_helpdesk.group_helpdesk_sla_policy"/> +</odoo>
\ No newline at end of file diff --git a/sh_helpdesk/views/helpdesk_stages_view.xml b/sh_helpdesk/views/helpdesk_stages_view.xml new file mode 100644 index 0000000..208d250 --- /dev/null +++ b/sh_helpdesk/views/helpdesk_stages_view.xml @@ -0,0 +1,50 @@ +<?xml version="1.0" encoding="UTF-8"?> +<odoo> + <record id="helpdesk_stages_form_view" model="ir.ui.view"> + <field name="name">helpdesk.stages.form.view</field> + <field name="model">helpdesk.stages</field> + <field name="arch" type="xml"> + <form string="Stage"> + <sheet> + <group> + <group> + <field name="name" /> + <field name="mail_template_ids" widget="many2many_tags" /> + <field name="is_cancel_button_visible" /> + <field name="is_done_button_visible" /> + </group> + <group> + <field name="sh_next_stage" /> + <field name="sh_group_ids" widget="many2many_tags" /> + </group> + </group> + </sheet> + </form> + </field> + </record> + <record id="helpdesk_stages_tree_view" model="ir.ui.view"> + <field name="name">helpdesk.stages.tree.view</field> + <field name="model">helpdesk.stages</field> + <field name="arch" type="xml"> + <tree string="Stage"> + <field name="sequence" widget="handle" /> + <field name="name" /> + </tree> + </field> + </record> + <record id="helpdesk_stages_action" model="ir.actions.act_window"> + <field name="name">Helpdesk Stages</field> + <field name="res_model">helpdesk.stages</field> + <field name="view_mode">tree,form</field> + <field name="help" type="html"> + <p class="oe_view_nocontent_create">Create a New Stage</p> + </field> + </record> + <record id="sequence_helpdesk_stages_seq" model="ir.sequence"> + <field name="name">Helpdesk Stages Sequence</field> + <field name="code">helpdesk.stages</field> + <field eval="1" name="number_next" /> + <field eval="1" name="number_increment" /> + </record> + <menuitem id="helpdesk_stages_menu" name="Helpdesk Stages" parent="sh_helpdesk.helpdesk_config_menu" action="helpdesk_stages_action" sequence="5" /> +</odoo> diff --git a/sh_helpdesk/views/helpdesk_subcategory_view.xml b/sh_helpdesk/views/helpdesk_subcategory_view.xml new file mode 100644 index 0000000..efa92f9 --- /dev/null +++ b/sh_helpdesk/views/helpdesk_subcategory_view.xml @@ -0,0 +1,52 @@ +<?xml version="1.0" encoding="utf-8"?> +<odoo> + <record id="helpdesk_subcategory_view_form" model="ir.ui.view"> + <field name="name">helpdesk.subcategory.view.form</field> + <field name="model">helpdesk.subcategory</field> + <field name="arch" type="xml"> + <form string="Helpdesk SubCategory"> + <sheet> + <!-- <field name="image_medium" widget="image" class="oe_avatar"/> --> + <div class="oe_title"> + <label class="oe_edit_only" for="name" string="SubCategory Name" /> + <h2><field name="name" /></h2> + </div> + <group> + <group> + <field name="parent_category_id" /> + </group> + </group> + </sheet> + </form> + </field> + </record> + + <record id="helpdesk_subcategory_view_tree" model="ir.ui.view"> + <field name="name">helpdesk.subcategory.view.tree</field> + <field name="model">helpdesk.subcategory</field> + <field name="arch" type="xml"> + <tree string="Helpdesk SubCategory"> + <field name="sequence" widget="handle" /> + <field name="parent_category_id" /> + <field name="name" /> + </tree> + </field> + </record> + + <record id="helpdesk_subcategory_action" model="ir.actions.act_window"> + <field name="name">Helpdesk Sub Categories</field> + <field name="res_model">helpdesk.subcategory</field> + <field name="view_mode">tree,form</field> + <field name="help" type="html"> + <p class="oe_view_nocontent_create">Create new sub category</p> + </field> + </record> + + <record id="helpdesk_subcategory_seq" model="ir.sequence"> + <field name="name">Helpdesk Sub Categories Sequence</field> + <field name="code">helpdesk.subcategory</field> + <field eval="1" name="number_next" /> + <field eval="1" name="number_increment" /> + </record> + <menuitem id="helpdesk_subcategory_menu" name="Helpdesk Sub Categories" parent="sh_helpdesk.helpdesk_config_menu" action="helpdesk_subcategory_action" sequence="7" /> +</odoo> diff --git a/sh_helpdesk/views/helpdesk_subject_type_view.xml b/sh_helpdesk/views/helpdesk_subject_type_view.xml new file mode 100644 index 0000000..7ee645c --- /dev/null +++ b/sh_helpdesk/views/helpdesk_subject_type_view.xml @@ -0,0 +1,36 @@ +<?xml version="1.0" encoding="UTF-8"?> +<odoo> + <record id="helpdesk_subject_type_form_view" model="ir.ui.view"> + <field name="name">helpdesk.subject.type.form.view</field> + <field name="model">helpdesk.sub.type</field> + <field name="arch" type="xml"> + <form string="Subject Type"> + <sheet> + <group> + <group> + <field name="name" /> + </group> + </group> + </sheet> + </form> + </field> + </record> + <record id="helpdesk_subject_type_tree_view" model="ir.ui.view"> + <field name="name">helpdesk.subject.type.tree.view</field> + <field name="model">helpdesk.sub.type</field> + <field name="arch" type="xml"> + <tree string="Subject Type"> + <field name="name" /> + </tree> + </field> + </record> + <record id="helpdesk_subject_type_action" model="ir.actions.act_window"> + <field name="name">Helpdesk Subject Type</field> + <field name="res_model">helpdesk.sub.type</field> + <field name="view_mode">tree,form</field> + <field name="help" type="html"> + <p class="oe_view_nocontent_create">Create a New Subject Type</p> + </field> + </record> + <menuitem id="helpdesk_subject_type_menu" name="Helpdesk Subject Types" parent="sh_helpdesk.helpdesk_config_menu" action="helpdesk_subject_type_action" sequence="3" /> +</odoo> diff --git a/sh_helpdesk/views/helpdesk_tags_view.xml b/sh_helpdesk/views/helpdesk_tags_view.xml new file mode 100644 index 0000000..4ab418e --- /dev/null +++ b/sh_helpdesk/views/helpdesk_tags_view.xml @@ -0,0 +1,36 @@ +<?xml version="1.0" encoding="UTF-8"?> +<odoo> + <record id="helpdesk_tags_form_view" model="ir.ui.view"> + <field name="name">helpdesk.tags.form.view</field> + <field name="model">helpdesk.tags</field> + <field name="arch" type="xml"> + <form string="Tags"> + <sheet> + <group> + <group> + <field name="name" /> + </group> + </group> + </sheet> + </form> + </field> + </record> + <record id="helpdesk_tags_tree_view" model="ir.ui.view"> + <field name="name">helpdesk.tags.tree.view</field> + <field name="model">helpdesk.tags</field> + <field name="arch" type="xml"> + <tree string="Tags"> + <field name="name" /> + </tree> + </field> + </record> + <record id="helpdesk_tags_action" model="ir.actions.act_window"> + <field name="name">Helpdesk Tags</field> + <field name="res_model">helpdesk.tags</field> + <field name="view_mode">tree,form</field> + <field name="help" type="html"> + <p class="oe_view_nocontent_create">Create a New Tag</p> + </field> + </record> + <menuitem id="helpdesk_tags_menu" name="Helpdesk Tags" parent="sh_helpdesk.helpdesk_config_menu" action="helpdesk_tags_action" sequence="4" /> +</odoo> diff --git a/sh_helpdesk/views/helpdesk_team_view.xml b/sh_helpdesk/views/helpdesk_team_view.xml new file mode 100644 index 0000000..934b064 --- /dev/null +++ b/sh_helpdesk/views/helpdesk_team_view.xml @@ -0,0 +1,71 @@ +<?xml version="1.0" encoding="UTF-8"?> +<odoo> + <record id="helpdesk_team_form_view" model="ir.ui.view"> + <field name="name">helpdesk.team.form.view</field> + <field name="model">helpdesk.team</field> + <field name="arch" type="xml"> + <form string="Helpdesk Team"> + <sheet> + <div class="oe_button_box" name="button_box" groups="sh_helpdesk.group_helpdesk_sla_policy"> + <button name="action_view_sla" type="object" class="oe_stat_button" icon="fa-ticket" attrs="{'invisible':[('sla_count','=',0)]}" groups="sh_helpdesk.group_helpdesk_sla_policy"> + <div class="o_stat_info"> + <field name="sla_count" class="o_stat_value" /> + <span class="o_stat_text">Helpdesk SLA</span> + </div> + </button> + </div> + <group> + <group> + <field name="name" /> + <field name="sh_resource_calendar_id"/> + </group> + <group> + <field name="team_head" /> + </group> + </group> + <notebook> + <page name="members" string="Team Members"> + <field name="team_members" widget="many2many"> + <kanban quick_create="false" create="true" delete="true"> + <field name="id" /> + <field name="name" /> + <templates> + <t t-name="kanban-box"> + <div class="oe_kanban_global_click" style="max-width: 200px;"> + <div class="o_kanban_record_top"> + <img t-att-src="kanban_image('res.users', 'image_128', record.id.raw_value)" class="oe_avatar oe_kanban_avatar_smallbox o_image_40_cover mb0" alt="Avatar" /> + <div class="o_kanban_record_headings ml8"> + <strong class="o_kanban_record_title"><field name="name" /></strong> + </div> + </div> + </div> + </t> + </templates> + </kanban> + </field> + </page> + </notebook> + </sheet> + </form> + </field> + </record> + <record id="helpdesk_team_tree_view" model="ir.ui.view"> + <field name="name">helpdesk.team.tree.view</field> + <field name="model">helpdesk.team</field> + <field name="arch" type="xml"> + <tree string="Helpdesk Team"> + <field name="name" /> + <field name="team_head" /> + </tree> + </field> + </record> + <record id="helpdesk_team_action" model="ir.actions.act_window"> + <field name="name">Helpdesk Team</field> + <field name="res_model">helpdesk.team</field> + <field name="view_mode">tree,form</field> + <field name="help" type="html"> + <p class="oe_view_nocontent_create">Create a New Team</p> + </field> + </record> + <menuitem id="helpdesk_team_menu" name="Helpdesk Teams" parent="sh_helpdesk.helpdesk_config_menu" action="helpdesk_team_action" sequence="1" /> +</odoo> diff --git a/sh_helpdesk/views/helpdesk_ticket_multi_action_view.xml b/sh_helpdesk/views/helpdesk_ticket_multi_action_view.xml new file mode 100644 index 0000000..0ace7e1 --- /dev/null +++ b/sh_helpdesk/views/helpdesk_ticket_multi_action_view.xml @@ -0,0 +1,13 @@ +<?xml version="1.0"?> + +<odoo> + <record id="model_helpdesk_ticket_multi_action" model="ir.actions.server"> + <field name="name">Mass Update Ticket</field> + <field name="model_id" ref="sh_helpdesk.model_helpdesk_ticket" /> + <field name="binding_model_id" ref="sh_helpdesk.model_helpdesk_ticket" /> + <field name="groups_id" eval="[(4, ref('sh_helpdesk.group_allow_multi_action'))]" /> + <field name="state">code</field> + <field name="binding_view_types">list</field> + <field name="code"> action = model.action_mass_update_wizard()</field> + </record> +</odoo>
\ No newline at end of file diff --git a/sh_helpdesk/views/helpdesk_ticket_portal_template.xml b/sh_helpdesk/views/helpdesk_ticket_portal_template.xml new file mode 100644 index 0000000..e08ee6f --- /dev/null +++ b/sh_helpdesk/views/helpdesk_ticket_portal_template.xml @@ -0,0 +1,663 @@ +<?xml version="1.0" encoding="UTF-8"?> +<odoo> + <template id="sh_portal_assets" inherit_id="portal.assets_frontend"> + <xpath expr="." position="inside"> + <script type="text/javascript" src="/sh_helpdesk/static/src/js/portal.js" /> + <link rel="stylesheet" href="/sh_helpdesk/static/src/css/bootstrap-multiselect.min.css" type="text/css"/> + <script type="text/javascript" src="/sh_helpdesk/static/src/js/bootstrap-multiselect.min.js"></script> + </xpath> + </template> + <template id="portal_my_home_menu_ticket" name="Portal layout : ticket menu entries" inherit_id="portal.portal_breadcrumbs" priority="30"> + <xpath expr="//ol[hasclass('o_portal_submenu')]" position="inside"> + <li t-if="page_name == 'ticket' or ticket" t-attf-class="breadcrumb-item #{'active ' if not ticket else ''}"> + <a t-if="ticket" t-attf-href="/my/tickets?{{ keep_query() }}">Tickets</a> + <t t-else="">Tickets</t> + </li> + <li t-if="ticket" class="breadcrumb-item active"> + <t t-esc="ticket.name" t-if="ticket.name" /> + <t t-else=""><em>Ticket</em></t> + </li> + </xpath> + </template> + + <template id="portal_my_home_ticket" name="Portal My Home : ticket entries" inherit_id="portal.portal_my_home" priority="30"> + <xpath expr="//div[hasclass('o_portal_docs')]" position="inside"> + <t t-call="portal.portal_docs_entry"> + <t t-set="title">Tickets</t> + <t t-set="url" t-value="'/my/tickets'" /> + <t t-set="count" t-value="ticket_count" /> + </t> + </xpath> + </template> + + <template id="portal_my_tickets" name="My Tickets"> + <t t-call="portal.portal_layout"> + <t t-set="breadcrumbs_searchbar" t-value="True" /> + + <t t-call="portal.portal_searchbar"> + <t t-set="title">Tickets</t> + <div class="form-inline ml-lg-4"> + <a id="new_request" class="btn btn-success btn-sm" name="new_request" title="Create Support Request" aria-label="Create Support Request" role="button"><i class="fa fa-plus" /> Create New</a> + </div> + </t> + <div id="createticketModal" class="modal fade" role="dialog"> + <div class="modal-dialog"> + <!-- Modal content--> + <div class="modal-content"> + <div class="modal-header"> + <h4 class="modal-title">Create Helpdesk Ticket</h4> + <button type="button" class="close" data-dismiss="modal">&times;</button> + </div> + <div class="modal-body"> + <form action="/portal-create-ticket" id="form_id" method="POST" class="form-horizontal mt32" enctype="multipart/form-data"> + <t t-if="request.env.user.has_group('base.group_portal') and request.env.user.sh_portal_user_access or not request.env.user.has_group('base.group_portal')"> + <div class="row"> + <div class="col-6"> + <label class="control-label" for="partner">Partner:</label> + <input class="form-control" list="partner_ids" name="partner" id="partner" /> + <input type="hidden" name="partner_id" id="partner_id" /> + <datalist id="partner_ids"> </datalist> + </div> + </div> + </t> + <div class="row"> + <t t-if="request.env.user.has_group('base.group_portal') and not request.env.user.sh_portal_user_access"> + <div class="col-6"> + <div t-attf-class="form-group #{error and 'portal_contact_name' in error and 'has-error' or ''}"> + <label class="control-label" for="portal_contact_name">Name</label> + <input type="text" class="form-control" id="portal_contact_name" name="portal_contact_name" t-att-value="request.env.user.partner_id.name" readonly="True" /> + </div> + </div> + <div class="col-6"> + <div name="portal_email_from_container" t-attf-class="form-group #{error and 'portal_email' in error and 'has-error' or ''}"> + <label class="control-label" for="portal_email">Email</label> + <input type="email" class="form-control" id="portal_email" name="portal_email" t-att-value="request.env.user.partner_id.email" readonly="True" /> + </div> + </div> + </t> + <t t-else=""> + <div class="col-6"> + <div t-attf-class="form-group #{error and 'portal_contact_name' in error and 'has-error' or ''}"> + <label class="control-label" for="portal_contact_name">Name</label> + <input type="text" class="form-control" id="portal_contact_name" name="portal_contact_name" required="True" /> + </div> + </div> + <div class="col-6"> + <div name="portal_email_from_container" t-attf-class="form-group #{error and 'portal_email' in error and 'has-error' or ''}"> + <label class="control-label" for="portal_email">Email</label> + <input type="email" class="form-control" id="portal_email" name="portal_email" required="True" /> + </div> + </div> + </t> + </div> + <t t-if="request.env.user.sh_portal_user_access and request.env.user.sh_portal_user_access=='manager'"> + <div class="row"> + <t t-if="request.env.company.sh_display_multi_user"> + <div class="col-4"> + <div t-attf-class="form-group"> + <label class="control-label" for="portal_team">Team</label> + <select class="form-control form-field o_website_form_required_custom" id="portal_team" name="portal_team"> + <option value="team">Select Team</option> + <t t-foreach="request.env['helpdesk.team'].sudo().search([])" t-as="team"> + <option t-att-value="team.id"><t t-esc="team.name" /></option> + </t> + </select> + </div> + </div> + <div class="col-4"> + <div t-attf-class="form-group"> + <label class="control-label" for="portal_assign_user">Assign To</label> + <select class="form-control form-field o_website_form_required_custom" id="portal_assign_user" name="portal_assign_user"> + <option value="user">Select Assign User</option> + <t t-foreach="request.env['res.users'].sudo().search(['|',('share','=',False),('sh_portal_user_access','!=',False)])" t-as="user"> + <option t-att-value="user.id"><t t-esc="user.name" /></option> + </t> + </select> + </div> + </div> + <div class="col-4"> + <div t-attf-class="form-group"> + <label class="control-label" for="portal_assign_multi_user">Assign Multi Users</label> + <select class="form-control form-field o_website_form_required_custom" multiple="multiple" id="portal_assign_multi_user" name="portal_assign_multi_user"> + <option value="users">Select Multi Users</option> + <t t-foreach="request.env['res.users'].sudo().search(['|',('share','=',False),('sh_portal_user_access','!=',False)])" t-as="user"> + <option t-att-value="user.id"><t t-esc="user.name" /></option> + </t> + </select> + </div> + </div> + </t> + <t t-if="not request.env.company.sh_display_multi_user"> + <div class="col-6"> + <div t-attf-class="form-group"> + <label class="control-label" for="portal_team">Team</label> + <select class="form-control form-field o_website_form_required_custom" id="portal_team" name="portal_team"> + <option value="team">Select Team</option> + <t t-foreach="request.env['helpdesk.team'].sudo().search([])" t-as="team"> + <option t-att-value="team.id"><t t-esc="team.name" /></option> + </t> + </select> + </div> + </div> + <div class="col-6"> + <div t-attf-class="form-group"> + <label class="control-label" for="portal_assign_user">Assign To</label> + <select class="form-control form-field o_website_form_required_custom" id="portal_assign_user" name="portal_assign_user"> + <option value="user">Select Assign User</option> + <t t-foreach="request.env['res.users'].sudo().search(['|',('share','=',False),('sh_portal_user_access','!=',False)])" t-as="user"> + <option t-att-value="user.id"><t t-esc="user.name" /></option> + </t> + </select> + </div> + </div> + </t> + </div> + </t> + <t t-if="request.env.user.sh_portal_user_access and request.env.user.sh_portal_user_access=='leader'"> + <div class="row"> + <t t-if="request.env.company.sh_display_multi_user"> + <div class="col-4"> + <div t-attf-class="form-group"> + <label class="control-label" for="portal_team">Team</label> + <select class="form-control form-field o_website_form_required_custom" id="portal_team" name="portal_team"> + <option value="team">Select Team</option> + <t t-foreach="request.env['helpdesk.team'].sudo().search(['|',('team_head','=',request.env.user.id),('team_members','in',[request.env.user.id])])" t-as="team"> + <option t-att-value="team.id"><t t-esc="team.name" /></option> + </t> + </select> + </div> + </div> + <div class="col-4"> + <div t-attf-class="form-group"> + <label class="control-label" for="portal_assign_user">Assign To</label> + <select class="form-control form-field o_website_form_required_custom" id="portal_assign_user" name="portal_assign_user"> + <option value="user">Select Assign User</option> + <t t-foreach="request.env['res.users'].sudo().search(['|',('share','=',False),('sh_portal_user_access','!=',False)])" t-as="user"> + <option t-att-value="user.id"><t t-esc="user.name" /></option> + </t> + </select> + </div> + </div> + <div class="col-4"> + <div t-attf-class="form-group"> + <label class="control-label" for="portal_assign_multi_user">Assign Multi Users</label> + <select class="form-control form-field o_website_form_required_custom" multiple="multiple" id="portal_assign_multi_user" name="portal_assign_multi_user"> + <option value="users">Select Assign User</option> + <t t-foreach="request.env['res.users'].sudo().search(['|',('share','=',False),('sh_portal_user_access','!=',False)])" t-as="user"> + <option t-att-value="user.id"><t t-esc="user.name" /></option> + </t> + </select> + </div> + </div> + </t> + <t t-if="not request.env.company.sh_display_multi_user"> + <div class="col-6"> + <div t-attf-class="form-group"> + <label class="control-label" for="portal_team">Team</label> + <select class="form-control form-field o_website_form_required_custom" id="portal_team" name="portal_team"> + <option value="team">Select Team</option> + <t t-foreach="request.env['helpdesk.team'].sudo().search(['|',('team_head','=',request.env.user.id),('team_members','in',[request.env.user.id])])" t-as="team"> + <option t-att-value="team.id"><t t-esc="team.name" /></option> + </t> + </select> + </div> + </div> + <div class="col-6"> + <div t-attf-class="form-group"> + <label class="control-label" for="portal_assign_user">Assign To</label> + <select class="form-control form-field o_website_form_required_custom" id="portal_assign_user" name="portal_assign_user"> + <option value="user">Select Assign User</option> + <t t-foreach="request.env['res.users'].sudo().search(['|',('share','=',False),('sh_portal_user_access','!=',False)])" t-as="user"> + <option t-att-value="user.id"><t t-esc="user.name" /></option> + </t> + </select> + </div> + </div> + </t> + </div> + </t> + <div class="row"> + <div class="col-6"> + <div t-attf-class="form-group"> + <label class="control-label" for="portal_category">Category</label> + <select class="form-control form-field o_website_form_required_custom" id="portal_category" name="portal_category"> + <option value="category">Select Category</option> + <t t-foreach="request.env['helpdesk.category'].sudo().search([])" t-as="category"> + <option t-att-value="category.id"><t t-esc="category.name" /></option> + </t> + </select> + </div> + </div> + <div class="col-6"> + <div t-attf-class="form-group"> + <label class="control-label" for="portal_subcategory">Sub Category</label> + <select class="form-control form-field o_website_form_required_custom" id="portal_subcategory" name="portal_subcategory"> + <option value="sub_category">Select Sub Category</option> + <t t-foreach="request.env['helpdesk.subcategory'].sudo().search([])" t-as="subcategory"> + <option t-att-value="subcategory.id"><t t-esc="subcategory.name" /></option> + </t> + </select> + </div> + </div> + </div> + <div class="row"> + <div class="col-6"> + <div t-attf-class="form-group"> + <label class="control-label" for="portal_subject">Subject</label> + <select class="form-control form-field o_website_form_required_custom" id="portal_subject" name="portal_subject"> + <option value="subject">Select Subject</option> + <t t-foreach="request.env['helpdesk.sub.type'].sudo().search([])" t-as="subject"> + <option t-att-value="subject.id"><t t-esc="subject.name" /></option> + </t> + </select> + </div> + </div> + <div class="col-6"> + <div t-attf-class="form-group #{error and 'portal_description' in error and 'has-error' or ''}"> + <label class="control-label" for="portal_description">Description</label> + <textarea id="description" name="portal_description" class="form-control form-field o_website_form_required_custom" placeholder="Description" /> + </div> + </div> + </div> + <div class="row"> + <div class="col-6"> + <div t-attf-class="form-group"> + <label class="control-label" for="portal_priority">Priority</label> + <select class="form-control form-field o_website_form_required_custom" id="portal_priority" name="portal_priority"> + <option value="priority">Select Priority</option> + <t t-foreach="request.env['helpdesk.priority'].sudo().search([])" t-as="priority"> + <option t-att-value="priority.id"><t t-esc="priority.name" /></option> + </t> + </select> + </div> + </div> + <div class="col-6"> + <div name="portal_file_container" t-attf-class="form-group #{error and 'portal_file' in error and 'has-error' or ''}"> + <label class="control-label" for="portal_file">Attachments</label> + <label class="custom-file"> + <input name="portal_file" id="portal_file" type="file" multiple="multiple" /> + <span class="custom-file-control" /> + </label> + </div> + </div> + </div> + <div class="row" style="text-align: right;"> + <div class="col-12"> + <button type="submit" id="create_helpdesk_ticket" class="btn btn-primary">Create Ticket</button> + <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button> + </div> + </div> + </form> + </div> + </div> + </div> + </div> + <t t-if="not tickets"> + <p>There are currently no tickets for your account.</p> + </t> + <t t-if="grouped_tickets" t-call="portal.portal_table"> + <t t-foreach="grouped_tickets" t-as="ticket"> + <thead> + <tr t-attf-class="{{'thead-light' if not groupby == 'none' else ''}}"> + <th t-if="groupby == 'create_by'"> + <em class="font-weight-normal text-muted">Created By:</em> + <span t-field="ticket[0].create_uid.name" /> + </th> + <th t-if="groupby == 'ticket_type'"> + <em class="font-weight-normal text-muted">Ticket Type:</em> + <span t-field="ticket[0].ticket_type.name" /> + </th> + <th t-if="groupby == 'status'"> + <em class="font-weight-normal text-muted">Status:</em> + <span t-esc="ticket[0].stage_id.name" /> + </th> + <th t-if="groupby == 'customer'"> + <em class="font-weight-normal text-muted">Customer:</em> + <span t-esc="ticket[0].partner_id.name" /> + </th> + <th t-if="groupby == 'category'"> + <em class="font-weight-normal text-muted">Category:</em> + <span t-esc="ticket[0].category_id.name" /> + </th> + <th t-if="groupby == 'subcategory'"> + <em class="font-weight-normal text-muted">Sub Category:</em> + <span t-esc="ticket[0].sub_category_id.name" /> + </th> + + <th t-if="groupby == 'subject'"> + <em class="font-weight-normal text-muted">Subject:</em> + <span t-esc="ticket[0].subject_id.name" /> + </th> + <th t-if="groupby == 'priority'"> + <em class="font-weight-normal text-muted">Priority:</em> + <span t-esc="ticket[0].priority.name" /> + </th> + <th t-if="groupby == 'state'"> + <em class="font-weight-normal text-muted">Reply Status:</em> + <span t-esc="ticket[0].state" /> + </th> + <th>Create Date</th> + <th>Last Update Date</th> + <th>Ticket Type</th> + <th>Status</th> + </tr> + </thead> + <tbody> + <t t-foreach="ticket" t-as="t"> + <tr> + <td> + <a t-att-href="t.get_portal_url()" t-att-title="t.name"> + <t t-esc="t.name" t-if="t.name" /> + <em t-else="">Ticket</em> + </a> + </td> + <td><span t-field="t.create_date" t-options='{"widget": "date"}' /></td> + <td><span t-field="t.write_date" t-options='{"widget": "date"}' /></td> + <td><span t-field="t.ticket_type" /></td> + <td><span t-field="t.stage_id" /></td> + </tr> + </t> + </tbody> + </t> + </t> + </t> + </template> + + <template id="portal_ticket_page" name="Ticket Portal Template" inherit_id="portal.portal_sidebar" primary="True"> + <xpath expr="//div[hasclass('o_portal_sidebar')]" position="inside"> + <div class="row mt16 o_portal_ticket_sidebar"> + <!-- Sidebar --> + <t t-call="portal.portal_record_sidebar"> + <t t-set="classes" t-value="'col-12 col-lg flex-lg-grow-0 d-print-none'" /> + <t t-set="title"> + <h2 class="mb-0"> + <b t-if="ticket" t-field="ticket.name" /> + <b t-else="Ticket" t-field="ticket.name" /> + </h2> + </t> + + <t t-set="entries"> + <ul class="list-group list-group-flush flex-wrap flex-row flex-lg-column"> + <li class="list-group-item flex-grow-1"> + <div class="o_download_pdf btn-toolbar flex-sm-nowrap"> + <div class="btn-group flex-grow-1 mr-1 mb-1"> + <a class="btn btn-secondary btn-block o_download_btn" t-att-href="ticket.get_portal_url(report_type='pdf', download=True)" title="Download"><i class="fa fa-download" /> Download</a> + </div> + </div> + </li> + <li t-if="ticket.user_id" class="list-group-item flex-grow-1"> + <div class="small mb-1"><strong class="text-muted">Your Contact</strong></div> + <div class="row"> + <div class="col flex-grow-0 pr-2"> + <img t-if="ticket.user_id.image_128" class="rounded-circle mt-1 o_portal_contact_img" t-att-src="image_data_uri(ticket.user_id.image_128)" alt="Contact" /> + <img t-else="" class="rounded-circle mt-1 o_portal_contact_img" src="/web/static/src/img/user_menu_avatar.png" alt="Contact" /> + </div> + <div class="col pl-0" style="min-width: 150px;"> + <span t-field="ticket.user_id" t-options='{"widget": "contact", "fields": ["name", "phone"], "no_marker": True}' /> + <a href="#discussion" class="small"><i class="fa fa-comment"></i> Send message</a> + </div> + </div> + </li> + </ul> + </t> + </t> + + <!-- Page Content --> + <div id="ticket_content" class="col-12 col-lg justify-content-end"> + <div t-attf-class="card #{'pb-5' if report_type == 'html' else ''}"> + <div t-call="sh_helpdesk.helpdesk_ticket_portal_content" /> + </div> + + <!-- chatter --> + <div id="ticket_communication" class="mt-4"> + <h2>History</h2> + <t t-call="portal.message_thread"> + <t t-set="object" t-value="ticket" /> + </t> + </div> + </div> + </div> + </xpath> + </template> + <template id="helpdesk_ticket_portal_content" name="Helpdesk Ticket Portal Content"> + <!-- Intro --> + + <div id="introduction" t-attf-class="pb-2 pt-3 #{'card-header bg-white' if report_type == 'html' else ''}"> + <h2 class="my-0"> + <strong><em t-esc="ticket.name" /></strong> + </h2> + </div> + <div t-attf-class="#{'card-body' if report_type == 'html' else ''}"> + <div id="informations"> + <div class="row"> + <div class="mb-3 col-6"> + <div class="row"> + <div class="col-6"> + <strong>Ticket Type</strong> + </div> + <div class="col-6"> + <span t-field="ticket.ticket_type" /> + </div> + </div> + </div> + <div class="mb-3 col-6"> + <div class="row"> + <div class="col-6"> + <strong>Create Date</strong> + </div> + <div class="col-6"> + <span t-field="ticket.create_date" /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="mb-3 col-6"> + <div class="row"> + <div class="col-6"> + <strong>Last Update Date</strong> + </div> + <div class="col-6"> + <span t-field="ticket.write_date" /> + </div> + </div> + </div> + <div class="mb-3 col-6"> + <div class="row"> + <div class="col-6"> + <strong>Person Name</strong> + </div> + <div class="col-6"> + <span t-field="ticket.person_name" /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="mb-3 col-6"> + <div class="row"> + <div class="col-6"> + <strong>Ticket Subject Type</strong> + </div> + <div class="col-6"> + <span t-field="ticket.subject_id" /> + </div> + </div> + </div> + <div class="mb-3 col-6"> + <div class="row"> + <div class="col-6"> + <strong>Email</strong> + </div> + <div class="col-6"> + <span t-field="ticket.email" /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="mb-3 col-6"> + <div class="row"> + <div class="col-6"> + <strong>Category</strong> + </div> + <div class="col-6"> + <span t-field="ticket.category_id" /> + </div> + </div> + </div> + <div class="mb-3 col-6"> + <div class="row"> + <div class="col-6"> + <strong>Replied Date</strong> + </div> + <div class="col-6"> + <span t-field="ticket.replied_date" /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="mb-3 col-6"> + <div class="row"> + <div class="col-6"> + <strong>Sub Category</strong> + </div> + <div class="col-6"> + <span t-field="ticket.sub_category_id" /> + </div> + </div> + </div> + <div class="mb-3 col-6"> + <div class="row"> + <div class="col-6"> + <strong>Closed Date</strong> + </div> + <div class="col-6"> + <span t-field="ticket.close_date" /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="mb-3 col-6"> + <div class="row"> + <div class="col-6"> + <strong>Priority</strong> + </div> + <div class="col-6"> + <span t-field="ticket.priority" /> + </div> + </div> + </div> + <div class="mb-3 col-6"> + <div class="row"> + <div class="col-6"> + <strong>Closed By</strong> + </div> + <div class="col-6"> + <span t-field="ticket.close_by" /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="mb-3 col-6"> + <div class="row"> + <div class="col-6"> + <strong>Cancelled Date</strong> + </div> + <div class="col-6"> + <span t-field="ticket.cancel_date" /> + </div> + </div> + </div> + <div class="mb-3 col-6"> + <div class="row"> + <div class="col-6"> + <strong>Cancelled By</strong> + </div> + <div class="col-6"> + <span t-field="ticket.cancel_by" /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="mb-3 col-6"> + <div class="row"> + <div class="col-6"> + <strong>Status</strong> + </div> + <div class="col-6"> + <span t-field="ticket.stage_id" /> + </div> + </div> + </div> + <div class="mb-3 col-6"> + <div class="row"> + <div class="col-6"> + <strong>Cancelled Reason</strong> + </div> + <div class="col-6"> + <span t-field="ticket.cancel_reason" /> + </div> + </div> + </div> + </div> + <t t-if="ticket.comment"> + <div class="row"> + <div class="mb-3 col-12"> + <strong>Customer Comment</strong> + </div> + </div> + <div class="row"> + <div class="mb-3 col-12"> + <span t-field="ticket.comment" /> + </div> + </div> + </t> + <t t-if="ticket.description"> + <div class="row"> + <div class="mb-3 col-12"> + <strong>Description</strong> + </div> + </div> + <div class="row"> + <div class="mb-3 col-12"> + <span t-field="ticket.description" /> + </div> + </div> + </t> + <t t-if="ticket.priority_new and ticket.customer_comment"> + <div class="row"> + <div class="mb-3 col-6"> + <div class="row"> + <div class="col-6"> + <strong>Customer Rating</strong> + </div> + <div class="col-6"> + <span class="float-right" title="Rating" role="img" t-attf-aria-label="Rating: #{ticket.priority_new} on 3"> + <t t-foreach="range(2, 7)" t-as="i"> + <span t-attf-class="fa fa-lg fa-star#{'' if i <= int(ticket.priority_new) else '-o'}" /> + </t> + </span> + </div> + </div> + </div> + <div class="mb-3 col-6"> + <div class="row"> + <div class="col-6"> + <strong>Customer Comment</strong> + </div> + <div class="col-6"> + <span t-field="ticket.customer_comment" /> + </div> + </div> + </div> + </div> + </t> + </div> + </div> + </template> +</odoo> diff --git a/sh_helpdesk/views/helpdesk_ticket_type_view.xml b/sh_helpdesk/views/helpdesk_ticket_type_view.xml new file mode 100644 index 0000000..ce622df --- /dev/null +++ b/sh_helpdesk/views/helpdesk_ticket_type_view.xml @@ -0,0 +1,44 @@ +<?xml version="1.0" encoding="UTF-8"?> +<odoo> + <record id="helpdesk_ticket_type_form_view" model="ir.ui.view"> + <field name="name">helpdesk.ticket.type.form.view</field> + <field name="model">helpdesk.ticket.type</field> + <field name="arch" type="xml"> + <form string="Ticket Type"> + <sheet> + <div class="oe_button_box" name="button_box" groups="sh_helpdesk.group_helpdesk_sla_policy"> + <button name="action_view_sla" type="object" class="oe_stat_button" icon="fa-ticket" attrs="{'invisible':[('sla_count','=',0)]}" groups="sh_helpdesk.group_helpdesk_sla_policy"> + <div class="o_stat_info"> + <field name="sla_count" class="o_stat_value" /> + <span class="o_stat_text">Helpdesk SLA</span> + </div> + </button> + </div> + <group> + <group> + <field name="name" /> + </group> + </group> + </sheet> + </form> + </field> + </record> + <record id="helpdesk_ticket_type_tree_view" model="ir.ui.view"> + <field name="name">helpdesk.ticket.type.tree.view</field> + <field name="model">helpdesk.ticket.type</field> + <field name="arch" type="xml"> + <tree string="Ticket Type"> + <field name="name" /> + </tree> + </field> + </record> + <record id="helpdesk_ticket_type_action" model="ir.actions.act_window"> + <field name="name">Helpdesk Ticket Type</field> + <field name="res_model">helpdesk.ticket.type</field> + <field name="view_mode">tree,form</field> + <field name="help" type="html"> + <p class="oe_view_nocontent_create">Create a New Ticket Type</p> + </field> + </record> + <menuitem id="helpdesk_ticket_type_menu" name="Helpdesk Ticket Types" parent="sh_helpdesk.helpdesk_config_menu" action="helpdesk_ticket_type_action" sequence="2" /> +</odoo> diff --git a/sh_helpdesk/views/helpdesk_ticket_update_wizard_view.xml b/sh_helpdesk/views/helpdesk_ticket_update_wizard_view.xml new file mode 100644 index 0000000..02320eb --- /dev/null +++ b/sh_helpdesk/views/helpdesk_ticket_update_wizard_view.xml @@ -0,0 +1,47 @@ +<?xml version="1.0"?> + +<odoo> + <record id="sh_helpdesk_ticket_mass_update_wizard_form_view" model="ir.ui.view"> + <field name="name">sh.helpdesk.ticket.mass.update.wizard.form.view</field> + <field name="model">sh.helpdesk.ticket.mass.update.wizard</field> + <field name="arch" type="xml"> + <form string="Ticket Mass Update"> + <group> + <field name="check_sh_display_multi_user" invisible="1" /> + <group string="Update Assign To"> + <field name="helpdesks_ticket_ids" invisible="1" widget="many2many_tags" /> + <field name="check_assign_to" /> + <field name="assign_to" attrs="{'invisible': [('check_assign_to', '=', False)],'required':[('check_assign_to','=',True)]}" /> + </group> + <group string="Update Assign To Multiuser" attrs="{'invisible': [('check_sh_display_multi_user', '=', False)]}"> + <field name="check_assign_to_multiuser" /> + <field name="ticket_update_type" attrs="{'invisible': [('check_assign_to_multiuser', '=', False)]}" widget="radio" /> + <field name="assign_to_multiuser" attrs="{'invisible': [('check_assign_to_multiuser', '=', False)],'required':[('check_assign_to_multiuser','=',True)]}" widget="many2many_tags" /> + </group> + <group string="Update Stage"> + <field name="check_helpdesks_state" /> + <field name="helpdesk_stages" attrs="{'invisible': [('check_helpdesks_state', '=', False)],'required':[('check_helpdesks_state','=',True)]}" /> + </group> + <!-- ADD/REMOVE FOLLOWER --> + <group string="Add/Remove Follower"> + <field name="check_add_remove" /> + <field name="helpdesks_ticket_ids" invisible="1" widget="many2many_tags" /> + <field name="followers" widget="many2many_tags" attrs="{'invisible': [('check_add_remove', '=', False)],'required':[('check_add_remove','=',True)]}" /> + <field name="ticket_follower_update_type" widget="radio" attrs="{'invisible': [('check_add_remove', '=', False)]}" /> + </group> + </group> + <footer> + <button name="update_record" class="btn btn-primary" type="object" string="Done" /> + <button string="Cancel" special="cancel" /> + </footer> + </form> + </field> + </record> + <record id="sh_helpdesk_ticket_mass_update_wizard_action_view" model="ir.actions.act_window"> + <field name="name">Ticket Mass Update</field> + <field name="res_model">sh.helpdesk.ticket.mass.update.wizard</field> + <field name="type">ir.actions.act_window</field> + <field name="view_mode">form</field> + <field name="target">new</field> + </record> +</odoo>
\ No newline at end of file diff --git a/sh_helpdesk/views/helpdesk_ticket_view.xml b/sh_helpdesk/views/helpdesk_ticket_view.xml new file mode 100644 index 0000000..adc630c --- /dev/null +++ b/sh_helpdesk/views/helpdesk_ticket_view.xml @@ -0,0 +1,320 @@ +<?xml version="1.0" encoding="UTF-8"?> +<odoo> + <record id="helpdesk_ticket_form_view" model="ir.ui.view"> + <field name="name">helpdesk.ticket.form.view</field> + <field name="model">helpdesk.ticket</field> + <field name="arch" type="xml"> + <form string="Ticket"> + <header> + <button name="action_approve" type="object" string="Approve" class="oe_highlight" attrs="{'invisible':['|','|',('cancel_stage_boolean','=',True),('done_stage_boolean','=',True),('closed_stage_boolean','=',True)]}" /> + <button name="action_reply" type="object" string="Reply" class="oe_highlight" /> + <button name="action_send_whatsapp" type="object" string="Send By Whatsapp" class="oe_highlight" groups="sh_helpdesk.helpdesk_group_whatsapp" /> + <button name="action_done" type="object" string="Resolved Ticket" class="oe_highlight" attrs="{'invisible':[('done_button_boolean','=',False)]}" /> + <button name="action_closed" type="object" string="Close Ticket" class="oe_highlight" attrs="{'invisible':[('done_stage_boolean','=',False)]}" /> + <button name="action_cancel" type="object" string="Cancel Ticket" class="oe_highlight" attrs="{'invisible':[('cancel_button_boolean','=',False)]}" /> + <button name="action_open" type="object" string="Re-Open Ticket" class="oe_highlight" attrs="{'invisible':[('open_boolean','=',False)]}" /> + <button name="preview_ticket" type="object" string="Preview" /> + <field name="stage_id" widget="statusbar" /> + </header> + <sheet> + <div class="oe_button_box" name="button_box"> + <widget name="web_ribbon" text="Archived" bg_color="bg-danger" attrs="{'invisible': [('active', '=', True)]}" /> + </div> + <div class="oe_title"> + <h1> + <field name="name" readonly="1" /> + <field name="active" invisible="1" /> + <field name="category_bool" invisible="1" /> + <field name="sub_category_bool" invisible="1" /> + <field name="rating_bool" invisible="1" /> + <field name="sh_status_boolean" invisible="1"/> + <field name="done_stage_boolean" invisible="1" /> + <field name="cancel_stage_boolean" invisible="1" /> + <field name="closed_stage_boolean" invisible="1" /> + <field name="ticket_from_website" invisible="1" /> + <field name="ticket_from_portal" invisible="1" /> + <field name="reopen_stage_boolean" invisible="1" /> + <field name="cancel_button_boolean" invisible="1" /> + <field name="done_button_boolean" invisible="1" /> + <field name="open_boolean" invisible="1" /> + <field name="sh_days_to_reach" invisible="1"/> + <field name="sh_days_to_late" invisible="1"/> + <field name="sh_ticket_report_url" invisible="1"/> + <field name="portal_ticket_url_wp" invisible="1"/> + </h1> + <h1> + <field name="email_subject" placeholder="Email Subject ...."/> + </h1> + <field name="sh_sla_status_ids" widget="many2many_tags" options="{'color_field': 'color'}" readonly="1" force_save="1" groups="sh_helpdesk.group_helpdesk_sla_policy"/> + </div> + <group> + <group> + <field name="sh_display_multi_user" invisible="1" /> + <field name="sh_display_product" invisible="1" /> + <field name="company_id" groups="base.group_multi_company" readonly="1" /> + <field name="state" /> + <field name="ticket_type" /> + <field name="ticket_allocated" invisible="1" /> + <field name="team_id" groups="sh_helpdesk.helpdesk_group_team_leader,sh_helpdesk.helpdesk_group_manager" /> + <field name="team_head" readonly="1" force_save="1" groups="sh_helpdesk.helpdesk_group_team_leader,sh_helpdesk.helpdesk_group_manager" /> + <field name="user_id" groups="sh_helpdesk.helpdesk_group_team_leader,sh_helpdesk.helpdesk_group_manager" /> + <field name="sh_user_ids" widget="many2many_tags" attrs="{'invisible':[('sh_display_multi_user','=',False)]}" groups="sh_helpdesk.helpdesk_group_team_leader,sh_helpdesk.helpdesk_group_manager" /> + <field name="subject_id" /> + <field name="category_id" attrs="{'invisible':[('category_bool','=',False)]}" /> + <field name="sub_category_id" attrs="{'invisible':[('sub_category_bool','=',False)]}" /> + <field name="tag_ids" widget="many2many_tags" options="{'color_field': 'color', 'no_create_edit': True}" /> + <field name="priority" /> + </group> + <group> + <field name="create_date" string="Create Date" /> + <field name="write_date" string="Last Update Date" /> + <field name="sh_due_date"/> + <field name="partner_id" /> + <field name="person_name" /> + <field name="email" /> + <field name="mobile_no"/> + <field name="replied_date" /> + <field name="product_ids" widget="many2many_tags" attrs="{'invisible':[('sh_display_product','=',False)]}" /> + <field name="sh_status" invisible="1"/> + <field name="sh_sla_deadline" attrs="{'invisible':[('sh_sla_deadline','=',False)]}" groups="sh_helpdesk.group_helpdesk_sla_policy"/> + <field name="sh_sla_policy_ids" widget="many2many_tags" force_save="1" invisible="1"/> + <field name="sh_ticket_alarm_ids" widget="many2many_tags" groups="sh_helpdesk.group_helpdesk_alarm"/> + </group> + </group> + <notebook> + <page string="Description"> + <group> + <field name="description" /> + </group> + </page> + <page string="Attachments"> + <group> + <field name="attachment_ids" nolabel="1"></field> + </group> + </page> + <page string="Customer Rating" attrs="{'invisible':[('rating_bool','=',False)]}"> + <group> + <field name="priority_new" widget="priority" /> + <field name="customer_comment" /> + </group> + </page> + <page string="Other Information"> + <group> + <group string="Ticket Closed Information"> + <field name="close_date" /> + <field name="close_by" /> + <field name="comment" string="Closed Comment" /> + </group> + <group string="Ticket Cancelled Information"> + <field name="cancel_date" /> + <field name="cancel_by" /> + <field name="cancel_reason" /> + <field name="form_url" invisible="1" /> + </group> + </group> + </page> + </notebook> + </sheet> + <div class="oe_chatter"> + <field name="message_follower_ids" widget="mail_followers" /> + <field name="message_ids" widget="mail_thread" /> + </div> + </form> + </field> + </record> + <record id="helpdesk_ticket_tree_view" model="ir.ui.view"> + <field name="name">helpdesk.ticket.tree.view</field> + <field name="model">helpdesk.ticket</field> + <field name="arch" type="xml"> + <tree string="Ticket" multi_edit="1"> + <field name="name" /> + <field name="partner_id" /> + <field name="create_date" string="Create Date" /> + <field name="write_date" string="Last Update Date" /> + <field name="ticket_type" /> + <field name="team_id" /> + <field name="team_head" /> + <field name="user_id" /> + <field name="subject_id" /> + <field name="category_id" /> + <field name="sub_category_id" /> + <field name="stage_id" /> + </tree> + </field> + </record> + <record id="helpdesk_ticket_search_view" model="ir.ui.view"> + <field name="name">helpdesk.ticket.search.view</field> + <field name="model">helpdesk.ticket</field> + <field name="arch" type="xml"> + <search string="Helpdesk Ticket Search"> + <field name="name" string="Ticket" filter_domain="['|', '|', '|','|', '|', '|', ('name', 'ilike', self), ('sh_user_ids.name', 'ilike', self),('user_id.name', 'ilike', self),('email','ilike',self),('mobile_no','ilike',self),('partner_id.name','ilike',self),('email_subject','ilike',self)]"/> + <field name="create_date" /> + <field name="write_date" /> + <field name="partner_id" /> + <field name="ticket_type" /> + <field name="team_id" /> + <field name="team_head" /> + <field name="user_id" /> + <field name="subject_id" /> + <field name="category_id" /> + <field name="sub_category_id" /> + <field name="stage_id" /> + <separator /> + <filter string="My Ticket" name="assigned_to_me" domain="[('create_uid', '=', uid)]" /> + <separator /> + <filter string="Completed Tickets" name="complete_ticket" domain="[('done_stage_boolean', '=', True)]" /> + <filter string="Cancelled Tickets" name="cancel_ticket" domain="[('cancel_stage_boolean', '=', True)]" /> + <filter string="Archived" name="archived" domain="[('active', '=', False)]" /> + <separator /> + <filter string="Upcoming SLA Failed" name="upcoming" domain="[('sh_sla_deadline','!=',False),('sh_sla_deadline', '<=', (datetime.date.today() + relativedelta(days=1)).strftime('%Y-%m-%d'))]" groups="sh_helpdesk.group_helpdesk_sla_policy" /> + <filter string="SLA Failed" name="sla_failed" domain="[('sh_status','=','sla_failed')]" groups="sh_helpdesk.group_helpdesk_sla_policy" /> + <filter string="SLA Passed" name="sla_passed" domain="[('sh_status','=','sla_passed')]" groups="sh_helpdesk.group_helpdesk_sla_policy" /> + <filter string="SLA Partially Passed" name="sh_partially_passed" domain="[('sh_status','=','sh_partially_passed')]" groups="sh_helpdesk.group_helpdesk_sla_policy" /> + <group expand="0" string="Group By"> + <filter string="Created By" name="user" context="{'group_by':'create_uid'}" /> + <filter string="Ticket Type" name="ticket_type" context="{'group_by':'ticket_type'}" /> + <filter name="stage" string="Stage" context="{'group_by':'stage_id'}" /> + <filter name="customer" string="Customer" context="{'group_by':'partner_id'}" /> + <filter name="category" string="Category" context="{'group_by':'category_id'}" /> + <filter name="subcategory" string="Sub Category" context="{'group_by':'sub_category_id'}" /> + <filter name="team" string="Team" context="{'group_by':'team_id'}" /> + <filter name="team_head" string="Team Head" context="{'group_by':'team_head'}" /> + <filter name="user_id" string="Assigned User" context="{'group_by':'user_id'}" /> + <filter name="subject" string="Subject" context="{'group_by':'subject_id'}" /> + <filter name="priority" string="Priority" context="{'group_by':'priority'}" /> + <filter name="state" string="Reply Status" context="{'group_by':'state'}" /> + </group> + <searchpanel> + <field name="company_id" icon="fa-building" /> + <field name="state" icon="fa-folder" /> + <field name="stage_id" icon="fa-folder" /> + <field name="ticket_type" icon="fa-folder" /> + <field name="team_id" icon="fa-user-plus" /> + <field name="user_id" icon="fa-users" /> + <field name="partner_id" icon="fa-users" /> + <field name="subject_id" icon="fa-book" /> + <field name="category_id" icon="fa-list" /> + <field name="sub_category_id" icon="fa-list-alt" /> + <field name="priority" icon="fa-level-up" /> + </searchpanel> + </search> + </field> + </record> + <record model="ir.ui.view" id="helpdesk_ticket_kanban"> + <field name="name">helpdesk.ticket.kanban</field> + <field name="model">helpdesk.ticket</field> + <field name="arch" type="xml"> + <kanban default_group_by="stage_id" class="o_kanban_small_column o_opportunity_kanban" archivable="false" examples="sh_helpdesk" sample="1"> + <field name="name" /> + <field name="color" /> + <field name="priority" /> + <field name="stage_id" /> + <field name="user_id" /> + <field name="tag_ids" /> + <field name="email_subject"/> + <templates> + <t t-name="kanban-box"> + <div t-attf-class="#{kanban_color(record.color.raw_value)} oe_kanban_global_click"> + <div class="oe_kanban_content"> + <div> + <strong> + <field name="name" /><t t-if="record.priority.value">:<field name="priority" /></t> + </strong> + </div> + <div> + <t t-if="record.email_subject.value"> + <span t-att-title="record.email_subject.value" style="overflow: hidden;text-overflow: ellipsis;display:block;-webkit-line-clamp: 1;-webkit-box-orient: vertical;"><field name="email_subject"/></span> + </t> + </div> + <div> + <strong> + <field name="partner_id" /> + </strong> + </div> + <div> + <field name="tag_ids" widget="many2many_tags" options="{'color_field': 'color'}" /> + </div> + <div> + <strong> + <field name="stage_id" /> + </strong> + </div> + <div> + <field name="create_date" /> + </div> + <div class="o_kanban_record_bottom"> + <div class="oe_kanban_bottom_right"> + <img t-att-src="kanban_image('res.users', 'image_1920', record.user_id.raw_value)" t-att-title="record.user_id.value" t-att-alt="record.user_id.value" width="24" height="24" class="oe_kanban_avatar" /> + </div> + </div> + </div> + <div class="oe_clear" /> + </div> + </t> + </templates> + </kanban> + </field> + </record> + <record id="helpdesk_ticket_calendar" model="ir.ui.view"> + <field name="name">helpdesk.ticket.calendar</field> + <field name="model">helpdesk.ticket</field> + <field name="arch" type="xml"> + <calendar string="Tickets" date_start="create_date" color="user_id"> + <field name="name" /> + <field name="partner_id" /> + <field name="stage_id" /> + </calendar> + </field> + </record> + <record model="ir.ui.view" id="helpdesk_ticket_pivot"> + <field name="name">helpdesk.ticket.pivot</field> + <field name="model">helpdesk.ticket</field> + <field name="arch" type="xml"> + <pivot string="Tickets" disable_linking="True"> + <field name="create_date" interval="month" type="row" /> + <field name="stage_id" type="col" /> + <field name="partner_id" type="row" /> + </pivot> + </field> + </record> + + <record model="ir.ui.view" id="helpdesk_ticket_graph"> + <field name="name">helpdesk.ticket.graph</field> + <field name="model">helpdesk.ticket</field> + <field name="arch" type="xml"> + <graph string="Tickets"> + <field name="stage_id" type="col" /> + <field name="user_id" type="row" /> + </graph> + </field> + </record> + <record id="helpdesk_ticket_action" model="ir.actions.act_window"> + <field name="name">Helpdesk Tickets</field> + <field name="res_model">helpdesk.ticket</field> + <field name="view_mode">kanban,tree,form,pivot,graph,calendar,activity</field> + <field name="help" type="html"> + <p class="oe_view_nocontent_create">Create a New Ticket</p> + </field> + </record> + <menuitem id="helpdesk_tickets_menu" name="Tickets" parent="sh_helpdesk.helpdesk_main_menu" sequence="2" action="helpdesk_ticket_action" /> + <record model="ir.ui.view" id="helpdesk_ticket_sla_pivot"> + <field name="name">helpdesk.ticket</field> + <field name="model">helpdesk.ticket</field> + <field name="arch" type="xml"> + <pivot string="Helpdesk SLA Analysis" disable_linking="True" sample="1"> + <field name="team_id" type="row"/> + <field name="stage_id" type="row"/> + <field name="create_date" interval="month" type="col"/> + <field name="sh_status" type="col"/> + <field name="sh_days_to_reach" type="measure"/> + <field name="sh_days_to_late" type="measure"/> + </pivot> + </field> + </record> + <record id="helpdesk_ticket_sla_action" model="ir.actions.act_window"> + <field name="name">Helpdesk SLA Analysis</field> + <field name="res_model">helpdesk.ticket</field> + <field name="view_mode">pivot</field> + </record> + <menuitem id="menu_helpdesk_sla_analysis" name="Helpdesk SLA Analysis" parent="sh_helpdesk.helpdesk_reporting_menu" action="helpdesk_ticket_sla_action" groups="sh_helpdesk.group_helpdesk_sla_policy" /> +</odoo> diff --git a/sh_helpdesk/views/report_views.xml b/sh_helpdesk/views/report_views.xml new file mode 100644 index 0000000..ec488dc --- /dev/null +++ b/sh_helpdesk/views/report_views.xml @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8"?> +<odoo> + <record id="action_report_helpdesk_ticket" model="ir.actions.report"> + <field name="name">Helpdesk Ticket</field> + <field name="model">helpdesk.ticket</field> + <field name="report_type">qweb-pdf</field> + <field name="report_name">sh_helpdesk.report_helpdeskticket</field> + <field name="report_file">sh_helpdesk.report_helpdeskticket</field> + <field name="binding_model_id" ref="model_helpdesk_ticket" /> + <field name="binding_type">report</field> + </record> + <record id="action_portal_report_helpdesk_ticket" model="ir.actions.report"> + <field name="name">Helpdesk Ticket</field> + <field name="model">helpdesk.ticket</field> + <field name="report_type">qweb-pdf</field> + <field name="report_name">sh_helpdesk.report_portal_helpdeskticket</field> + <field name="report_file">sh_helpdesk.report_portal_helpdeskticket</field> + <field name="binding_model_id" ref="model_helpdesk_ticket" /> + <field name="groups_id" eval="[(4, ref('base.group_portal'))]"/> + <field name="binding_type">report</field> + </record> +</odoo> diff --git a/sh_helpdesk/views/res_users.xml b/sh_helpdesk/views/res_users.xml new file mode 100644 index 0000000..9cce7f6 --- /dev/null +++ b/sh_helpdesk/views/res_users.xml @@ -0,0 +1,26 @@ +<?xml version="1.0" encoding="utf-8"?> +<odoo> + <record id="sh_res_users_form_view" model="ir.ui.view"> + <field name="name">res.users</field> + <field name="model">res.users</field> + <field name="inherit_id" ref="base.view_users_form"/> + <field name="arch" type="xml"> + <xpath expr="//div[hasclass('oe_title')]//field[@name='partner_id']" position="after"> + <field name="sh_portal_user" invisible="1"/> + <field name="sh_portal_user_access" attrs="{'invisible':[('sh_portal_user','=',False)]}" /> + </xpath> + </field> + </record> + <record id="sh_users_form_simple_inherit_modif" model="ir.ui.view"> + <field name="name">res.users</field> + <field name="model">res.users</field> + <field name="inherit_id" ref="base.view_users_form_simple_modif" /> + <field name="arch" type="xml"> + <xpath expr="//footer" position="before"> + <group name="Signature"> + <field name="sign" /> + </group> + </xpath> + </field> + </record> +</odoo>
\ No newline at end of file diff --git a/sh_helpdesk/views/send_mail_quick_reply.xml b/sh_helpdesk/views/send_mail_quick_reply.xml new file mode 100644 index 0000000..fdc51ba --- /dev/null +++ b/sh_helpdesk/views/send_mail_quick_reply.xml @@ -0,0 +1,46 @@ +<?xml version="1.0" encoding="UTF-8"?> +<odoo> + <record id="sh_helpdesk_form_view" model="ir.ui.view"> + <field name="name">sh.quick.reply</field> + <field name="model">sh.quick.reply</field> + <field name="arch" type="xml"> + <form string="Send Quick Reply Mail Template"> + <sheet> + <div class="oe_button_box" name="button_box"> + <widget name="web_ribbon" text="Archived" bg_color="bg-danger" attrs="{'invisible': [('active', '=', True)]}" /> + </div> + <group> + <group> + <field name="name" /> + <field name="sh_user_id" /> + <field name="commom_for_all" /> + </group> + <group> + <field name="active" invisible="1" /> + </group> + </group> + <group> + <field name="sh_description" /> + </group> + </sheet> + </form> + </field> + </record> + <record id="sh_helpdesk_tree_view" model="ir.ui.view"> + <field name="name">sh.quick.reply</field> + <field name="model">sh.quick.reply</field> + <field name="arch" type="xml"> + <tree string="Send Quick Reply Mail Template"> + <field name="name" /> + <field name="sh_user_id" /> + </tree> + </field> + </record> + <record id="sh_helpdesk_action" model="ir.actions.act_window"> + <field name="name">Send Quick Reply Mail Template</field> + <field name="type">ir.actions.act_window</field> + <field name="res_model">sh.quick.reply</field> + <field name="view_mode">tree,form</field> + </record> + <menuitem id="sh_send_quick_reply_menu" name="Send Quick Reply" parent="sh_helpdesk.helpdesk_main_menu" groups="sh_helpdesk.group_send_quick_reply" action="sh_helpdesk_action" sequence="4" /> +</odoo>
\ No newline at end of file diff --git a/sh_helpdesk/views/sh_helpdeks_report_portal.xml b/sh_helpdesk/views/sh_helpdeks_report_portal.xml new file mode 100644 index 0000000..0c6e6fb --- /dev/null +++ b/sh_helpdesk/views/sh_helpdeks_report_portal.xml @@ -0,0 +1,255 @@ +<?xml version="1.0" encoding="utf-8"?> +<odoo> + <template id="helpdesk_portal_ticket_template"> + <t t-call="web.external_layout"> + <div class="page"> + <div class="container"> + <br /> + <br /> + <br /> + <div class="row"> + <div class="col-6"> + <h2><span t-field="o.name" /></h2> + </div> + </div> + <br /> + <div class="row"> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Ticket Type</strong> + </div> + <div class="col-6"> + <span t-field="o.ticket_type" /> + </div> + </div> + </div> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Create Date</strong> + </div> + <div class="col-6"> + <span t-field="o.create_date" t-options='{"widget": "date"}' /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Reply Status</strong> + </div> + <div class="col-6"> + <span t-field="o.state" /> + </div> + </div> + </div> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Last Update Date</strong> + </div> + <div class="col-6"> + <span t-field="o.write_date" t-options='{"widget": "date"}' /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Ticket Status</strong> + </div> + <div class="col-6"> + <span t-field="o.stage_id" /> + </div> + </div> + </div> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Customer</strong> + </div> + <div class="col-6"> + <span t-field="o.partner_id" /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Person Name</strong> + </div> + <div class="col-6"> + <span t-field="o.person_name" /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Ticket Subject Type</strong> + </div> + <div class="col-6"> + <span t-field="o.subject_id" /> + </div> + </div> + </div> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Email</strong> + </div> + <div class="col-6"> + <span t-field="o.email" /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Category</strong> + </div> + <div class="col-6"> + <span t-field="o.category_id" /> + </div> + </div> + </div> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Replied Date</strong> + </div> + <div class="col-6"> + <span t-field="o.replied_date" /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Sub Category</strong> + </div> + <div class="col-6"> + <span t-field="o.sub_category_id" /> + </div> + </div> + </div> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Closed Date</strong> + </div> + <div class="col-6"> + <span t-field="o.close_date" /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Priority</strong> + </div> + <div class="col-6"> + <span t-field="o.priority" /> + </div> + </div> + </div> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Closed By</strong> + </div> + <div class="col-6"> + <span t-field="o.close_by" /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Cancelled Date</strong> + </div> + <div class="col-6"> + <span t-field="o.cancel_date" /> + </div> + </div> + </div> + <div class="col-6"></div> + </div> + <div class="row"> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Cancelled Reason</strong> + </div> + <div class="col-6"> + <span t-field="o.cancel_reason" /> + </div> + </div> + </div> + <div class="col-6"></div> + </div> + <div class="row"> + <div class="col-12"> + <h2>Description</h2> + </div> + </div> + <div class="row"> + <div class="col-12"> + <span t-field="o.description" /> + </div> + </div> + <div class="row"> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Customer Rating</strong> + </div> + <div class="col-6"> + <span title="Rating" role="img" t-attf-aria-label="Rating: #{o.priority_new} on 3"> + <t t-foreach="range(2, 7)" t-as="i"> + <span t-attf-class="fa fa-lg fa-star#{'' if i <= int(o.priority_new) else '-o'}" /> + </t> + </span> + </div> + </div> + </div> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Customer Comment</strong> + </div> + <div class="col-6"> + <span t-field="o.customer_comment" /> + </div> + </div> + </div> + </div> + </div> + </div> + </t> + </template> + <template id="report_portal_helpdeskticket"> + <t t-call="web.html_container"> + <t t-foreach="docs" t-as="o"> + <t t-call="sh_helpdesk.helpdesk_portal_ticket_template" t-lang="o.partner_id.lang" /> + </t> + </t> + </template> +</odoo> diff --git a/sh_helpdesk/views/sh_report_helpdesk_ticket_template.xml b/sh_helpdesk/views/sh_report_helpdesk_ticket_template.xml new file mode 100644 index 0000000..edf35c9 --- /dev/null +++ b/sh_helpdesk/views/sh_report_helpdesk_ticket_template.xml @@ -0,0 +1,277 @@ +<?xml version="1.0" encoding="utf-8"?> +<odoo> + <template id="helpdesk_ticket_template"> + <t t-call="web.external_layout"> + <div class="page"> + <div class="container"> + <br /> + <br /> + <br /> + <div class="row"> + <div class="col-12"> + <h2> + <span t-field="o.name" /> + </h2> + </div> + </div> + <br /> + <div class="row"> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Ticket Type</strong> + </div> + <div class="col-6"> + <span t-field="o.ticket_type" /> + </div> + </div> + </div> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Create Date</strong> + </div> + <div class="col-6"> + <span t-field="o.create_date" t-options='{"widget": "date"}' /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Team</strong> + </div> + <div class="col-6"> + <span t-field="o.team_id" /> + </div> + </div> + </div> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Last Update Date</strong> + </div> + <div class="col-6"> + <span t-field="o.write_date" t-options='{"widget": "date"}' /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Team Head</strong> + </div> + <div class="col-6"> + <span t-field="o.team_head" /> + </div> + </div> + </div> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Customer</strong> + </div> + <div class="col-6"> + <span t-field="o.partner_id" /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Assigned User</strong> + </div> + <div class="col-6"> + <span t-field="o.user_id" /> + </div> + </div> + </div> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Person Name</strong> + </div> + <div class="col-6"> + <span t-field="o.person_name" /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Ticket Subject Type</strong> + </div> + <div class="col-6"> + <span t-field="o.subject_id" /> + </div> + </div> + </div> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Email</strong> + </div> + <div class="col-6"> + <span t-field="o.email" /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Category</strong> + </div> + <div class="col-6"> + <span t-field="o.category_id" /> + </div> + </div> + </div> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Replied Date</strong> + </div> + <div class="col-6"> + <span t-field="o.replied_date" /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Sub Category</strong> + </div> + <div class="col-6"> + <span t-field="o.sub_category_id" /> + </div> + </div> + </div> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Closed Date</strong> + </div> + <div class="col-6"> + <span t-field="o.close_date" /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Priority</strong> + </div> + <div class="col-6"> + <span t-field="o.priority" /> + </div> + </div> + </div> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Closed By</strong> + </div> + <div class="col-6"> + <span t-field="o.close_by" /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="col-6"></div> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Cancelled Date</strong> + </div> + <div class="col-6"> + <span t-field="o.cancel_date" /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="col-6"></div> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Cancelled Reason</strong> + </div> + <div class="col-6"> + <span t-field="o.cancel_reason" /> + </div> + </div> + </div> + </div> + <div class="row"> + <div class="col-3"> + <strong>Products</strong> + </div> + <div class="col-9"> + <span t-if='o.sh_display_product'> + <span t-field="o.product_ids" /> + </span> + </div> + </div> + <div class="row mt-2"> + <div class="col-12"> + <h2>Description</h2> + </div> + </div> + <div class="row"> + <div class="col-12"> + <span t-field="o.description" /> + </div> + </div> + <div class="row"> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Customer Rating</strong> + </div> + <div class="col-6"> + <span title="Rating" role="img" t-attf-aria-label="Rating: #{o.priority_new} on 3"> + <t t-foreach="range(2, 7)" t-as="i"> + <span t-attf-class="fa fa-lg fa-star#{'' if i <= int(o.priority_new) else '-o'}" /> + </t> + </span> + </div> + </div> + </div> + <div class="col-6"> + <div class="row"> + <div class="col-6"> + <strong>Customer Comment</strong> + </div> + <div class="col-6"> + <span t-field="o.customer_comment" /> + </div> + </div> + </div> + </div> + </div> + </div> + </t> + </template> + <template id="report_helpdeskticket"> + <t t-call="web.html_container"> + <t t-foreach="docs" t-as="o"> + <t t-call="sh_helpdesk.helpdesk_ticket_template" t-lang="o.partner_id.lang" /> + </t> + </t> + </template> +</odoo> diff --git a/sh_helpdesk/views/sh_ticket_feedback_template.xml b/sh_helpdesk/views/sh_ticket_feedback_template.xml new file mode 100644 index 0000000..7463d70 --- /dev/null +++ b/sh_helpdesk/views/sh_ticket_feedback_template.xml @@ -0,0 +1,49 @@ +<?xml version="1.0" encoding="UTF-8"?> +<odoo> + <template id="assets_frontend_ticket" name="crm assets" inherit_id="web.assets_frontend"> + <xpath expr="." position="inside"> + <link type="text/scss" rel="stylesheet" href="/sh_helpdesk/static/src/css/feedback.scss" /> + </xpath> + </template> + <template id="helpdesk_ticket_feedback_page" name="Helpdesk Ticket Feedback Page"> + <t t-call="web.frontend_layout"> + <div class="container"> + <div class="mt16 mb16"> + <h1 class="text-center">Your Feedback</h1> + </div> + <form method="POST" t-attf-action="/helpdesk/ticket/feedback/#{ticket}" id="smileys"> + <input type="radio" name="smiley" value="6" class="very-happy" checked="checked" /> + <input type="radio" name="smiley" value="5" class="happy" /> + <input type="radio" name="smiley" value="4" class="neutral" /> + <input type="radio" name="smiley" value="3" class="sad" /> + <input type="radio" name="smiley" value="2" class="very-sad" /> + <div class="form-group"> + <input type="hidden" name="ticket_id" id="ticket_id" t-att-value="ticket" style="display: none;" /> + <label for="comment">Comment</label> + <textarea class="form-control" rows="5" name="comment"></textarea> + </div> + + <div class="form-group"> + <button id="feedback_btn" class="btn btn-primary btn-lg">Submit Feedback</button> + </div> + <div>It looks like you're feeling <span id="result" onclick="updateValue(this)">happy</span> today..</div> + </form> + </div> + </t> + </template> + <template id="ticket_feedback_thank_you" name="Helpdesk Ticket Thank You"> + <t t-call="web.login_layout"> + <div class="container"> + <h1>Thanks!</h1> + <div class="row"> + <div class="col-md-12"> + <div class="alert alert-success" role="status"> + Thank you for your valuable feedback to us. + <button type="button" class="close" data-dismiss="alert">&times;</button> + </div> + </div> + </div> + </div> + </t> + </template> +</odoo> diff --git a/sh_helpdesk/views/ticket_dashboard_templates.xml b/sh_helpdesk/views/ticket_dashboard_templates.xml new file mode 100644 index 0000000..9e1d7fc --- /dev/null +++ b/sh_helpdesk/views/ticket_dashboard_templates.xml @@ -0,0 +1,150 @@ +<?xml version="1.0" encoding="utf-8"?> +<odoo> + <template id="sh_web_layout" inherit_id="web.layout" name="Web layout"> + <xpath expr="//head/meta[last()]" position="after"> + <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no" /> + </xpath> + </template> + <template id="ticket_dashboard_count" name="My Dashboard Count"> + <div id="js_ticket_count_div"> + <div> + <div class="row"> + <t t-foreach="data_dict.keys()" t-as="value"> + <t t-if="data_dict"> + <t t-foreach="data_dict[value]" t-as="v"> + <div class="col-lg-3 col-md-4 col-sm-12"> + <a class="sh_tile_click custom" href="#" t-att-data-res_ids="v or []"> + <div class="card card_1 custom-card" href="#"> + <div class="sh-card-body dash1 badge-info" style="background-color: #445ee9;"> + <div class="media"> + <i class="fa fa-clock-o fs-20 text-white align-self-center mr-3"></i> + <div style="display: inline-block;color: white;"> + <h3 class="mt-0"><t t-esc="len(v)" /></h3> + <p><span t-esc="value" /></p> + </div> + </div> + </div> + </div> + </a> + </div> + </t> + <br /> + </t> + </t> + </div> + </div> + </div> + </template> + <template id="ticket_dashboard_tbl" name="My Ticket Table"> + <div id="js_ticket_tbl_div"> + <div> + <div class="row" style="margin: 0;"> + <t t-if="ticket_data_dic"> + <div class="modal fade whatsapp_modal" tabindex="-1" role="dialog" aria-labelledby="whatsappModalLabel" aria-hidden="true"> + <div class="modal-dialog" role="document"> + <div class="modal-content"> + <div class="modal-header"> + <h5 class="modal-title" id="whatsappModalLabel">Send By Whatsapp</h5> + <button type="button" class="close" data-dismiss="modal" aria-label="Close"> + <span aria-hidden="true">&times;</span> + </button> + </div> + <div class="modal-body"> + <form> + <input type="hidden" name="csrf_token" t-att-value="request.csrf_token()" /> + <div class="form-group" style="display: flex;align-items: center;"> + <label for="ticket_partner_id" style="margin-bottom: 0;font-weight: 600;width:100px">Partner</label> + <select class="form-select form-select-lg mb-3 custom-select" id="ticket_partner_id" required="True" style="margin-bottom: 0 !important;"> + <option value="select_partner">Select Partner</option> + <t t-foreach="request.env['res.partner'].sudo().search([])" t-as="partner"> + <option t-att-value="partner.id"><t t-esc="partner.name_get()[0][1]" /></option> + </t> + </select> + </div> + <div class="form-group" style="display: flex;align-items: center;margin-bottom: 1.3rem;"> + <label for="partner_mobile_no" style="font-weight: 600;margin-bottom: 0;width: 100px;">Mobile No</label> + <input id="partner_mobile_no" name="partner_mobile_no" class="form-control" type="text" placeholder="Enter Mobile No with conutry code" required="True" /> + </div> + <div class="form-group" style="display: flex;align-items: center;margin-bottom: 1.3rem;"> + <label for="whatsapp_message" style="font-weight: 600;width: 100px;margin-bottom: 0;">Message</label> + <textarea class="form-control rounded-0" id="whatsapp_message" required="True"></textarea> + </div> + <div class="form-group"> + <p> + <strong>Note:</strong><br /> + 1) Use *text* to make text bold.<br /> + 2) Use _text_ to make text italic.<br /> + 3) Use %0A after/before Text if you want to add blank line.<br /> + 4) use %20 after/before any Text if you want to give space.<br /> + 5) go to users => preferences to add signature. + </p> + </div> + </form> + </div> + <div class="modal-footer"> + <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button> + <button type="button" class="btn btn-primary" id="send">Send</button> + </div> + </div> + </div> + </div> + <t t-foreach="ticket_data_dic.keys()" t-as="ticket"> + <div class="col-md-12" style="margin-bottom: 20px; box-shadow: 0 0 2px rgba(0, 0, 0, 0.5); padding-left: 0 !important; padding-right: 0 !important;"> + <h3 style="padding: 10px; margin-top: 7px; margin-bottom: 7px;"> + <b> + <span>Stage :</span> + <span t-esc="ticket" /> + </b> + </h3> + <div class="table-responsive"> + <table class="table" style="margin-bottom: 0.5rem;"> + <tr> + <th>Ticket No</th> + <th>Customer Name</th> + <th>Mobile Number</th> + <th>Create Date</th> + <th>Last Update Date</th> + <th>Assign User</th> + <th style="padding-left: 25px;">Action</th> + <th style="display: none;"></th> + </tr> + <t t-if="len(ticket_data_dic[ticket])==0"> + <tr> + <td colspan="7"> + Data not available. + </td> + </tr> + </t> + <t t-if="len(ticket_data_dic[ticket])>0"> + <tr t-foreach="ticket_data_dic[ticket]" t-as="order"> + <td> + <a t-att-href="'/web#id=%s&view_type=form&model=helpdesk.ticket' % (order.get('ticket_id'))" target="_blank"><span t-esc="order.get('ticket_no')" /></a> + </td> + <td><span t-esc="order.get('partner_name')" /></td> + <td><span t-esc="order.get('partner_mobile')" /></td> + <td><span t-esc="order.get('create_date')" /></td> + <td><span t-esc="order.get('write_date')" /></td> + <td><span t-esc="order.get('user_id')" /></td> + <td> + <a style="cursor: pointer;" class="btn-success" t-att-href="'/web#id=%s&view_type=form&model=helpdesk.ticket' % (order.get('ticket_id'))" target="_blank"> + <i class="fa fa-eye" /> + </a> + &nbsp; + <button style="cursor: pointer;" class="btn-success mark-whatsapp"><i class="fa fa-whatsapp" /></button> + </td> + <td style="display: none;"> + <input type="hidden" id="partner_id" name="partner_id" t-att-value="order.get('partner_id')" t-att-data-mobile="order.get('partner_mobile') or ''" /> + </td> + </tr> + </t> + </table> + </div> + </div> + <br /> + </t> + </t> + </div> + </div> + </div> + </template> +</odoo> diff --git a/sh_helpdesk/views/ticket_dashboard_view.xml b/sh_helpdesk/views/ticket_dashboard_view.xml new file mode 100644 index 0000000..5789233 --- /dev/null +++ b/sh_helpdesk/views/ticket_dashboard_view.xml @@ -0,0 +1,97 @@ +<?xml version="1.0" encoding="UTF-8"?> +<odoo> + <record id="sh_ticket_dashboard_kanban_view" model="ir.ui.view"> + <field name="name">Ticket Dashboard</field> + <field name="model">ticket.dashboard</field> + <field name="type">kanban</field> + <field name="arch" type="xml"> + <kanban create="false"> + <field name="name" /> + <templates> + <t t-name="kanban-box"> + <section id="dashboard_counter" class="counter-area" style="min-width: 100% !important; width: 100% !important;"> + <script type="text/javascript" src="/sh_helpdesk/static/src/js/filter.js" /> + <link rel="stylesheet" type="text/css" href="/sh_helpdesk/static/src/css/ticket_dashboard.css" /> + <div class="container"> + <section class="drop_btn sh_drop_btn"> + <div class="row"> + <div class="col-md-4 col-sm-4" id="leader_div"> + <div class="sh_btn"> + <div class="dropdown"> + <select id="team_leader" class="btn btn-primary dropdown-toggle"> + <option value="0" selected="True">Team Leader</option> + </select> + </div> + </div> + </div> + <div class="col-md-4 col-sm-4" id="team_div"> + <div class="sh_btn"> + <div class="dropdown"> + <select id="team" class="btn btn-primary dropdown-toggle"> + <option value="0" selected="True">Team</option> + </select> + </div> + </div> + </div> + <div class="col-md-4 col-sm-4" id="assign_user_div"> + <div class="sh_btn"> + <div class="dropdown"> + <select id="assign_user" class="btn btn-primary dropdown-toggle"> + <option value="0" selected="True">Assign User</option> + </select> + </div> + </div> + </div> + <br /> + <br /> + <div class="col-md-4 col-sm-4"> + <div class="sh_btn"> + <div class="dropdown"> + <select id="days_filter" class="btn btn-primary dropdown-toggle"> + <option value="all" selected="True">Select Date</option> + <option value="today">Today</option> + <option value="yesterday">Yesterday</option> + <option value="weekly">Current Week</option> + <option value="prev_week">Previous Week</option> + <option value="monthly">Current Month</option> + <option value="prev_month">Previous Month</option> + <option value="cur_year">Current Year</option> + <option value="prev_year">Previous Year</option> + <option value="custom">Custom</option> + </select> + </div> + </div> + </div> + + <div class="col-md-3 col-sm-4 col-12 col-lg-2"> + <input type="date" id="start_date" name="start_date" class="form-control o_hidden" /> + </div> + <div class="col-md-3 col-sm-4 col-12 col-lg-2"> + <input type="date" id="end_date" name="end_date" class="form-control o_hidden" /> + </div> + </div> + </section> + <br /> + <br /> + <section id="dashboard_counter" class="counter-area" style="min-width: 100% !important; width: 100% !important;"> + <div id="js_ticket_count_div"></div> + <br /> + <br /> + <div id="js_ticket_tbl_div"></div> + </section> + </div> + </section> + </t> + </templates> + </kanban> + </field> + </record> + + <record id="sh_action_ticket_dashboard" model="ir.actions.act_window"> + <field name="name">Ticket Dashboard</field> + <field name="res_model">ticket.dashboard</field> + <field name="view_mode">kanban,form</field> + <field name="view_id" ref="sh_ticket_dashboard_kanban_view" /> + </record> + <menuitem id="helpdesk_dashboard_menu" name="Dashboard" parent="sh_helpdesk.helpdesk_main_menu" sequence="1" action="sh_action_ticket_dashboard" /> +</odoo> diff --git a/sh_helpdesk/wizard/__init__.py b/sh_helpdesk/wizard/__init__.py new file mode 100644 index 0000000..53c2214 --- /dev/null +++ b/sh_helpdesk/wizard/__init__.py @@ -0,0 +1,4 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. + +from . import mail_compose diff --git a/sh_helpdesk/wizard/mail_compose.py b/sh_helpdesk/wizard/mail_compose.py new file mode 100644 index 0000000..01cb908 --- /dev/null +++ b/sh_helpdesk/wizard/mail_compose.py @@ -0,0 +1,107 @@ +# -*- coding: utf-8 -*- +# Part of Softhealer Technologies. + +from odoo import models, fields, api +import re +from odoo.exceptions import UserError +import html2text + + +class MailMessage(models.Model): + _inherit = 'mail.message' + + @api.model + def create(self, vals): + if vals.get('model') and vals.get('model') == 'helpdesk.ticket': + ticket_id = self.env['helpdesk.ticket'].sudo().browse( + vals.get('res_id')) + if ticket_id: + if vals.get('author_id') and vals.get('author_id') == ticket_id.partner_id.id: + ticket_id.state = 'customer_replied' + ticket_id.replied_date = ticket_id.write_date + elif vals.get('author_id') and vals.get('author_id') != 2 and vals.get('author_id') != ticket_id.partner_id.id and vals.get('record_name'): + ticket_id.state = 'staff_replied' + ticket_id.replied_date = ticket_id.write_date + return super(MailMessage, self).create(vals) + +class MailComposeWizard(models.TransientModel): + _inherit = 'mail.compose.message' + + sh_quick_reply_template_id = fields.Many2one( + 'sh.quick.reply', string='Quick Reply Template') + body_str = fields.Html('Body') + is_wp = fields.Boolean('Whatsapp ?') + + + @api.onchange('sh_quick_reply_template_id') + def onchange_sh_quick_reply_template_id(self): + body_str = self.body + if not self.body_str: + self.body_str = body_str + if not self.sh_quick_reply_template_id: + self.body = self.body_str + else: + if 'div class="predefined"' in body_str: + tag_1 = 'div class="predefined"' + tag_2 = "div" + reg_str = "<" + tag_1 + ">(.*?)</" + tag_2 + ">" + res = re.findall(reg_str, body_str.strip()) + if len(res) > 0: + original_split_str = '<div class="predefined">' + \ + str(res[0]) + '</div>' + original_splited_str = body_str.split(original_split_str) + original_joined_str = original_splited_str[0] + \ + '<div class="predefined"></div>' + \ + original_splited_str[1] + body_str = original_joined_str + if self.sh_quick_reply_template_id: + joined_str = '' + splited_str = body_str.split( + '<div class="predefined"></div>') + if len(splited_str) > 1: + joined_str = splited_str[0] + '<div class="predefined">'+str( + self.sh_quick_reply_template_id.sh_description) + '</div>'+splited_str[1] + self.body = joined_str + elif len(splited_str) == 1: + joined_str = splited_str[0] + '<div class="predefined">'+str( + self.sh_quick_reply_template_id.sh_description) + '</div>' + self.body = joined_str + + def action_send_wp(self): + text = html2text.html2text(self.body) + if not self.partner_ids[0].mobile: + raise UserError('Partner Mobile Number Not Exist !') + phone = str(self.partner_ids[0].mobile) + base_url = self.env['ir.config_parameter'].sudo( + ).get_param('web.base.url') + if self.attachment_ids: + text += '%0A%0A Other Attachments :' + for attachment in self.attachment_ids: + attachment.generate_access_token() + text += '%0A%0A' + text += base_url+'/web/content/ir.attachment/' + \ + str(attachment.id)+'/datas?access_token=' + \ + attachment.access_token + context = dict(self._context or {}) + active_id = context.get('active_id', False) + active_model = context.get('active_model', False) + + if text and active_id and active_model: + message = str(text).replace('*', '').replace('_', '').replace('%0A', + '<br/>').replace('%20', ' ').replace('%26', '&') + if active_model == 'helpdesk.ticket' and self.env['helpdesk.ticket'].browse( + active_id).company_id.sh_display_in_chatter: + self.env['mail.message'].create({ + 'partner_ids': [(6, 0, self.partner_ids.ids)], + 'model': 'helpdesk.ticket', + 'res_id': active_id, + 'author_id': self.env.user.partner_id.id, + 'body': message or False, + 'message_type': 'comment', + }) + url = "https://web.whatsapp.com/send?l=&phone="+phone+"&text=" + text + return { + 'type': 'ir.actions.act_url', + 'url':url, + 'target': 'new', + } diff --git a/sh_helpdesk/wizard/mail_compose_view.xml b/sh_helpdesk/wizard/mail_compose_view.xml new file mode 100644 index 0000000..6345618 --- /dev/null +++ b/sh_helpdesk/wizard/mail_compose_view.xml @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<odoo> + <record id="sh_mail_compose_view" model="ir.ui.view"> + <field name="name">mail.compose.message</field> + <field name="model">mail.compose.message</field> + <field name="inherit_id" ref="mail.email_compose_message_wizard_form" /> + <field name="arch" type="xml"> + <field name="subject" position="after"> + <field name="is_wp" invisible="1"/> + <field name="sh_quick_reply_template_id" attrs="{'invisible': [('model', '!=', 'helpdesk.ticket')]}" /> + <field name="body_str" invisible="1" /> + </field> + <xpath expr="//button[@name='action_send_mail']" position="after"> + <button string="Send By Whatsapp" name="action_send_wp" type="object" class="btn-primary o_mail_send" attrs="{'invisible':[('is_wp','=',False)]}" groups="sh_helpdesk.helpdesk_group_whatsapp" /> + </xpath> + </field> + </record> +</odoo> |
