[ADD]sh_survey_all_in_one

This commit is contained in:
2026-01-22 18:11:45 +01:00
parent 2bcb53d593
commit 654e38e514
271 changed files with 16930 additions and 0 deletions

View File

@@ -0,0 +1,6 @@
# -*- coding: utf-8 -*-
# Part of Softhealer Technologies.
from . import models
from . import wizards

View File

@@ -0,0 +1,113 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<data noupdate="1">
<record id="sh_survmate_theme_style_1" model="sh.survmate.settings">
<field name="name">Theme 1</field>
<field name='sh_survmate_show_bg_color'>True</field>
<field name="sh_survmate_bg_color">#FFFFFF</field>
<field name="sh_survmate_question_color">#585858</field>
<field name="sh_survmate_answer_color">#0042BC</field>
<field name='sh_survmate_section_title_color'>#FFFFFF</field>
<field name='sh_survmate_section_title_font_color'>#444444</field>
<field name='sh_survmate_section_answer_text_color'>#444444</field>
<field name='sh_survmate_theme_primary_color'>#0043A8</field>
<field name='sh_survmate_theme_secondary_color'>#FAFAFA</field>
<field name="sh_survmate_button_style">style_1</field>
<field name="sh_survmate_input_style">style_1</field>
<field name="sh_survmate_checkbox_style">style_1</field>
<field name="sh_survmate_radio_button_style">style_1</field>
<field name="sh_survmate_section_style">style_1</field>
</record>
<record id="sh_survmate_theme_style_2" model="sh.survmate.settings">
<field name="name">Theme 2</field>
<field name='sh_survmate_show_bg_color'>True</field>
<field name="sh_survmate_bg_color">#FFFFFF</field>
<field name="sh_survmate_question_color">#474747</field>
<field name="sh_survmate_answer_color">#571839</field>
<field name='sh_survmate_section_title_color'>#BB377D</field>
<field name='sh_survmate_section_title_font_color'>#FFFFFF</field>
<field name='sh_survmate_section_answer_text_color'>#1F4037</field>
<field name='sh_survmate_theme_primary_color'>#BB377D</field>
<field name='sh_survmate_theme_secondary_color'>#F4F4F4</field>
<field name="sh_survmate_button_style">style_2</field>
<field name="sh_survmate_input_style">style_2</field>
<field name="sh_survmate_checkbox_style">style_2</field>
<field name="sh_survmate_radio_button_style">style_2</field>
<field name="sh_survmate_section_style">style_2</field>
</record>
<record id="sh_survmate_theme_style_3" model="sh.survmate.settings">
<field name="name">Theme 3</field>
<field name='sh_survmate_show_bg_color'>True</field>
<field name="sh_survmate_bg_color">#FFFFFF</field>
<field name="sh_survmate_question_color">#666666</field>
<field name="sh_survmate_answer_color">#183543</field>
<field name='sh_survmate_section_title_color'>#FFFFFF</field>
<field name='sh_survmate_section_title_font_color'>#1B343F</field>
<field name='sh_survmate_section_answer_text_color'>#1F4037</field>
<field name='sh_survmate_theme_primary_color'>#337899</field>
<field name='sh_survmate_theme_secondary_color'>#F4F4F4</field>
<field name="sh_survmate_button_style">style_3</field>
<field name="sh_survmate_input_style">style_3</field>
<field name="sh_survmate_checkbox_style">style_3</field>
<field name="sh_survmate_radio_button_style">style_3</field>
<field name="sh_survmate_section_style">style_3</field>
</record>
<record id="sh_survmate_theme_style_4" model="sh.survmate.settings">
<field name="name">Theme 4</field>
<field name='sh_survmate_show_bg_color'>true</field>
<field name="sh_survmate_bg_color">#FFFFFF</field>
<field name="sh_survmate_question_color">#474747</field>
<field name="sh_survmate_answer_color">#1F4037</field>
<field name='sh_survmate_section_title_color'>#01592F</field>
<field name='sh_survmate_section_title_font_color'>#F5F5F5</field>
<field name='sh_survmate_section_answer_text_color'>#1F4037</field>
<field name='sh_survmate_theme_primary_color'>#01592F</field>
<field name='sh_survmate_theme_secondary_color'>#F4F4F4</field>
<field name="sh_survmate_button_style">style_4</field>
<field name="sh_survmate_input_style">style_4</field>
<field name="sh_survmate_checkbox_style">style_4</field>
<field name="sh_survmate_radio_button_style">style_4</field>
<field name="sh_survmate_section_style">style_4</field>
</record>
<record id="sh_survmate_theme_style_5" model="sh.survmate.settings">
<field name="name">Theme 5</field>
<field name='sh_survmate_show_bg_color'>True</field>
<field name="sh_survmate_bg_color">#FFFFFF</field>
<field name="sh_survmate_question_color">#474747</field>
<field name="sh_survmate_answer_color">#61045F</field>
<field name='sh_survmate_section_title_color'>#F1F5F8</field>
<field name='sh_survmate_section_title_font_color'>#61045F</field>
<field name='sh_survmate_section_answer_text_color'>#1F4037</field>
<field name='sh_survmate_theme_primary_color'>#61045F</field>
<field name='sh_survmate_theme_secondary_color'>#F4F4F4</field>
<field name="sh_survmate_button_style">style_5</field>
<field name="sh_survmate_input_style">style_5</field>
<field name="sh_survmate_checkbox_style">style_5</field>
<field name="sh_survmate_radio_button_style">style_5</field>
<field name="sh_survmate_section_style">style_5</field>
</record>
</data>
</odoo>

