@@ -25,6 +25,7 @@ import { AddPageDialog } from "@website/components/dialog/add_page_dialog";
25
25
import { ResourceEditor } from "@website/components/resource_editor/resource_editor" ;
26
26
import { isHTTPSorNakedDomainRedirection } from "./utils" ;
27
27
import { WebsiteSystrayItem } from "./website_systray_item" ;
28
+ import { renderToElement } from "@web/core/utils/render" ;
28
29
29
30
export class WebsiteBuilder extends Component {
30
31
static template = "html_builder.WebsiteBuilder" ;
@@ -73,7 +74,13 @@ export class WebsiteBuilder extends Component {
73
74
useSubEnv ( {
74
75
localOverlayContainerKey : uniqueId ( "website" ) ,
75
76
} ) ;
76
-
77
+ useEffect (
78
+ ( ) => {
79
+ this . addWelcomeMessage ( ) ;
80
+ return ( ) => this . welcomeMessageEl ?. remove ( ) ;
81
+ } ,
82
+ ( ) => [ this . state . isEditing ]
83
+ ) ;
77
84
this . websitePreviewRef = useRef ( "website_preview" ) ;
78
85
79
86
onWillStart ( async ( ) => {
@@ -402,6 +409,19 @@ export class WebsiteBuilder extends Component {
402
409
) ;
403
410
}
404
411
412
+ async addWelcomeMessage ( ) {
413
+ await this . iframeLoaded ;
414
+ if ( this . websiteService . isRestrictedEditor && ! this . state . isEditing ) {
415
+ const wrapEl = this . websiteContent . el . contentDocument . querySelector (
416
+ "#wrapwrap.homepage #wrap"
417
+ ) ;
418
+ if ( wrapEl && ! wrapEl . innerHTML . trim ( ) ) {
419
+ this . welcomeMessageEl = renderToElement ( "website.homepage_editor_welcome_message" ) ;
420
+ wrapEl . replaceChildren ( this . welcomeMessageEl ) ;
421
+ }
422
+ }
423
+ }
424
+
405
425
setIframeLoaded ( ) {
406
426
this . iframeLoaded = new Promise ( ( resolve ) => {
407
427
this . resolveIframeLoaded = ( ) => {
0 commit comments