"
+msgstr ""
+"نتيجة:\n"
+" "
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.survey_page_fill
+msgid "Camera"
+msgstr "آلة تصوير"
+
+#. module: sh_survey_all_in_one
+#: code:addons/sh_survey_all_in_one/sh_survey_matrix_adv/models/survey.py:0
+#, python-format
+msgid "A question is either skipped, either answered. Not both."
+msgstr "يتم تخطي سؤال إما ، إما الإجابة. ليس كليهما."
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_address
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_address
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_address
+msgid "Address"
+msgstr "تبوك"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_answer_color
+msgid "Answer Color"
+msgstr "لون الإجابة"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_section_answer_text_color
+msgid "Answer Text Color"
+msgstr "إجابة لون النص"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__answer_type
+msgid "Answer Type"
+msgstr "نوع الإجابة"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_bg_color
+msgid "Background Color"
+msgstr "لون الخلفية"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_barcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_barcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_barcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_barcode
+msgid "Barcode"
+msgstr "الرمز الشريطي"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.survey_page_fill
+msgid "Barcode Scanner"
+msgstr "ماسح الباركود"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_button_style
+msgid "Button Style"
+msgstr "نمط زر"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_button_style_wizard_view
+msgid "Cancel"
+msgstr "يلغي"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_checkbox_style
+msgid "Checkbox Style"
+msgstr "نمط مربع الاختيار"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question_answer__sh_value_type
+msgid "Choices Type"
+msgstr "نوع الخيارات"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "City"
+msgstr "مدينة"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_signature
+msgid "Clear"
+msgstr "صافي"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.matrix
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_file_print
+msgid "Click here to download file"
+msgstr "انقر هنا لتنزيل الملف"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.survey_page_fill
+msgid "Close"
+msgstr "قريب"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_color
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_color
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_color
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_color
+msgid "Color"
+msgstr "اللون"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_settings_form
+msgid "Colors"
+msgstr "الألوان"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_country_id
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Country"
+msgstr "دولة"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Country..."
+msgstr "دولة..."
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__create_uid
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__create_uid
+msgid "Created by"
+msgstr "انشأ من قبل"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__create_date
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__create_date
+msgid "Created on"
+msgstr "تم إنشاؤها على"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__matrix_subtype__sh_custom_matrix
+msgid "Custom Matrix"
+msgstr "مصفوفة مخصصة"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__date
+msgid "Date"
+msgstr "تاريخ"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__datetime
+msgid "Datetime"
+msgstr "DateTime"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__display_name
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__display_name
+msgid "Display Name"
+msgstr "اسم العرض"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_email
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_email
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_email
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_email
+msgid "E-mail"
+msgstr "البريد الإلكتروني"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_file
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_file
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_file
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_file
+msgid "File"
+msgstr "ملف"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_file_fname
+msgid "File Name"
+msgstr "اسم الملف"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_survmate_theme_grid_type
+msgid "Grid"
+msgstr "جريد"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_ir_http
+msgid "HTTP Routing"
+msgstr "HTTP التوجيه"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__id
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__id
+msgid "ID"
+msgstr "بطاقة تعريف"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__access_token
+msgid "Identification token"
+msgstr "الرمز المميز للهوية"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__img_src
+msgid "Image Src"
+msgstr "صورة SRC"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_question
+msgid "Inherit Survey Question for extra fields"
+msgstr "مسألة استقصاء وراثة للحقول الإضافية"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_input_style
+msgid "Input Style"
+msgstr "نمط الإدخال"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_is_sh_textbox_pattern
+msgid "Input must be in specified pattern"
+msgstr "يجب أن يكون المدخلات في نمط محدد"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_survey__sh_is_time_fixed
+msgid "Is Fixed Timer Position?"
+msgstr "هل وضع مؤقت ثابت؟"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings____last_update
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard____last_update
+msgid "Last Modified on"
+msgstr "آخر تعديل على"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__write_uid
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__write_uid
+msgid "Last Updated by"
+msgstr "آخر تحديث بواسطة"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__write_date
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__write_date
+msgid "Last Updated on"
+msgstr "آخر تحديث على"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_sh_location_latitude
+msgid "Latitude"
+msgstr "خط العرض"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_question_form_inherit
+msgid "Layout"
+msgstr "تَخطِيط"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_location
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_location
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_location
+msgid "Location"
+msgstr "موقع"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_sh_location_longitude
+msgid "Longitude"
+msgstr "خط الطول"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_many2many
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_many2many
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_many2many
+msgid "Many2many"
+msgstr "Many2Many"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_many2one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_many2one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_many2one
+msgid "Many2one"
+msgstr "quant2one"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__matrix_subtype
+msgid "Matrix Type"
+msgstr "نوع المصفوفة"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question_answer__sh_matrix_range_max
+msgid "Maximum"
+msgstr "أقصى"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_month_max
+msgid "Maximum Month"
+msgstr "أقصى شهر"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_range_max
+msgid "Maximum Range"
+msgstr "أقصى مدى"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_time_max
+msgid "Maximum Time"
+msgstr "الحد الأقصى للوقت"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_week_max
+msgid "Maximum Week"
+msgstr "أقصى أسبوع"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question_answer__sh_matrix_range_min
+msgid "Minimum"
+msgstr "الحد الأدنى"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_month_min
+msgid "Minimum Month"
+msgstr "الحد الأدنى للشهر"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_range_min
+msgid "Minimum Range"
+msgstr "الحد الأدنى النطاق"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_time_min
+msgid "Minimum Time"
+msgstr "الحد الأدنى من الوقت"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_week_min
+msgid "Minimum Week"
+msgstr "أدنى أسبوع"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__que_sh_many2many_model_id
+msgid "Model"
+msgstr "نموذج"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__que_sh_many2one_model_id
+msgid "Model "
+msgstr "نموذج"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_month
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_month
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_month
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_month
+msgid "Month"
+msgstr "شهر"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_month_step
+msgid "Month Step"
+msgstr "خطوة الشهر"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__free_text
+msgid "Multiple Lines Text Box"
+msgstr "مربع نص خطوط متعددة"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__name
+msgid "Name"
+msgstr "اسم"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__numerical_box
+msgid "Numerical Value"
+msgstr "القيمة العددية"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_password
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_password
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_password
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_password
+msgid "Password"
+msgstr "كلمة المرور"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_password_maxlen
+msgid "Password Maximum Length"
+msgstr "كلمة مرور الحد الأقصى"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_password_minlen
+msgid "Password Minimum Length"
+msgstr "الحد الأدنى لطول كلمة المرور"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_settings_form
+msgid "Preview"
+msgstr "معاينة"
+
+#. module: sh_survey_all_in_one
+#: code:addons/sh_survey_all_in_one/sh_survmate_theme/models/survey.py:0
+#, python-format
+msgid "Preview Style"
+msgstr "نمط المعاينة"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_theme_primary_color
+msgid "Primary Color"
+msgstr "لون أصلي"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_qrcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_qrcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_qrcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_qrcode
+msgid "QR Code"
+msgstr "رمز الاستجابة السريعة"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_question_color
+msgid "Question Color"
+msgstr "لون أسئلة"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__question_type
+msgid "Question Type"
+msgstr "نوع السؤال"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_radio_button_style
+msgid "Radio Button Style"
+msgstr "نمط زر الراديو"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_range
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_range
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_range
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_range
+msgid "Range"
+msgstr "نطاق"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_range_step
+msgid "Range Step"
+msgstr "خطوة المدى"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_theme_secondary_color
+msgid "Secondary Color"
+msgstr "اللون الثانوي"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_section_title_color
+msgid "Section Background Color"
+msgstr "لون خلفية القسم"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_section_title_font_color
+msgid "Section Font Color"
+msgstr "لون الخط"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_section_style
+msgid "Section Style"
+msgstr "نمط القسم"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_many2one
+msgid "Select..."
+msgstr "يختار..."
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_show_bg_color
+msgid "Show Background Color"
+msgstr "إظهار لون الخلفية"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_city
+msgid "Show City Field?"
+msgstr "عرض المدينة؟"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_country_id
+msgid "Show Country Field?"
+msgstr "إظهار حقل البلد؟"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_state_id
+msgid "Show State Field?"
+msgstr "إظهار حقل الدولة؟"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_street
+msgid "Show Street Field?"
+msgstr "أظهر حقل الشارع؟"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_street2
+msgid "Show Street2 Field?"
+msgstr "إظهار حقل Street2؟"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_zip
+msgid "Show Zip Field?"
+msgstr "عرض zip Field؟"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_signature
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_signature
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_signature
+msgid "Signature"
+msgstr "التوقيع"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_signature_src
+msgid "Signature src"
+msgstr "توقيع SRC"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__textbox
+msgid "Single Line Text Box"
+msgstr "مربع نص سطر واحد"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_state_id
+msgid "State"
+msgstr "حالة"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "State / Province"
+msgstr "الدولة / المقاطعة"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "State / Province..."
+msgstr "الدولة / المقاطعة ..."
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question_answer__sh_matrix_range_step
+msgid "Step"
+msgstr "خطوة"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Street 2"
+msgstr "الشارع 2"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Street and Number"
+msgstr "Street والرقم "
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_1
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_1
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_1
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_1
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_1
+msgid "Style 1"
+msgstr "نمط 1"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_2
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_2
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_2
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_2
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_2
+msgid "Style 2"
+msgstr "النمط 2"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_3
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_3
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_3
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_3
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_3
+msgid "Style 3"
+msgstr "النمط 3"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_4
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_4
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_4
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_4
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_4
+msgid "Style 4"
+msgstr "النمط 4"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_5
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_5
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_5
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_5
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_5
+msgid "Style 5"
+msgstr "النمط 5"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_settings_form
+msgid "Styles"
+msgstr "أنماط"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_survey
+msgid "Survey"
+msgstr "الدراسة الاستقصائية"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_question_answer
+msgid "Survey Label"
+msgstr "تسمية المسح"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_user_input_line
+msgid "Survey User Input Line for extra fields"
+msgstr "خط إدخال مستخدم المسح لحقول إضافية"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_user_input
+msgid "Survey User Input for custom matrix"
+msgstr "استطلاع إدخال مستخدم للمصفوفة المخصصة"
+
+#. module: sh_survey_all_in_one
+#: model:ir.actions.act_window,name:sh_survey_all_in_one.sh_survmate_theme_survey_settings_action
+#: model:ir.model,name:sh_survey_all_in_one.model_sh_survmate_settings
+#: model:ir.ui.menu,name:sh_survey_all_in_one.sh_survmate_theme_survey_settings_menu
+msgid "Survmate Settings"
+msgstr "إعدادات الناجين"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_survey__sh_survmate_settings_id
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_form_inherit
+msgid "Survmate Theme"
+msgstr "موضوع الناجين"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_sh_survmate_theme_button_design_wizard
+msgid "Survmate Theme Button Design"
+msgstr "تصميم زر الناجين"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_textbox_pattern
+msgid "Textbox Pattern"
+msgstr "نمط مربع النص"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_textbox_placeholder
+msgid "Textbox Placeholder"
+msgstr "نص مربع النص"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_button_style_wizard_view
+msgid "Theme Preview"
+msgstr "معاينة الموضوع"
+
+#. module: sh_survey_all_in_one
+#. openerp-web
+#: code:addons/sh_survey_all_in_one/static/src/js/extra_addons/sh_survey_extra_fields/survey_form.js:0
+#, python-format
+msgid "This answer must be an URL."
+msgstr "يجب أن تكون هذه الإجابة عنوان URL."
+
+#. module: sh_survey_all_in_one
+#. openerp-web
+#: code:addons/sh_survey_all_in_one/static/src/js/extra_addons/sh_survey_extra_fields/survey_form.js:0
+#, python-format
+msgid "This answer must be an email address."
+msgstr "يجب أن تكون هذه الإجابة عنوان بريد إلكتروني."
+
+#. module: sh_survey_all_in_one
+#. openerp-web
+#: code:addons/sh_survey_all_in_one/static/src/js/extra_addons/sh_survey_extra_fields/survey_form.js:0
+#, python-format
+msgid "This is not a date"
+msgstr "هذا ليس موعدًا"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_time
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_time
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_time
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_time
+msgid "Time"
+msgstr "زمن"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_time_step
+msgid "Time Step"
+msgstr "خطوة زمنية"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_url
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_url
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_url
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_url
+msgid "URL"
+msgstr "عنوان URL"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_city
+msgid "Value Ans Sh City"
+msgstr "قيمة ANS SH CITY"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_street
+msgid "Value Ans Sh Street"
+msgstr "قيمة الجواب شارع شارع"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_street2
+msgid "Value Ans Sh Street2"
+msgstr "القيمة Ans SH Street2"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_zip
+msgid "Value Ans Sh Zip"
+msgstr "قيمة الجواب sh zip"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_week
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_week
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_week
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_week
+msgid "Week"
+msgstr "أسبوع"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_week_step
+msgid "Week Step"
+msgstr "خطوة الأسبوع"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Zip Code"
+msgstr "الرمز البريدي"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "[0-9]{4}"
+msgstr "[0-9] {4}"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_settings_form
+msgid "e.g. Theme Settings for Survey A"
+msgstr "على سبيل المثال إعدادات الموضوع للمسح أ"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.matrix
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_email
+msgid "example@domain.com"
+msgstr "example@domain.com"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.matrix
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_time
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_url
+msgid "https://example.com"
+msgstr "https://example.com"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "nnnn"
+msgstr "nnnn"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_button_style_wizard_view
+msgid "preview image"
+msgstr "صورة المعاينة"
diff --git a/sh_survey_all_in_one/i18n/de.po b/sh_survey_all_in_one/i18n/de.po
new file mode 100644
index 0000000..96bb74b
--- /dev/null
+++ b/sh_survey_all_in_one/i18n/de.po
@@ -0,0 +1,841 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * sh_survey_all_in_one
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 15.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2022-06-28 07:30+0000\n"
+"PO-Revision-Date: 2022-06-28 07:30+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_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_textbox_for_pattern
+msgid "#{question.validation_sh_textbox_placeholder}"
+msgstr "#{question.validation_sh_textbox_placeholder}"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__sh_survmate_theme_grid_type__10
+msgid "10"
+msgstr "10"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__sh_survmate_theme_grid_type__11
+msgid "11"
+msgstr "11"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__sh_survmate_theme_grid_type__12
+msgid "12"
+msgstr "12"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "18:00"
+msgstr "18:00"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "20"
+msgstr "20"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "2018-03"
+msgstr "2018-03"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "2018-05"
+msgstr "2018-05"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "2018-W18"
+msgstr "2018-W18"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "2018-W26"
+msgstr "2018-W26"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "60 (In seconds)"
+msgstr "60 (In seconds)"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "9:00"
+msgstr "9:00"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.survey_page_fill
+msgid ""
+"Result:\n"
+" "
+msgstr ""
+"Ergebnis:\n"
+" "
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.survey_page_fill
+msgid "Camera"
+msgstr "Kamera"
+
+#. module: sh_survey_all_in_one
+#: code:addons/sh_survey_all_in_one/sh_survey_matrix_adv/models/survey.py:0
+#, python-format
+msgid "A question is either skipped, either answered. Not both."
+msgstr "Eine Frage wird entweder übersprungen, entweder beantwortet. Nicht beide."
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_address
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_address
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_address
+msgid "Address"
+msgstr "Adresse"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_answer_color
+msgid "Answer Color"
+msgstr "Antwortfarbe"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_section_answer_text_color
+msgid "Answer Text Color"
+msgstr "Beantwortung der Textfarbe"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__answer_type
+msgid "Answer Type"
+msgstr "Antworttyp"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_bg_color
+msgid "Background Color"
+msgstr "Hintergrundfarbe"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_barcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_barcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_barcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_barcode
+msgid "Barcode"
+msgstr "Barcode"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.survey_page_fill
+msgid "Barcode Scanner"
+msgstr "Barcodelesegerät"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_button_style
+msgid "Button Style"
+msgstr "Knopfstil"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_button_style_wizard_view
+msgid "Cancel"
+msgstr "Absagen"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_checkbox_style
+msgid "Checkbox Style"
+msgstr "Kontrollkastenstil"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question_answer__sh_value_type
+msgid "Choices Type"
+msgstr "Auswahltyp"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "City"
+msgstr "Stadt"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_signature
+msgid "Clear"
+msgstr "Klar"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.matrix
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_file_print
+msgid "Click here to download file"
+msgstr "Klicken Sie hier, um die Datei herunterzuladen"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.survey_page_fill
+msgid "Close"
+msgstr "Nah dran"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_color
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_color
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_color
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_color
+msgid "Color"
+msgstr "Farbe"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_settings_form
+msgid "Colors"
+msgstr "Farben"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_country_id
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Country"
+msgstr "Land"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Country..."
+msgstr "Land..."
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__create_uid
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__create_uid
+msgid "Created by"
+msgstr "Erstellt von"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__create_date
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__create_date
+msgid "Created on"
+msgstr "Erstellt am"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__matrix_subtype__sh_custom_matrix
+msgid "Custom Matrix"
+msgstr "Benutzerdefinierte Matrix"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__date
+msgid "Date"
+msgstr "Datum"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__datetime
+msgid "Datetime"
+msgstr "Terminzeit"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__display_name
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__display_name
+msgid "Display Name"
+msgstr "Anzeigename"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_email
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_email
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_email
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_email
+msgid "E-mail"
+msgstr "Email"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_file
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_file
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_file
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_file
+msgid "File"
+msgstr "Datei"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_file_fname
+msgid "File Name"
+msgstr "Dateiname"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_survmate_theme_grid_type
+msgid "Grid"
+msgstr "Netz"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_ir_http
+msgid "HTTP Routing"
+msgstr "HTTP -Routing"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__id
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__id
+msgid "ID"
+msgstr "ICH WÜRDE"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__access_token
+msgid "Identification token"
+msgstr "Identifikationstoken"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__img_src
+msgid "Image Src"
+msgstr "Bild SRC"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_question
+msgid "Inherit Survey Question for extra fields"
+msgstr "Erbefragfrage für zusätzliche Felder in Erben"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_input_style
+msgid "Input Style"
+msgstr "Eingabestil"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_is_sh_textbox_pattern
+msgid "Input must be in specified pattern"
+msgstr "Die Eingabe muss im angegebenen Muster sein"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_survey__sh_is_time_fixed
+msgid "Is Fixed Timer Position?"
+msgstr "Ist die Position der festen Timer?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings____last_update
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard____last_update
+msgid "Last Modified on"
+msgstr "Zuletzt modifiziert auf"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__write_uid
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__write_uid
+msgid "Last Updated by"
+msgstr "Zuletzt aktualisiert von"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__write_date
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__write_date
+msgid "Last Updated on"
+msgstr "Zuletzt aktualisiert am"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_sh_location_latitude
+msgid "Latitude"
+msgstr "Breite"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_question_form_inherit
+msgid "Layout"
+msgstr "Layout"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_location
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_location
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_location
+msgid "Location"
+msgstr "Ort"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_sh_location_longitude
+msgid "Longitude"
+msgstr "Längengrad"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_many2many
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_many2many
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_many2many
+msgid "Many2many"
+msgstr "Viele2Many"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_many2one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_many2one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_many2one
+msgid "Many2one"
+msgstr "Viele2one"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__matrix_subtype
+msgid "Matrix Type"
+msgstr "Matrixtyp"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question_answer__sh_matrix_range_max
+msgid "Maximum"
+msgstr "Maximal"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_month_max
+msgid "Maximum Month"
+msgstr "Maximaler Monat"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_range_max
+msgid "Maximum Range"
+msgstr "Maximale Reichweite"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_time_max
+msgid "Maximum Time"
+msgstr "Höchstzeit"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_week_max
+msgid "Maximum Week"
+msgstr "Maximale Woche"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question_answer__sh_matrix_range_min
+msgid "Minimum"
+msgstr "Minimum"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_month_min
+msgid "Minimum Month"
+msgstr "Mindestmonat"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_range_min
+msgid "Minimum Range"
+msgstr "Mindestbereich"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_time_min
+msgid "Minimum Time"
+msgstr "Mindestzeit"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_week_min
+msgid "Minimum Week"
+msgstr "Mindestwoche"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__que_sh_many2many_model_id
+msgid "Model"
+msgstr "Modell"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__que_sh_many2one_model_id
+msgid "Model "
+msgstr "Modell"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_month
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_month
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_month
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_month
+msgid "Month"
+msgstr "Monat"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_month_step
+msgid "Month Step"
+msgstr "Monatschritt"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__free_text
+msgid "Multiple Lines Text Box"
+msgstr "Textfeld mehrere Zeilen"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__name
+msgid "Name"
+msgstr "Name"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__numerical_box
+msgid "Numerical Value"
+msgstr "Numerischer Wert"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_password
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_password
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_password
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_password
+msgid "Password"
+msgstr "Passwort"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_password_maxlen
+msgid "Password Maximum Length"
+msgstr "Passwort Maximale Länge"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_password_minlen
+msgid "Password Minimum Length"
+msgstr "Passwort Mindestlänge"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_settings_form
+msgid "Preview"
+msgstr "Vorschau"
+
+#. module: sh_survey_all_in_one
+#: code:addons/sh_survey_all_in_one/sh_survmate_theme/models/survey.py:0
+#, python-format
+msgid "Preview Style"
+msgstr "Vorschaustil"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_theme_primary_color
+msgid "Primary Color"
+msgstr "Primärfarbe"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_qrcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_qrcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_qrcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_qrcode
+msgid "QR Code"
+msgstr "QR-Code"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_question_color
+msgid "Question Color"
+msgstr "Frage Farbe"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__question_type
+msgid "Question Type"
+msgstr "Fragetyp"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_radio_button_style
+msgid "Radio Button Style"
+msgstr "Optionsknopfstil"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_range
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_range
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_range
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_range
+msgid "Range"
+msgstr "Bereich"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_range_step
+msgid "Range Step"
+msgstr "Bereichsschritt"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_theme_secondary_color
+msgid "Secondary Color"
+msgstr "Sekundäre Farbe"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_section_title_color
+msgid "Section Background Color"
+msgstr "Abschnitt Hintergrundfarbe"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_section_title_font_color
+msgid "Section Font Color"
+msgstr "Schnitt Schriftfarbe"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_section_style
+msgid "Section Style"
+msgstr "Abschnittsstil"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_many2one
+msgid "Select..."
+msgstr "Auswählen..."
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_show_bg_color
+msgid "Show Background Color"
+msgstr "Hintergrundfarbe zeigen"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_city
+msgid "Show City Field?"
+msgstr "Zeigen Sie City Field?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_country_id
+msgid "Show Country Field?"
+msgstr "Show Country Field?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_state_id
+msgid "Show State Field?"
+msgstr "Staatsfeld zeigen?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_street
+msgid "Show Street Field?"
+msgstr "Show Street Field?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_street2
+msgid "Show Street2 Field?"
+msgstr "Show Street2 Field?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_zip
+msgid "Show Zip Field?"
+msgstr "ZIP -Feld zeigen?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_signature
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_signature
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_signature
+msgid "Signature"
+msgstr "Unterschrift"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_signature_src
+msgid "Signature src"
+msgstr "Signatur Src"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__textbox
+msgid "Single Line Text Box"
+msgstr "Ein Zeilen Textfeld"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_state_id
+msgid "State"
+msgstr "Bundesland"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "State / Province"
+msgstr "Staat / Provinz"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "State / Province..."
+msgstr "Staat / Provinz ..."
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question_answer__sh_matrix_range_step
+msgid "Step"
+msgstr "Schritt"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Street 2"
+msgstr "Straße Nummer 2"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Street and Number"
+msgstr "Street und nummer "
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_1
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_1
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_1
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_1
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_1
+msgid "Style 1"
+msgstr "Stil 1"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_2
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_2
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_2
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_2
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_2
+msgid "Style 2"
+msgstr "Stil 2"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_3
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_3
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_3
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_3
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_3
+msgid "Style 3"
+msgstr "Stil 3"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_4
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_4
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_4
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_4
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_4
+msgid "Style 4"
+msgstr "Stil 4"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_5
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_5
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_5
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_5
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_5
+msgid "Style 5"
+msgstr "Stil 5"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_settings_form
+msgid "Styles"
+msgstr "Stile"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_survey
+msgid "Survey"
+msgstr "Umfrage"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_question_answer
+msgid "Survey Label"
+msgstr "Vermessungsetikett"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_user_input_line
+msgid "Survey User Input Line for extra fields"
+msgstr "Umfrage der Benutzereingabezeile für zusätzliche Felder"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_user_input
+msgid "Survey User Input for custom matrix"
+msgstr "Umfrage der Benutzereingabe für benutzerdefinierte Matrix"
+
+#. module: sh_survey_all_in_one
+#: model:ir.actions.act_window,name:sh_survey_all_in_one.sh_survmate_theme_survey_settings_action
+#: model:ir.model,name:sh_survey_all_in_one.model_sh_survmate_settings
+#: model:ir.ui.menu,name:sh_survey_all_in_one.sh_survmate_theme_survey_settings_menu
+msgid "Survmate Settings"
+msgstr "Einstellungen übertrieben"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_survey__sh_survmate_settings_id
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_form_inherit
+msgid "Survmate Theme"
+msgstr "Übertriffungsthema"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_sh_survmate_theme_button_design_wizard
+msgid "Survmate Theme Button Design"
+msgstr "Überwachen Sie das Design des Themas -Schaltfläche"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_textbox_pattern
+msgid "Textbox Pattern"
+msgstr "Textbox -Muster"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_textbox_placeholder
+msgid "Textbox Placeholder"
+msgstr "Textbox -Platzhalter"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_button_style_wizard_view
+msgid "Theme Preview"
+msgstr "Thema Vorschau"
+
+#. module: sh_survey_all_in_one
+#. openerp-web
+#: code:addons/sh_survey_all_in_one/static/src/js/extra_addons/sh_survey_extra_fields/survey_form.js:0
+#, python-format
+msgid "This answer must be an URL."
+msgstr "Diese Antwort muss eine URL sein."
+
+#. module: sh_survey_all_in_one
+#. openerp-web
+#: code:addons/sh_survey_all_in_one/static/src/js/extra_addons/sh_survey_extra_fields/survey_form.js:0
+#, python-format
+msgid "This answer must be an email address."
+msgstr "Diese Antwort muss eine E -Mail -Adresse sein."
+
+#. module: sh_survey_all_in_one
+#. openerp-web
+#: code:addons/sh_survey_all_in_one/static/src/js/extra_addons/sh_survey_extra_fields/survey_form.js:0
+#, python-format
+msgid "This is not a date"
+msgstr "Dies ist kein Datum"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_time
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_time
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_time
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_time
+msgid "Time"
+msgstr "Zeit"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_time_step
+msgid "Time Step"
+msgstr "Zeitschritt"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_url
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_url
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_url
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_url
+msgid "URL"
+msgstr "URL"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_city
+msgid "Value Ans Sh City"
+msgstr "Wert ans Sh City"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_street
+msgid "Value Ans Sh Street"
+msgstr "Wert ans Sh Street"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_street2
+msgid "Value Ans Sh Street2"
+msgstr "Wert Ans SH Street2"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_zip
+msgid "Value Ans Sh Zip"
+msgstr "Wert Ans sh Zip"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_week
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_week
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_week
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_week
+msgid "Week"
+msgstr "Woche"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_week_step
+msgid "Week Step"
+msgstr "Woche Schritt"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Zip Code"
+msgstr "Postleitzahl"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "[0-9]{4}"
+msgstr "[0-9] {4}"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_settings_form
+msgid "e.g. Theme Settings for Survey A"
+msgstr "z.B. Themeneinstellungen für Umfrage a"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.matrix
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_email
+msgid "example@domain.com"
+msgstr "Beispiel@domain.com"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.matrix
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_time
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_url
+msgid "https://example.com"
+msgstr "https://example.com"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "nnnn"
+msgstr "nnnn"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_button_style_wizard_view
+msgid "preview image"
+msgstr "Vorschaubild"
diff --git a/sh_survey_all_in_one/i18n/es.po b/sh_survey_all_in_one/i18n/es.po
new file mode 100644
index 0000000..d48040a
--- /dev/null
+++ b/sh_survey_all_in_one/i18n/es.po
@@ -0,0 +1,841 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * sh_survey_all_in_one
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 15.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2022-06-28 07:30+0000\n"
+"PO-Revision-Date: 2022-06-28 07:30+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_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_textbox_for_pattern
+msgid "#{question.validation_sh_textbox_placeholder}"
+msgstr "#{question.validation_sh_textbox_placeholder}"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__sh_survmate_theme_grid_type__10
+msgid "10"
+msgstr "10"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__sh_survmate_theme_grid_type__11
+msgid "11"
+msgstr "11"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__sh_survmate_theme_grid_type__12
+msgid "12"
+msgstr "12"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "18:00"
+msgstr "18:00"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "20"
+msgstr "20"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "2018-03"
+msgstr "2018-03"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "2018-05"
+msgstr "2018-05"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "2018-W18"
+msgstr "2018-W18"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "2018-W26"
+msgstr "2018-W26"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "60 (In seconds)"
+msgstr "60 (In seconds)"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "9:00"
+msgstr "9:00"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.survey_page_fill
+msgid ""
+"Result:\n"
+" "
+msgstr ""
+"Resultado\n"
+" "
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.survey_page_fill
+msgid "Camera"
+msgstr "Cámara"
+
+#. module: sh_survey_all_in_one
+#: code:addons/sh_survey_all_in_one/sh_survey_matrix_adv/models/survey.py:0
+#, python-format
+msgid "A question is either skipped, either answered. Not both."
+msgstr "Una pregunta se omite, ya sea respondida. No ambos."
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_address
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_address
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_address
+msgid "Address"
+msgstr "Dirección"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_answer_color
+msgid "Answer Color"
+msgstr "Responder color"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_section_answer_text_color
+msgid "Answer Text Color"
+msgstr "Responder Color de texto"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__answer_type
+msgid "Answer Type"
+msgstr "Tipo de respuesta"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_bg_color
+msgid "Background Color"
+msgstr "Color de fondo"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_barcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_barcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_barcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_barcode
+msgid "Barcode"
+msgstr "Código de barras"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.survey_page_fill
+msgid "Barcode Scanner"
+msgstr "Escáner de código de barras"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_button_style
+msgid "Button Style"
+msgstr "Estilo de botón"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_button_style_wizard_view
+msgid "Cancel"
+msgstr "Cancelar"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_checkbox_style
+msgid "Checkbox Style"
+msgstr "Estilo de casilla de verificación"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question_answer__sh_value_type
+msgid "Choices Type"
+msgstr "Tipo de opciones"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "City"
+msgstr "Ciudad"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_signature
+msgid "Clear"
+msgstr "Claro"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.matrix
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_file_print
+msgid "Click here to download file"
+msgstr "Haga clic aquí para descargar archivo"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.survey_page_fill
+msgid "Close"
+msgstr "Cerca"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_color
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_color
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_color
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_color
+msgid "Color"
+msgstr "Color"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_settings_form
+msgid "Colors"
+msgstr "Colores"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_country_id
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Country"
+msgstr "País"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Country..."
+msgstr "País..."
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__create_uid
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__create_uid
+msgid "Created by"
+msgstr "Creado por"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__create_date
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__create_date
+msgid "Created on"
+msgstr "Creado en"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__matrix_subtype__sh_custom_matrix
+msgid "Custom Matrix"
+msgstr "Matriz personalizada"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__date
+msgid "Date"
+msgstr "Fecha"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__datetime
+msgid "Datetime"
+msgstr "Fecha y hora"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__display_name
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__display_name
+msgid "Display Name"
+msgstr "Nombre para mostrar"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_email
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_email
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_email
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_email
+msgid "E-mail"
+msgstr "Correo electrónico"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_file
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_file
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_file
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_file
+msgid "File"
+msgstr "Expediente"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_file_fname
+msgid "File Name"
+msgstr "Nombre del archivo"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_survmate_theme_grid_type
+msgid "Grid"
+msgstr "Cuadrícula"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_ir_http
+msgid "HTTP Routing"
+msgstr "Enrutamiento HTTP"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__id
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__id
+msgid "ID"
+msgstr "IDENTIFICACIÓN"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__access_token
+msgid "Identification token"
+msgstr "Token de identificación"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__img_src
+msgid "Image Src"
+msgstr "Imagen SRC"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_question
+msgid "Inherit Survey Question for extra fields"
+msgstr "Pregunta de la encuesta heredar para campos adicionales"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_input_style
+msgid "Input Style"
+msgstr "Estilo de entrada"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_is_sh_textbox_pattern
+msgid "Input must be in specified pattern"
+msgstr "La entrada debe estar en un patrón especificado"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_survey__sh_is_time_fixed
+msgid "Is Fixed Timer Position?"
+msgstr "¿Es la posición del temporizador fijo?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings____last_update
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard____last_update
+msgid "Last Modified on"
+msgstr "Última modificación en"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__write_uid
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__write_uid
+msgid "Last Updated by"
+msgstr "Última actualización por"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__write_date
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__write_date
+msgid "Last Updated on"
+msgstr "Ultima actualización en"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_sh_location_latitude
+msgid "Latitude"
+msgstr "Latitud"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_question_form_inherit
+msgid "Layout"
+msgstr "Diseño"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_location
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_location
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_location
+msgid "Location"
+msgstr "Ubicación"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_sh_location_longitude
+msgid "Longitude"
+msgstr "Longitud"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_many2many
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_many2many
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_many2many
+msgid "Many2many"
+msgstr "Many2Many"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_many2one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_many2one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_many2one
+msgid "Many2one"
+msgstr "Many2One"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__matrix_subtype
+msgid "Matrix Type"
+msgstr "Tipo de matriz"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question_answer__sh_matrix_range_max
+msgid "Maximum"
+msgstr "Máximo"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_month_max
+msgid "Maximum Month"
+msgstr "Mes máximo"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_range_max
+msgid "Maximum Range"
+msgstr "Rango maximo"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_time_max
+msgid "Maximum Time"
+msgstr "Tiempo máximo"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_week_max
+msgid "Maximum Week"
+msgstr "Semana máxima"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question_answer__sh_matrix_range_min
+msgid "Minimum"
+msgstr "Mínimo"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_month_min
+msgid "Minimum Month"
+msgstr "Mes mínimo"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_range_min
+msgid "Minimum Range"
+msgstr "Rango mínimo"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_time_min
+msgid "Minimum Time"
+msgstr "Tiempo mínimo"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_week_min
+msgid "Minimum Week"
+msgstr "Semana mínima"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__que_sh_many2many_model_id
+msgid "Model"
+msgstr "Modelo"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__que_sh_many2one_model_id
+msgid "Model "
+msgstr "Modelo"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_month
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_month
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_month
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_month
+msgid "Month"
+msgstr "Mes"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_month_step
+msgid "Month Step"
+msgstr "Paso mensual"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__free_text
+msgid "Multiple Lines Text Box"
+msgstr "Cuadro de texto de múltiples líneas"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__name
+msgid "Name"
+msgstr "Nombre"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__numerical_box
+msgid "Numerical Value"
+msgstr "Valor numérico"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_password
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_password
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_password
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_password
+msgid "Password"
+msgstr "Clave"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_password_maxlen
+msgid "Password Maximum Length"
+msgstr "Contraseña Longitud máxima"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_password_minlen
+msgid "Password Minimum Length"
+msgstr "Longitud mínima de contraseña"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_settings_form
+msgid "Preview"
+msgstr "Avance"
+
+#. module: sh_survey_all_in_one
+#: code:addons/sh_survey_all_in_one/sh_survmate_theme/models/survey.py:0
+#, python-format
+msgid "Preview Style"
+msgstr "Estilo de vista previa"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_theme_primary_color
+msgid "Primary Color"
+msgstr "Color primario"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_qrcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_qrcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_qrcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_qrcode
+msgid "QR Code"
+msgstr "Código QR"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_question_color
+msgid "Question Color"
+msgstr "Color de preguntas"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__question_type
+msgid "Question Type"
+msgstr "tipo de pregunta"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_radio_button_style
+msgid "Radio Button Style"
+msgstr "Estilo de botón de radio"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_range
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_range
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_range
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_range
+msgid "Range"
+msgstr "Rango"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_range_step
+msgid "Range Step"
+msgstr "Paso de alcance"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_theme_secondary_color
+msgid "Secondary Color"
+msgstr "Color secundario"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_section_title_color
+msgid "Section Background Color"
+msgstr "Color de fondo de sección"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_section_title_font_color
+msgid "Section Font Color"
+msgstr "Color de fuente de sección"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_section_style
+msgid "Section Style"
+msgstr "Estilo de sección"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_many2one
+msgid "Select..."
+msgstr "Seleccione..."
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_show_bg_color
+msgid "Show Background Color"
+msgstr "Mostrar color de fondo"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_city
+msgid "Show City Field?"
+msgstr "¿Show City Field?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_country_id
+msgid "Show Country Field?"
+msgstr "¿Mostrar campo country?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_state_id
+msgid "Show State Field?"
+msgstr "¿Mostrar campo estatal?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_street
+msgid "Show Street Field?"
+msgstr "¿Show Street Field?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_street2
+msgid "Show Street2 Field?"
+msgstr "Show street2 campo?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_zip
+msgid "Show Zip Field?"
+msgstr "¿Mostrar campo ZIP?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_signature
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_signature
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_signature
+msgid "Signature"
+msgstr "Firma"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_signature_src
+msgid "Signature src"
+msgstr "Signature SRC"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__textbox
+msgid "Single Line Text Box"
+msgstr "Cuadro de texto de una sola línea"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_state_id
+msgid "State"
+msgstr "Estado"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "State / Province"
+msgstr "Provincia del estado"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "State / Province..."
+msgstr "Provincia del estado..."
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question_answer__sh_matrix_range_step
+msgid "Step"
+msgstr "Paso"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Street 2"
+msgstr "Calle # 2"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Street and Number"
+msgstr "Calle y número "
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_1
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_1
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_1
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_1
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_1
+msgid "Style 1"
+msgstr "Estilo 1"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_2
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_2
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_2
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_2
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_2
+msgid "Style 2"
+msgstr "Estilo 2"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_3
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_3
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_3
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_3
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_3
+msgid "Style 3"
+msgstr "Estilo 3"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_4
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_4
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_4
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_4
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_4
+msgid "Style 4"
+msgstr "Estilo 4"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_5
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_5
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_5
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_5
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_5
+msgid "Style 5"
+msgstr "Estilo 5"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_settings_form
+msgid "Styles"
+msgstr "Estilos"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_survey
+msgid "Survey"
+msgstr "Encuesta"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_question_answer
+msgid "Survey Label"
+msgstr "Etiqueta de encuesta"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_user_input_line
+msgid "Survey User Input Line for extra fields"
+msgstr "Encuesta Línea de entrada del usuario para campos adicionales"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_user_input
+msgid "Survey User Input for custom matrix"
+msgstr "Introducción al usuario de encuesta para matriz personalizada"
+
+#. module: sh_survey_all_in_one
+#: model:ir.actions.act_window,name:sh_survey_all_in_one.sh_survmate_theme_survey_settings_action
+#: model:ir.model,name:sh_survey_all_in_one.model_sh_survmate_settings
+#: model:ir.ui.menu,name:sh_survey_all_in_one.sh_survmate_theme_survey_settings_menu
+msgid "Survmate Settings"
+msgstr "Configuración de Survmate"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_survey__sh_survmate_settings_id
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_form_inherit
+msgid "Survmate Theme"
+msgstr "Tema de Survmate"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_sh_survmate_theme_button_design_wizard
+msgid "Survmate Theme Button Design"
+msgstr "Diseño del botón del tema del tema de Survmate"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_textbox_pattern
+msgid "Textbox Pattern"
+msgstr "Patrón de cuadro de texto"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_textbox_placeholder
+msgid "Textbox Placeholder"
+msgstr "Marcador de posición del cuadro de texto"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_button_style_wizard_view
+msgid "Theme Preview"
+msgstr "Vista previa del tema"
+
+#. module: sh_survey_all_in_one
+#. openerp-web
+#: code:addons/sh_survey_all_in_one/static/src/js/extra_addons/sh_survey_extra_fields/survey_form.js:0
+#, python-format
+msgid "This answer must be an URL."
+msgstr "Esta respuesta debe ser una URL."
+
+#. module: sh_survey_all_in_one
+#. openerp-web
+#: code:addons/sh_survey_all_in_one/static/src/js/extra_addons/sh_survey_extra_fields/survey_form.js:0
+#, python-format
+msgid "This answer must be an email address."
+msgstr "Esta respuesta debe ser una dirección de correo electrónico."
+
+#. module: sh_survey_all_in_one
+#. openerp-web
+#: code:addons/sh_survey_all_in_one/static/src/js/extra_addons/sh_survey_extra_fields/survey_form.js:0
+#, python-format
+msgid "This is not a date"
+msgstr "Esta no es una fecha"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_time
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_time
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_time
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_time
+msgid "Time"
+msgstr "Tiempo"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_time_step
+msgid "Time Step"
+msgstr "Hora de caminar"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_url
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_url
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_url
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_url
+msgid "URL"
+msgstr "Url"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_city
+msgid "Value Ans Sh City"
+msgstr "Valor Ans Sh City"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_street
+msgid "Value Ans Sh Street"
+msgstr "Valor Ans Sh Street"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_street2
+msgid "Value Ans Sh Street2"
+msgstr "Valor Ans sh street2"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_zip
+msgid "Value Ans Sh Zip"
+msgstr "Valor y zip sh"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_week
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_week
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_week
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_week
+msgid "Week"
+msgstr "Semana"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_week_step
+msgid "Week Step"
+msgstr "Paso de la semana"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Zip Code"
+msgstr "Código postal"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "[0-9]{4}"
+msgstr "[0-9] {4}"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_settings_form
+msgid "e.g. Theme Settings for Survey A"
+msgstr "p.ej. Configuración del tema para la encuesta a"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.matrix
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_email
+msgid "example@domain.com"
+msgstr "ejemplo@domain.com"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.matrix
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_time
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_url
+msgid "https://example.com"
+msgstr "https://example.com"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "nnnn"
+msgstr "nnnn"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_button_style_wizard_view
+msgid "preview image"
+msgstr "Vista previa de imagen"
diff --git a/sh_survey_all_in_one/i18n/fr.po b/sh_survey_all_in_one/i18n/fr.po
new file mode 100644
index 0000000..19514d5
--- /dev/null
+++ b/sh_survey_all_in_one/i18n/fr.po
@@ -0,0 +1,841 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * sh_survey_all_in_one
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 15.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2022-06-28 07:30+0000\n"
+"PO-Revision-Date: 2022-06-28 07:30+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_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_textbox_for_pattern
+msgid "#{question.validation_sh_textbox_placeholder}"
+msgstr "#{question.validation_sh_textbox_placeholder}"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__sh_survmate_theme_grid_type__10
+msgid "10"
+msgstr "10"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__sh_survmate_theme_grid_type__11
+msgid "11"
+msgstr "11"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__sh_survmate_theme_grid_type__12
+msgid "12"
+msgstr "12"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "18:00"
+msgstr "18:00"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "20"
+msgstr "20"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "2018-03"
+msgstr "2018-03"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "2018-05"
+msgstr "2018-05"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "2018-W18"
+msgstr "2018-W18"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "2018-W26"
+msgstr "2018-W26"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "60 (In seconds)"
+msgstr "60 (In seconds)"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "9:00"
+msgstr "9:00"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.survey_page_fill
+msgid ""
+"Result:\n"
+" "
+msgstr ""
+"Résultat\n"
+" "
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.survey_page_fill
+msgid "Camera"
+msgstr "Caméra"
+
+#. module: sh_survey_all_in_one
+#: code:addons/sh_survey_all_in_one/sh_survey_matrix_adv/models/survey.py:0
+#, python-format
+msgid "A question is either skipped, either answered. Not both."
+msgstr "Une question est sautée, soit répondue. Pas les deux."
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_address
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_address
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_address
+msgid "Address"
+msgstr "Adresse"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_answer_color
+msgid "Answer Color"
+msgstr "Répondre à la couleur"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_section_answer_text_color
+msgid "Answer Text Color"
+msgstr "Répondre à la couleur du texte"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__answer_type
+msgid "Answer Type"
+msgstr "Type de réponse"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_bg_color
+msgid "Background Color"
+msgstr "Couleur de l'arrière plan"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_barcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_barcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_barcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_barcode
+msgid "Barcode"
+msgstr "code à barre"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.survey_page_fill
+msgid "Barcode Scanner"
+msgstr "Scanner de code-barres"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_button_style
+msgid "Button Style"
+msgstr "Style de bouton"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_button_style_wizard_view
+msgid "Cancel"
+msgstr "Annuler"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_checkbox_style
+msgid "Checkbox Style"
+msgstr "Style à cocher"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question_answer__sh_value_type
+msgid "Choices Type"
+msgstr "Type de choix"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "City"
+msgstr "Ville"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_signature
+msgid "Clear"
+msgstr "Dégager"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.matrix
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_file_print
+msgid "Click here to download file"
+msgstr "Cliquez ici pour télécharger le fichier"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.survey_page_fill
+msgid "Close"
+msgstr "proche"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_color
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_color
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_color
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_color
+msgid "Color"
+msgstr "Couleur"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_settings_form
+msgid "Colors"
+msgstr "Couleurs"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_country_id
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Country"
+msgstr "Pays"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Country..."
+msgstr "Pays..."
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__create_uid
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__create_uid
+msgid "Created by"
+msgstr "Créé par"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__create_date
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__create_date
+msgid "Created on"
+msgstr "Créé sur"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__matrix_subtype__sh_custom_matrix
+msgid "Custom Matrix"
+msgstr "Matrice personnalisée"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__date
+msgid "Date"
+msgstr "Date"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__datetime
+msgid "Datetime"
+msgstr "DateTime"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__display_name
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__display_name
+msgid "Display Name"
+msgstr "Afficher un nom"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_email
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_email
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_email
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_email
+msgid "E-mail"
+msgstr "E-mail"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_file
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_file
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_file
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_file
+msgid "File"
+msgstr "Dossier"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_file_fname
+msgid "File Name"
+msgstr "Nom de fichier"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_survmate_theme_grid_type
+msgid "Grid"
+msgstr "Grille"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_ir_http
+msgid "HTTP Routing"
+msgstr "Routage http"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__id
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__id
+msgid "ID"
+msgstr "IDENTIFIANT"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__access_token
+msgid "Identification token"
+msgstr "Jeton d'identification"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__img_src
+msgid "Image Src"
+msgstr "Image src"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_question
+msgid "Inherit Survey Question for extra fields"
+msgstr "QUESTION DE L'ENSECTION DES INTROYANTS POUR LES FIELDS SUPPLÉMENT"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_input_style
+msgid "Input Style"
+msgstr "Style d'entrée"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_is_sh_textbox_pattern
+msgid "Input must be in specified pattern"
+msgstr "L'entrée doit être dans un modèle spécifié"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_survey__sh_is_time_fixed
+msgid "Is Fixed Timer Position?"
+msgstr "La position de la minuterie fixe est-elle?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings____last_update
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard____last_update
+msgid "Last Modified on"
+msgstr "Dernier modification sur"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__write_uid
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__write_uid
+msgid "Last Updated by"
+msgstr "Dernière mise à jour par"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__write_date
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__write_date
+msgid "Last Updated on"
+msgstr "Dernière mise à jour le"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_sh_location_latitude
+msgid "Latitude"
+msgstr "Latitude"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_question_form_inherit
+msgid "Layout"
+msgstr "Disposition"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_location
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_location
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_location
+msgid "Location"
+msgstr "Emplacement"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_sh_location_longitude
+msgid "Longitude"
+msgstr "Longitude"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_many2many
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_many2many
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_many2many
+msgid "Many2many"
+msgstr "Many2Many"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_many2one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_many2one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_many2one
+msgid "Many2one"
+msgstr "Many2one"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__matrix_subtype
+msgid "Matrix Type"
+msgstr "Type de matrice"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question_answer__sh_matrix_range_max
+msgid "Maximum"
+msgstr "Maximum"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_month_max
+msgid "Maximum Month"
+msgstr "Mois maximum"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_range_max
+msgid "Maximum Range"
+msgstr "Plage maximale"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_time_max
+msgid "Maximum Time"
+msgstr "Temps maximum"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_week_max
+msgid "Maximum Week"
+msgstr "Semaine maximale"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question_answer__sh_matrix_range_min
+msgid "Minimum"
+msgstr "Le minimum"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_month_min
+msgid "Minimum Month"
+msgstr "Mois minimum"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_range_min
+msgid "Minimum Range"
+msgstr "Plage minimale"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_time_min
+msgid "Minimum Time"
+msgstr "Temps minimum"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_week_min
+msgid "Minimum Week"
+msgstr "Semaine minimale"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__que_sh_many2many_model_id
+msgid "Model"
+msgstr "Modèle"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__que_sh_many2one_model_id
+msgid "Model "
+msgstr "Modèle"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_month
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_month
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_month
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_month
+msgid "Month"
+msgstr "Mois"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_month_step
+msgid "Month Step"
+msgstr "Étape du mois"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__free_text
+msgid "Multiple Lines Text Box"
+msgstr "Zone de texte de plusieurs lignes"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__name
+msgid "Name"
+msgstr "Nom"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__numerical_box
+msgid "Numerical Value"
+msgstr "Valeur numérique"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_password
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_password
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_password
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_password
+msgid "Password"
+msgstr "Mot de passe"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_password_maxlen
+msgid "Password Maximum Length"
+msgstr "Longueur maximale du mot de passe"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_password_minlen
+msgid "Password Minimum Length"
+msgstr "Mot de passe minimum"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_settings_form
+msgid "Preview"
+msgstr "Aperçu"
+
+#. module: sh_survey_all_in_one
+#: code:addons/sh_survey_all_in_one/sh_survmate_theme/models/survey.py:0
+#, python-format
+msgid "Preview Style"
+msgstr "Style d'aperçu"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_theme_primary_color
+msgid "Primary Color"
+msgstr "Couleur primaire"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_qrcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_qrcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_qrcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_qrcode
+msgid "QR Code"
+msgstr "QR Code"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_question_color
+msgid "Question Color"
+msgstr "Question Couleur"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__question_type
+msgid "Question Type"
+msgstr "Type de question"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_radio_button_style
+msgid "Radio Button Style"
+msgstr "Style de bouton radio"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_range
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_range
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_range
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_range
+msgid "Range"
+msgstr "Intervalle"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_range_step
+msgid "Range Step"
+msgstr "Étape de portée"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_theme_secondary_color
+msgid "Secondary Color"
+msgstr "Couleur secondaire"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_section_title_color
+msgid "Section Background Color"
+msgstr "Couleur d'arrière-plan de la section"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_section_title_font_color
+msgid "Section Font Color"
+msgstr "Couleur de police de section"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_section_style
+msgid "Section Style"
+msgstr "Style de section"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_many2one
+msgid "Select..."
+msgstr "Sélectionner..."
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_show_bg_color
+msgid "Show Background Color"
+msgstr "Montrer la couleur d'arrière-plan"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_city
+msgid "Show City Field?"
+msgstr "Montrer le terrain de la ville?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_country_id
+msgid "Show Country Field?"
+msgstr "Montrez le terrain de la campagne?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_state_id
+msgid "Show State Field?"
+msgstr "Montrer un champ d'état?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_street
+msgid "Show Street Field?"
+msgstr "Montrer le terrain de rue?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_street2
+msgid "Show Street2 Field?"
+msgstr "Afficher le terrain Street2?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_zip
+msgid "Show Zip Field?"
+msgstr "Montrer le champ zip?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_signature
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_signature
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_signature
+msgid "Signature"
+msgstr "Signature"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_signature_src
+msgid "Signature src"
+msgstr "Src signature"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__textbox
+msgid "Single Line Text Box"
+msgstr "Zone de texte à ligne unique"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_state_id
+msgid "State"
+msgstr "État"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "State / Province"
+msgstr "État / province"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "State / Province..."
+msgstr "État / province ..."
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question_answer__sh_matrix_range_step
+msgid "Step"
+msgstr "Marcher"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Street 2"
+msgstr "Rue # 2"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Street and Number"
+msgstr "Street et numéro "
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_1
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_1
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_1
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_1
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_1
+msgid "Style 1"
+msgstr "Style 1"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_2
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_2
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_2
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_2
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_2
+msgid "Style 2"
+msgstr "Style 2"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_3
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_3
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_3
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_3
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_3
+msgid "Style 3"
+msgstr "Style 3"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_4
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_4
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_4
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_4
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_4
+msgid "Style 4"
+msgstr "Style 4"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_5
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_5
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_5
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_5
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_5
+msgid "Style 5"
+msgstr "Style 5"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_settings_form
+msgid "Styles"
+msgstr "modes"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_survey
+msgid "Survey"
+msgstr "Enquête"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_question_answer
+msgid "Survey Label"
+msgstr "Étiquette d'enquête"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_user_input_line
+msgid "Survey User Input Line for extra fields"
+msgstr "Enquête sur la ligne d'entrée de l'utilisateur pour des champs supplémentaires"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_user_input
+msgid "Survey User Input for custom matrix"
+msgstr "Entrée des utilisateurs de l'enquête pour la matrice personnalisée"
+
+#. module: sh_survey_all_in_one
+#: model:ir.actions.act_window,name:sh_survey_all_in_one.sh_survmate_theme_survey_settings_action
+#: model:ir.model,name:sh_survey_all_in_one.model_sh_survmate_settings
+#: model:ir.ui.menu,name:sh_survey_all_in_one.sh_survmate_theme_survey_settings_menu
+msgid "Survmate Settings"
+msgstr "Paramètres des survivants"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_survey__sh_survmate_settings_id
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_form_inherit
+msgid "Survmate Theme"
+msgstr "Thème des survivants"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_sh_survmate_theme_button_design_wizard
+msgid "Survmate Theme Button Design"
+msgstr "Conception du bouton de thème de survim"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_textbox_pattern
+msgid "Textbox Pattern"
+msgstr "Modèle de zone de texte"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_textbox_placeholder
+msgid "Textbox Placeholder"
+msgstr "TextBox Payholder"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_button_style_wizard_view
+msgid "Theme Preview"
+msgstr "Aperçu du thème"
+
+#. module: sh_survey_all_in_one
+#. openerp-web
+#: code:addons/sh_survey_all_in_one/static/src/js/extra_addons/sh_survey_extra_fields/survey_form.js:0
+#, python-format
+msgid "This answer must be an URL."
+msgstr "Cette réponse doit être une URL."
+
+#. module: sh_survey_all_in_one
+#. openerp-web
+#: code:addons/sh_survey_all_in_one/static/src/js/extra_addons/sh_survey_extra_fields/survey_form.js:0
+#, python-format
+msgid "This answer must be an email address."
+msgstr "Cette réponse doit être une adresse e-mail."
+
+#. module: sh_survey_all_in_one
+#. openerp-web
+#: code:addons/sh_survey_all_in_one/static/src/js/extra_addons/sh_survey_extra_fields/survey_form.js:0
+#, python-format
+msgid "This is not a date"
+msgstr "Ce n'est pas une date"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_time
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_time
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_time
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_time
+msgid "Time"
+msgstr "Temps"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_time_step
+msgid "Time Step"
+msgstr "Pas de temps"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_url
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_url
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_url
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_url
+msgid "URL"
+msgstr "URL"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_city
+msgid "Value Ans Sh City"
+msgstr "Value Ans Sh City"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_street
+msgid "Value Ans Sh Street"
+msgstr "Valeur Ans SH Street"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_street2
+msgid "Value Ans Sh Street2"
+msgstr "Valeur Ans SH Street2"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_zip
+msgid "Value Ans Sh Zip"
+msgstr "Valeur ANS SH ZIP"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_week
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_week
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_week
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_week
+msgid "Week"
+msgstr "La semaine"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_week_step
+msgid "Week Step"
+msgstr "Pas de semaine"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Zip Code"
+msgstr "Code postal"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "[0-9]{4}"
+msgstr "[0-9] {4}"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_settings_form
+msgid "e.g. Theme Settings for Survey A"
+msgstr "par exemple. Paramètres de thème pour l'enquête a"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.matrix
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_email
+msgid "example@domain.com"
+msgstr "example@domain.com"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.matrix
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_time
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_url
+msgid "https://example.com"
+msgstr "https://example.com"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "nnnn"
+msgstr "nnnn"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_button_style_wizard_view
+msgid "preview image"
+msgstr "Aperçu de l'image"
diff --git a/sh_survey_all_in_one/i18n/zh_HK.po b/sh_survey_all_in_one/i18n/zh_HK.po
new file mode 100644
index 0000000..17ab0f8
--- /dev/null
+++ b/sh_survey_all_in_one/i18n/zh_HK.po
@@ -0,0 +1,841 @@
+# Translation of Odoo Server.
+# This file contains the translation of the following modules:
+# * sh_survey_all_in_one
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: Odoo Server 15.0\n"
+"Report-Msgid-Bugs-To: \n"
+"POT-Creation-Date: 2022-06-28 07:30+0000\n"
+"PO-Revision-Date: 2022-06-28 07:30+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_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_textbox_for_pattern
+msgid "#{question.validation_sh_textbox_placeholder}"
+msgstr "#{question.validation_sh_textbox_placeholder}"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__sh_survmate_theme_grid_type__10
+msgid "10"
+msgstr "10"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__sh_survmate_theme_grid_type__11
+msgid "11"
+msgstr "11"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__sh_survmate_theme_grid_type__12
+msgid "12"
+msgstr "12"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "18:00"
+msgstr "18:00"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "20"
+msgstr "20"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "2018-03"
+msgstr "2018-03"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "2018-05"
+msgstr "2018-05"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "2018-W18"
+msgstr "2018-W18"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "2018-W26"
+msgstr "2018-W26"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "60 (In seconds)"
+msgstr "60 (In seconds)"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "9:00"
+msgstr "9:00"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.survey_page_fill
+msgid ""
+"Result:\n"
+" "
+msgstr ""
+"結果:\n"
+" "
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.survey_page_fill
+msgid "Camera"
+msgstr "相機"
+
+#. module: sh_survey_all_in_one
+#: code:addons/sh_survey_all_in_one/sh_survey_matrix_adv/models/survey.py:0
+#, python-format
+msgid "A question is either skipped, either answered. Not both."
+msgstr "一個問題要么被跳過,要么回答。不是都。"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_address
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_address
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_address
+msgid "Address"
+msgstr "地址"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_answer_color
+msgid "Answer Color"
+msgstr "回答顏色"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_section_answer_text_color
+msgid "Answer Text Color"
+msgstr "回答文字顏色"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__answer_type
+msgid "Answer Type"
+msgstr "答案類型"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_bg_color
+msgid "Background Color"
+msgstr "背景顏色"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_barcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_barcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_barcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_barcode
+msgid "Barcode"
+msgstr "條碼"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.survey_page_fill
+msgid "Barcode Scanner"
+msgstr "條形碼掃描器"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_button_style
+msgid "Button Style"
+msgstr "按鈕樣式"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_button_style_wizard_view
+msgid "Cancel"
+msgstr "取消"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_checkbox_style
+msgid "Checkbox Style"
+msgstr "複選框樣式"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question_answer__sh_value_type
+msgid "Choices Type"
+msgstr "選擇類型"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "City"
+msgstr "城市"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_signature
+msgid "Clear"
+msgstr "清除"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.matrix
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_file_print
+msgid "Click here to download file"
+msgstr "單擊此處下載文件"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.survey_page_fill
+msgid "Close"
+msgstr "關"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_color
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_color
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_color
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_color
+msgid "Color"
+msgstr "顏色"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_settings_form
+msgid "Colors"
+msgstr "顏色"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_country_id
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Country"
+msgstr "國家"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Country..."
+msgstr "國家..."
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__create_uid
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__create_uid
+msgid "Created by"
+msgstr "由...製作"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__create_date
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__create_date
+msgid "Created on"
+msgstr "創建於"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__matrix_subtype__sh_custom_matrix
+msgid "Custom Matrix"
+msgstr "自定義矩陣"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__date
+msgid "Date"
+msgstr "日期"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__datetime
+msgid "Datetime"
+msgstr "約會時間"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__display_name
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__display_name
+msgid "Display Name"
+msgstr "顯示名稱"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_email
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_email
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_email
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_email
+msgid "E-mail"
+msgstr "電子郵件"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_file
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_file
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_file
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_file
+msgid "File"
+msgstr "文件"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_file_fname
+msgid "File Name"
+msgstr "文件名"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_survmate_theme_grid_type
+msgid "Grid"
+msgstr "網格"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_ir_http
+msgid "HTTP Routing"
+msgstr "HTTP路由"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__id
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__id
+msgid "ID"
+msgstr "ID"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__access_token
+msgid "Identification token"
+msgstr "識別令牌"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__img_src
+msgid "Image Src"
+msgstr "圖像SRC"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_question
+msgid "Inherit Survey Question for extra fields"
+msgstr "繼承額外領域的調查問題"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_input_style
+msgid "Input Style"
+msgstr "輸入樣式"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_is_sh_textbox_pattern
+msgid "Input must be in specified pattern"
+msgstr "輸入必須採用指定模式"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_survey__sh_is_time_fixed
+msgid "Is Fixed Timer Position?"
+msgstr "固定計時器位置嗎?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings____last_update
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard____last_update
+msgid "Last Modified on"
+msgstr "最後修改"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__write_uid
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__write_uid
+msgid "Last Updated by"
+msgstr "最後更新"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__write_date
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_theme_button_design_wizard__write_date
+msgid "Last Updated on"
+msgstr "最後更新"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_sh_location_latitude
+msgid "Latitude"
+msgstr "緯度"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_question_form_inherit
+msgid "Layout"
+msgstr "佈局"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_location
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_location
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_location
+msgid "Location"
+msgstr "地點"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_sh_location_longitude
+msgid "Longitude"
+msgstr "經度"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_many2many
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_many2many
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_many2many
+msgid "Many2many"
+msgstr "許多人"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_many2one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_many2one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_many2one
+msgid "Many2one"
+msgstr "許多2one"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__matrix_subtype
+msgid "Matrix Type"
+msgstr "矩陣類型"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question_answer__sh_matrix_range_max
+msgid "Maximum"
+msgstr "最大"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_month_max
+msgid "Maximum Month"
+msgstr "最大月份"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_range_max
+msgid "Maximum Range"
+msgstr "最大範圍"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_time_max
+msgid "Maximum Time"
+msgstr "最大時間"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_week_max
+msgid "Maximum Week"
+msgstr "最高週"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question_answer__sh_matrix_range_min
+msgid "Minimum"
+msgstr "最低限度"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_month_min
+msgid "Minimum Month"
+msgstr "最低月"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_range_min
+msgid "Minimum Range"
+msgstr "最小範圍"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_time_min
+msgid "Minimum Time"
+msgstr "最短時間"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_week_min
+msgid "Minimum Week"
+msgstr "至少一周"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__que_sh_many2many_model_id
+msgid "Model"
+msgstr "模型"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__que_sh_many2one_model_id
+msgid "Model "
+msgstr "模型"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_month
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_month
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_month
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_month
+msgid "Month"
+msgstr "月"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_month_step
+msgid "Month Step"
+msgstr "月步"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__free_text
+msgid "Multiple Lines Text Box"
+msgstr "多行文本框"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__name
+msgid "Name"
+msgstr "姓名"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__numerical_box
+msgid "Numerical Value"
+msgstr "數值"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_password
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_password
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_password
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_password
+msgid "Password"
+msgstr "密碼"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_password_maxlen
+msgid "Password Maximum Length"
+msgstr "密碼最大長度"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_password_minlen
+msgid "Password Minimum Length"
+msgstr "密碼最小長度"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_settings_form
+msgid "Preview"
+msgstr "預習"
+
+#. module: sh_survey_all_in_one
+#: code:addons/sh_survey_all_in_one/sh_survmate_theme/models/survey.py:0
+#, python-format
+msgid "Preview Style"
+msgstr "預覽樣式"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_theme_primary_color
+msgid "Primary Color"
+msgstr "原色"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_qrcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_qrcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_qrcode
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_qrcode
+msgid "QR Code"
+msgstr "二維碼"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_question_color
+msgid "Question Color"
+msgstr "問題顏色"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__question_type
+msgid "Question Type"
+msgstr "問題類型"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_radio_button_style
+msgid "Radio Button Style"
+msgstr "廣播按鈕樣式"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_range
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_range
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_range
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_range
+msgid "Range"
+msgstr "範圍"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_range_step
+msgid "Range Step"
+msgstr "範圍步驟"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_theme_secondary_color
+msgid "Secondary Color"
+msgstr "次要顏色"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_section_title_color
+msgid "Section Background Color"
+msgstr "部分背景顏色"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_section_title_font_color
+msgid "Section Font Color"
+msgstr "部分字體顏色"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_section_style
+msgid "Section Style"
+msgstr "部分樣式"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_many2one
+msgid "Select..."
+msgstr "選擇..."
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_sh_survmate_settings__sh_survmate_show_bg_color
+msgid "Show Background Color"
+msgstr "顯示背景顏色"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_city
+msgid "Show City Field?"
+msgstr "展示城市場?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_country_id
+msgid "Show Country Field?"
+msgstr "展示國家領域?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_state_id
+msgid "Show State Field?"
+msgstr "展示狀態領域?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_street
+msgid "Show Street Field?"
+msgstr "表演街場?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_street2
+msgid "Show Street2 Field?"
+msgstr "Show Street2 Field?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__sh_is_show_zip
+msgid "Show Zip Field?"
+msgstr "顯示Zip字段?"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_signature
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_signature
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_signature
+msgid "Signature"
+msgstr "簽名"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_signature_src
+msgid "Signature src"
+msgstr "簽名SRC"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__textbox
+msgid "Single Line Text Box"
+msgstr "單行文本框"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_state_id
+msgid "State"
+msgstr "狀態"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "State / Province"
+msgstr "州 /省"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "State / Province..."
+msgstr "州 /省..."
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question_answer__sh_matrix_range_step
+msgid "Step"
+msgstr "步"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Street 2"
+msgstr "街2"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Street and Number"
+msgstr "街和數字"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_1
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_1
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_1
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_1
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_1
+msgid "Style 1"
+msgstr "樣式1"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_2
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_2
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_2
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_2
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_2
+msgid "Style 2"
+msgstr "樣式2"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_3
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_3
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_3
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_3
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_3
+msgid "Style 3"
+msgstr "樣式3"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_4
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_4
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_4
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_4
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_4
+msgid "Style 4"
+msgstr "樣式4"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_button_style__style_5
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_checkbox_style__style_5
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_input_style__style_5
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_radio_button_style__style_5
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__sh_survmate_settings__sh_survmate_section_style__style_5
+msgid "Style 5"
+msgstr "樣式5"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_settings_form
+msgid "Styles"
+msgstr "樣式"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_survey
+msgid "Survey"
+msgstr "民意調查"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_question_answer
+msgid "Survey Label"
+msgstr "調查標籤"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_user_input_line
+msgid "Survey User Input Line for extra fields"
+msgstr "調查用戶輸入線的額外字段"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_survey_user_input
+msgid "Survey User Input for custom matrix"
+msgstr "定制矩陣的調查用戶輸入"
+
+#. module: sh_survey_all_in_one
+#: model:ir.actions.act_window,name:sh_survey_all_in_one.sh_survmate_theme_survey_settings_action
+#: model:ir.model,name:sh_survey_all_in_one.model_sh_survmate_settings
+#: model:ir.ui.menu,name:sh_survey_all_in_one.sh_survmate_theme_survey_settings_menu
+msgid "Survmate Settings"
+msgstr "倖存的設置"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_survey__sh_survmate_settings_id
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_form_inherit
+msgid "Survmate Theme"
+msgstr "倖存的主題"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model,name:sh_survey_all_in_one.model_sh_survmate_theme_button_design_wizard
+msgid "Survmate Theme Button Design"
+msgstr "倖存的主題按鈕設計"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_textbox_pattern
+msgid "Textbox Pattern"
+msgstr "文本框圖案"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_textbox_placeholder
+msgid "Textbox Placeholder"
+msgstr "TextBox佔位符"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_button_style_wizard_view
+msgid "Theme Preview"
+msgstr "主題預覽"
+
+#. module: sh_survey_all_in_one
+#. openerp-web
+#: code:addons/sh_survey_all_in_one/static/src/js/extra_addons/sh_survey_extra_fields/survey_form.js:0
+#, python-format
+msgid "This answer must be an URL."
+msgstr "這個答案必須是一個URL。"
+
+#. module: sh_survey_all_in_one
+#. openerp-web
+#: code:addons/sh_survey_all_in_one/static/src/js/extra_addons/sh_survey_extra_fields/survey_form.js:0
+#, python-format
+msgid "This answer must be an email address."
+msgstr "此答案必須是電子郵件地址。"
+
+#. module: sh_survey_all_in_one
+#. openerp-web
+#: code:addons/sh_survey_all_in_one/static/src/js/extra_addons/sh_survey_extra_fields/survey_form.js:0
+#, python-format
+msgid "This is not a date"
+msgstr "這不是約會"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_time
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_time
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_time
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_time
+msgid "Time"
+msgstr "時間"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_time_step
+msgid "Time Step"
+msgstr "時間步驟"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_url
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_url
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_url
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_url
+msgid "URL"
+msgstr "URL"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_city
+msgid "Value Ans Sh City"
+msgstr "價值Ans Sh City"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_street
+msgid "Value Ans Sh Street"
+msgstr "價值ANS SH街"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_street2
+msgid "Value Ans Sh Street2"
+msgstr "價值ANS SH Street2"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_zip
+msgid "Value Ans Sh Zip"
+msgstr "價值Ans SH Zip"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_user_input_line__value_ans_sh_week
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question__question_type__que_sh_week
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_question_answer__sh_value_type__que_sh_week
+#: model:ir.model.fields.selection,name:sh_survey_all_in_one.selection__survey_user_input_line__answer_type__ans_sh_week
+msgid "Week"
+msgstr "星期"
+
+#. module: sh_survey_all_in_one
+#: model:ir.model.fields,field_description:sh_survey_all_in_one.field_survey_question__validation_sh_week_step
+msgid "Week Step"
+msgstr "週步"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_address
+msgid "Zip Code"
+msgstr "郵政編碼"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "[0-9]{4}"
+msgstr "[0-9] {4}"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_survey_settings_form
+msgid "e.g. Theme Settings for Survey A"
+msgstr "例如調查主題設置"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.matrix
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_email
+msgid "example@domain.com"
+msgstr "示例@domain.com"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.matrix
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_time
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.tmpl_sh_url
+msgid "https://example.com"
+msgstr "https://example.com"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survey_extra_fields_survey_que_form_view
+msgid "nnnn"
+msgstr "nnnn"
+
+#. module: sh_survey_all_in_one
+#: model_terms:ir.ui.view,arch_db:sh_survey_all_in_one.sh_survmate_theme_button_style_wizard_view
+msgid "preview image"
+msgstr "預覽圖像"
diff --git a/sh_survey_all_in_one/security/ir.model.access.csv b/sh_survey_all_in_one/security/ir.model.access.csv
new file mode 100644
index 0000000..c418497
--- /dev/null
+++ b/sh_survey_all_in_one/security/ir.model.access.csv
@@ -0,0 +1,3 @@
+id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
+access_survmate_settings_all,access.survmate.settings.all,model_sh_survmate_settings,,1,1,1,1
+access_sh_survmate_theme_button_design_wizard,access.sh.survmate.theme.button.design.wizard,model_sh_survmate_theme_button_design_wizard,,1,1,1,1
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields/__init__.py b/sh_survey_all_in_one/sh_survey_extra_fields/__init__.py
new file mode 100644
index 0000000..7659ee9
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survey_extra_fields/__init__.py
@@ -0,0 +1,4 @@
+# Part of Softhealer Technologies.
+
+from . import models
+from . import controllers
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields/__pycache__/__init__.cpython-310.pyc b/sh_survey_all_in_one/sh_survey_extra_fields/__pycache__/__init__.cpython-310.pyc
new file mode 100644
index 0000000..e00ba9c
Binary files /dev/null and b/sh_survey_all_in_one/sh_survey_extra_fields/__pycache__/__init__.cpython-310.pyc differ
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields/controllers/__init__.py b/sh_survey_all_in_one/sh_survey_extra_fields/controllers/__init__.py
new file mode 100644
index 0000000..4854c51
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survey_extra_fields/controllers/__init__.py
@@ -0,0 +1,3 @@
+# Part of Softhealer Technologies.
+
+from . import sh_survey_extra_fields
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields/controllers/__pycache__/__init__.cpython-310.pyc b/sh_survey_all_in_one/sh_survey_extra_fields/controllers/__pycache__/__init__.cpython-310.pyc
new file mode 100644
index 0000000..124f426
Binary files /dev/null and b/sh_survey_all_in_one/sh_survey_extra_fields/controllers/__pycache__/__init__.cpython-310.pyc differ
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields/controllers/__pycache__/sh_survey_extra_fields.cpython-310.pyc b/sh_survey_all_in_one/sh_survey_extra_fields/controllers/__pycache__/sh_survey_extra_fields.cpython-310.pyc
new file mode 100644
index 0000000..1641c24
Binary files /dev/null and b/sh_survey_all_in_one/sh_survey_extra_fields/controllers/__pycache__/sh_survey_extra_fields.cpython-310.pyc differ
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields/controllers/sh_survey_extra_fields.py b/sh_survey_all_in_one/sh_survey_extra_fields/controllers/sh_survey_extra_fields.py
new file mode 100644
index 0000000..f45fde9
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survey_extra_fields/controllers/sh_survey_extra_fields.py
@@ -0,0 +1,84 @@
+# Part of Softhealer Technologies.
+
+from odoo import http
+from odoo.http import request
+
+
+class SurveyController(http.Controller):
+
+ @http.route(['/survey/get_many2many_field_data'], type='json', auth="public", methods=['POST'])
+ def get_many2many_field_data(self, **kw):
+ records = []
+ rec_name = False
+ if kw.get("model_id",False):
+ modelRecord = request.env["ir.model"].sudo().search([
+ ('id','=',kw.get("model_id") )
+ ],limit = 1)
+ if modelRecord:
+ modelRecord = modelRecord.sudo();
+ rec_name = modelRecord._rec_name
+ rec_name = 'display_name'
+ records = request.env[modelRecord.model].sudo().search_read([],fields=[rec_name,'id'])
+
+ # give any rec_name value to name key in record in order to use in js.
+ if records:
+ records = [dict(item, name=item.get(rec_name)) for item in records]
+ return dict(
+ records = records,
+ rec_name = rec_name,
+ )
+
+ @http.route(['/survey/get_many2one_field_data'], type='json', auth="public", methods=['POST'])
+ def get_many2one_field_data(self, **kw):
+ records = []
+ rec_name = False
+ if kw.get("model_id",False):
+ modelRecord = request.env["ir.model"].sudo().search([
+ ('id','=',kw.get("model_id") )
+ ],limit = 1)
+ if modelRecord:
+ modelRecord = modelRecord.sudo();
+ rec_name = modelRecord._rec_name
+ records = request.env[modelRecord.model].sudo().search_read([],fields=[rec_name,'id'])
+
+ # give any rec_name value to name key in record in order to use in js.
+ if records:
+ records = [dict(item, name=item.get(rec_name)) for item in records]
+
+ return dict(
+ records = records,
+ rec_name = rec_name,
+ )
+
+ @http.route(['/survey/get_countries'], type='json', auth="public", methods=['POST'])
+ def get_countries(self,**kw):
+ return dict(
+ countries = request.env["res.country"].sudo().search_read([],fields=['name','id']),
+ country_states = request.env["res.country"].state_ids,
+ )
+
+ @http.route(['/survey/get_ountry_info/'], type='json', auth="public", methods=['POST'])
+ def get_ountry_info(self, country,**kw):
+ return dict(
+ states=[(st.id, st.name, st.code) for st in country.state_ids],
+ phone_code=country.phone_code,
+ zip_required=country.zip_required,
+ state_required=country.state_required,
+ )
+
+ @http.route('/survey/download///', type='http', auth='public', website=True)
+ def survey_download_file(self, **post):
+ base_url = request.env['ir.config_parameter'].sudo(
+ ).get_param('web.base.url')
+ download_url = base_url
+ if base_url and post.get('answer_id') and post.get('question_id') and post.get('answer_token'):
+ input_line_id = request.env['survey.user_input.line'].sudo().search([('user_input_id.access_token', '=', post.get(
+ 'answer_token')), ('question_id', '=', int(post.get('question_id'))), ('user_input_id', '=', int(post.get('answer_id')))], limit=1)
+ if input_line_id:
+ download_url += '/web/content/survey.user_input.line/' + \
+ str(input_line_id.id)+'/value_ans_sh_file?download=true&access_token=' + post.get('answer_token')
+ return request.redirect(download_url)
+
+
+
+
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields/models/__init__.py b/sh_survey_all_in_one/sh_survey_extra_fields/models/__init__.py
new file mode 100644
index 0000000..db191d5
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survey_extra_fields/models/__init__.py
@@ -0,0 +1,4 @@
+# Part of Softhealer Technologies.
+
+from . import survey
+from . import ir_http
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields/models/__pycache__/__init__.cpython-310.pyc b/sh_survey_all_in_one/sh_survey_extra_fields/models/__pycache__/__init__.cpython-310.pyc
new file mode 100644
index 0000000..90e3d51
Binary files /dev/null and b/sh_survey_all_in_one/sh_survey_extra_fields/models/__pycache__/__init__.cpython-310.pyc differ
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields/models/__pycache__/ir_http.cpython-310.pyc b/sh_survey_all_in_one/sh_survey_extra_fields/models/__pycache__/ir_http.cpython-310.pyc
new file mode 100644
index 0000000..857cb65
Binary files /dev/null and b/sh_survey_all_in_one/sh_survey_extra_fields/models/__pycache__/ir_http.cpython-310.pyc differ
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields/models/__pycache__/survey.cpython-310.pyc b/sh_survey_all_in_one/sh_survey_extra_fields/models/__pycache__/survey.cpython-310.pyc
new file mode 100644
index 0000000..3a28237
Binary files /dev/null and b/sh_survey_all_in_one/sh_survey_extra_fields/models/__pycache__/survey.cpython-310.pyc differ
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields/models/ir_http.py b/sh_survey_all_in_one/sh_survey_extra_fields/models/ir_http.py
new file mode 100644
index 0000000..9e69722
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survey_extra_fields/models/ir_http.py
@@ -0,0 +1,34 @@
+# -*- coding: utf-8 -*-
+
+
+from odoo import models
+
+
+class Http(models.AbstractModel):
+ _inherit = 'ir.http'
+
+ def binary_content(self, xmlid=None, model='ir.attachment', id=None, field='datas',
+ unique=False, filename=None, filename_field='name', download=False,
+ mimetype=None, default_mimetype='application/octet-stream',
+ access_token=None):
+
+ obj = None
+ if xmlid:
+ obj = self._xmlid_to_obj(self.env, xmlid)
+ if id and model == 'survey.user_input.line' and access_token:
+ obj = self.env[model].browse(int(id))
+ if obj and obj.sudo().access_token == access_token:
+ obj = obj.sudo()
+ self = self.sudo()
+ if obj:
+ obj.check_access_rights('read')
+ obj.check_access_rule('read')
+ return super(Http, self).binary_content(
+ xmlid=xmlid, model=model, id=id, field=field, unique=unique, filename=filename,
+ filename_field=filename_field, download=download, mimetype=mimetype,
+ default_mimetype=default_mimetype, access_token=access_token)
+
+
+
+
+
\ No newline at end of file
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields/models/survey.py b/sh_survey_all_in_one/sh_survey_extra_fields/models/survey.py
new file mode 100644
index 0000000..814efba
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survey_extra_fields/models/survey.py
@@ -0,0 +1,634 @@
+# Part of Softhealer Technologies.
+
+import base64
+import datetime
+import logging
+import re
+from odoo import api, fields, models
+email_validator = re.compile(r"[^@]+@[^@]+\.[^@]+")
+_logger = logging.getLogger(__name__)
+
+from urllib import parse
+
+class SurveyQuestion(models.Model):
+ _inherit = 'survey.question'
+ _description = 'Inherit Survey Question for extra fields'
+
+ def _get_stats_summary_data(self, user_input_lines):
+ stats = {}
+ if self.question_type in ['simple_choice', 'multiple_choice','que_sh_many2one','que_sh_many2many']:
+ stats.update(self._get_stats_summary_data_choice(user_input_lines))
+ elif self.question_type == 'numerical_box':
+ stats.update(self._get_stats_summary_data_numerical(user_input_lines))
+
+ if self.question_type in ['numerical_box', 'date', 'datetime']:
+ stats.update(self._get_stats_summary_data_scored(user_input_lines))
+ return stats
+
+ def _get_stats_data(self, user_input_lines):
+ if self.question_type == 'simple_choice':
+ return self._get_stats_data_answers(user_input_lines)
+ elif self.question_type == 'que_sh_many2one':
+ return self._get_stats_data_answers(user_input_lines)
+ elif self.question_type == 'que_sh_many2many':
+ table_data, graph_data = self._get_stats_data_answers(user_input_lines)
+ return table_data, [{'key': self.title, 'values': graph_data}]
+
+ elif self.question_type == 'multiple_choice':
+ table_data, graph_data = self._get_stats_data_answers(user_input_lines)
+ return table_data, [{'key': self.title, 'values': graph_data}]
+ elif self.question_type == 'matrix':
+ return self._get_stats_graph_data_matrix(user_input_lines)
+ return [line for line in user_input_lines], []
+ validation_sh_time_min = fields.Char('Minimum Time')
+ validation_sh_time_max = fields.Char('Maximum Time')
+ validation_sh_time_step = fields.Integer('Time Step', default=60)
+
+ validation_sh_range_min = fields.Integer('Minimum Range')
+ validation_sh_range_max = fields.Integer('Maximum Range')
+ validation_sh_range_step = fields.Integer('Range Step')
+
+ validation_sh_week_min = fields.Char('Minimum Week')
+ validation_sh_week_max = fields.Char('Maximum Week')
+ validation_sh_week_step = fields.Integer('Week Step', default=1)
+
+ validation_sh_month_min = fields.Char('Minimum Month')
+ validation_sh_month_max = fields.Char('Maximum Month')
+ validation_sh_month_step = fields.Integer('Month Step', default=1)
+
+ validation_sh_password_minlen = fields.Integer('Password Minimum Length')
+ validation_sh_password_maxlen = fields.Integer('Password Maximum Length')
+
+ #for pattern in odoo standard textbox
+ validation_is_sh_textbox_pattern = fields.Boolean(
+ 'Input must be in specified pattern')
+ validation_sh_textbox_pattern = fields.Char('Textbox Pattern')
+ validation_sh_textbox_placeholder = fields.Char('Textbox Placeholder')
+
+ que_sh_many2one_model_id = fields.Many2one(comodel_name="ir.model", string="Model ")
+
+ que_sh_many2many_model_id = fields.Many2one(comodel_name="ir.model", string="Model")
+
+ # address fields
+ sh_is_show_street = fields.Boolean(string="Show Street Field?",default = True)
+ sh_is_show_street2 = fields.Boolean(string="Show Street2 Field?",default = True)
+ sh_is_show_zip = fields.Boolean(string="Show Zip Field?",default = True)
+ sh_is_show_city = fields.Boolean(string="Show City Field?",default = True)
+ sh_is_show_state_id = fields.Boolean(string="Show State Field?",default = True)
+ sh_is_show_country_id = fields.Boolean(string="Show Country Field?",default = True)
+
+ # address fields labels
+ sh_is_show_street_label = fields.Char(
+ string='Street Label',
+ translate=True
+ )
+ sh_is_show_street2_label = fields.Char(
+ string='Street 2 Label',
+ translate=True
+ )
+ sh_is_show_zip_label = fields.Char(
+ string='Zip Label',
+ translate=True
+ )
+ sh_is_show_city_label = fields.Char(
+ string='City Label',
+ translate=True
+ )
+ sh_is_show_country_id_label = fields.Char(
+ string='Country Label',
+ translate=True
+ )
+ sh_is_show_state_id_label = fields.Char(
+ string='State Label',
+ translate=True
+ )
+
+ question_type = fields.Selection(selection_add=[
+ ('que_sh_color', 'Color'),
+ ('que_sh_email', 'E-mail'),
+ ('que_sh_url', 'URL'),
+ ('que_sh_time', 'Time'),
+ ('que_sh_range', 'Range'),
+ ('que_sh_week', 'Week'),
+ ('que_sh_month', 'Month'),
+ ('que_sh_password', 'Password'),
+ ('que_sh_file', 'File'),
+ ('que_sh_signature', 'Signature'),
+ ('que_sh_many2one', 'Many2one'),
+ ('que_sh_many2many', 'Many2many'),
+ ('que_sh_address', 'Address'),
+ ])
+ # ------------------------------------------------------------
+ # VALIDATION
+ # ------------------------------------------------------------
+
+ def validate_question(self, answer, comment=None):
+ """ Validate question, depending on question type and parameters
+ for simple choice, text, date and number, answer is simply the answer of the question.
+ For other multiple choices questions, answer is a list of answers (the selected choices
+ or a list of selected answers per question -for matrix type-):
+ - Simple answer : answer = 'example' or 2 or question_answer_id or 2019/10/10
+ - Multiple choice : answer = [question_answer_id1, question_answer_id2, question_answer_id3]
+ - Matrix: answer = { 'rowId1' : [colId1, colId2,...], 'rowId2' : [colId1, colId3, ...] }
+
+ return dict {question.id (int): error (str)} -> empty dict if no validation error.
+ """
+ self.ensure_one()
+ if isinstance(answer, str):
+ answer = answer.strip()
+ # Empty answer to mandatory question
+ if self.constr_mandatory and not answer and self.question_type not in ['simple_choice', 'multiple_choice']:
+ return {self.id: self.constr_error_msg}
+
+ # because in choices question types, comment can count as answer
+ if answer or self.question_type in ['simple_choice', 'multiple_choice']:
+ if self.question_type == 'char_box':
+ return self._validate_char_box(answer)
+ elif self.question_type == 'numerical_box':
+ return self._validate_numerical_box(answer)
+ elif self.question_type in ['date', 'datetime']:
+ return self._validate_date(answer)
+ elif self.question_type in ['simple_choice', 'multiple_choice']:
+ return self._validate_choice(answer, comment)
+ elif self.question_type == 'matrix':
+ return self._validate_matrix(answer)
+ elif self.question_type == 'que_sh_color':
+ return self.validate_que_sh_color(answer)
+ elif self.question_type == 'que_sh_email':
+ return self.validate_que_sh_email(answer)
+ elif self.question_type == 'que_sh_url':
+ return self.validate_que_sh_url(answer)
+ elif self.question_type == 'que_sh_time':
+ return self.validate_que_sh_time(answer)
+ elif self.question_type == 'que_sh_range':
+ return self.validate_que_sh_range(answer)
+ elif self.question_type == 'que_sh_week':
+ return self.validate_que_sh_week(answer)
+ elif self.question_type == 'que_sh_month':
+ return self.validate_que_sh_month(answer)
+ elif self.question_type == 'que_sh_password':
+ return self.validate_que_sh_password(answer)
+ elif self.question_type == 'que_sh_file':
+ return self.validate_que_sh_file(answer)
+ elif self.question_type == 'que_sh_signature':
+ return self.validate_que_sh_signature(answer)
+ elif self.question_type == 'que_sh_many2one':
+ return self.validate_que_sh_many2one(answer)
+ elif self.question_type == 'que_sh_many2many':
+ return self.validate_que_sh_many2many(answer)
+ elif self.question_type == 'que_sh_address':
+ return self.validate_que_sh_address(answer)
+ return {}
+
+ # ====================================================================
+ #for color field.
+ # ====================================================================
+
+ def validate_que_sh_color(self, answer):
+ if self.constr_mandatory and not answer:
+ return {self.id: self.constr_error_msg}
+ return {}
+
+ # ====================================================================
+ #for email field.
+ # ====================================================================
+
+ def validate_que_sh_email(self, answer):
+ if self.constr_mandatory and not answer:
+ return {self.id: self.constr_error_msg}
+ return {}
+
+ # ====================================================================
+ #for url field.
+ # ====================================================================
+
+ def validate_que_sh_url(self, answer):
+ if self.constr_mandatory and not answer:
+ return {self.id: self.constr_error_msg}
+ return {}
+
+ # ====================================================================
+ #for time field.
+ # ====================================================================
+
+ def validate_que_sh_time(self, answer):
+ isData = self.question_type == 'que_sh_time'
+ if self.constr_mandatory and not answer:
+ return {self.id: self.constr_error_msg}
+ if self.validation_required:
+ # Check if answer is in the right range
+ if isData:
+ min_date = datetime.datetime.strptime(
+ self.validation_sh_time_min, '%H:%M')
+ max_date = datetime.datetime.strptime(
+ self.validation_sh_time_max, '%H:%M')
+ answer = datetime.datetime.strptime(answer, '%H:%M')
+ if answer < min_date or answer > max_date:
+ return {self.id: self.validation_error_msg}
+
+ return {}
+
+ # ====================================================================
+ #for Range field.
+ # ====================================================================
+
+ def validate_que_sh_range(self, answer):
+ if self.constr_mandatory and not answer:
+ return {self.id: self.constr_error_msg}
+ return {}
+
+ # ====================================================================
+ #for Week field.
+ # ====================================================================
+
+ def validate_que_sh_week(self, answer):
+ if self.constr_mandatory and not answer:
+ return {self.id: self.constr_error_msg}
+ return {}
+
+ # ====================================================================
+ #for Month field.
+ # ====================================================================
+
+ def validate_que_sh_month(self, answer):
+ if self.constr_mandatory and not answer:
+ return {self.id: self.constr_error_msg}
+ return {}
+
+ # ====================================================================
+ #for Password field.
+ # ====================================================================
+
+ def validate_que_sh_password(self, answer):
+ isData = self.question_type == 'que_sh_password'
+ if self.constr_mandatory and not answer:
+ return {self.id: self.constr_error_msg}
+ if self.validation_required:
+ # Check if answer is in the right range
+ if isData:
+ minlen = self.validation_sh_password_minlen
+ maxlen = self.validation_sh_password_maxlen
+ if len(answer) < minlen or len(answer) > maxlen:
+ return {self.id: self.validation_error_msg}
+ return {}
+
+ # ====================================================================
+ #for File field.
+ # ====================================================================
+ def validate_que_sh_file(self, answer):
+ if self.constr_mandatory and not answer:
+ return {self.id: self.constr_error_msg}
+ return {}
+
+
+ # ====================================================================
+ #for Signature Field.
+ # ====================================================================
+ def validate_que_sh_signature(self, answer):
+ if self.constr_mandatory and not answer:
+ return {self.id: self.constr_error_msg}
+ return {}
+
+ # ====================================================================
+ #for Many2one Field.
+ # ====================================================================
+ def validate_que_sh_many2one(self, answer):
+ if self.constr_mandatory and not answer:
+ return {self.id: self.constr_error_msg}
+ return {}
+
+
+ # ====================================================================
+ #for Many2many Field.
+ # ====================================================================
+ def validate_que_sh_many2many(self, answer):
+ if self.constr_mandatory and not answer:
+ return {self.id: self.constr_error_msg}
+ return {}
+
+ # ====================================================================
+ #for Address Field.
+ # ====================================================================
+ def validate_que_sh_address(self, answer):
+ if self.constr_mandatory and not answer:
+ return {self.id: self.constr_error_msg}
+ return {}
+
+
+class SurveyUserInput(models.Model):
+ _inherit = 'survey.user_input'
+
+ # def save_lines(self, question, answer, comment=None):
+ # """ Save answers to questions, depending on question type
+ #
+ # If an answer already exists for question and user_input_id, it will be
+ # overwritten (or deleted for 'choice' questions) (in order to maintain data consistency).
+ # """
+ # old_answers = self.env['survey.user_input.line'].search([
+ # ('user_input_id', '=', self.id),
+ # ('question_id', '=', question.id)
+ # ])
+ #
+ # if question.question_type in ['char_box', 'text_box', 'numerical_box', 'date', 'datetime']:
+ # self._save_line_simple_answer(question, old_answers, answer)
+ # if question.save_as_email and answer:
+ # self.write({'email': answer})
+ # if question.save_as_nickname and answer:
+ # self.write({'nickname': answer})
+ #
+ # elif question.question_type in ['simple_choice', 'multiple_choice']:
+ # self._save_line_choice(question, old_answers, answer, comment)
+ # elif question.question_type == 'matrix':
+ # self._save_line_matrix(question, old_answers, answer, comment)
+ # elif question.question_type in ['que_sh_color']:
+ # self.save_line_que_sh_field(
+ # question, old_answers, answer, 'ans_sh_color')
+ # elif question.question_type in ['que_sh_email']:
+ # self.save_line_que_sh_field(
+ # question, old_answers, answer, 'ans_sh_email')
+ # elif question.question_type in ['que_sh_url']:
+ # self.save_line_que_sh_field(
+ # question, old_answers, answer, 'ans_sh_url')
+ # elif question.question_type in ['que_sh_time']:
+ # self.save_line_que_sh_field(
+ # question, old_answers, answer, 'ans_sh_time')
+ # elif question.question_type in ['que_sh_range']:
+ # self.save_line_que_sh_field(
+ # question, old_answers, answer, 'ans_sh_range')
+ # elif question.question_type in ['que_sh_week']:
+ # self.save_line_que_sh_field(
+ # question, old_answers, answer, 'ans_sh_week')
+ # elif question.question_type in ['que_sh_month']:
+ # self.save_line_que_sh_field(
+ # question, old_answers, answer, 'ans_sh_month')
+ # elif question.question_type in ['que_sh_password']:
+ # self.save_line_que_sh_field(
+ # question, old_answers, answer, 'ans_sh_password')
+ # elif question.question_type in ['que_sh_file']:
+ # self.save_line_que_sh_file(
+ # question, old_answers, answer, 'ans_sh_file')
+ # elif question.question_type in ['que_sh_signature']:
+ # self.save_line_que_sh_signature(
+ # question, old_answers, answer, 'ans_sh_signature')
+ # elif question.question_type in ['que_sh_address']:
+ # self.save_line_que_sh_address(
+ # question, old_answers, answer, 'ans_sh_address')
+ #
+ # elif question.question_type in ['que_sh_many2one']:
+ # self.save_line_que_sh_many2one(
+ # question, old_answers, answer, 'ans_sh_many2one')
+ #
+ # elif question.question_type in ['que_sh_many2many']:
+ # self.save_line_que_sh_many2many(
+ # question, old_answers, answer, 'ans_sh_many2many')
+ #
+ # else:
+ # raise AttributeError(question.question_type +
+ # ": This type of question has no saving function")
+
+ # ====================================================================
+ #for color field.
+ # ====================================================================
+
+ @api.model
+ def save_line_que_sh_field(self, question, old_answers, answer, answer_type):
+ vals_list = []
+ vals = {
+ 'user_input_id': self.id,
+ 'question_id': question.id,
+ 'skipped': False,
+ 'answer_type': answer_type,
+ }
+
+ if not answer or (isinstance(answer, str) and not answer.strip()):
+ vals.update(answer_type=None, skipped=True)
+ return vals
+ vals['value_%s' % answer_type] = answer
+ vals_list.append(vals)
+ old_answers.sudo().unlink()
+ return self.env['survey.user_input.line'].create(vals_list)
+
+ @api.model
+ def save_line_que_sh_file(self, question, old_answers, answer, answer_type):
+ vals_list = []
+ vals = {
+ 'user_input_id': self.id,
+ 'question_id': question.id,
+ 'skipped': False,
+ 'answer_type': answer_type,
+ 'value_ans_sh_file': answer,
+ 'value_ans_sh_file_fname': question.title,
+ }
+ if not answer or (isinstance(answer, str) and not answer.strip()):
+ vals.update(answer_type=None, skipped=True)
+ return vals
+ vals['value_%s' % answer_type] = answer
+ vals_list.append(vals)
+ old_answers.sudo().unlink()
+ return self.env['survey.user_input.line'].create(vals_list)
+
+ @api.model
+ def save_line_que_sh_signature(self, question, old_answers, answer, answer_type):
+ vals_list = []
+ vals = {
+ 'user_input_id': self.id,
+ 'question_id': question.id,
+ 'skipped': False,
+ 'answer_type': answer_type,
+ 'value_ans_sh_signature': answer,
+ 'value_ans_sh_signature_src': answer,
+
+ }
+ if not answer or (isinstance(answer, str) and not answer.strip()):
+ vals.update(answer_type=None, skipped=True)
+ return vals
+ vals['value_%s' % answer_type] = answer
+ vals_list.append(vals)
+ old_answers.sudo().unlink()
+ return self.env['survey.user_input.line'].create(vals_list)
+
+ # ------------------------------
+ # Address Fields.
+ # ------------------------------
+ @api.model
+ def save_line_que_sh_address(self, question, old_answers, answer, answer_type):
+ vals_list = []
+ vals = {
+ 'user_input_id': self.id,
+ 'question_id': question.id,
+ 'skipped': False,
+ 'answer_type': answer_type,
+ }
+ if not answer or (isinstance(answer, str) and not answer.strip()):
+ vals.update(answer_type=None, skipped=True)
+ return vals
+ # Add individual address fields in vals here
+ query_dict = dict(parse.parse_qsl(answer)) or {}
+ vals["value_ans_sh_street"] = query_dict.get('street',False)
+ vals["value_ans_sh_street2"] = query_dict.get('street2',False)
+ vals["value_ans_sh_city"] = query_dict.get('city',False)
+ vals["value_ans_sh_zip"] = query_dict.get('zip',False)
+ vals["value_ans_sh_state_id"] = query_dict.get('state_id',False)
+ vals["value_ans_sh_country_id"] = query_dict.get('country_id',False)
+ # TO AVOID ERROR BELOW IS NECESSARY
+ street = query_dict.get('street','')
+ street2 = query_dict.get('street2','')
+ city = query_dict.get('city','')
+ zip = query_dict.get('zip','')
+ state_id = query_dict.get('state_id','')
+ country_id = query_dict.get('country_id','')
+
+ if street:
+ street += ' '
+ if street2:
+ street2 += ' '
+ if city:
+ city += ' '
+ if zip:
+ zip += ' '
+ if state_id:
+ integer_state_id = state_id
+ if type(state_id) != int:
+ integer_state_id = int(state_id)
+ state = self.env["res.country.state"].sudo().browse([integer_state_id])
+ if state:
+ state_id = state.name
+
+ state_id += ' '
+ if country_id:
+
+ integer_country_id = country_id
+ if type(country_id) != int:
+ integer_country_id = int(country_id)
+
+ country = self.env["res.country"].sudo().browse([integer_country_id])
+ if country:
+ country_id = country.name
+
+ country_id += ' '
+
+ complete_address = street + street2 + city + zip + state_id + country_id
+ vals["value_ans_sh_address"] = complete_address or False
+ vals_list.append(vals)
+ old_answers.sudo().unlink()
+ return self.env['survey.user_input.line'].create(vals_list)
+
+ @api.model
+ def save_line_que_sh_many2one(self, question, old_answers, answer, answer_type):
+ vals_list = []
+ vals = {
+ 'user_input_id': self.id,
+ 'question_id': question.id,
+ 'skipped': False,
+ 'answer_type': 'suggestion',
+ }
+ if not answer or (isinstance(answer, str) and not answer.strip()):
+ vals.update(answer_type=None, skipped=True)
+ return vals
+
+ # ---------------------------------------------------------------
+ # To Make Many2one fields like Multiple Choice only one answer.
+ suggested_answer = self.env["survey.question.answer"].search([
+ ('question_id','=',question.id),
+ ('value','=',answer),
+ ],limit = 1)
+
+ if not suggested_answer:
+ suggested_answer = self.env["survey.question.answer"].create({
+ 'question_id':question.id,
+ 'value':answer,
+ })
+ if suggested_answer:
+ vals['suggested_answer_id'] = suggested_answer.id
+
+ # To Make Many2one fields like Multiple Choice only one answer.
+ # ---------------------------------------------------------------
+ vals_list.append(vals)
+ old_answers.sudo().unlink()
+ return self.env['survey.user_input.line'].create(vals_list)
+
+ @api.model
+ def save_line_que_sh_many2many(self, question, old_answers, answers, answer_type):
+ vals_list = []
+ if not (isinstance(answers, list)):
+ answers = [answers]
+ for answer in answers:
+ vals = {
+ 'user_input_id': self.id,
+ 'question_id': question.id,
+ 'skipped': False,
+ 'answer_type': 'suggestion',
+ }
+ if not answer or (isinstance(answer, str) and not answer.strip()):
+ vals.update(answer_type=None, skipped=True)
+ return vals
+
+ # ---------------------------------------------------------------
+ # To Make Many2one fields like Multiple Choice only one answer.
+ suggested_answer = self.env["survey.question.answer"].search([
+ ('question_id','=',question.id),
+ ('value','=',answer),
+ ],limit = 1)
+
+ if not suggested_answer:
+ suggested_answer = self.env["survey.question.answer"].create({
+ 'question_id':question.id,
+ 'value':answer,
+ })
+ if suggested_answer:
+ vals['suggested_answer_id'] = suggested_answer.id
+
+ # To Make Many2one fields like Multiple Choice only one answer.
+ # ---------------------------------------------------------------
+ vals_list.append(vals)
+ old_answers.sudo().unlink()
+ return self.env['survey.user_input.line'].create(vals_list)
+
+class SurveyUserInputLine(models.Model):
+ _inherit = 'survey.user_input.line'
+ _description = 'Survey User Input Line for extra fields'
+
+ value_ans_sh_color = fields.Char(string="Color")
+ value_ans_sh_email = fields.Char(string="E-mail")
+ value_ans_sh_url = fields.Char(string="URL")
+ value_ans_sh_time = fields.Char(string="Time")
+ value_ans_sh_range = fields.Integer(string="Range")
+ value_ans_sh_week = fields.Char(string="Week")
+ value_ans_sh_month = fields.Char(string="Month")
+ value_ans_sh_password = fields.Char(string="Password")
+ value_ans_sh_file = fields.Binary(string="File")
+ value_ans_sh_file_fname = fields.Char(string="File Name")
+ value_ans_sh_signature = fields.Binary(string="Signature")
+ value_ans_sh_signature_src = fields.Text(string="Signature src")
+
+ value_ans_sh_many2one = fields.Char(string="Many2one")
+ value_ans_sh_many2many = fields.Char(string="Many2many")
+
+ # address fields
+ value_ans_sh_street = fields.Char()
+ value_ans_sh_street2 = fields.Char()
+ value_ans_sh_zip = fields.Char()
+ value_ans_sh_city = fields.Char()
+ value_ans_sh_state_id = fields.Many2one("res.country.state", string='State')
+ value_ans_sh_country_id = fields.Many2one('res.country', string='Country')
+ value_ans_sh_address = fields.Text(string ="Address")
+
+ answer_type = fields.Selection(selection_add=[
+ ('ans_sh_color', 'Color'),
+ ('ans_sh_email', 'E-mail'),
+ ('ans_sh_url', 'URL'),
+ ('ans_sh_time', 'Time'),
+ ('ans_sh_range', 'Range'),
+ ('ans_sh_week', 'Week'),
+ ('ans_sh_month', 'Month'),
+ ('ans_sh_password', 'Password'),
+ ('ans_sh_file', 'File'),
+ ('ans_sh_signature', 'Signature'),
+ ('ans_sh_many2one', 'Many2one'),
+ ('ans_sh_many2many', 'Many2many'),
+ ('ans_sh_address', 'Address'),
+ ])
+
+ access_token = fields.Char('Identification token',
+ related="user_input_id.access_token",
+ readonly=False, store= True)
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields/views/survey_statistics_templates.xml b/sh_survey_all_in_one/sh_survey_extra_fields/views/survey_statistics_templates.xml
new file mode 100644
index 0000000..a3105b8
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survey_extra_fields/views/survey_statistics_templates.xml
@@ -0,0 +1,20 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields/views/survey_templates.xml b/sh_survey_all_in_one/sh_survey_extra_fields/views/survey_templates.xml
new file mode 100644
index 0000000..e3a96e6
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survey_extra_fields/views/survey_templates.xml
@@ -0,0 +1,504 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Click here to download file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Clear
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields/views/survey_views.xml b/sh_survey_all_in_one/sh_survey_extra_fields/views/survey_views.xml
new file mode 100644
index 0000000..748e4e4
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survey_extra_fields/views/survey_views.xml
@@ -0,0 +1,220 @@
+
+
+
+
+ sh.survey.extra.fields.survey.que.form.view
+ survey.question
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ {'invisible': [('question_type', 'not in', ['char_box', 'numerical_box', 'date', 'datetime', 'que_sh_time','que_sh_range','que_sh_week','que_sh_month','que_sh_password' ])]}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ sh.survey.extra.fields.survey.user.input.line.form
+ survey.user_input.line
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields_adv/__init__.py b/sh_survey_all_in_one/sh_survey_extra_fields_adv/__init__.py
new file mode 100644
index 0000000..037f754
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survey_extra_fields_adv/__init__.py
@@ -0,0 +1,3 @@
+# Copyright (C) Softhealer Technologies.
+
+from . import models
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields_adv/__pycache__/__init__.cpython-310.pyc b/sh_survey_all_in_one/sh_survey_extra_fields_adv/__pycache__/__init__.cpython-310.pyc
new file mode 100644
index 0000000..c306fa9
Binary files /dev/null and b/sh_survey_all_in_one/sh_survey_extra_fields_adv/__pycache__/__init__.cpython-310.pyc differ
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields_adv/models/__init__.py b/sh_survey_all_in_one/sh_survey_extra_fields_adv/models/__init__.py
new file mode 100644
index 0000000..3365fd7
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survey_extra_fields_adv/models/__init__.py
@@ -0,0 +1,3 @@
+# Copyright (C) Softhealer Technologies.
+
+from . import survey
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields_adv/models/__pycache__/__init__.cpython-310.pyc b/sh_survey_all_in_one/sh_survey_extra_fields_adv/models/__pycache__/__init__.cpython-310.pyc
new file mode 100644
index 0000000..44fb1e7
Binary files /dev/null and b/sh_survey_all_in_one/sh_survey_extra_fields_adv/models/__pycache__/__init__.cpython-310.pyc differ
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields_adv/models/__pycache__/survey.cpython-310.pyc b/sh_survey_all_in_one/sh_survey_extra_fields_adv/models/__pycache__/survey.cpython-310.pyc
new file mode 100644
index 0000000..29961ec
Binary files /dev/null and b/sh_survey_all_in_one/sh_survey_extra_fields_adv/models/__pycache__/survey.cpython-310.pyc differ
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields_adv/models/survey.py b/sh_survey_all_in_one/sh_survey_extra_fields_adv/models/survey.py
new file mode 100644
index 0000000..510d8b0
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survey_extra_fields_adv/models/survey.py
@@ -0,0 +1,347 @@
+# Copyright (C) Softhealer Technologies.
+
+from datetime import datetime, timedelta
+from odoo import api, fields, models
+
+
+class SurveyLabel(models.Model):
+ """ A suggested answer for a question """
+ _inherit = 'survey.question.answer'
+
+ sh_value_type = fields.Selection(selection_add=[
+ ('que_sh_qrcode', 'QR Code'),
+ ('que_sh_barcode', 'Barcode'),
+ ])
+
+
+class survey_question(models.Model):
+ _inherit = 'survey.question'
+ _description = 'Inherit Survey Question for extra fields'
+
+ question_type = fields.Selection(selection_add=[
+ ('que_sh_qrcode', 'QR Code'),
+ ('que_sh_barcode', 'Barcode'),
+ ('que_sh_location', 'Location')
+ ])
+
+ # ------------------------------------------------------------
+ # VALIDATION
+ # ------------------------------------------------------------
+
+ def validate_question(self, answer, comment=None):
+ """ Validate question, depending on question type and parameters
+ for simple choice, text, date and number, answer is simply the answer of the question.
+ For other multiple choices questions, answer is a list of answers (the selected choices
+ or a list of selected answers per question -for matrix type-):
+ - Simple answer : answer = 'example' or 2 or question_answer_id or 2019/10/10
+ - Multiple choice : answer = [question_answer_id1, question_answer_id2, question_answer_id3]
+ - Matrix: answer = { 'rowId1' : [colId1, colId2,...], 'rowId2' : [colId1, colId3, ...] }
+
+ return dict {question.id (int): error (str)} -> empty dict if no validation error.
+ """
+ self.ensure_one()
+ if isinstance(answer, str):
+ answer = answer.strip()
+ # Empty answer to mandatory question
+ if self.constr_mandatory and not answer and self.question_type not in ['simple_choice', 'multiple_choice']:
+ return {self.id: self.constr_error_msg}
+
+ # because in choices question types, comment can count as answer
+ if answer or self.question_type in ['simple_choice', 'multiple_choice']:
+ if self.question_type == 'char_box':
+ return self._validate_char_box(answer)
+ elif self.question_type == 'numerical_box':
+ return self._validate_numerical_box(answer)
+ elif self.question_type in ['date', 'datetime']:
+ return self._validate_date(answer)
+ elif self.question_type in ['simple_choice', 'multiple_choice']:
+ return self._validate_choice(answer, comment)
+ elif self.question_type == 'matrix':
+ return self._validate_matrix(answer)
+ elif self.question_type == 'que_sh_color':
+ return self.validate_que_sh_color(answer)
+ elif self.question_type == 'que_sh_email':
+ return self.validate_que_sh_email(answer)
+ elif self.question_type == 'que_sh_url':
+ return self.validate_que_sh_url(answer)
+ elif self.question_type == 'que_sh_time':
+ return self.validate_que_sh_time(answer)
+ elif self.question_type == 'que_sh_range':
+ return self.validate_que_sh_range(answer)
+ elif self.question_type == 'que_sh_week':
+ return self.validate_que_sh_week(answer)
+ elif self.question_type == 'que_sh_month':
+ return self.validate_que_sh_month(answer)
+ elif self.question_type == 'que_sh_password':
+ return self.validate_que_sh_password(answer)
+ elif self.question_type == 'que_sh_file':
+ return self.validate_que_sh_file(answer)
+ elif self.question_type == 'que_sh_signature':
+ return self.validate_que_sh_signature(answer)
+ elif self.question_type == 'que_sh_many2one':
+ return self.validate_que_sh_many2one(answer)
+ elif self.question_type == 'que_sh_many2many':
+ return self.validate_que_sh_many2many(answer)
+ elif self.question_type == 'que_sh_address':
+ return self.validate_que_sh_address(answer)
+ elif self.question_type == 'que_sh_qrcode':
+ return self.validate_que_sh_qrcode(answer)
+ elif self.question_type == 'que_sh_barcode':
+ return self.validate_que_sh_barcode(answer)
+ elif self.question_type == 'que_sh_location':
+ return self.validate_que_sh_location(answer)
+
+ return {}
+
+ # ====================================================================
+ #for QR field.
+ # ====================================================================
+
+ def validate_que_sh_qrcode(self, answer):
+ if self.constr_mandatory and not answer:
+ return {self.id: self.constr_error_msg}
+ return {}
+
+ # ====================================================================
+ #for BARCODE field.
+ # ====================================================================
+
+ def validate_que_sh_barcode(self, answer):
+ if self.constr_mandatory and not answer:
+ return {self.id: self.constr_error_msg}
+ return {}
+ # ====================================================================
+ #for Location field.
+ # ====================================================================
+
+ def validate_que_sh_location(self, answer):
+ if self.constr_mandatory and not answer:
+ return {self.id: self.constr_error_msg}
+ return {}
+
+
+ def _validate_matrix(self, answers):
+ # Validate that each line has been answered
+ if self.constr_mandatory:
+ for row in answers:
+ if answers[row] == ['']:
+ return {self.id: self.constr_error_msg}
+ return {}
+
+class SurveyUserInput(models.Model):
+ _inherit = 'survey.user_input'
+
+ def _save_line_matrix(self, question, old_answers, answers, comment):
+ vals_list = []
+ if answers:
+ for row_key, row_answer in answers.items():
+ if question.matrix_subtype == 'sh_custom_matrix':
+ answer = row_key.split('_')[1]
+ if answer:
+ for data_value in row_answer:
+ if question.matrix_subtype == 'sh_custom_matrix':
+ answer_id = self.env['survey.question.answer'].sudo().browse(
+ int(answer))
+ if answer_id.sh_value_type == 'textbox':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'text_box')
+ elif answer_id.sh_value_type == 'free_text':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'char_box')
+ elif answer_id.sh_value_type == 'numerical_box':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'numerical_box')
+ elif answer_id.sh_value_type == 'date':
+ if data_value in ['',"",False,None]:
+ data_value = False
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'date')
+ elif answer_id.sh_value_type == 'datetime':
+ if data_value in ['',"",False,None]:
+ data_value = False
+ else:
+ data_value = datetime.strptime(
+ data_value, '%m/%d/%Y %H:%M:%S').strftime("%Y-%m-%d %H:%M:%S")
+ # data_value = datetime.strptime(
+ # data_value, '%m/%d/%Y %H:%M:%S').strftime("%Y-%m-%d %H:%M:%S")
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'datetime')
+ elif answer_id.sh_value_type == 'que_sh_color':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'ans_sh_color')
+ elif answer_id.sh_value_type == 'que_sh_email':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'ans_sh_email')
+ elif answer_id.sh_value_type == 'que_sh_url':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'ans_sh_url')
+ elif answer_id.sh_value_type == 'que_sh_time':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'ans_sh_time')
+ elif answer_id.sh_value_type == 'que_sh_range':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'ans_sh_range')
+ elif answer_id.sh_value_type == 'que_sh_week':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'ans_sh_week')
+ elif answer_id.sh_value_type == 'que_sh_month':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'ans_sh_month')
+ elif answer_id.sh_value_type == 'que_sh_password':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'ans_sh_password')
+ elif answer_id.sh_value_type == 'que_sh_file':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'ans_sh_file')
+ elif answer_id.sh_value_type == 'que_sh_qrcode':
+
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'ans_sh_qrcode')
+ elif answer_id.sh_value_type == 'que_sh_barcode':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'ans_sh_barcode')
+ elif answer_id.sh_value_type == 'que_sh_location':
+
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'ans_sh_location')
+ vals['matrix_row_id'] = int(
+ row_key.split('_')[0])
+
+ else:
+ vals = self.sh_get_line_answer_values(
+ question, answer, answer, 'suggestion')
+ vals['matrix_row_id'] = int(answer)
+ vals_list.append(vals.copy())
+
+ else:
+ for answer in row_answer:
+ vals = self.sh_get_line_answer_values(question, answer, answer, 'suggestion')
+ vals['matrix_row_id'] = int(row_key)
+ vals_list.append(vals.copy())
+
+ if comment:
+ vals_list.append(self._get_line_comment_values(question, comment))
+
+ old_answers.sudo().unlink()
+ print('\n\n CALELD vals_list',vals_list)
+ return self.env['survey.user_input.line'].create(vals_list)
+
+ def save_lines(self, question, answer, comment=None):
+ """ Save answers to questions, depending on question type
+
+ If an answer already exists for question and user_input_id, it will be
+ overwritten (or deleted for 'choice' questions) (in order to maintain data consistency).
+ """
+ old_answers = self.env['survey.user_input.line'].search([
+ ('user_input_id', '=', self.id),
+ ('question_id', '=', question.id)
+ ])
+ if question.question_type in ['char_box', 'text_box', 'numerical_box', 'date', 'datetime']:
+ self._save_line_simple_answer(question, old_answers, answer)
+ if question.save_as_email and answer:
+ self.write({'email': answer})
+ if question.save_as_nickname and answer:
+ self.write({'nickname': answer})
+
+ elif question.question_type in ['simple_choice', 'multiple_choice']:
+ self._save_line_choice(question, old_answers, answer, comment)
+ elif question.question_type == 'matrix':
+ self._save_line_matrix(question, old_answers, answer, comment)
+ elif question.question_type in ['que_sh_color']:
+ self.save_line_que_sh_field(
+ question, old_answers, answer, 'ans_sh_color')
+ elif question.question_type in ['que_sh_email']:
+ self.save_line_que_sh_field(
+ question, old_answers, answer, 'ans_sh_email')
+ elif question.question_type in ['que_sh_url']:
+ self.save_line_que_sh_field(
+ question, old_answers, answer, 'ans_sh_url')
+ elif question.question_type in ['que_sh_time']:
+ self.save_line_que_sh_field(
+ question, old_answers, answer, 'ans_sh_time')
+ elif question.question_type in ['que_sh_range']:
+ self.save_line_que_sh_field(
+ question, old_answers, answer, 'ans_sh_range')
+ elif question.question_type in ['que_sh_week']:
+ self.save_line_que_sh_field(
+ question, old_answers, answer, 'ans_sh_week')
+ elif question.question_type in ['que_sh_month']:
+ self.save_line_que_sh_field(
+ question, old_answers, answer, 'ans_sh_month')
+ elif question.question_type in ['que_sh_password']:
+ self.save_line_que_sh_field(
+ question, old_answers, answer, 'ans_sh_password')
+ elif question.question_type in ['que_sh_file']:
+ self.save_line_que_sh_file(
+ question, old_answers, answer, 'ans_sh_file')
+ elif question.question_type in ['que_sh_signature']:
+ self.save_line_que_sh_signature(
+ question, old_answers, answer, 'ans_sh_signature')
+ elif question.question_type in ['que_sh_address']:
+ self.save_line_que_sh_address(
+ question, old_answers, answer, 'ans_sh_address')
+
+ elif question.question_type in ['que_sh_many2one']:
+ self.save_line_que_sh_many2one(
+ question, old_answers, answer, 'ans_sh_many2one')
+
+ elif question.question_type in ['que_sh_many2many']:
+ self.save_line_que_sh_many2many(
+ question, old_answers, answer, 'ans_sh_many2many')
+ elif question.question_type in ['que_sh_qrcode']:
+ self.save_line_que_sh_field(
+ question, old_answers, answer, 'ans_sh_qrcode')
+ elif question.question_type in ['que_sh_barcode']:
+ self.save_line_que_sh_field(
+ question, old_answers, answer, 'ans_sh_barcode')
+ elif question.question_type in ['que_sh_location']:
+ self.save_line_que_sh_location(
+ question, old_answers, answer, 'ans_sh_location')
+ else:
+ raise AttributeError(question.question_type +
+ ": This type of question has no saving function")
+
+ # ====================================================================
+ #for color field.
+ # ====================================================================
+ @api.model
+ def save_line_que_sh_location(self, question, old_answers, answer, answer_type):
+ vals_list = []
+
+ vals = {
+ 'user_input_id': self.id,
+ 'question_id': question.id,
+ 'skipped': False,
+ 'answer_type': answer_type,
+ }
+ if not answer or (isinstance(answer, str) and not answer.strip()):
+ vals.update(answer_type=None, skipped=True)
+ return vals
+ vals['value_%s' % answer_type] = answer
+ if(answer and len(answer.split('&')) > 0):
+
+ vals['value_sh_location_latitude'] = answer.split('&')[0]
+ vals['value_sh_location_longitude'] = answer.split('&')[1]
+ vals['value_ans_sh_location'] = answer
+
+ vals_list.append(vals)
+ old_answers.sudo().unlink()
+ return self.env['survey.user_input.line'].create(vals_list)
+
+
+class survey_user_input_line(models.Model):
+ _inherit = 'survey.user_input.line'
+ _description = 'Survey User Input Line for extra fields'
+
+ value_ans_sh_qrcode = fields.Char(string="QR Code")
+ value_ans_sh_barcode = fields.Char(string="Barcode")
+
+ value_sh_location_latitude = fields.Char(string="Latitude")
+ value_sh_location_longitude = fields.Char(string="Longitude")
+ value_ans_sh_location = fields.Char(string="Location")
+
+ answer_type = fields.Selection(selection_add=[
+ ('ans_sh_qrcode', 'QR Code'),
+ ('ans_sh_barcode', 'Barcode'),
+ ('ans_sh_location', 'Location')
+ ])
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields_adv/views/survey_page_fill_templates.xml b/sh_survey_all_in_one/sh_survey_extra_fields_adv/views/survey_page_fill_templates.xml
new file mode 100644
index 0000000..cdaab77
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survey_extra_fields_adv/views/survey_page_fill_templates.xml
@@ -0,0 +1,45 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields_adv/views/survey_templates.xml b/sh_survey_all_in_one/sh_survey_extra_fields_adv/views/survey_templates.xml
new file mode 100644
index 0000000..1095472
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survey_extra_fields_adv/views/survey_templates.xml
@@ -0,0 +1,432 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Click here to download file
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/sh_survey_all_in_one/sh_survey_extra_fields_adv/views/survey_views.xml b/sh_survey_all_in_one/sh_survey_extra_fields_adv/views/survey_views.xml
new file mode 100644
index 0000000..4ba83e4
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survey_extra_fields_adv/views/survey_views.xml
@@ -0,0 +1,36 @@
+
+
+
+
+
+
+
+ sh.survey.extra.fields.adv.survey.user.input.line.form
+ survey.user_input.line
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/sh_survey_all_in_one/sh_survey_matrix_adv/__init__.py b/sh_survey_all_in_one/sh_survey_matrix_adv/__init__.py
new file mode 100644
index 0000000..a9769d1
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survey_matrix_adv/__init__.py
@@ -0,0 +1,4 @@
+# Copyright (C) Softhealer Technologies.
+
+from . import models
+from . import controllers
diff --git a/sh_survey_all_in_one/sh_survey_matrix_adv/__pycache__/__init__.cpython-310.pyc b/sh_survey_all_in_one/sh_survey_matrix_adv/__pycache__/__init__.cpython-310.pyc
new file mode 100644
index 0000000..c1347b2
Binary files /dev/null and b/sh_survey_all_in_one/sh_survey_matrix_adv/__pycache__/__init__.cpython-310.pyc differ
diff --git a/sh_survey_all_in_one/sh_survey_matrix_adv/controllers/__init__.py b/sh_survey_all_in_one/sh_survey_matrix_adv/controllers/__init__.py
new file mode 100644
index 0000000..dd50880
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survey_matrix_adv/controllers/__init__.py
@@ -0,0 +1,3 @@
+# Copyright (C) Softhealer Technologies.
+
+from . import sh_survey_matrix_adv
diff --git a/sh_survey_all_in_one/sh_survey_matrix_adv/controllers/__pycache__/__init__.cpython-310.pyc b/sh_survey_all_in_one/sh_survey_matrix_adv/controllers/__pycache__/__init__.cpython-310.pyc
new file mode 100644
index 0000000..f4b847e
Binary files /dev/null and b/sh_survey_all_in_one/sh_survey_matrix_adv/controllers/__pycache__/__init__.cpython-310.pyc differ
diff --git a/sh_survey_all_in_one/sh_survey_matrix_adv/controllers/__pycache__/sh_survey_matrix_adv.cpython-310.pyc b/sh_survey_all_in_one/sh_survey_matrix_adv/controllers/__pycache__/sh_survey_matrix_adv.cpython-310.pyc
new file mode 100644
index 0000000..4cbfac0
Binary files /dev/null and b/sh_survey_all_in_one/sh_survey_matrix_adv/controllers/__pycache__/sh_survey_matrix_adv.cpython-310.pyc differ
diff --git a/sh_survey_all_in_one/sh_survey_matrix_adv/controllers/sh_survey_matrix_adv.py b/sh_survey_all_in_one/sh_survey_matrix_adv/controllers/sh_survey_matrix_adv.py
new file mode 100644
index 0000000..289e2a7
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survey_matrix_adv/controllers/sh_survey_matrix_adv.py
@@ -0,0 +1,32 @@
+# Copyright (C) Softhealer Technologies.
+
+import json
+import logging
+
+from odoo import fields, http
+from odoo.http import request
+from odoo.addons.survey.controllers.main import Survey
+
+_logger = logging.getLogger(__name__)
+
+
+class SurveyController(http.Controller):
+
+ @http.route('/survey/matrix/download////', type='http', auth='public', website=True)
+ def survey_matrix_download_file(self, **post):
+ base_url = request.env['ir.config_parameter'].sudo(
+ ).get_param('web.base.url')
+ download_url = base_url
+ if base_url and post.get('question_id') and post.get('row_label') and post.get('col_label') and post.get('answer_token'):
+ input_line_id = request.env['survey.user_input.line'].sudo().search([('user_input_id.access_token', '=', post.get('answer_token')),
+ ('question_id', '=', int(
+ post.get('question_id'))),
+ ('suggested_answer_id', '=', int(
+ post.get('col_label'))),
+ ('matrix_row_id', '=', int(
+ post.get('row_label')))
+ ], limit=1)
+ if input_line_id:
+ download_url += '/web/content/survey.user_input.line/' + \
+ str(input_line_id.id)+'/value_ans_sh_file?download=true'
+ return request.redirect(download_url)
diff --git a/sh_survey_all_in_one/sh_survey_matrix_adv/models/__init__.py b/sh_survey_all_in_one/sh_survey_matrix_adv/models/__init__.py
new file mode 100644
index 0000000..3365fd7
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survey_matrix_adv/models/__init__.py
@@ -0,0 +1,3 @@
+# Copyright (C) Softhealer Technologies.
+
+from . import survey
diff --git a/sh_survey_all_in_one/sh_survey_matrix_adv/models/__pycache__/__init__.cpython-310.pyc b/sh_survey_all_in_one/sh_survey_matrix_adv/models/__pycache__/__init__.cpython-310.pyc
new file mode 100644
index 0000000..2649153
Binary files /dev/null and b/sh_survey_all_in_one/sh_survey_matrix_adv/models/__pycache__/__init__.cpython-310.pyc differ
diff --git a/sh_survey_all_in_one/sh_survey_matrix_adv/models/__pycache__/survey.cpython-310.pyc b/sh_survey_all_in_one/sh_survey_matrix_adv/models/__pycache__/survey.cpython-310.pyc
new file mode 100644
index 0000000..bab77d2
Binary files /dev/null and b/sh_survey_all_in_one/sh_survey_matrix_adv/models/__pycache__/survey.cpython-310.pyc differ
diff --git a/sh_survey_all_in_one/sh_survey_matrix_adv/models/survey.py b/sh_survey_all_in_one/sh_survey_matrix_adv/models/survey.py
new file mode 100644
index 0000000..bd4a56a
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survey_matrix_adv/models/survey.py
@@ -0,0 +1,161 @@
+# Copyright (C) Softhealer Technologies.
+
+from odoo import models, fields, api, _
+import base64
+from datetime import datetime
+from odoo.exceptions import ValidationError
+
+class survey_question(models.Model):
+ _inherit = 'survey.question'
+
+ matrix_subtype = fields.Selection(selection_add=[
+ ('sh_custom_matrix', 'Custom Matrix')
+ ])
+
+
+class SurveyLabel(models.Model):
+ """ A suggested answer for a question """
+ _inherit = 'survey.question.answer'
+
+ sh_value_type = fields.Selection([
+ ('textbox', 'Single Line Text Box'),
+ ('free_text', 'Multiple Lines Text Box'),
+ ('numerical_box', 'Numerical Value'),
+ ('date', 'Date'),
+ ('datetime', 'Datetime'),
+ ('que_sh_color', 'Color'),
+ ('que_sh_email', 'E-mail'),
+ ('que_sh_url', 'URL'),
+ ('que_sh_time', 'Time'),
+ ('que_sh_range', 'Range'),
+ ('que_sh_week', 'Week'),
+ ('que_sh_month', 'Month'),
+ ('que_sh_password', 'Password'),
+ ('que_sh_file', 'File'),
+ ], string='Choices Type')
+
+ ## Matrix Range Config
+ sh_matrix_range_min = fields.Integer(string='Minimum')
+ sh_matrix_range_max = fields.Integer(string='Maximum')
+ sh_matrix_range_step = fields.Integer(string='Step')
+
+class survey_user_input(models.Model):
+ _inherit = 'survey.user_input'
+ _description = 'Survey User Input for custom matrix'
+
+ def _save_line_matrix(self, question, old_answers, answers, comment):
+ vals_list = []
+
+ if answers:
+ for row_key, row_answer in answers.items():
+ if question.matrix_subtype == 'sh_custom_matrix':
+ answer = row_key.split('_')[1]
+ if answer:
+ for data_value in row_answer:
+ vals = {}
+ if not data_value:
+ data_value = False
+ if question.matrix_subtype == 'sh_custom_matrix':
+ answer_id = self.env['survey.question.answer'].sudo().browse(
+ int(answer))
+ if answer_id.sh_value_type == 'textbox':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'text_box')
+ elif answer_id.sh_value_type == 'free_text':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'char_box')
+ elif answer_id.sh_value_type == 'numerical_box':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'numerical_box')
+ elif answer_id.sh_value_type == 'date':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'date')
+ elif answer_id.sh_value_type == 'datetime':
+ if data_value:
+ data_value = datetime.strptime(
+ data_value, '%m/%d/%Y %H:%M:%S').strftime("%Y-%m-%d %H:%M:%S")
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'datetime')
+ elif answer_id.sh_value_type == 'que_sh_color':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'ans_sh_color')
+ elif answer_id.sh_value_type == 'que_sh_email':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'ans_sh_email')
+ elif answer_id.sh_value_type == 'que_sh_url':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'ans_sh_url')
+ elif answer_id.sh_value_type == 'que_sh_time':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'ans_sh_time')
+ elif answer_id.sh_value_type == 'que_sh_range':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'ans_sh_range')
+ elif answer_id.sh_value_type == 'que_sh_week':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'ans_sh_week')
+ elif answer_id.sh_value_type == 'que_sh_month':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'ans_sh_month')
+ elif answer_id.sh_value_type == 'que_sh_password':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'ans_sh_password')
+ elif answer_id.sh_value_type == 'que_sh_file':
+ vals = self.sh_get_line_answer_values(
+ question, answer, data_value, 'ans_sh_file')
+ vals['matrix_row_id'] = int(
+ row_key.split('_')[0])
+ else:
+ vals = self.sh_get_line_answer_values(
+ question, answer, answer, 'suggestion')
+ vals['matrix_row_id'] = int(answer)
+ vals_list.append(vals.copy())
+
+ else:
+ for answer in row_answer:
+ vals = self.sh_get_line_answer_values(
+ question, answer, answer, 'suggestion')
+ vals['matrix_row_id'] = int(row_key)
+ vals_list.append(vals.copy())
+
+ if comment:
+ vals_list.append(self._get_line_comment_values(question, comment))
+
+ old_answers.sudo().unlink()
+ return self.env['survey.user_input.line'].create(vals_list)
+
+ def sh_get_line_answer_values(self, question, answer, data_value, answer_type):
+ vals = {
+ 'user_input_id': self.id,
+ 'question_id': question.id,
+ 'skipped': False,
+ 'answer_type': answer_type,
+ }
+ if not answer or (isinstance(answer, str) and not answer.strip()):
+ vals.update(answer_type=None, skipped=True)
+ return vals
+
+ if answer_type == 'suggestion':
+ vals['suggested_answer_id'] = int(answer)
+ else:
+ vals['value_%s' % answer_type] = data_value
+ vals['suggested_answer_id'] = int(answer)
+ return vals
+
+
+class survey_user_input_line(models.Model):
+ _inherit = 'survey.user_input.line'
+ _description = 'Survey User Input Line for custom matrix'
+
+ @api.constrains('skipped', 'answer_type')
+ def _check_answer_type_skipped(self):
+ for line in self:
+ if (line.skipped == bool(line.answer_type)):
+ raise ValidationError(
+ _('A question is either skipped, either answered. Not both.'))
+ if line.answer_type == 'suggestion':
+ field_name = 'suggested_answer_id'
+ elif line.answer_type:
+ field_name = 'value_%s' % line.answer_type
+ else: # skipped
+ field_name = False
diff --git a/sh_survey_all_in_one/sh_survey_matrix_adv/views/survey_templates.xml b/sh_survey_all_in_one/sh_survey_matrix_adv/views/survey_templates.xml
new file mode 100644
index 0000000..7fb568e
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survey_matrix_adv/views/survey_templates.xml
@@ -0,0 +1,210 @@
+
+
+
+
diff --git a/sh_survey_all_in_one/sh_survey_matrix_adv/views/survey_views.xml b/sh_survey_all_in_one/sh_survey_matrix_adv/views/survey_views.xml
new file mode 100644
index 0000000..2e48d99
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survey_matrix_adv/views/survey_views.xml
@@ -0,0 +1,36 @@
+
+
+
+
+ sh.survey.matrix.adv.survey.questino.form
+ survey.question
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ sh.survey.matrix.adv.survey.user.input.line.form
+ survey.user_input.line
+
+
+
+
+
+
+
+
diff --git a/sh_survey_all_in_one/sh_survmate_theme/__init__.py b/sh_survey_all_in_one/sh_survmate_theme/__init__.py
new file mode 100644
index 0000000..40edf95
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survmate_theme/__init__.py
@@ -0,0 +1,6 @@
+# -*- coding: utf-8 -*-
+# Part of Softhealer Technologies.
+
+
+from . import models
+from . import wizards
diff --git a/sh_survey_all_in_one/sh_survmate_theme/__pycache__/__init__.cpython-310.pyc b/sh_survey_all_in_one/sh_survmate_theme/__pycache__/__init__.cpython-310.pyc
new file mode 100644
index 0000000..4896dc0
Binary files /dev/null and b/sh_survey_all_in_one/sh_survmate_theme/__pycache__/__init__.cpython-310.pyc differ
diff --git a/sh_survey_all_in_one/sh_survmate_theme/data/survmate_demo.xml b/sh_survey_all_in_one/sh_survmate_theme/data/survmate_demo.xml
new file mode 100644
index 0000000..74365ff
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survmate_theme/data/survmate_demo.xml
@@ -0,0 +1,113 @@
+
+
+
+
+
+
+
+
+ Theme 1
+
+ True
+ #FFFFFF
+ #585858
+ #0042BC
+ #FFFFFF
+ #444444
+ #444444
+ #0043A8
+ #FAFAFA
+
+ style_1
+ style_1
+ style_1
+ style_1
+ style_1
+
+
+
+
+ Theme 2
+
+ True
+ #FFFFFF
+ #474747
+ #571839
+ #BB377D
+ #FFFFFF
+ #1F4037
+ #BB377D
+ #F4F4F4
+
+ style_2
+ style_2
+ style_2
+ style_2
+ style_2
+
+
+
+
+
+ Theme 3
+
+ True
+ #FFFFFF
+ #666666
+ #183543
+ #FFFFFF
+ #1B343F
+ #1F4037
+ #337899
+ #F4F4F4
+
+ style_3
+ style_3
+ style_3
+ style_3
+ style_3
+
+
+
+
+
+ Theme 4
+
+ true
+ #FFFFFF
+ #474747
+ #1F4037
+ #01592F
+ #F5F5F5
+ #1F4037
+ #01592F
+ #F4F4F4
+
+ style_4
+ style_4
+ style_4
+ style_4
+ style_4
+
+
+
+
+ Theme 5
+ True
+ #FFFFFF
+ #474747
+ #61045F
+ #F1F5F8
+ #61045F
+ #1F4037
+ #61045F
+ #F4F4F4
+ style_5
+ style_5
+ style_5
+ style_5
+ style_5
+
+
+
+
diff --git a/sh_survey_all_in_one/sh_survmate_theme/models/__init__.py b/sh_survey_all_in_one/sh_survmate_theme/models/__init__.py
new file mode 100644
index 0000000..20eb152
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survmate_theme/models/__init__.py
@@ -0,0 +1,5 @@
+# -*- coding: utf-8 -*-
+# Part of Softhealer Technologies.
+
+
+from . import survey
diff --git a/sh_survey_all_in_one/sh_survmate_theme/models/__pycache__/__init__.cpython-310.pyc b/sh_survey_all_in_one/sh_survmate_theme/models/__pycache__/__init__.cpython-310.pyc
new file mode 100644
index 0000000..690f60f
Binary files /dev/null and b/sh_survey_all_in_one/sh_survmate_theme/models/__pycache__/__init__.cpython-310.pyc differ
diff --git a/sh_survey_all_in_one/sh_survmate_theme/models/__pycache__/survey.cpython-310.pyc b/sh_survey_all_in_one/sh_survmate_theme/models/__pycache__/survey.cpython-310.pyc
new file mode 100644
index 0000000..91e3c61
Binary files /dev/null and b/sh_survey_all_in_one/sh_survmate_theme/models/__pycache__/survey.cpython-310.pyc differ
diff --git a/sh_survey_all_in_one/sh_survmate_theme/models/survey.py b/sh_survey_all_in_one/sh_survmate_theme/models/survey.py
new file mode 100644
index 0000000..d78c353
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survmate_theme/models/survey.py
@@ -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}}
+ }
diff --git a/sh_survey_all_in_one/sh_survmate_theme/views/survey_layout_templates.xml b/sh_survey_all_in_one/sh_survmate_theme/views/survey_layout_templates.xml
new file mode 100644
index 0000000..e94f21b
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survmate_theme/views/survey_layout_templates.xml
@@ -0,0 +1,337 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ survmate_style
+
+
+
+
+
+
diff --git a/sh_survey_all_in_one/sh_survmate_theme/views/survey_question_matrix_templates.xml b/sh_survey_all_in_one/sh_survmate_theme/views/survey_question_matrix_templates.xml
new file mode 100644
index 0000000..fd15369
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survmate_theme/views/survey_question_matrix_templates.xml
@@ -0,0 +1,8 @@
+
+
+
+
+ table table-borderless o_survey_question_matrix text-white text-center mb-0
+
+
+
\ No newline at end of file
diff --git a/sh_survey_all_in_one/sh_survmate_theme/views/survey_question_template.xml b/sh_survey_all_in_one/sh_survmate_theme/views/survey_question_template.xml
new file mode 100644
index 0000000..132693a
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survmate_theme/views/survey_question_template.xml
@@ -0,0 +1,98 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ row
+
+
+
+ 'js_question-wrapper %s' %(sh_survmate_question_grid_cls)
+
+
+
+
+
+
+
+
+ question.description != shhtmlempty
+
+
+
+
+
+
+
+
+
+
+ '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)
+
+
+
+
+
+
+
+ o_survey_form_content row w-100
+
+
+
+
+
+
+
+ 'o_survey_timer col-lg-2 pt-4 %s' % ('sh_survmate_timer_fixed' if survey.sh_is_time_fixed else '')
+
+
+
+
+
\ No newline at end of file
diff --git a/sh_survey_all_in_one/sh_survmate_theme/views/survey_question_views.xml b/sh_survey_all_in_one/sh_survmate_theme/views/survey_question_views.xml
new file mode 100644
index 0000000..7fc05b3
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survmate_theme/views/survey_question_views.xml
@@ -0,0 +1,18 @@
+
+
+
+
+ sh.survmate.theme.survey.question.form.inherit
+ survey.question
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/sh_survey_all_in_one/sh_survmate_theme/views/survey_setting_views.xml b/sh_survey_all_in_one/sh_survmate_theme/views/survey_setting_views.xml
new file mode 100644
index 0000000..55de8a2
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survmate_theme/views/survey_setting_views.xml
@@ -0,0 +1,160 @@
+
+
+
+
+
+
+ sh.survmate.theme.survey.settings.form
+ sh.survmate.settings
+
+
+
+
+
+
+
+
+ sh.survmate.settings.tree
+ sh.survmate.settings
+
+
+
+
+
+
+
+
+ Survmate Settings
+ ir.actions.act_window
+ sh.survmate.settings
+ tree,form
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sh_survey_all_in_one/sh_survmate_theme/views/survey_views.xml b/sh_survey_all_in_one/sh_survmate_theme/views/survey_views.xml
new file mode 100644
index 0000000..eb0b8c4
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survmate_theme/views/survey_views.xml
@@ -0,0 +1,27 @@
+
+
+
+ sh.survmate.theme.survey.form.inherit
+ survey.survey
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/sh_survey_all_in_one/sh_survmate_theme/wizards/__init__.py b/sh_survey_all_in_one/sh_survmate_theme/wizards/__init__.py
new file mode 100644
index 0000000..a1c2127
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survmate_theme/wizards/__init__.py
@@ -0,0 +1,6 @@
+# -*- coding: utf-8 -*-
+# Part of Softhealer Technologies.
+
+
+from . import button_style_wizard
+
diff --git a/sh_survey_all_in_one/sh_survmate_theme/wizards/__pycache__/__init__.cpython-310.pyc b/sh_survey_all_in_one/sh_survmate_theme/wizards/__pycache__/__init__.cpython-310.pyc
new file mode 100644
index 0000000..214d07e
Binary files /dev/null and b/sh_survey_all_in_one/sh_survmate_theme/wizards/__pycache__/__init__.cpython-310.pyc differ
diff --git a/sh_survey_all_in_one/sh_survmate_theme/wizards/__pycache__/button_style_wizard.cpython-310.pyc b/sh_survey_all_in_one/sh_survmate_theme/wizards/__pycache__/button_style_wizard.cpython-310.pyc
new file mode 100644
index 0000000..8a59ccb
Binary files /dev/null and b/sh_survey_all_in_one/sh_survmate_theme/wizards/__pycache__/button_style_wizard.cpython-310.pyc differ
diff --git a/sh_survey_all_in_one/sh_survmate_theme/wizards/button_style_wizard.py b/sh_survey_all_in_one/sh_survmate_theme/wizards/button_style_wizard.py
new file mode 100644
index 0000000..5a862b3
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survmate_theme/wizards/button_style_wizard.py
@@ -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")
\ No newline at end of file
diff --git a/sh_survey_all_in_one/sh_survmate_theme/wizards/button_style_wizard_views.xml b/sh_survey_all_in_one/sh_survmate_theme/wizards/button_style_wizard_views.xml
new file mode 100644
index 0000000..2594409
--- /dev/null
+++ b/sh_survey_all_in_one/sh_survmate_theme/wizards/button_style_wizard_views.xml
@@ -0,0 +1,23 @@
+
+
+
+ sh.survmate.theme.button.style.wizard.view
+ sh.survmate.theme.button.design.wizard
+
+
+
+
+
\ No newline at end of file
diff --git a/sh_survey_all_in_one/static/description/1.png b/sh_survey_all_in_one/static/description/1.png
new file mode 100644
index 0000000..6f2a105
Binary files /dev/null and b/sh_survey_all_in_one/static/description/1.png differ
diff --git a/sh_survey_all_in_one/static/description/10.png b/sh_survey_all_in_one/static/description/10.png
new file mode 100644
index 0000000..df780f0
Binary files /dev/null and b/sh_survey_all_in_one/static/description/10.png differ
diff --git a/sh_survey_all_in_one/static/description/11.png b/sh_survey_all_in_one/static/description/11.png
new file mode 100644
index 0000000..108e23c
Binary files /dev/null and b/sh_survey_all_in_one/static/description/11.png differ
diff --git a/sh_survey_all_in_one/static/description/2.png b/sh_survey_all_in_one/static/description/2.png
new file mode 100644
index 0000000..0b3f898
Binary files /dev/null and b/sh_survey_all_in_one/static/description/2.png differ
diff --git a/sh_survey_all_in_one/static/description/3.png b/sh_survey_all_in_one/static/description/3.png
new file mode 100644
index 0000000..9723862
Binary files /dev/null and b/sh_survey_all_in_one/static/description/3.png differ
diff --git a/sh_survey_all_in_one/static/description/4.png b/sh_survey_all_in_one/static/description/4.png
new file mode 100644
index 0000000..b3e504f
Binary files /dev/null and b/sh_survey_all_in_one/static/description/4.png differ
diff --git a/sh_survey_all_in_one/static/description/5.png b/sh_survey_all_in_one/static/description/5.png
new file mode 100644
index 0000000..da458f5
Binary files /dev/null and b/sh_survey_all_in_one/static/description/5.png differ
diff --git a/sh_survey_all_in_one/static/description/6.png b/sh_survey_all_in_one/static/description/6.png
new file mode 100644
index 0000000..2fa7d84
Binary files /dev/null and b/sh_survey_all_in_one/static/description/6.png differ
diff --git a/sh_survey_all_in_one/static/description/7.png b/sh_survey_all_in_one/static/description/7.png
new file mode 100644
index 0000000..b305a6c
Binary files /dev/null and b/sh_survey_all_in_one/static/description/7.png differ
diff --git a/sh_survey_all_in_one/static/description/8.png b/sh_survey_all_in_one/static/description/8.png
new file mode 100644
index 0000000..ffe1f06
Binary files /dev/null and b/sh_survey_all_in_one/static/description/8.png differ
diff --git a/sh_survey_all_in_one/static/description/9.png b/sh_survey_all_in_one/static/description/9.png
new file mode 100644
index 0000000..5543614
Binary files /dev/null and b/sh_survey_all_in_one/static/description/9.png differ
diff --git a/sh_survey_all_in_one/static/description/aarab.png b/sh_survey_all_in_one/static/description/aarab.png
new file mode 100644
index 0000000..143ffc9
Binary files /dev/null and b/sh_survey_all_in_one/static/description/aarab.png differ
diff --git a/sh_survey_all_in_one/static/description/background.gif b/sh_survey_all_in_one/static/description/background.gif
new file mode 100644
index 0000000..5507a23
Binary files /dev/null and b/sh_survey_all_in_one/static/description/background.gif differ
diff --git a/sh_survey_all_in_one/static/description/barcode_1.png b/sh_survey_all_in_one/static/description/barcode_1.png
new file mode 100644
index 0000000..e0acc39
Binary files /dev/null and b/sh_survey_all_in_one/static/description/barcode_1.png differ
diff --git a/sh_survey_all_in_one/static/description/barcode_2.png b/sh_survey_all_in_one/static/description/barcode_2.png
new file mode 100644
index 0000000..74ea5e9
Binary files /dev/null and b/sh_survey_all_in_one/static/description/barcode_2.png differ
diff --git a/sh_survey_all_in_one/static/description/barcode_3.png b/sh_survey_all_in_one/static/description/barcode_3.png
new file mode 100644
index 0000000..bbd8796
Binary files /dev/null and b/sh_survey_all_in_one/static/description/barcode_3.png differ
diff --git a/sh_survey_all_in_one/static/description/barcode_4.png b/sh_survey_all_in_one/static/description/barcode_4.png
new file mode 100644
index 0000000..7439cd4
Binary files /dev/null and b/sh_survey_all_in_one/static/description/barcode_4.png differ
diff --git a/sh_survey_all_in_one/static/description/barcode_5.png b/sh_survey_all_in_one/static/description/barcode_5.png
new file mode 100644
index 0000000..45f8852
Binary files /dev/null and b/sh_survey_all_in_one/static/description/barcode_5.png differ
diff --git a/sh_survey_all_in_one/static/description/center - 2.png b/sh_survey_all_in_one/static/description/center - 2.png
new file mode 100644
index 0000000..4d6235a
Binary files /dev/null and b/sh_survey_all_in_one/static/description/center - 2.png differ
diff --git a/sh_survey_all_in_one/static/description/chinese.png b/sh_survey_all_in_one/static/description/chinese.png
new file mode 100644
index 0000000..fcab845
Binary files /dev/null and b/sh_survey_all_in_one/static/description/chinese.png differ
diff --git a/sh_survey_all_in_one/static/description/color_1.png b/sh_survey_all_in_one/static/description/color_1.png
new file mode 100644
index 0000000..daf3745
Binary files /dev/null and b/sh_survey_all_in_one/static/description/color_1.png differ
diff --git a/sh_survey_all_in_one/static/description/color_2.png b/sh_survey_all_in_one/static/description/color_2.png
new file mode 100644
index 0000000..992d4b1
Binary files /dev/null and b/sh_survey_all_in_one/static/description/color_2.png differ
diff --git a/sh_survey_all_in_one/static/description/color_3.png b/sh_survey_all_in_one/static/description/color_3.png
new file mode 100644
index 0000000..a4ff73e
Binary files /dev/null and b/sh_survey_all_in_one/static/description/color_3.png differ
diff --git a/sh_survey_all_in_one/static/description/color_4.png b/sh_survey_all_in_one/static/description/color_4.png
new file mode 100644
index 0000000..45669d1
Binary files /dev/null and b/sh_survey_all_in_one/static/description/color_4.png differ
diff --git a/sh_survey_all_in_one/static/description/config_img/1.png b/sh_survey_all_in_one/static/description/config_img/1.png
new file mode 100644
index 0000000..2fdb4cf
Binary files /dev/null and b/sh_survey_all_in_one/static/description/config_img/1.png differ
diff --git a/sh_survey_all_in_one/static/description/config_img/2.png b/sh_survey_all_in_one/static/description/config_img/2.png
new file mode 100644
index 0000000..4c4db6d
Binary files /dev/null and b/sh_survey_all_in_one/static/description/config_img/2.png differ
diff --git a/sh_survey_all_in_one/static/description/config_img/3.png b/sh_survey_all_in_one/static/description/config_img/3.png
new file mode 100644
index 0000000..7c5f00a
Binary files /dev/null and b/sh_survey_all_in_one/static/description/config_img/3.png differ
diff --git a/sh_survey_all_in_one/static/description/config_img/4.png b/sh_survey_all_in_one/static/description/config_img/4.png
new file mode 100644
index 0000000..4791db8
Binary files /dev/null and b/sh_survey_all_in_one/static/description/config_img/4.png differ
diff --git a/sh_survey_all_in_one/static/description/config_img/5.png b/sh_survey_all_in_one/static/description/config_img/5.png
new file mode 100644
index 0000000..9ddd5ec
Binary files /dev/null and b/sh_survey_all_in_one/static/description/config_img/5.png differ
diff --git a/sh_survey_all_in_one/static/description/config_img/6.png b/sh_survey_all_in_one/static/description/config_img/6.png
new file mode 100644
index 0000000..3f923e7
Binary files /dev/null and b/sh_survey_all_in_one/static/description/config_img/6.png differ
diff --git a/sh_survey_all_in_one/static/description/config_img/7.png b/sh_survey_all_in_one/static/description/config_img/7.png
new file mode 100644
index 0000000..34c4881
Binary files /dev/null and b/sh_survey_all_in_one/static/description/config_img/7.png differ
diff --git a/sh_survey_all_in_one/static/description/config_img/8.png b/sh_survey_all_in_one/static/description/config_img/8.png
new file mode 100644
index 0000000..e986d9b
Binary files /dev/null and b/sh_survey_all_in_one/static/description/config_img/8.png differ
diff --git a/sh_survey_all_in_one/static/description/config_img/9.png b/sh_survey_all_in_one/static/description/config_img/9.png
new file mode 100644
index 0000000..fca9539
Binary files /dev/null and b/sh_survey_all_in_one/static/description/config_img/9.png differ
diff --git a/sh_survey_all_in_one/static/description/config_img/Button Styles.gif b/sh_survey_all_in_one/static/description/config_img/Button Styles.gif
new file mode 100644
index 0000000..cf028a4
Binary files /dev/null and b/sh_survey_all_in_one/static/description/config_img/Button Styles.gif differ
diff --git a/sh_survey_all_in_one/static/description/config_img/Check Box Styles Survmate.gif b/sh_survey_all_in_one/static/description/config_img/Check Box Styles Survmate.gif
new file mode 100644
index 0000000..5d98ba3
Binary files /dev/null and b/sh_survey_all_in_one/static/description/config_img/Check Box Styles Survmate.gif differ
diff --git a/sh_survey_all_in_one/static/description/config_img/Grid Gif.gif b/sh_survey_all_in_one/static/description/config_img/Grid Gif.gif
new file mode 100644
index 0000000..51128be
Binary files /dev/null and b/sh_survey_all_in_one/static/description/config_img/Grid Gif.gif differ
diff --git a/sh_survey_all_in_one/static/description/config_img/Radio Buttons Suvmate.gif b/sh_survey_all_in_one/static/description/config_img/Radio Buttons Suvmate.gif
new file mode 100644
index 0000000..7c5b713
Binary files /dev/null and b/sh_survey_all_in_one/static/description/config_img/Radio Buttons Suvmate.gif differ
diff --git a/sh_survey_all_in_one/static/description/config_img/Section Style Survmate.gif b/sh_survey_all_in_one/static/description/config_img/Section Style Survmate.gif
new file mode 100644
index 0000000..d6a0f43
Binary files /dev/null and b/sh_survey_all_in_one/static/description/config_img/Section Style Survmate.gif differ
diff --git a/sh_survey_all_in_one/static/description/config_img/Survmate background Gif.gif b/sh_survey_all_in_one/static/description/config_img/Survmate background Gif.gif
new file mode 100644
index 0000000..3fe7f4b
Binary files /dev/null and b/sh_survey_all_in_one/static/description/config_img/Survmate background Gif.gif differ
diff --git a/sh_survey_all_in_one/static/description/config_img/Survmate theme styles.gif b/sh_survey_all_in_one/static/description/config_img/Survmate theme styles.gif
new file mode 100644
index 0000000..e99371a
Binary files /dev/null and b/sh_survey_all_in_one/static/description/config_img/Survmate theme styles.gif differ
diff --git a/sh_survey_all_in_one/static/description/config_img/theme_style.gif b/sh_survey_all_in_one/static/description/config_img/theme_style.gif
new file mode 100644
index 0000000..df22d9a
Binary files /dev/null and b/sh_survey_all_in_one/static/description/config_img/theme_style.gif differ
diff --git a/sh_survey_all_in_one/static/description/d1.png b/sh_survey_all_in_one/static/description/d1.png
new file mode 100644
index 0000000..b405fbf
Binary files /dev/null and b/sh_survey_all_in_one/static/description/d1.png differ
diff --git a/sh_survey_all_in_one/static/description/d2.png b/sh_survey_all_in_one/static/description/d2.png
new file mode 100644
index 0000000..f2d4965
Binary files /dev/null and b/sh_survey_all_in_one/static/description/d2.png differ
diff --git a/sh_survey_all_in_one/static/description/d3.png b/sh_survey_all_in_one/static/description/d3.png
new file mode 100644
index 0000000..13d9aa9
Binary files /dev/null and b/sh_survey_all_in_one/static/description/d3.png differ
diff --git a/sh_survey_all_in_one/static/description/d4.png b/sh_survey_all_in_one/static/description/d4.png
new file mode 100644
index 0000000..607ef77
Binary files /dev/null and b/sh_survey_all_in_one/static/description/d4.png differ
diff --git a/sh_survey_all_in_one/static/description/d5.png b/sh_survey_all_in_one/static/description/d5.png
new file mode 100644
index 0000000..5967573
Binary files /dev/null and b/sh_survey_all_in_one/static/description/d5.png differ
diff --git a/sh_survey_all_in_one/static/description/d6.png b/sh_survey_all_in_one/static/description/d6.png
new file mode 100644
index 0000000..c5b14be
Binary files /dev/null and b/sh_survey_all_in_one/static/description/d6.png differ
diff --git a/sh_survey_all_in_one/static/description/email_1.png b/sh_survey_all_in_one/static/description/email_1.png
new file mode 100644
index 0000000..0158700
Binary files /dev/null and b/sh_survey_all_in_one/static/description/email_1.png differ
diff --git a/sh_survey_all_in_one/static/description/email_2.png b/sh_survey_all_in_one/static/description/email_2.png
new file mode 100644
index 0000000..d7080e0
Binary files /dev/null and b/sh_survey_all_in_one/static/description/email_2.png differ
diff --git a/sh_survey_all_in_one/static/description/email_3.png b/sh_survey_all_in_one/static/description/email_3.png
new file mode 100644
index 0000000..daddc69
Binary files /dev/null and b/sh_survey_all_in_one/static/description/email_3.png differ
diff --git a/sh_survey_all_in_one/static/description/email_4.png b/sh_survey_all_in_one/static/description/email_4.png
new file mode 100644
index 0000000..9a0628c
Binary files /dev/null and b/sh_survey_all_in_one/static/description/email_4.png differ
diff --git a/sh_survey_all_in_one/static/description/eng.png b/sh_survey_all_in_one/static/description/eng.png
new file mode 100644
index 0000000..91ed524
Binary files /dev/null and b/sh_survey_all_in_one/static/description/eng.png differ
diff --git a/sh_survey_all_in_one/static/description/file_1.png b/sh_survey_all_in_one/static/description/file_1.png
new file mode 100644
index 0000000..8e9e72c
Binary files /dev/null and b/sh_survey_all_in_one/static/description/file_1.png differ
diff --git a/sh_survey_all_in_one/static/description/file_2.png b/sh_survey_all_in_one/static/description/file_2.png
new file mode 100644
index 0000000..abb9112
Binary files /dev/null and b/sh_survey_all_in_one/static/description/file_2.png differ
diff --git a/sh_survey_all_in_one/static/description/file_3.png b/sh_survey_all_in_one/static/description/file_3.png
new file mode 100644
index 0000000..18b2786
Binary files /dev/null and b/sh_survey_all_in_one/static/description/file_3.png differ
diff --git a/sh_survey_all_in_one/static/description/file_4.png b/sh_survey_all_in_one/static/description/file_4.png
new file mode 100644
index 0000000..52202bd
Binary files /dev/null and b/sh_survey_all_in_one/static/description/file_4.png differ
diff --git a/sh_survey_all_in_one/static/description/french.png b/sh_survey_all_in_one/static/description/french.png
new file mode 100644
index 0000000..15ac751
Binary files /dev/null and b/sh_survey_all_in_one/static/description/french.png differ
diff --git a/sh_survey_all_in_one/static/description/german.png b/sh_survey_all_in_one/static/description/german.png
new file mode 100644
index 0000000..13efbe5
Binary files /dev/null and b/sh_survey_all_in_one/static/description/german.png differ
diff --git a/sh_survey_all_in_one/static/description/heading.png b/sh_survey_all_in_one/static/description/heading.png
new file mode 100644
index 0000000..3474821
Binary files /dev/null and b/sh_survey_all_in_one/static/description/heading.png differ
diff --git a/sh_survey_all_in_one/static/description/heading1.png b/sh_survey_all_in_one/static/description/heading1.png
new file mode 100644
index 0000000..599eb07
Binary files /dev/null and b/sh_survey_all_in_one/static/description/heading1.png differ
diff --git a/sh_survey_all_in_one/static/description/icon.png b/sh_survey_all_in_one/static/description/icon.png
new file mode 100644
index 0000000..f16c901
Binary files /dev/null and b/sh_survey_all_in_one/static/description/icon.png differ
diff --git a/sh_survey_all_in_one/static/description/image/1.png b/sh_survey_all_in_one/static/description/image/1.png
new file mode 100644
index 0000000..af418a4
Binary files /dev/null and b/sh_survey_all_in_one/static/description/image/1.png differ
diff --git a/sh_survey_all_in_one/static/description/image/2.png b/sh_survey_all_in_one/static/description/image/2.png
new file mode 100644
index 0000000..7269080
Binary files /dev/null and b/sh_survey_all_in_one/static/description/image/2.png differ
diff --git a/sh_survey_all_in_one/static/description/image/3.png b/sh_survey_all_in_one/static/description/image/3.png
new file mode 100644
index 0000000..0e9575a
Binary files /dev/null and b/sh_survey_all_in_one/static/description/image/3.png differ
diff --git a/sh_survey_all_in_one/static/description/image/4.png b/sh_survey_all_in_one/static/description/image/4.png
new file mode 100644
index 0000000..55eabd7
Binary files /dev/null and b/sh_survey_all_in_one/static/description/image/4.png differ
diff --git a/sh_survey_all_in_one/static/description/image/banner.png b/sh_survey_all_in_one/static/description/image/banner.png
new file mode 100644
index 0000000..0ffd93f
Binary files /dev/null and b/sh_survey_all_in_one/static/description/image/banner.png differ
diff --git a/sh_survey_all_in_one/static/description/image/devider.png b/sh_survey_all_in_one/static/description/image/devider.png
new file mode 100644
index 0000000..724a13a
Binary files /dev/null and b/sh_survey_all_in_one/static/description/image/devider.png differ
diff --git a/sh_survey_all_in_one/static/description/image/keyfeatures_1.png b/sh_survey_all_in_one/static/description/image/keyfeatures_1.png
new file mode 100644
index 0000000..d821209
Binary files /dev/null and b/sh_survey_all_in_one/static/description/image/keyfeatures_1.png differ
diff --git a/sh_survey_all_in_one/static/description/image/keyfeatures_2.png b/sh_survey_all_in_one/static/description/image/keyfeatures_2.png
new file mode 100644
index 0000000..5ee998b
Binary files /dev/null and b/sh_survey_all_in_one/static/description/image/keyfeatures_2.png differ
diff --git a/sh_survey_all_in_one/static/description/image1.png b/sh_survey_all_in_one/static/description/image1.png
new file mode 100644
index 0000000..56b5b81
Binary files /dev/null and b/sh_survey_all_in_one/static/description/image1.png differ
diff --git a/sh_survey_all_in_one/static/description/image2.png b/sh_survey_all_in_one/static/description/image2.png
new file mode 100644
index 0000000..358649a
Binary files /dev/null and b/sh_survey_all_in_one/static/description/image2.png differ
diff --git a/sh_survey_all_in_one/static/description/image3.png b/sh_survey_all_in_one/static/description/image3.png
new file mode 100644
index 0000000..5b697df
Binary files /dev/null and b/sh_survey_all_in_one/static/description/image3.png differ
diff --git a/sh_survey_all_in_one/static/description/images/theme style 1.png b/sh_survey_all_in_one/static/description/images/theme style 1.png
new file mode 100644
index 0000000..5c16469
Binary files /dev/null and b/sh_survey_all_in_one/static/description/images/theme style 1.png differ
diff --git a/sh_survey_all_in_one/static/description/images/theme style 2.png b/sh_survey_all_in_one/static/description/images/theme style 2.png
new file mode 100644
index 0000000..92fdcbc
Binary files /dev/null and b/sh_survey_all_in_one/static/description/images/theme style 2.png differ
diff --git a/sh_survey_all_in_one/static/description/images/theme style 3.png b/sh_survey_all_in_one/static/description/images/theme style 3.png
new file mode 100644
index 0000000..362512e
Binary files /dev/null and b/sh_survey_all_in_one/static/description/images/theme style 3.png differ
diff --git a/sh_survey_all_in_one/static/description/images/theme style 4.png b/sh_survey_all_in_one/static/description/images/theme style 4.png
new file mode 100644
index 0000000..012010c
Binary files /dev/null and b/sh_survey_all_in_one/static/description/images/theme style 4.png differ
diff --git a/sh_survey_all_in_one/static/description/images/theme style 5.png b/sh_survey_all_in_one/static/description/images/theme style 5.png
new file mode 100644
index 0000000..f7b83da
Binary files /dev/null and b/sh_survey_all_in_one/static/description/images/theme style 5.png differ
diff --git a/sh_survey_all_in_one/static/description/images/theme style 6.png b/sh_survey_all_in_one/static/description/images/theme style 6.png
new file mode 100644
index 0000000..8450f3a
Binary files /dev/null and b/sh_survey_all_in_one/static/description/images/theme style 6.png differ
diff --git a/sh_survey_all_in_one/static/description/img1.png b/sh_survey_all_in_one/static/description/img1.png
new file mode 100644
index 0000000..6c7fbd5
Binary files /dev/null and b/sh_survey_all_in_one/static/description/img1.png differ
diff --git a/sh_survey_all_in_one/static/description/img2.png b/sh_survey_all_in_one/static/description/img2.png
new file mode 100644
index 0000000..3dd5dac
Binary files /dev/null and b/sh_survey_all_in_one/static/description/img2.png differ
diff --git a/sh_survey_all_in_one/static/description/img3.png b/sh_survey_all_in_one/static/description/img3.png
new file mode 100644
index 0000000..5312361
Binary files /dev/null and b/sh_survey_all_in_one/static/description/img3.png differ
diff --git a/sh_survey_all_in_one/static/description/img4.png b/sh_survey_all_in_one/static/description/img4.png
new file mode 100644
index 0000000..f80b69f
Binary files /dev/null and b/sh_survey_all_in_one/static/description/img4.png differ
diff --git a/sh_survey_all_in_one/static/description/index.html b/sh_survey_all_in_one/static/description/index.html
new file mode 100644
index 0000000..8072632
--- /dev/null
+++ b/sh_survey_all_in_one/static/description/index.html
@@ -0,0 +1,2382 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Community
+ Enterprise
+ Odoo.sh
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Email Field
+
+
+
+ File Field
+
+
+
+ URL Field
+
+
+
+ Time Field
+
+
+
+ Range Field
+
+
+
+ Week Field
+
+
+
+ Month Field
+
+
+
+ Password Field
+
+
+
+ Date Field
+
+
+
+ Color Field
+
+
+
+ Single Line Text Box With Pattern
+
+
+
+ Address Field
+
+
+
+ Signature Field
+
+
+
+ Many To Many Field
+
+
+
+ Many To One Field
+
+
+
+ Checkbox Field
+
+
+
+ Radio Button Field
+
+
+
+ Barcode Field
+
+
+
+ QRCode Field
+
+
+
+ Barcode/QRCode With Matrix
+
+
+
+ Location Field
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Hot Features
+
+
+
+
+
+ 5 Theme
+ Styles
+
+
+
+
+
+
+ 5 Section
+ Styles
+
+
+
+
+
+
+ 5 Form Input
+ Styles
+
+
+
+
+
+
+ 5 Button
+ Styles
+
+
+
+
+
+
+ 5 Check Box
+ Styles
+
+
+
+
+
+
+ 5 Radio
+ button style
+
+
+
+
+
+
+ Fully
+ Responsive
+
+
+
+
+
+
+ Fully
+ Customizable
+
+
+
+
+
+
+ Material
+ Design
+
+
+
+
+
+
+ Address For
+ Survey
+
+
+
+
+
+
+ Signature
+ For Survey
+
+
+
+
+
+
+ Document For
+ Survey
+
+
+
+
+
+
+ Many2one
+ Field
+
+
+
+
+
+
+ Many2many
+ Field
+
+
+
+
+
+
+ Email For
+ Survey
+
+
+
+
+
+
+ Color Option
+ For Survey
+
+
+
+
+
+
+ Password
+ Option For Survey
+
+
+
+
+
+
+ Range Option
+ For Survey
+
+
+
+
+
+
+ Date Option
+ For Survey
+
+
+
+
+
+
+ Month & Week
+ Option For Survey
+
+
+
+
+
+
+ Print Survey
+ Answers
+
+
+
+
+
+
+ QR Field For
+ Survey
+
+
+
+
+
+
+ Location
+ Field For Survey
+
+
+
+
+
+
+ Custom
+ Survey Matrix
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Theme Configuration
+
+
+ You can customize your survey form body with
+ different tools. There is mainly two types of theme
+ style. That you can easily customization as per
+ requirement. There are many options for customizing
+ themes. All options are briefly explained below.
+
+
+
+
+
+
+
+
+
+
+
+ Theme Styles
+
+ Here in this theme you have 5 different ready made
+ theme styles. You can also change it as per your
+ choice.
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Section Styles
+
+ You can customize your section style from the
+ configuration settings. We are providing 5 unique
+ section styles.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Form Elements Styles
+
+ You can customize your form elements style from the
+ configuration settings. We are providing 10 unique
+ form elements styles.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ CheckBox Styles
+
+ You can customize the checkbox style from the
+ configuration settings. Here we provide 10 unique
+ checkbox styles.
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Background Styles
+
+ You can customize your background style from the
+ configuration settings. You can set survey form
+ background image or color
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Bootstrap Grid
+
+ You can customize your Questions and Answers like
+ bootstrap grid system. This feature will help to
+ display your survey form more clean and attractive.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Primary Color Styles
+
+ You can set your primary and secondary color from as
+ per theme color so your survey form will look more
+ attractive.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ E-mail Field.
+
+
+
+
+
+ E-mail Field Front View.
+
+
+
+
+
+ E-mail Field in reviewing your answers(submitted answer).
+
+
+
+
+
+ E-mail Field in backed.
+
+
+
+
+
+
+
+ File Field .
+
+
+
+
+
+ File Field Front View.
+
+
+
+
+
+ File Field in reviewing your answers(submitted answer).
+
+
+
+
+
+ File Field in backed.
+
+
+
+
+
+
+
+ URL Field.
+
+
+
+
+
+ URL Field Front View.
+
+
+
+
+
+ URL Field in reviewing your answers(submitted answer).
+
+
+
+
+
+ URL Field in backed.
+
+
+
+
+
+
+
+ Time Field.
+
+
+
+
+
+ Time Field Front View.
+
+
+
+
+
+ Time Field in reviewing your answers(submitted answer).
+
+
+
+
+
+ Time Field in backed.
+
+
+
+
+
+
+
+ Range Field.
+
+
+
+
+
+ Range Field Front View.
+
+
+
+
+
+ Range Field in reviewing your answers(submitted answer).
+
+
+
+
+
+ Range Field in backed.
+
+
+
+
+
+
+
+ Week Field.
+
+
+
+
+
+ Week Field Front View.
+
+
+
+
+
+ Week Field in reviewing your answers(submitted answer).
+
+
+
+
+
+ Week Field in backed.
+
+
+
+
+
+
+
+
+ Color Field.
+
+
+
+
+
+ Color Field Front View.
+
+
+
+
+
+ Color Field in reviewing your answers(submitted answer).
+
+
+
+
+
+ Color Field in backed.
+
+
+
+
+
+
+
+
+
+ Pattern option in single-line text box Field.
+
+
+
+
+
+ A single-line text box with a pattern Front View.
+
+
+
+
+
+ A single-line text box with a pattern in reviewing your answers(submitted answer).
+
+
+
+
+
+ A single-line text box with pattern Field in backed.
+
+
+
+
+
+
+ Note : Pls kindly note that textbox pattern not migrated for v14 as of now.
+
+
+
+
+
+
+ Note : Pls kindly note that textbox pattern not migrated for v14 as of now.
+
+
+
+
+
+
+
+
+ Address option in survey form.
+
+
+
+
+
+ Address front view in survey form.
+
+
+
+
+
+
+
+ Month Filed
+
+
+
+
+
+ Month Field Front View.
+
+
+
+
+
+ Month Field in reviewing your answers(submitted answer).
+
+
+
+
+
+ Month Field in backed.
+
+
+
+
+
+
+
+
+ password filed
+
+
+
+
+
+ Password Field Front View.
+
+
+
+
+
+ Password Field in reviewing your answers(submitted answer).
+
+
+
+
+
+ Password Field in backed.
+
+
+
+
+
+
+
+
+
+
+ Signature option in survey form.
+
+
+
+
+
+ Signature front view in survey form.
+
+
+
+
+
+
+
+ Many2one Field.
+
+
+
+
+
+ Using Many2one field you can select and search state in survey.
+
+
+
+
+
+ Many2one field front view.
+
+
+
+
+
+ Many2one field graph view.
+
+
+
+
+
+ Many2one field detail view.
+
+
+
+
+
+ Many2many Field.
+
+
+
+
+
+ Using Many2many field you can select and search partners in survey.
+
+
+
+
+
+ Many2many field front view.
+
+
+
+
+
+ Many2many field graph view.
+
+
+
+
+
+ Many2many field detail view.
+
+
+
+
+
+
+
+
+ New question type added: Barcode, it scans Barcode by camera.
+
+
+
+
+
+
+ Barcode Field Front View, click that button to scan Barcode.
+
+
+
+
+
+
+ Scan Barcode code from wizard after successfully scanning it will automatically close that.
+
+
+
+
+
+
+ Barcode Field front view.
+
+
+
+
+
+
+ After press "Submit Survey" it stores Barcode in the survey, Barcode Field in backed looks like below.
+
+
+
+
+
+
+
+ New question type added: QR code, it scans QR by camera.
+
+
+
+
+
+
+ QR Field Front View, click that button to scan QR.
+
+
+
+
+
+
+ Scan QR code from wizard after successfully scanning it will automatically close that.
+
+
+
+
+
+
+ QR Field front view.
+
+
+
+
+
+
+ After press "Submit Survey" it stores QR in the survey, QR Field in backed looks like below.
+
+
+
+
+
+
+
+ Location Field in the survey.
+
+
+
+
+
+
+ Press "Allow" in the popup to access permission in the location type survey.
+
+
+
+
+
+
+ After "Allow" in the popup based on the location it automatically filled the answer.
+
+
+
+
+
+
+ After press "Submit Survey" Location Field in backed looks like below.
+
+
+
+
+
+
+
+
+
+
+ Choose
+ "Matrix"
+ in
+ the
+ question
+ type.
+
+
+
+
+
+
+ Choose
+ rows
+ and
+ columns
+ for
+ the
+ matrix.
+
+
+
+
+
+
+
+ Choose
+ a
+ matrix
+ in
+ the
+ matrix
+ type.
+
+
+
+
+
+
+ You
+ can
+ select
+ fields
+ as
+ per
+ need.
+
+
+
+
+
+
+ The
+ custom
+ matrix
+ in
+ the
+ survey
+ form.
+
+
+
+
+
+ The
+ custom
+ matrix
+ in
+ the
+ review
+ answer
+ page.
+
+
+
+
+
+ The
+ custom
+ matrix
+ in
+ the
+ answer
+ list
+ view.
+
+
+
+
+
+ The
+ question-answer
+ 1
+ form
+ view.
+
+
+
+
+
+ The
+ question-answer
+ 2
+ form
+ view.
+
+
+
+
+
+ The
+ question-answer
+ 3
+ form
+ view.
+
+
+
+
+
+ The
+ custom
+ matrix
+ in
+ the
+ print.
+
+
+
+
+
+
+
+
+
+ Barcode/QRCode fields added in the matrix.
+
+
+
+
+
+
+ QR/Barcode button in the custom matrix, click that button to scan that.
+
+
+
+
+
+Scan QRCode from wizard after successfully scanning it will automatically close that.
+
+
+
+
+
+Scanned QRCode auto-filled.
+
+
+
+
+
+QRCode answer in the survey matrix.
+
+
+
+
+
+Scan Barcode from wizard after successfully scanning it will automatically close that.
+
+
+
+
+
+Scanned Barcode auto-filled.
+
+
+
+
+
+Barcode answer in the survey matrix.
+
+
+
+
+
+Barcode/QRCode in the review answer page.
+
+
+
+
+
+Barcode/QRCode in the survey answer.
+
+
+
+
+
+
+
+ Range input in custom matrix.
+
+
+
+
+
+
+ Custom matrix with range.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Yes, this app works perfectly with Odoo Enterprise
+ (Odoo.sh & Premise) as well as Community.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ We don't give custom fields to survey analytic part
+ except many2one and many2many fields.
+
+
+
+
+
+
+
+
+
+
+
+ Please Contact Us at sales@softhealer.comto
+ request customization.
+
+
+
+
+
+
+
+
+
+
+ Yes, we provide free support for 100 days.
+
+
+
+
+
+
+
+
+
+
+ Yes, you will get free update for lifetime.
+
+
+
+
+
+
+
+
+
+
+ No, you don't need to install addition libraries.
+
+
+
+
+
+
+
+
+
+
+ Yes, You have to download module for each version
+ (13,14,15) except in version 12 or lower.
+
+
+
+
+
+
+
+
+
+ What If I purchase Module In
+ Wrong Version Can I exchange Module With Other
+ Versions?
+
+
+
+
+
+
+ No, We do not provide any kind of exchange.
+
+
+
+
+
+
+
+
+
+
+
+
+ No, this application is not compatible with odoo.com(odoo saas).
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Version 16.0.5 | Released on :
+ 05th October 2023
+
+
+
+
+ Fixed
+
+ Minor Bug Fixed.
+
+
+
+
+
+
+
+ Version 16.0.4 | Released on :
+ 14th September 2023
+
+
+
+
+ Fixed
+
+ Minor Bug Fixed.
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Version 16.0.3 | Released on :
+ 14th April 2023
+
+
+
+
+ Update
+
+ Required Field Warning Added In Signature, Many2one & Many2many Field.
+
+
+
+
+
+ Version 16.0.2 | Released on :
+ 27th December 2022
+
+
+
+
+ Fixed
+
+ Minor Bug Fixed.
+
+
+
+
+
+
+ Version 16.0.1 | Released on :
+ 28th October 2022
+
+
+
+
+ Initial
+
+ Initial Release.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Multi- Languages
+
+
+
+ We have added predefined
+ some languages(English,
+ German / Deutsch, Arabic,
+ Spanish / Espanol, French
+ / Francais, Chinese, Portuguese/Portugal) in
+ module, If you want to
+ add other language you
+ can contact us on support@softhealer.com.
+ 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 support@softhealer.com.
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Our Services
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+