View File

@@ -0,0 +1,5 @@
# -*- coding: utf-8 -*-
# Part of Softhealer Technologies.
from . import survey

View File

@@ -0,0 +1,127 @@
# -*- coding: utf-8 -*-
# Part of Softhealer Technologies.
from odoo import models, fields, _
class SurveyQuestion(models.Model):
_inherit = "survey.question"
sh_survmate_theme_grid_type = fields.Selection([
('1', '1'),
('2', '2'),
('3', '3'),
('4', '4'),
('5', '5'),
('6', '6'),
('7', '7'),
('8', '8'),
('9', '9'),
('10', '10'),
('11', '11'),
('12', '12'),
], string="Grid", required=True, default='12')
class survey_survey(models.Model):
_inherit = "survey.survey"
sh_survmate_settings_id = fields.Many2one(
comodel_name="sh.survmate.settings", string="Survmate Theme")
# timer position fixed
sh_is_time_fixed = fields.Boolean(string="Is Fixed Timer Position?")
class sh_survmate_settings(models.Model):
_name = "sh.survmate.settings"
_description = 'Survmate Settings'
_order = "id desc"
name = fields.Char(string="Name", required=True)
sh_survmate_show_bg_color = fields.Boolean(string="Show Background Color")
sh_survmate_bg_color = fields.Char(string="Background Color")
sh_survmate_question_color = fields.Char(string="Question Color")
sh_survmate_answer_color = fields.Char(string="Answer Color")
sh_survmate_section_title_color = fields.Char(
string="Section Background Color")
sh_survmate_section_title_font_color = fields.Char(
string="Section Font Color")
sh_survmate_section_answer_text_color = fields.Char(
string="Answer Text Color")
sh_survmate_theme_primary_color = fields.Char(string="Primary Color")
sh_survmate_theme_secondary_color = fields.Char(string="Secondary Color")
sh_survmate_button_style = fields.Selection([
('style_1', 'Style 1'),
('style_2', 'Style 2'),
('style_3', 'Style 3'),
('style_4', 'Style 4'),
('style_5', 'Style 5'),
], string="Button Style")
sh_survmate_input_style = fields.Selection([
('style_1', 'Style 1'),
('style_2', 'Style 2'),
('style_3', 'Style 3'),
('style_4', 'Style 4'),
('style_5', 'Style 5'),
], string="Input Style")
sh_survmate_section_style = fields.Selection([
('style_1', 'Style 1'),
('style_2', 'Style 2'),
('style_3', 'Style 3'),
('style_4', 'Style 4'),
('style_5', 'Style 5'),
], string="Section Style")
sh_survmate_checkbox_style = fields.Selection([
('style_1', 'Style 1'),
('style_2', 'Style 2'),
('style_3', 'Style 3'),
('style_4', 'Style 4'),
('style_5', 'Style 5'),
], string="Checkbox Style")
sh_survmate_radio_button_style = fields.Selection([
('style_1', 'Style 1'),
('style_2', 'Style 2'),
('style_3', 'Style 3'),
('style_4', 'Style 4'),
('style_5', 'Style 5'),
], string="Radio Button Style")
def action_preview_theme_style(self):
if self:
context = dict(self.env.context or {})
img_src = ""
if context and context.get('which_style', '') == 'button':
img_src = "/sh_survey_all_in_one/static/src/img/extra_addons/sh_survmate_theme/button-style---2.gif"
if context and context.get('which_style', '') == 'input':
img_src = "/sh_survey_all_in_one/static/src/img/extra_addons/sh_survmate_theme/input_style.png"
if context and context.get('which_style', '') == 'section':
img_src = "/sh_survey_all_in_one/static/src/img/extra_addons/sh_survmate_theme/section_style.png"
if context and context.get('which_style', '') == 'checkbox':
img_src = "/sh_survey_all_in_one/static/src/img/extra_addons/sh_survmate_theme/checkbox_style.png"
if context and context.get('which_style', '') == 'radio':
img_src = "/sh_survey_all_in_one/static/src/img/extra_addons/sh_survmate_theme/radio_button_style.png"
context['default_img_src'] = img_src
return {
'name': _('Preview Style'),
'view_mode': 'form',
'res_model': 'sh.survmate.theme.button.design.wizard',
'view_id': self.env.ref('sh_survey_all_in_one.sh_survmate_theme_button_style_wizard_view').id,
'type': 'ir.actions.act_window',
'context': context,
'target': 'new',
'flags': {'form': {'action_buttons': False}}
}

View File

