[IMP] web_editor, website: display better previews over dropzones
Before this commit, some snippets did not have any or complete preview when dragging them over a dropzone. This commit covers `s_website_form`, `s_countdown`, `s_map` and `o_facebook_page`. Some elements with class `s_preview` are added to the template. These elements are removed when the snippet is dropped. Also, the class o_colored_level was added to snippets so that the previews matches the snippet dropped. For "New page templates", an `s_keep_preview` class can be added on a parent element of an `s_preview` to prevent its removal when creating the page - thereby making the snippet ready as if is had been dropped into the page. Note: `s_chart` and the "dynamic snippet" and its variants are not covered in this commit. task-3555325 (was task-2431469) Part-of: odoo/odoo#138748 Co-authored-by: Benoit Socias <bso@odoo.com>
This commit is contained in:
committed by
Romain Derie
co-authored by
Benoit Socias
parent
ea5a7077ab
commit
b993399f8a
@@ -3460,15 +3460,15 @@ var SnippetsMenu = Widget.extend({
|
||||
|
||||
var $target = $toInsert;
|
||||
|
||||
if ($target[0].classList.contains("o_snippet_drop_in_only")) {
|
||||
// If it's a "drop in only" snippet, after dropping
|
||||
// it, we modify it so that it's no longer a
|
||||
// draggable snippet but rather simple HTML code, as
|
||||
// if the element had been created with the editor.
|
||||
$target[0].classList.remove("o_snippet_drop_in_only");
|
||||
delete $target[0].dataset.snippet;
|
||||
delete $target[0].dataset.name;
|
||||
}
|
||||
if ($target[0].classList.contains("o_snippet_drop_in_only")) {
|
||||
// If it's a "drop in only" snippet, after dropping
|
||||
// it, we modify it so that it's no longer a
|
||||
// draggable snippet but rather simple HTML code, as
|
||||
// if the element had been created with the editor.
|
||||
$target[0].classList.remove("o_snippet_drop_in_only");
|
||||
delete $target[0].dataset.snippet;
|
||||
delete $target[0].dataset.name;
|
||||
}
|
||||
|
||||
this.options.wysiwyg.odooEditor.observerUnactive('dragAndDropCreateSnippet');
|
||||
await this._scrollToSnippet($target, this.$scrollable);
|
||||
|
||||
@@ -14,6 +14,11 @@ const CountdownWidget = publicWidget.Widget.extend({
|
||||
* @override
|
||||
*/
|
||||
start: function () {
|
||||
// Remove SVG previews (used to simulated canvas)
|
||||
this.$el[0].querySelectorAll('svg').forEach(el => {
|
||||
el.parentNode.remove();
|
||||
});
|
||||
|
||||
this.$wrapper = this.$('.s_countdown_canvas_wrapper');
|
||||
this.$wrapper.addClass('d-flex justify-content-center');
|
||||
this.hereBeforeTimerEnds = false;
|
||||
|
||||
@@ -41,6 +41,12 @@ options.registry.facebookPage = options.Class.extend({
|
||||
|
||||
return Promise.all(defs).then(() => this._markFbElement()).then(() => this._refreshPublicWidgets());
|
||||
},
|
||||
/**
|
||||
* @override
|
||||
*/
|
||||
onBuilt() {
|
||||
this.$target[0].querySelector('.o_facebook_page_preview')?.remove();
|
||||
},
|
||||
|
||||
//--------------------------------------------------------------------------
|
||||
// Options
|
||||
|
||||
@@ -1039,7 +1039,7 @@ overridden by modules), because:
|
||||
|
||||
<!-- Previews for blocks that normally generate part of their content upon drop -->
|
||||
<!-- Defined in website so that every theme can benefit from it -->
|
||||
<!-- Form: define the default set of form fields -->
|
||||
<!-- Form: adapt style -->
|
||||
<template id="new_page_template_s_website_form" inherit_id="s_website_form" primary="True">
|
||||
<xpath expr="//section" position="attributes">
|
||||
<attribute name="class" add="o_colored_level" separator=" "/>
|
||||
@@ -1052,96 +1052,13 @@ overridden by modules), because:
|
||||
<xpath expr="//div[hasclass('s_website_form_submit')]" position="attributes">
|
||||
<attribute name="class" add="text-end" separator=" "/>
|
||||
</xpath>
|
||||
<xpath expr="//div[hasclass('s_website_form_submit')]" position="before">
|
||||
<div data-name="Field" class="s_website_form_field mb-3 col-12 s_website_form_dnone">
|
||||
<div class="row s_col_no_resize s_col_no_bgcolor">
|
||||
<label class="col-form-label col-sm-auto s_website_form_label" style="width: 200px">
|
||||
<span class="s_website_form_label_content"></span>
|
||||
</label>
|
||||
<div class="col-sm">
|
||||
<input type="hidden" class="form-control s_website_form_input" name="email_to" value="info@yourcompany.example.com"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div data-name="Field" class="s_website_form_field mb-3 col-12 s_website_form_custom s_website_form_required" data-type="char">
|
||||
<div class="row s_col_no_resize s_col_no_bgcolor">
|
||||
<label class="col-form-label col-sm-auto s_website_form_label" style="width: 200px" for="obij2aulqyau">
|
||||
<span class="s_website_form_label_content">Your Name</span>
|
||||
<span class="s_website_form_mark"> *</span>
|
||||
</label>
|
||||
<div class="col-sm">
|
||||
<input class="form-control s_website_form_input" type="text" name="name" required="1" data-fill-with="name" id="obij2aulqyau"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div data-name="Field" class="s_website_form_field mb-3 col-12 s_website_form_custom" data-type="tel">
|
||||
<div class="row s_col_no_resize s_col_no_bgcolor">
|
||||
<label class="col-form-label col-sm-auto s_website_form_label" style="width: 200px" for="ozp7022vqhe">
|
||||
<span class="s_website_form_label_content">Phone Number</span>
|
||||
</label>
|
||||
<div class="col-sm">
|
||||
<input class="form-control s_website_form_input" type="tel" name="phone" data-fill-with="phone" id="ozp7022vqhe"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div data-name="Field" class="s_website_form_field mb-3 col-12 s_website_form_model_required" data-type="email">
|
||||
<div class="row s_col_no_resize s_col_no_bgcolor">
|
||||
<label class="col-form-label col-sm-auto s_website_form_label" style="width: 200px" for="oub62hlfgjwf">
|
||||
<span class="s_website_form_label_content">Your Email</span>
|
||||
<span class="s_website_form_mark"> *</span>
|
||||
</label>
|
||||
<div class="col-sm">
|
||||
<input class="form-control s_website_form_input" type="email" name="email_from" required="" data-fill-with="email" id="oub62hlfgjwf"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div data-name="Field" class="s_website_form_field mb-3 col-12 s_website_form_custom" data-type="char">
|
||||
<div class="row s_col_no_resize s_col_no_bgcolor">
|
||||
<label class="col-form-label col-sm-auto s_website_form_label" style="width: 200px" for="o291di1too2s">
|
||||
<span class="s_website_form_label_content">Your Company</span>
|
||||
</label>
|
||||
<div class="col-sm">
|
||||
<input class="form-control s_website_form_input" type="text" name="company" data-fill-with="commercial_company_name" id="o291di1too2s"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div data-name="Field" class="s_website_form_field mb-3 col-12 s_website_form_model_required" data-type="char">
|
||||
<div class="row s_col_no_resize s_col_no_bgcolor">
|
||||
<label class="col-form-label col-sm-auto s_website_form_label" style="width: 200px" for="oqsf4m51acj">
|
||||
<span class="s_website_form_label_content">Subject</span>
|
||||
<span class="s_website_form_mark"> *</span>
|
||||
</label>
|
||||
<div class="col-sm">
|
||||
<input class="form-control s_website_form_input" type="text" name="subject" required="" id="oqsf4m51acj"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div data-name="Field" class="s_website_form_field mb-3 col-12 s_website_form_custom s_website_form_required" data-type="text">
|
||||
<div class="row s_col_no_resize s_col_no_bgcolor">
|
||||
<label class="col-form-label col-sm-auto s_website_form_label" style="width: 200px" for="oyeqnysxh10b">
|
||||
<span class="s_website_form_label_content">Your Question</span>
|
||||
<span class="s_website_form_mark"> *</span>
|
||||
</label>
|
||||
<div class="col-sm">
|
||||
<textarea class="form-control s_website_form_input" name="description" required="1" id="oyeqnysxh10b" rows="3">
|
||||
</textarea>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</xpath>
|
||||
</template>
|
||||
|
||||
<!-- Map: define the embedded iframe -->
|
||||
<!-- Map: change height -->
|
||||
<template id="new_page_template_s_map" inherit_id="s_map" primary="True">
|
||||
<xpath expr="//section" position="attributes">
|
||||
<attribute name="class" add="o_half_screen_height" separator=" "/>
|
||||
</xpath>
|
||||
<xpath expr="//div[hasclass('s_map_color_filter')]" position="before">
|
||||
<iframe class="s_map_embedded o_not_editable o_new_page_snippet_preview"
|
||||
width="100%" height="100%" frameborder="0" scrolling="no" marginheight="0" marginwidth="0"
|
||||
src="https://maps.google.com/maps?q=250%20Executive%20Park%20Blvd%2C%20Suite%203400%20San%20Francisco%20California%20(US)%20United%20States&t=m&z=12&ie=UTF8&iwloc=&output=embed">
|
||||
</iframe>
|
||||
</xpath>
|
||||
</template>
|
||||
|
||||
<!-- Using `function` so that it is called during both module install and update -->
|
||||
|
||||
@@ -9,7 +9,20 @@
|
||||
data-progress-bar-style="surrounded" data-progress-bar-weight="thin"
|
||||
data-text-color="o-color-1" data-layout-background-color="400" data-progress-bar-color="o-color-1">
|
||||
<div class="container">
|
||||
<div class="s_countdown_canvas_wrapper text-center"/>
|
||||
<div class="s_countdown_canvas_wrapper text-center d-flex justify-content-center">
|
||||
<div class="s_countdown_canvas_flex" style="width: 25%; max-width: 175px;">
|
||||
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="175" height="175" class="w-100" viewBox="0 0 175 175"><defs></defs><g><text fill="var(--o-color-1)" stroke="none" font-family="Arial" font-size="43.75px" font-style="normal" font-weight="normal" text-decoration="normal" x="87.5" y="87.5" text-anchor="middle" dominant-baseline="central">2</text><text fill="var(--o-color-1)" stroke="none" font-family="Arial" font-size="14.583333333333334px" font-style="normal" font-weight="normal" text-decoration="normal" x="87.5" y="116.66666666666667" text-anchor="middle" dominant-baseline="central">Days</text><path fill="none" stroke="var(--o-color-1)" paint-order="fill stroke markers" d=" M 166.25 87.5 A 78.75 78.75 0 1 1 166.24996062500327 87.42125001312495" stroke-miterlimit="10" stroke-width="5" stroke-opacity="0.2" stroke-dasharray=""></path><path fill="none" stroke="var(--o-color-1)" paint-order="fill stroke markers" d=" M 87.5 8.75 A 78.75 78.75 0 0 1 146.0226550063448 34.80596474923991" stroke-miterlimit="10" stroke-width="5" stroke-dasharray=""></path></g></svg>
|
||||
</div>
|
||||
<div class="s_countdown_canvas_flex" style="width: 25%; max-width: 175px;">
|
||||
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="175" height="175" class="w-100" viewBox="0 0 175 175"><defs></defs><g><text fill="var(--o-color-1)" stroke="none" font-family="Arial" font-size="43.75px" font-style="normal" font-weight="normal" text-decoration="normal" x="87.5" y="87.5" text-anchor="middle" dominant-baseline="central">16</text><text fill="var(--o-color-1)" stroke="none" font-family="Arial" font-size="14.583333333333334px" font-style="normal" font-weight="normal" text-decoration="normal" x="87.5" y="116.66666666666667" text-anchor="middle" dominant-baseline="central">Hours</text><path fill="none" stroke="var(--o-color-1)" paint-order="fill stroke markers" d=" M 166.25 87.5 A 78.75 78.75 0 1 1 166.24996062500327 87.42125001312495" stroke-miterlimit="10" stroke-width="5" stroke-opacity="0.2" stroke-dasharray=""></path><path fill="none" stroke="var(--o-color-1)" paint-order="fill stroke markers" d=" M 87.5 8.75 A 78.75 78.75 0 1 1 19.30049945197547 126.87500000000003" stroke-miterlimit="10" stroke-width="5" stroke-dasharray=""></path></g></svg>
|
||||
</div>
|
||||
<div class="s_countdown_canvas_flex" style="width: 25%; max-width: 175px;">
|
||||
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="175" height="175" class="w-100" viewBox="0 0 175 175"><defs></defs><g><text fill="var(--o-color-1)" stroke="none" font-family="Arial" font-size="43.75px" font-style="normal" font-weight="normal" text-decoration="normal" x="87.5" y="87.5" text-anchor="middle" dominant-baseline="central">30</text><text fill="var(--o-color-1)" stroke="none" font-family="Arial" font-size="14.583333333333334px" font-style="normal" font-weight="normal" text-decoration="normal" x="87.5" y="116.66666666666667" text-anchor="middle" dominant-baseline="central">Minutes</text><path fill="none" stroke="var(--o-color-1)" paint-order="fill stroke markers" d=" M 166.25 87.5 A 78.75 78.75 0 1 1 166.24996062500327 87.42125001312495" stroke-miterlimit="10" stroke-width="5" stroke-opacity="0.2" stroke-dasharray=""></path><path fill="none" stroke="var(--o-color-1)" paint-order="fill stroke markers" d=" M 87.5 8.75 A 78.75 78.75 0 0 1 87.5 166.25" stroke-miterlimit="10" stroke-width="5" stroke-dasharray=""></path></g></svg>
|
||||
</div>
|
||||
<div class="s_countdown_canvas_flex" style="width: 25%; max-width: 175px;">
|
||||
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="175" height="175" class="w-100" viewBox="0 0 175 175"><defs></defs><g><text fill="var(--o-color-1)" stroke="none" font-family="Arial" font-size="43.75px" font-style="normal" font-weight="normal" text-decoration="normal" x="87.5" y="87.5" text-anchor="middle" dominant-baseline="central">45</text><text fill="var(--o-color-1)" stroke="none" font-family="Arial" font-size="14.583333333333334px" font-style="normal" font-weight="normal" text-decoration="normal" x="87.5" y="116.66666666666667" text-anchor="middle" dominant-baseline="central">Seconds</text><path fill="none" stroke="var(--o-color-1)" paint-order="fill stroke markers" d=" M 166.25 87.5 A 78.75 78.75 0 1 1 166.24996062500327 87.42125001312495" stroke-miterlimit="10" stroke-width="5" stroke-opacity="0.2" stroke-dasharray=""></path><path fill="none" stroke="var(--o-color-1)" paint-order="fill stroke markers" d=" M 87.5 8.75 A 78.75 78.75 0 1 1 8.75 87.50000000000001" stroke-miterlimit="10" stroke-width="5" stroke-dasharray=""></path></g></svg>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
</template>
|
||||
|
||||
@@ -3,7 +3,9 @@
|
||||
|
||||
<!-- Snippet template -->
|
||||
<template id="s_facebook_page" name="Facebook">
|
||||
<div class="o_facebook_page"/>
|
||||
<div class="o_facebook_page">
|
||||
<iframe class="mw-100 o_facebook_page_preview" src="https://www.facebook.com/plugins/page.php?height=70&hide_cover=true&href=https%3A%2F%2Fwww.facebook.com%2FOdoo&show_facepile=false&small_header=true&tabs=&width=500" style="width: 500px; height: 70px; border: medium none; overflow: hidden;"/>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<!-- Snippet options-->
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
An address must be specified for a map to be embedded
|
||||
</div>
|
||||
</div>
|
||||
<!-- GMap iframe will be injected in JS -->
|
||||
<iframe class="s_map_embedded o_not_editable" src="https://maps.google.com/maps?q=250%20Executive%20Park%20Blvd%2C%20Suite%203400%20San%20Francisco%20California%20(US)%20United%20States&t=m&z=12&ie=UTF8&iwloc=&output=embed" width="100%" height="100%" frameborder="0" scrolling="no" marginheight="0" marginwidth="0"/>
|
||||
<div class="s_map_color_filter"/>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
@@ -2,11 +2,11 @@
|
||||
<odoo>
|
||||
|
||||
<template name="Media List" id="s_media_list">
|
||||
<section class="s_media_list pt32 pb32 o_cc o_cc2" data-vcss="001">
|
||||
<section class="s_media_list pt32 pb32 o_colored_level o_cc o_cc2" data-vcss="001">
|
||||
<div class="container">
|
||||
<div class="row s_nb_column_fixed s_col_no_bgcolor">
|
||||
<div class="col-lg-12 s_media_list_item pt16 pb16" data-name="Media item">
|
||||
<div class="row s_col_no_resize s_col_no_bgcolor g-0 align-items-center o_cc o_cc1">
|
||||
<div class="row s_col_no_resize s_col_no_bgcolor g-0 align-items-center o_colored_level o_cc o_cc1">
|
||||
<div class="col-lg-4 align-self-stretch s_media_list_img_wrapper">
|
||||
<img src="/web/image/website.s_media_list_default_image_1" class="s_media_list_img h-100 w-100" alt=""/>
|
||||
</div>
|
||||
@@ -18,7 +18,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-12 s_media_list_item pt16 pb16" data-name="Media item">
|
||||
<div class="row s_col_no_resize s_col_no_bgcolor g-0 align-items-center o_cc o_cc1">
|
||||
<div class="row s_col_no_resize s_col_no_bgcolor g-0 align-items-center o_colored_level o_cc o_cc1">
|
||||
<div class="col-lg-4 align-self-stretch s_media_list_img_wrapper">
|
||||
<img src="/web/image/website.s_media_list_default_image_2" class="s_media_list_img h-100 w-100" alt=""/>
|
||||
</div>
|
||||
@@ -29,7 +29,7 @@
|
||||
</div>
|
||||
</div>
|
||||
<div class="col-lg-12 s_media_list_item pt16 pb16" data-name="Media item">
|
||||
<div class="row s_col_no_resize s_col_no_bgcolor g-0 align-items-center o_cc o_cc1">
|
||||
<div class="row s_col_no_resize s_col_no_bgcolor g-0 align-items-center o_colored_level o_cc o_cc1">
|
||||
<div class="col-lg-4 align-self-stretch s_media_list_img_wrapper">
|
||||
<img src="/web/image/website.s_media_list_default_image_3" class="s_media_list_img h-100 w-100" alt=""/>
|
||||
</div>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<odoo>
|
||||
|
||||
<template id="s_three_columns" name="Columns">
|
||||
<section class="s_three_columns o_cc o_cc2 pt32 pb32" data-vcss="001">
|
||||
<section class="s_three_columns o_cc o_cc2 pt32 pb32 o_colored_level" data-vcss="001">
|
||||
<div class="container">
|
||||
<div class="row d-flex align-items-stretch">
|
||||
<div class="col-lg-4 s_col_no_bgcolor pt16 pb16">
|
||||
|
||||
@@ -4,8 +4,83 @@
|
||||
<template id="s_website_form" name="Form">
|
||||
<section class="s_website_form pt16 pb16" data-vcss="001" data-snippet="s_website_form">
|
||||
<div class="container">
|
||||
<form action="/website/form/" method="post" enctype="multipart/form-data" class="o_mark_required" data-mark="*" data-pre-fill="true">
|
||||
<form action="/website/form/" method="post" enctype="multipart/form-data" class="o_mark_required" data-mark="*" data-pre-fill="true" data-model_name="mail.mail" data-success-mode="redirect" data-success-page="/contactus-thank-you">
|
||||
<div class="s_website_form_rows row s_col_no_bgcolor">
|
||||
<div data-name="Field" class="s_website_form_field mb-3 col-12 s_website_form_dnone">
|
||||
<div class="row s_col_no_resize s_col_no_bgcolor">
|
||||
<label class="col-form-label col-sm-auto s_website_form_label" style="width: 200px">
|
||||
<span class="s_website_form_label_content"></span>
|
||||
</label>
|
||||
<div class="col-sm">
|
||||
<input type="hidden" class="form-control s_website_form_input" name="email_to" value="info@yourcompany.example.com"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div data-name="Field" class="s_website_form_field mb-3 col-12 s_website_form_custom s_website_form_required" data-type="char">
|
||||
<div class="row s_col_no_resize s_col_no_bgcolor">
|
||||
<label class="col-form-label col-sm-auto s_website_form_label" style="width: 200px" for="obij2aulqyau">
|
||||
<span class="s_website_form_label_content">Your Name</span>
|
||||
<span class="s_website_form_mark"> *</span>
|
||||
</label>
|
||||
<div class="col-sm">
|
||||
<input class="form-control s_website_form_input" type="text" name="name" required="1" data-fill-with="name" id="obij2aulqyau"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div data-name="Field" class="s_website_form_field mb-3 col-12 s_website_form_custom" data-type="tel">
|
||||
<div class="row s_col_no_resize s_col_no_bgcolor">
|
||||
<label class="col-form-label col-sm-auto s_website_form_label" style="width: 200px" for="ozp7022vqhe">
|
||||
<span class="s_website_form_label_content">Phone Number</span>
|
||||
</label>
|
||||
<div class="col-sm">
|
||||
<input class="form-control s_website_form_input" type="tel" name="phone" data-fill-with="phone" id="ozp7022vqhe"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div data-name="Field" class="s_website_form_field mb-3 col-12 s_website_form_model_required" data-type="email">
|
||||
<div class="row s_col_no_resize s_col_no_bgcolor">
|
||||
<label class="col-form-label col-sm-auto s_website_form_label" style="width: 200px" for="oub62hlfgjwf">
|
||||
<span class="s_website_form_label_content">Your Email</span>
|
||||
<span class="s_website_form_mark"> *</span>
|
||||
</label>
|
||||
<div class="col-sm">
|
||||
<input class="form-control s_website_form_input" type="email" name="email_from" required="" data-fill-with="email" id="oub62hlfgjwf"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div data-name="Field" class="s_website_form_field mb-3 col-12 s_website_form_custom" data-type="char">
|
||||
<div class="row s_col_no_resize s_col_no_bgcolor">
|
||||
<label class="col-form-label col-sm-auto s_website_form_label" style="width: 200px" for="o291di1too2s">
|
||||
<span class="s_website_form_label_content">Your Company</span>
|
||||
</label>
|
||||
<div class="col-sm">
|
||||
<input class="form-control s_website_form_input" type="text" name="company" data-fill-with="commercial_company_name" id="o291di1too2s"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div data-name="Field" class="s_website_form_field mb-3 col-12 s_website_form_model_required" data-type="char">
|
||||
<div class="row s_col_no_resize s_col_no_bgcolor">
|
||||
<label class="col-form-label col-sm-auto s_website_form_label" style="width: 200px" for="oqsf4m51acj">
|
||||
<span class="s_website_form_label_content">Subject</span>
|
||||
<span class="s_website_form_mark"> *</span>
|
||||
</label>
|
||||
<div class="col-sm">
|
||||
<input class="form-control s_website_form_input" type="text" name="subject" required="" id="oqsf4m51acj"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div data-name="Field" class="s_website_form_field mb-3 col-12 s_website_form_custom s_website_form_required" data-type="text">
|
||||
<div class="row s_col_no_resize s_col_no_bgcolor">
|
||||
<label class="col-form-label col-sm-auto s_website_form_label" style="width: 200px" for="oyeqnysxh10b">
|
||||
<span class="s_website_form_label_content">Your Question</span>
|
||||
<span class="s_website_form_mark"> *</span>
|
||||
</label>
|
||||
<div class="col-sm">
|
||||
<textarea class="form-control s_website_form_input" name="description" required="1" id="oyeqnysxh10b" rows="3">
|
||||
</textarea>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="mb-0 py-2 col-12 s_website_form_submit" data-name="Submit Button">
|
||||
<div style="width: 200px;" class="s_website_form_label"/>
|
||||
<a href="#" role="button" class="btn btn-primary s_website_form_send">Submit</a>
|
||||
|
||||
Reference in New Issue
Block a user