diff --git a/client/layout/masterbar/logged-in.jsx b/client/layout/masterbar/logged-in.jsx index 92b45114d24c0..31e11006fa264 100644 --- a/client/layout/masterbar/logged-in.jsx +++ b/client/layout/masterbar/logged-in.jsx @@ -28,7 +28,9 @@ import isNotificationsOpen from 'calypso/state/selectors/is-notifications-open'; import isAtomicSite from 'calypso/state/selectors/is-site-automated-transfer'; import isSiteMigrationActiveRoute from 'calypso/state/selectors/is-site-migration-active-route'; import isSiteMigrationInProgress from 'calypso/state/selectors/is-site-migration-in-progress'; +import getIsUnlaunchedSite from 'calypso/state/selectors/is-unlaunched-site'; import { updateSiteMigrationMeta } from 'calypso/state/sites/actions'; +import { launchSiteOrRedirectToLaunchSignupFlow } from 'calypso/state/sites/launch/actions'; import { isTrialExpired } from 'calypso/state/sites/plans/selectors/trials/trials-expiration'; import { getSiteSlug, @@ -412,6 +414,23 @@ class MasterbarLoggedIn extends Component { ); } + renderLaunchButton() { + const { isUnlaunchedSite, siteId, translate } = this.props; + + if ( ! isUnlaunchedSite ) { + return null; + } + + return ( + this.props.launchSiteOrRedirectToLaunchSignupFlow( siteId ) } + > + { translate( 'Launch site' ) } + + ); + } + renderProfileMenu() { const { translate, user } = this.props; const profileActions = [ @@ -600,6 +619,7 @@ class MasterbarLoggedIn extends Component { { this.renderSiteMenu() } { this.renderSiteActionMenu() } { this.renderLanguageSwitcher() } + { this.renderLaunchButton() }
{ this.renderCart() } @@ -655,6 +675,7 @@ export default connect( isSiteTrialExpired: isTrialExpired( state, siteId ), newPostUrl: getEditorUrl( state, siteId, null, 'post' ), newPageUrl: getEditorUrl( state, siteId, null, 'page' ), + isUnlaunchedSite: getIsUnlaunchedSite( state, siteId ), }; }, { @@ -664,5 +685,6 @@ export default connect( activateNextLayoutFocus, savePreference, redirectToLogout, + launchSiteOrRedirectToLaunchSignupFlow, } )( localize( MasterbarLoggedIn ) ); diff --git a/client/layout/masterbar/style.scss b/client/layout/masterbar/style.scss index 8790008273a6f..52ac1201b3be6 100644 --- a/client/layout/masterbar/style.scss +++ b/client/layout/masterbar/style.scss @@ -652,6 +652,11 @@ body.is-mobile-app-view { } } +.masterbar__item-launch-site { + cursor: pointer; + background-color: var(--wp-admin-theme-color); +} + .masterbar__item-logo { flex: 0 0 auto; padding: 0 0 0 8px;