@@ -0,0 +1,337 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<!-- Main survey layout -->
<template id="layout" name="Survey Layout" inherit_id="survey.layout">
<xpath expr="//div[@id='wrapwrap']" position="before">
<!-- Style -->
<t t-set="survmate_style" t-value="(('height: 100%; overflow: auto; background: url(' + survey.background_image_url + ') no-repeat fixed center; box-shadow: inset 0 0 0 10000px rgba(255,255,255,.7); background-size: cover;') if survey and survey.background_image and answer else 'height: 100%; overflow: auto;')"/>
<t t-if="survey and survey.sh_survmate_settings_id.sh_survmate_bg_color and survey.sh_survmate_settings_id.sh_survmate_show_bg_color">
<t t-set="survmate_style" t-value="'height: 100%; overflow: auto;background: ' + survey.sh_survmate_settings_id.sh_survmate_bg_color"/>
</t>
<!-- Class -->
<t t-set="sh_survmate_class_all" t-value="''"/>
<t t-set="sh_survmate_button_class" t-value="''"/>
<t t-set="sh_survmate_input_class" t-value="''"/>
<t t-set="sh_survmate_section_class" t-value="''"/>
<t t-set="sh_survmate_checkbox_class" t-value="''"/>
<t t-set="sh_survmate_radio_button_class" t-value="''"/>
<t t-if="survey and survey.sh_survmate_settings_id.sh_survmate_button_style" t-set="sh_survmate_button_class" t-value="'sh_survmate_button_' + str(survey.sh_survmate_settings_id.sh_survmate_button_style) "/>
<t t-if="survey and survey.sh_survmate_settings_id.sh_survmate_input_style" t-set="sh_survmate_input_class" t-value="'sh_survmate_input_' + str(survey.sh_survmate_settings_id.sh_survmate_input_style) "/>
<t t-if="survey and survey.sh_survmate_settings_id.sh_survmate_section_style" t-set="sh_survmate_section_class" t-value="'sh_survmate_section_' + str(survey.sh_survmate_settings_id.sh_survmate_section_style) "/>
<t t-if="survey and survey.sh_survmate_settings_id.sh_survmate_checkbox_style" t-set="sh_survmate_checkbox_class" t-value="'sh_survmate_checkbox_' + str(survey.sh_survmate_settings_id.sh_survmate_checkbox_style) "/>
<t t-if="survey and survey.sh_survmate_settings_id.sh_survmate_radio_button_style" t-set="sh_survmate_radio_button_class" t-value="'sh_survmate_radiobtn_' + str(survey.sh_survmate_settings_id.sh_survmate_radio_button_style) "/>
<t t-set="sh_survmate_class_all" t-value="sh_survmate_button_class + ' ' + sh_survmate_input_class + ' ' + sh_survmate_section_class + ' ' + sh_survmate_checkbox_class + ' ' + sh_survmate_radio_button_class "/>
<!-- Inline css -->
<style type="text/css">
.sh_survmate_input_style_1 .o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_text_box:focus{background-image: linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>), linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>);}
.sh_survmate_input_style_1 .o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_date:focus{background-image: linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>), linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>);}
.sh_survmate_input_style_1 .o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_datetime:focus{background-image: linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>), linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>);}
.sh_survmate_input_style_1 .o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_numerical_box:focus{background-image: linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>), linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>);}
.sh_survmate_input_style_1 .o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_color_box:focus{background-image: linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>), linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>);}
.sh_survmate_input_style_1 .o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_email_box:focus{background-image: linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>), linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>);}
.sh_survmate_input_style_1 .o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_sh_many2one_wrapper input:focus{background-image: linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>), linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>);}
.sh_survmate_input_style_1 .o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_sh_many2many_select_div .viewbar:focus{background-image: linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>), linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>);}
.sh_survmate_input_style_1 .o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_sh_address_wrapper input:focus{background-image: linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>), linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>);}
.sh_survmate_input_style_1 .o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_sh_address_wrapper select:focus{background-image: linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>), linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>);}
.sh_survmate_input_style_1 .o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_tmpl_sh_location:focus{background-image: linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>), linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>);}
.sh_survmate_input_style_1 .o_survey_question_matrix input:focus,
.sh_survmate_input_style_1 .o_survey_question_matrix .sh_textarea:focus
{background-image: linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>), linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>);}
/*Survey Fill*/
/*question*/
.o_survey_form form .o_survey_form_content .js_question-wrapper h3 span{color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_question_color"/>;}
/*answer color*/
.o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_text_box{border-color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_answer_text_color"/> !important;}
.o_survey_question_matrix input,
.o_survey_question_matrix .sh_textarea{border-color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_answer_text_color"/> !important;}
.o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_date{border-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_answer_text_color"/> !important;}
.o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_datetime,
.o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_email_box{border-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_answer_text_color"/> !important;}
.o_survey_form form .o_survey_form_content .js_question-wrapper .fa-calendar{color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;}
.o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_numerical_box{border-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_answer_text_color"/> !important;}
.o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_color_box{border-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_answer_text_color"/> !important;}
.o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_sh_many2one_wrapper input{border-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_answer_text_color"/> !important;}
.o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_sh_many2many_select_div .viewbar{border-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_answer_text_color"/> !important;}
.o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_sh_address_wrapper input{border-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_answer_text_color"/> !important;}
.o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_sh_address_wrapper select{border-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_answer_text_color"/> !important;}
.o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_tmpl_sh_location{border-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_answer_text_color"/> !important;}
.o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_matrix .fa:not(.fa-qrcode):not(.fa-barcode){color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;}
.o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_form_choice .o_survey_choice_btn span{color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;}
.o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_form_choice .o_survey_choice_btn .fa{color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;}
/*Section Color*/
.o_survey_form h1.o_survey_main_title{color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;}
/*Section Desc. Color*/
.o_survey_form form .o_survey_form_content .oe_no_empty p{color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_question_color"/>;}
/*Input answer text color*/
/*Survey Review*/
#wrapwrap .o_survey_print h1 span{color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;}
#wrapwrap .o_survey_print fieldset .js_question-wrapper h2{color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_question_color"/>;}
#wrapwrap .o_survey_print fieldset .o_survey_comment_container .o_survey_question_text_box{border-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_answer_text_color"/> !important;}
#wrapwrap .o_survey_print fieldset .o_survey_question_color_box{padding: 6px 5px !important;border-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_answer_text_color"/> !important;}
#wrapwrap .o_survey_print fieldset .js_cls_tmpl_sh_location{border-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_answer_text_color"/> !important;}
#wrapwrap .o_survey_print fieldset .o_survey_question_email_box{border-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_answer_text_color"/> !important;}
#wrapwrap .o_survey_print fieldset .o_survey_question_date{border-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_answer_text_color"/> !important;}
#wrapwrap .o_survey_print fieldset .o_survey_question_datetime{border-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_answer_text_color"/> !important;}
#wrapwrap .o_survey_print fieldset .o_survey_question_numerical_box{border-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_answer_text_color"/> !important;}
#wrapwrap .o_survey_print fieldset .oe_no_empty p{color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_question_color"/>;}
#wrapwrap .o_survey_print fieldset .o_survey_choice_btn{border-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;}
#wrapwrap .o_survey_print fieldset .o_survey_choice_btn span{color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> ;}
#wrapwrap .o_survey_print fieldset .o_survey_choice_btn .fa{color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>;}
#wrapwrap .o_survey_print fieldset .o_survey_question_numerical_box{border-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;}
#wrapwrap .o_survey_print fieldset .o_survey_question_matrix .fa:not(.fa-qrcode):not(.fa-barcode){color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;}
/* Survey Print */
.o_survey_print .o_survey_question_matrix th{background-color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;}
.o_survey_print .o_survey_question_matrix td{background-color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_secondary_color"/> !important;}
/* Survey Fill */
.o_survey_form .o_survey_question_matrix th{background-color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;}
.o_survey_form .o_survey_question_matrix td{background-color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_secondary_color"/> !important;}
.sh_survmate_section_style_1 .wrap .o_survey_print fieldset h1:after{background:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;}
.sh_survmate_section_style_1 .o_survey_form form .o_survey_form_content h2:after{background:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;}
.sh_survmate_button_style_1 .o_survey_form .o_survey_form_content .btn-primary,
.sh_survmate_button_style_1 .o_survey_print .btn-primary,
.sh_survmate_button_style_1 .o_survey_print div p .btn-primary{background:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;border-color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;}
.sh_survmate_button_style_1 .o_survey_form .o_survey_form_content .btn-primary:hover,
.sh_survmate_button_style_1 .o_survey_print div p .btn-primary:hover{color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;}
.sh_survmate_input_style_1 .o_survey_choice_btn,
.sh_survmate_input_style_1 .o_survey_print .o_survey_choice_btn{
box-shadow: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> 0px 0px 0px 1px !important;
}
.sh_survmate_section_style_1 .o_survey_form form .o_survey_form_content h2.o_survey_title,
.sh_survmate_section_style_1 .wrap .o_survey_print fieldset .o_page_header h1{color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_title_font_color"/> !important;}
.sh_survmate_button_style_2 .o_survey_form .o_survey_form_content .btn-primary:after,
.sh_survmate_button_style_2 .o_survey_print .btn-primary:after,
.sh_survmate_button_style_2 .o_survey_print div p .btn-primary:after{background:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;}
.sh_survmate_section_style_2 .o_survey_form form .o_survey_form_content h2.o_survey_title,
.sh_survmate_section_style_2 .wrap .o_survey_print fieldset .o_page_header h1{background:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_title_color"/> !important;color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_title_font_color"/>;}
.sh_survmate_radiobtn_style_2 .fa-circle-thin{border-color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;}
.sh_survmate_radiobtn_style_2 .o_survey_selected .fa-circle-thin{border-color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;}
.sh_survmate_input_style_2 .o_survey_choice_btn,
.sh_survmate_input_style_2 .o_survey_print .o_survey_choice_btn{
box-shadow: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> 0px 0px 0px 1px !important;
}
.sh_survmate_button_style_2 .o_survey_form .o_survey_form_content .btn-primary:hover,
.sh_survmate_button_style_2 .o_survey_print .btn-primary:hover,
.sh_survmate_button_style_2 .o_survey_print div p .btn-primary:hover{
color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;
border-color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;
}
.sh_survmate_button_style_2 .o_survey_form .o_survey_form_content .btn-primary,
.sh_survmate_button_style_2 .o_survey_print .btn-primary,
.sh_survmate_button_style_2 .o_survey_print div p .btn-primary{
border-color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;
}
.sh_survmate_button_style_2 .o_survey_print .btn-primary:disabled{
background-color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;pointer-events: none;}
.sh_survmate_button_style_3 .o_survey_form .o_survey_form_content .btn-primary,
.sh_survmate_button_style_3 .o_survey_print div p .btn-primary{background:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;}
.sh_survmate_button_style_3 .o_survey_form .o_survey_form_content .btn-primary:after,
.sh_survmate_button_style_3 .o_survey_print div p .btn-primary:after,
.sh_survmate_button_style_3 .o_survey_form .o_survey_form_content .btn-primary:before,
.sh_survmate_button_style_3 .o_survey_print div p .btn-primary:before{
background:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;
}
.sh_survmate_button_style_3 .o_survey_form .o_survey_form_content .btn-primary:hover,
.sh_survmate_button_style_3 .o_survey_print div p .btn-primary:hover{
color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;
}
.sh_survmate_input_style_3 .o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_text_box,
.sh_survmate_input_style_3 .o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_date,
.sh_survmate_input_style_3 .o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_datetime,
.sh_survmate_input_style_3 .o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_form_choice .o_survey_choice_btn,
.sh_survmate_input_style_3 .o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_numerical_box,
.sh_survmate_input_style_3 .o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_color_box,
.sh_survmate_input_style_3 .o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_email_box,
.sh_survmate_input_style_3 .o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_sh_many2one_wrapper input,
.sh_survmate_input_style_3 .o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_sh_many2many_select_div .viewbar,
.sh_survmate_input_style_3 .o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_sh_address_wrapper input,
.sh_survmate_input_style_3 .o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_sh_address_wrapper select,
.sh_survmate_input_style_3 .o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_tmpl_sh_location,
.sh_survmate_input_style_3 .o_survey_print fieldset .o_survey_question_text_box,
.sh_survmate_input_style_3 .o_survey_print fieldset .o_survey_question_date,
.sh_survmate_input_style_3 .o_survey_print fieldset .o_survey_question_datetime,
.sh_survmate_input_style_3 .o_survey_print fieldset .o_survey_choice_btn,
.sh_survmate_input_style_3 .o_survey_print fieldset .o_survey_question_numerical_box,
.sh_survmate_input_style_3 .o_survey_print fieldset .o_survey_question_color_box,
.sh_survmate_input_style_3 .o_survey_print fieldset .o_survey_question_email_box,
.sh_survmate_input_style_3 .o_survey_print fieldset .js_cls_sh_many2one_wrapper input,
.sh_survmate_input_style_3 .o_survey_print fieldset .js_cls_sh_many2many_select_div .viewbar,
.sh_survmate_input_style_3 .o_survey_print fieldset .js_cls_sh_address_wrapper input,
.sh_survmate_input_style_3 .o_survey_print fieldset .js_cls_sh_address_wrapper select,
.sh_survmate_input_style_3 .o_survey_print fieldset .js_cls_tmpl_sh_location{
border-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;
}
.sh_survmate_input_style_3 .o_survey_question_matrix input:focus,
.sh_survmate_input_style_3 .o_survey_question_matrix .sh_textarea:focus,
.sh_survmate_input_style_3 .o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_text_box:focus{background-image: linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>), linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>);}
.sh_survmate_input_style_3 .o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_date:focus{background-image: linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>), linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>);}
.sh_survmate_input_style_3 .o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_datetime:focus{background-image: linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>), linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>);}
.sh_survmate_input_style_3 .o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_numerical_box:focus{background-image: linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>), linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>);}
.sh_survmate_input_style_3 .o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_color_box:focus{background-image: linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>), linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>);}
.sh_survmate_input_style_3 .o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_email_box:focus{background-image: linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>), linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>);}
.sh_survmate_input_style_3 .o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_sh_many2one_wrapper input:focus{background-image: linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>), linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>);}
.sh_survmate_input_style_3 .o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_sh_many2many_select_div .viewbar:focus{background-image: linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>), linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>);}
.sh_survmate_input_style_3 .o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_sh_address_wrapper input:focus{background-image: linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>), linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>);}
.sh_survmate_input_style_3 .o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_sh_address_wrapper select:focus{background-image: linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>), linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>);}
.sh_survmate_input_style_3 .o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_tmpl_sh_location:focus{background-image: linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>), linear-gradient(<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>, <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/>);}
.sh_survmate_section_style_3 .o_survey_form form .o_survey_form_content h2.o_survey_title,
.sh_survmate_section_style_3 .wrap .o_survey_print fieldset .o_page_header h1{
border-color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;
background:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_title_color"/> !important;
color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_title_font_color"/>;
}
.sh_survmate_button_style_3 .o_survey_print .btn-primary:disabled{
background-color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;
border-color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;
pointer-events:none;
}
.sh_survmate_input_style_3 .o_survey_print .o_survey_choice_btn{
border-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;
}
.sh_survmate_input_style_3 .o_survey_choice_btn,
.sh_survmate_input_style_3 .o_survey_print .o_survey_choice_btn{
box-shadow: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> 0px 0px 0px 1px !important;
}
/* Style 4*/
.sh_survmate_section_style_4 .o_survey_form form .o_survey_form_content h2.o_survey_title,
.sh_survmate_section_style_4 .wrap .o_survey_print fieldset .o_page_header h1{
background:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_title_color"/> !important;
color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_title_font_color"/>;
border-color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;
}
.sh_survmate_button_style_4 .o_survey_form .o_survey_form_content .btn-primary,
.sh_survmate_button_style_4 .o_survey_print div p .btn-primary{
border-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;
background: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;
}
.sh_survmate_button_style_4 .o_survey_form .o_survey_form_content .btn-primary:hover,
.sh_survmate_button_style_4 .o_survey_print div p .btn-primary:hover{
color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;
}
.sh_survmate_button_style_4 .o_survey_form .o_survey_form_content .btn-primary:after,
.sh_survmate_button_style_4 .o_survey_print div p .btn-primary:after,
.sh_survmate_button_style_4 .o_survey_form .o_survey_form_content .btn-primary:before,
.sh_survmate_button_style_4 .o_survey_print div p .btn-primary:before{
background-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;
}
.sh_survmate_radiobtn_style_4 .js_question-wrapper .o_survey_selected .fa-circle-thin:after{
background: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;
}
.sh_survmate_checkbox_style_4 .o_survey_form_choice .o_survey_selected .fa-square-o:after{
background: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;
}
.sh_survmate_checkbox_style_4 .o_survey_question_matrix .o_survey_matrix_btn.o_survey_selected i.fa-square-o:after{
background: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;
}
.sh_survmate_input_style_4 .o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_choice_btn,
.sh_survmate_input_style_4 .o_survey_print fieldset .o_survey_choice_btn{
box-shadow: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> 0px 0px 0px 1px !important;
}
.sh_survmate_button_style_4 .o_survey_print .btn-primary:disabled{
background-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;
border-color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;
pointer-events:none;
}
/*Style 5*/
.sh_survmate_button_style_5 .o_survey_form .o_survey_form_content .btn-primary:hover,
.sh_survmate_button_style_5 .o_survey_print div p .btn-primary:hover{
color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;
border-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;
}
.sh_survmate_section_style_5 .o_survey_form form .o_survey_form_content h2.o_survey_title,
.sh_survmate_section_style_5 .wrap .o_survey_print fieldset .o_page_header h1{
background:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_title_color"/> !important;
color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_section_title_font_color"/>;
border-color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;
}
.sh_survmate_button_style_5 .o_survey_form .o_survey_form_content .btn-primary,
.sh_survmate_button_style_5 .o_survey_print div p .btn-primary{
border-color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;
background:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;
}
.sh_survmate_input_style_5 .o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_form_choice .o_survey_choice_btn,
.sh_survmate_input_style_5 .o_survey_print fieldset .o_survey_choice_btn{
border-color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;
}
.sh_survmate_input_style_5 .o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_color_box,
.sh_survmate_input_style_5 .o_survey_form form .o_survey_form_content .js_question-wrapper .o_survey_question_email_box,
.sh_survmate_input_style_5 .o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_sh_many2one_wrapper input,
.sh_survmate_input_style_5 .o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_sh_many2many_select_div .viewbar,
.sh_survmate_input_style_5 .o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_sh_address_wrapper input,
.sh_survmate_input_style_5 .o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_sh_address_wrapper select,
.sh_survmate_input_style_5 .o_survey_form form .o_survey_form_content .js_question-wrapper .js_cls_tmpl_sh_location,
.sh_survmate_input_style_5 .o_survey_print fieldset .o_survey_question_color_box,
.sh_survmate_input_style_5 .o_survey_print fieldset .o_survey_question_email_box,
.sh_survmate_input_style_5 .o_survey_print fieldset .js_cls_sh_many2one_wrapper input,
.sh_survmate_input_style_5 .o_survey_print fieldset .js_cls_sh_many2many_select_div .viewbar,
.sh_survmate_input_style_5 .o_survey_print fieldset .js_cls_sh_address_wrapper input,
.sh_survmate_input_style_5 .o_survey_print fieldset .js_cls_sh_address_wrapper select,
.sh_survmate_input_style_5 .o_survey_print fieldset .js_cls_tmpl_sh_location{
border:0;
border-bottom:1px solid <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;
}
.sh_survmate_input_style_5 input[type='range']{
background-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;
}
.sh_survmate_input_style_5 .o_survey_print .btn-primary:disabled{
border-color:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;
background:<t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_theme_primary_color"/> !important;
pointer-evenets:none;
}
input[type=range].o_survey_question_email_box{
background-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;
border: 1px <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> solid !important;
}
input[type=range].o_survey_question_email_box::-webkit-slider-thumb{
background-color: <t t-if='survey' t-esc="survey.sh_survmate_settings_id.sh_survmate_answer_color"/> !important;
}
</style>
</xpath>
<xpath expr="//div[@id='wrapwrap']" position="attributes">
<attribute name="t-att-style">survmate_style</attribute>
<attribute name="t-attf-class" add="#{sh_survmate_class_all}" separator=" "/>
</xpath>
</template>
</odoo>

