diff --git a/app/views/layouts/_foot.html.erb b/app/views/layouts/_foot.html.erb index dfe319bb..f76170d7 100644 --- a/app/views/layouts/_foot.html.erb +++ b/app/views/layouts/_foot.html.erb @@ -1,15 +1,6 @@ <%= render :partial => 'layouts/lightboxes' %> <%= render :partial => 'layouts/templates' %> <%= render :partial => 'shared/metacodeBgColors' %> - <%= render :partial => 'layouts/googleanalytics' if ENV["GA_TRACKING_CODE"].present? %> diff --git a/app/views/layouts/application.html.erb b/app/views/layouts/application.html.erb index 3123e633..97d93986 100644 --- a/app/views/layouts/application.html.erb +++ b/app/views/layouts/application.html.erb @@ -7,9 +7,8 @@ <%= render :partial => 'layouts/head' %> controller-<%= controller_name %> action-<%= action_name %>"> - <%= content_tag :div, class: "main", id: "react-app" do %> - <%= yield %> - <% end %> +
+ <%= yield %> <% if devise_error_messages? %> <%= devise_error_messages! %> <% end %> @@ -29,14 +28,14 @@ <%= render :partial => 'maps/newsynapse' %> <% # for populating the change metacode list on the topic card %> <%= render :partial => 'shared/metacodeoptions' %> - <% end %> -
+ <%= render :partial => 'layouts/foot' %> diff --git a/frontend/src/Metamaps/GlobalUI/ReactApp.js b/frontend/src/Metamaps/GlobalUI/ReactApp.js index 94f5acba..cf223cf7 100644 --- a/frontend/src/Metamaps/GlobalUI/ReactApp.js +++ b/frontend/src/Metamaps/GlobalUI/ReactApp.js @@ -37,7 +37,7 @@ const ReactApp = { self.unreadNotificationsCount = serverData.unreadNotificationsCount self.mobileTitle = serverData.mobileTitle self.openLightbox = openLightbox - routes = makeRoutes() + routes = makeRoutes(serverData.ActiveMapper) self.resize() window && window.addEventListener('resize', self.resize) }, @@ -47,14 +47,17 @@ const ReactApp = { switch (this.state.location.pathname.split('/')[1]) { case '': case 'explore': + $('#yield').hide() ExploreMaps.updateFromPath(this.state.location.pathname) self.mapId = null Active.Map = null Active.Topic = null break case 'topics': + $('#yield').hide() break case 'maps': + $('#yield').hide() self.mapId = this.state.location.pathname.split('/')[2] break } diff --git a/frontend/src/Metamaps/GlobalUI/Search.js b/frontend/src/Metamaps/GlobalUI/Search.js index da279804..be4b5f3e 100644 --- a/frontend/src/Metamaps/GlobalUI/Search.js +++ b/frontend/src/Metamaps/GlobalUI/Search.js @@ -16,6 +16,7 @@ const Search = { self.userIconUrl = serverData['user.png'] // this is similar to Metamaps.Loading, but it's for the search element + if (!document.getElementById('searchLoading')) return var loader = new CanvasLoader('searchLoading') loader.setColor('#4fb5c0') // default is '#000000' loader.setDiameter(24) // default is 40 diff --git a/frontend/src/Metamaps/GlobalUI/index.js b/frontend/src/Metamaps/GlobalUI/index.js index a766140e..32a57eee 100644 --- a/frontend/src/Metamaps/GlobalUI/index.js +++ b/frontend/src/Metamaps/GlobalUI/index.js @@ -19,12 +19,13 @@ const GlobalUI = { const self = GlobalUI self.ReactApp.init(serverData, self.openLightbox) - self.Search.init(serverData) self.CreateMap.init(serverData) self.Account.init(serverData) self.ImportDialog.init(serverData, self.openLightbox, self.closeLightbox) + self.Search.init(serverData) - if ($('#toast').html().trim()) self.notifyUser($('#toast').html()) + const toastHtml = $('#toast').html() + if (toastHtml && toastHtml.trim()) self.notifyUser(toastHtml) // bind lightbox clicks $('.openLightbox').click(function(event) { diff --git a/frontend/src/Metamaps/Loading.js b/frontend/src/Metamaps/Loading.js index 50d2191b..d5365b4c 100644 --- a/frontend/src/Metamaps/Loading.js +++ b/frontend/src/Metamaps/Loading.js @@ -15,6 +15,7 @@ const Loading = { Loading.loader.setDensity(41) // default is 40 Loading.loader.setRange(0.9) // default is 1.3 Loading.loader.show() // Hidden by default + $('#loading').hide() } } diff --git a/frontend/src/components/App/index.js b/frontend/src/components/App/index.js index cea16312..fde68775 100644 --- a/frontend/src/components/App/index.js +++ b/frontend/src/components/App/index.js @@ -30,17 +30,20 @@ class App extends Component { render () { const { children, toast, currentUser, unreadNotificationsCount, openInviteLightbox, - mobile, mobileTitle, mobileTitleWidth, mobileTitleClick } = this.props + mobile, mobileTitle, mobileTitleWidth, mobileTitleClick, location } = this.props + const { pathname } = location || {} + const unauthedHome = pathname === '/' && !currentUser return
{mobile && } - + {!unauthedHome && } {!mobile && } + openInviteLightbox={openInviteLightbox} + signInPage={pathname === '/login'} />} {!mobile && currentUser && } {children} diff --git a/frontend/src/components/makeRoutes.js b/frontend/src/components/makeRoutes.js index 8564376a..83941ec0 100644 --- a/frontend/src/components/makeRoutes.js +++ b/frontend/src/components/makeRoutes.js @@ -4,9 +4,14 @@ import App from './App' import Maps from './Maps' import MapView from './MapView' -export default function makeRoutes () { +function nullComponent(props) { + return null +} + +export default function makeRoutes (currentUser) { + const homeComponent = currentUser ? Maps : nullComponent return - + @@ -15,6 +20,19 @@ export default function makeRoutes () { - + + + + + + + + + + + + + + }