View File

@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<template id="sh_survmate_theme_question_matrix_inherit" inherit_id="survey.question_matrix" name="Survmate Question Matrix">
<xpath expr="//table[hasclass('table','table-borderless','o_survey_question_matrix','text-white','text-center','mb-0')]" position="attributes">
<attribute name="class">table table-borderless o_survey_question_matrix text-white text-center mb-0</attribute>
</xpath>
</template>
</odoo>

View File

@@ -0,0 +1,98 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<template id="sh_survmate_theme_multichoice_question_tmpl" inherit_id='survey.question_multiple_choice' name="Survmate Theme Custom Multichoice Question">
<xpath expr="//div[hasclass('d-flex','flex-wrap','col-lg-12')]//label[contains(@t-att-class, 'o_survey_choice_btn')]" position="replace">
<label t-att-class="'o_survey_choice_btn form-label me-2 py-1 px-3 rounded %s %s' % (answer_class, 'o_survey_selected' if answer_line else '')">
<t t-call="survey.survey_selection_key">
<t t-set="selection_key_class" t-value="'position-relative float-start d-flex'"/>
</t>
<input type="checkbox" t-att-value='label.id' class="o_survey_form_choice_item invisible position-absolute"
t-att-name="question.id"
t-att-checked="'checked' if answer_line else None"
t-att-data-selection-key="letters[item_idx] if useKeySelection else ''"/>
<span class="ms-2 text-break" t-field='label.value'/>
<t t-if="has_correct_answer and answer_selected">
<!-- While displaying results: change icons to have a check mark for a right answer and a cross for a wrong one -->
<i t-if="is_correct" class="float-end mt-1 position-relative d-inline fa fa-check-square"/>
<i t-else="" class="float-end mt-1 position-relative d-inline fa fa-times-square"/>
</t>
<t t-else="">
<i class="fa fa-check-square float-end mt-1 position-relative"></i>
<i class="fa fa-square-o float-end mt-1 position-relative"></i>
</t>
<t t-call="survey.question_suggested_value_image"/>
</label>
</xpath>
<xpath expr="//div[hasclass('js_ck_comments','col-lg-12')]//label[contains(@t-att-class, 'o_survey_choice_btn')]" position="replace">
<label t-att-class="'o_survey_choice_btn form-label me-2 py-1 px-3 rounded %s' % ('o_survey_selected' if comment_line else '')">
<t t-set="item_idx" t-value="item_idx + 1"/>
<t t-call="survey.survey_selection_key">
<t t-set="selection_key_class" t-value="'position-relative float-start d-flex'"/>
</t>
<input type="checkbox" class="o_survey_form_choice_item o_survey_js_form_other_comment invisible position-absolute" value="-1"
t-att-name="question.id"
t-att-checked="comment_line and 'checked' or None"
t-att-data-selection-key="letters[item_idx] if useKeySelection else ''"/>
<span class="ms-2" t-out="question.comments_message or default_comments_message" />
<i class="fa fa-check-square float-end mt-1 position-relative"></i>
<i class="fa fa-square-o float-end mt-1 position-relative"></i>
</label>
</xpath>
</template>
<template id="sh_survmate_theme_review_template_inherit" inherit_id="survey.survey_page_print" name="Survmate Question Review">
<xpath expr="//t[@t-set='answer_lines']" position="before">
<t t-set="sh_survmate_question_grid_cls" t-value="'col-md-%s' % (question.sh_survmate_theme_grid_type)" />
</xpath>
<xpath expr="//div[hasclass('wrap')]//fieldset" position="attributes">
<attribute name="class">row</attribute>
</xpath>
<xpath expr="//div[hasclass('js_question-wrapper')]" position="attributes">
<attribute name="t-att-class">'js_question-wrapper %s' %(sh_survmate_question_grid_cls)</attribute>
</xpath>
<!-- Not to display empty question description -->
<xpath expr='//div[@t-if="question.description"]' position="before">
<t t-set="shhtmlempty" t-value="'&lt;p&gt;&lt;br&gt;&lt;/p&gt;'"/>
</xpath>
<xpath expr='//div[@t-if="question.description"]' position="attributes">
<attribute name='t-if'>question.description != shhtmlempty</attribute>
</xpath>
</template>
<template id="sh_survmate_theme_question_template_inherit" inherit_id="survey.question_container" name="Survmate Question">
<xpath expr="//t[@t-set='extra_right_margin']" position="before">
<t t-set="sh_survmate_question_grid_cls" t-value="'col-md-%s' % (question.sh_survmate_theme_grid_type)" />
</xpath>
<xpath expr="//div[@t-att-data-constr-error-msg='question.constr_error_msg or default_constr_error_msg']" position="attributes">
<attribute name="t-att-class">'js_question-wrapper pb-4 %s %s col-md-%s' % ('d-none' if not display_question else '', 'mr-2' if extra_right_margin else '',question.sh_survmate_theme_grid_type)</attribute>
</xpath>
</template>
<template id="sh_survmate_theme_question_template_inherit_fill" inherit_id="survey.survey_fill_form" name="Survmate Question Fill">
<xpath expr="//div[hasclass('o_survey_form_content')]" position="attributes">
<attribute name="class">o_survey_form_content row w-100</attribute>
</xpath>
</template>
<!-- Timer Position -->
<template id="sh_survmate_theme_survey_header_inherit" inherit_id="survey.survey_fill_header" name="Emaxamination Header">
<xpath expr="//div[hasclass('o_survey_timer')]" position="attributes">
<attribute name="t-att-class">'o_survey_timer col-lg-2 pt-4 %s' % ('sh_survmate_timer_fixed' if survey.sh_is_time_fixed else '')</attribute>
</xpath>
</template>
</odoo>

View File

@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<!-- Survey Form -->
<record id="sh_survmate_theme_survey_question_form_inherit" model="ir.ui.view">
<field name="name">sh.survmate.theme.survey.question.form.inherit</field>
<field name="model">survey.question</field>
<field name="inherit_id" ref="survey.survey_question_form"/>
<field name="arch" type="xml">
<xpath expr="//page[@name='options']//group" position="after">
<group string='Layout'>
<group>
<field name='sh_survmate_theme_grid_type'/>
</group>
</group>
</xpath>
</field>
</record>
</odoo>

View File

@@ -0,0 +1,160 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<!-- Survey Form -->
<record id="sh_survmate_theme_survey_settings_form" model="ir.ui.view">
<field name="name">sh.survmate.theme.survey.settings.form</field>
<field name="model">sh.survmate.settings</field>
<field name="arch" type="xml">
<form>
<sheet>
<div class="oe_title" style="width: 100%;">
<label for="name" class="oe_edit_only"/>
<h1><field name="name" placeholder="e.g. Theme Settings for Survey A"/></h1>
</div>
<group>
<group string='Colors'>
<field name='sh_survmate_show_bg_color'/>
<field name="sh_survmate_bg_color" widget="color" attrs="{'invisible': [('sh_survmate_show_bg_color','=',False)]}"/>
<field name="sh_survmate_question_color" widget="color"/>
<field name="sh_survmate_answer_color" widget="color"/>
<field name="sh_survmate_section_title_color" widget="color"/>
<field name='sh_survmate_section_title_font_color' widget="color"/>
<field name='sh_survmate_section_answer_text_color' widget="color"/>
<field name='sh_survmate_theme_primary_color' widget="color"/>
<field name='sh_survmate_theme_secondary_color' widget="color"/>
</group>
<group string="Styles" name="group_button" priority="7">
<!-- Button Style -->
<label for="sh_survmate_button_style"/>
<div>
<field name="sh_survmate_button_style" widget="selection" class="oe_inline" style="width: 70% !important;"/>
<button
type="object"
name="action_preview_theme_style"
class="btn-sm mb4 fa fa-eye"
aria-label="Preview"
title="Preview"
context="{'which_style': 'button'}"
/>
</div>
<!-- Input Style -->
<label for="sh_survmate_input_style"/>
<div>
<field name="sh_survmate_input_style" widget="selection" class="oe_inline" style="width: 70% !important;"/>
<button
type="object"
name="action_preview_theme_style"
class="btn-sm mb4 fa fa-eye"
aria-label="Preview"
title="Preview"
context="{'which_style': 'input'}"
/>
</div>
<!-- Section Style -->
<label for="sh_survmate_section_style"/>
<div>
<field name="sh_survmate_section_style" widget="selection" class="oe_inline" style="width: 70% !important;"/>
<button
type="object"
name="action_preview_theme_style"
class="btn-sm mb4 fa fa-eye"
aria-label="Preview"
title="Preview"
context="{'which_style': 'section'}"
/>
</div>
<!-- Checkbox Style -->
<label for="sh_survmate_checkbox_style"/>
<div>
<field name="sh_survmate_checkbox_style" widget="selection" class="oe_inline" style="width: 70% !important;"/>
<button
type="object"
name="action_preview_theme_style"
class="btn-sm mb4 fa fa-eye"
aria-label="Preview"
title="Preview"
context="{'which_style': 'checkbox'}"
/>
</div>
<!-- Radio Style -->
<label for="sh_survmate_radio_button_style"/>
<div>
<field name="sh_survmate_radio_button_style" widget="selection" class="oe_inline" style="width: 70% !important;"/>
<button
type="object"
name="action_preview_theme_style"
class="btn-sm mb4 fa fa-eye"
aria-label="Preview"
title="Preview"
context="{'which_style': 'radio'}"
/>
</div>
</group>
</group>
</sheet>
</form>
</field>
</record>
<record id="sh_survmate_theme_survey_settings_tree" model="ir.ui.view">
<field name="name">sh.survmate.settings.tree</field>
<field name="model">sh.survmate.settings</field>
<field name="arch" type="xml">
<tree>
<field name="name"/>
</tree>
</field>
</record>
<record id="sh_survmate_theme_survey_settings_action" model="ir.actions.act_window">
<field name="name">Survmate Settings</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">sh.survmate.settings</field>
<field name="view_mode">tree,form</field>
</record>
<menuitem
id="sh_survmate_theme_survey_settings_menu"
action="sh_survmate_theme_survey_settings_action"
parent="survey.menu_surveys"
sequence="20"/>
<!-- QUESTIONS
<record id="sh_survmate_theme_survey_question_form" model="ir.ui.view">
<field name="name">sh.survmate.theme.survey.questions.form</field>
<field name="model">survey.question</field>
<field name="inherit_id" ref="survey.survey_question_form"/>
<field name="arch" type="xml">
<xpath expr="//page[2]" position="inside">
<group name="group_sh_survmate_layout" string="Layout">
<group>
<field name="sh_survmate_grid_type" required="1" />
</group>
</group>
</xpath>
</field>
</record>
-->
</odoo>

View File

@@ -0,0 +1,27 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="sh_survmate_theme_survey_form_inherit" model="ir.ui.view">
<field name="name">sh.survmate.theme.survey.form.inherit</field>
<field name="model">survey.survey</field>
<field name="inherit_id" ref="survey.survey_survey_view_form"/>
<field name="arch" type="xml">
<xpath expr="//group[@name='options']" position="inside">
<group string="Survmate Theme" name="sh_survmate_theme_group">
<field name="sh_survmate_settings_id"/>
</group>
</xpath>
<!-- Timer Fixed -->
<xpath expr="//group[@name='scoring']//field[@name='is_time_limited']" position="after">
<field name="sh_is_time_fixed" attrs="{'invisible': [('is_time_limited','=',False)]}"/>
</xpath>
</field>
</record>
</odoo>

View File

@@ -0,0 +1,6 @@
# -*- coding: utf-8 -*-
# Part of Softhealer Technologies.
from . import button_style_wizard

View File

@@ -0,0 +1,12 @@
# -*- coding: utf-8 -*-
# Part of Softhealer Technologies.
from odoo import models, fields
class ShSurvmateThemeButtonDesignWizard(models.TransientModel):
_name = 'sh.survmate.theme.button.design.wizard'
_description = 'Survmate Theme Button Design'
_order = "id desc"
img_src = fields.Char(string = "Image Src")

View File

@@ -0,0 +1,23 @@
<?xml version="1.0" encoding="utf-8"?>
<odoo>
<record id="sh_survmate_theme_button_style_wizard_view" model="ir.ui.view">
<field name="name">sh.survmate.theme.button.style.wizard.view</field>
<field name="model">sh.survmate.theme.button.design.wizard</field>
<field name="arch" type="xml">
<form string="Theme Preview">
<img alt="preview image" id="js_id_theme_preview_image" src="" style="width:100%;height:100%;"/>
<field style="display:none;" name="img_src"/>
<script type="text/javascript">
$( document ).ready(function() {
var img_src = $( "input#img_src").val();
$("#js_id_theme_preview_image").attr('src', img_src);
});
</script>
<footer>
<button string="Cancel" class="btn" special="cancel" />
</footer>
</form>
</field>
</record>
</odoo>