X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/f233795c54fbfd3b0481e5bce0914a9192e2b8ff..0eb72b526bf8bbb011551ecf019f604e17a534f1:/apps/workbench/app/views/layouts/application.html.erb diff --git a/apps/workbench/app/views/layouts/application.html.erb b/apps/workbench/app/views/layouts/application.html.erb index 5ec45ef340..71b1cd1598 100644 --- a/apps/workbench/app/views/layouts/application.html.erb +++ b/apps/workbench/app/views/layouts/application.html.erb @@ -1,5 +1,9 @@ +<%# Copyright (C) The Arvados Authors. All rights reserved. + +SPDX-License-Identifier: AGPL-3.0 %> + - + @@ -18,11 +22,29 @@ <meta name="arv-websocket-url" content="<%=$arvados_api_client.discovery[:websocketUrl]%>?api_token=<%=Thread.current[:arvados_api_token]%>"> <% end %> <meta name="robots" content="NOINDEX, NOFOLLOW"> + + <%# Feature #5645: Add open graph meta tags to generate this page's + social graph that search engines can use. http://ogp.me/ %> + <meta property="og:type" content="article" /> + <meta property="og:url" content="<%= request.url %>" /> + <meta property="og:site_name" content="<%= Rails.configuration.site_name %>" /> + <% if @object %> + <% if @object.respond_to?(:name) and @object.name.present? %> + <meta property="og:title" content="<%= @object.name%>" /> + <% end %> + <% if (@object.respond_to?(:description) rescue nil) and @object.description.present? %> + <meta property="og:description" content="<%= @object.description%>" /> + <% end %> + <% end %> + <%# Done adding open graph meta tags %> + <%= stylesheet_link_tag "application", :media => "all" %> <%= javascript_include_tag "application" %> <%= csrf_meta_tags %> <%= yield :head %> <%= javascript_tag do %> + angular.module('Arvados').value('arvadosApiToken', '<%=Thread.current[:arvados_api_token]%>'); + angular.module('Arvados').value('arvadosDiscoveryUri', '<%= Rails.configuration.arvados_v1_base.sub '/arvados/v1', '/discovery/v1/apis/arvados/v1/rest' %>'); <%= yield :js %> <% end %> <style> @@ -35,187 +57,18 @@ @media (max-width: 979px) { body { padding-top: 0; } } @media (max-width: 767px) { - .breadcrumbs { - display: none; - } + .breadcrumbs { + padding-top: 0; + } } </style> <link href="//netdna.bootstrapcdn.com/font-awesome/4.1.0/css/font-awesome.css" rel="stylesheet"> + <%= piwik_tracking_tag if (PiwikAnalytics.configuration.url != 'localhost' rescue false) %> </head> <body> - <div id="wrapper" class="container-fluid"> - <nav class="navbar navbar-default navbar-fixed-top" role="navigation"> - <div class="navbar-header"> - <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse"> - <span class="sr-only">Toggle navigation</span> - <span class="icon-bar"></span> - <span class="icon-bar"></span> - <span class="icon-bar"></span> - </button> - <a class="navbar-brand" href="/"><%= Rails.configuration.site_name.downcase rescue Rails.application.class.parent_name %></a> - </div> - - <div class="collapse navbar-collapse"> - <ul class="nav navbar-nav navbar-right"> - - <li> - <a><i class="rotating loading glyphicon glyphicon-refresh"></i></a> - </li> - - <% if current_user %> - <!-- XXX placeholder for this when search is implemented - <li> - <form class="navbar-form" role="search"> - <div class="input-group" style="width: 220px"> - <input type="text" class="form-control" placeholder="search"> - <span class="input-group-addon"><span class="glyphicon glyphicon-search"></span></span> - </div> - </form> - </li> - --> - - <% if current_user %> - <li class="dropdown notification-menu"> - <a href="#" class="dropdown-toggle" data-toggle="dropdown" id="notifications-menu"> - <span class="badge badge-alert notification-count"><%= @notification_count %></span> - <%= current_user.email %> - </a> - <ul class="dropdown-menu" role="menu"> - <% if current_user.is_active %> - <li role="presentation"><a href="/authorized_keys" role="menuitem"><i class="fa fa-key fa-fw"></i> Manage ssh keys</a></li> - <li role="presentation"><a href="/api_client_authorizations" role="menuitem"><i class="fa fa-ticket fa-fw"></i> Manage API tokens</a></li> - <li role="presentation" class="divider"></li> - <% end %> - <li role="presentation"><a href="<%= logout_path %>" role="menuitem"><i class="fa fa-sign-out fa-fw"></i> Log out</a></li> - <% if current_user.is_active and - (@notifications || []).length > 0 %> - <li role="presentation" class="divider"></li> - <% @notifications.each_with_index do |n, i| %> - <% if i > 0 %><li class="divider"></li><% end %> - <li class="notification"><%= n.call(self) %></li> - <% end %> - <% end %> - </ul> - </li> - <% end %> - - <li class="dropdown selection-menu"> - <a href="#" class="dropdown-toggle" data-toggle="dropdown"> - <span class="fa fa-lg fa-paperclip"></span> - <span class="badge" id="persistent-selection-count"></span> - </a> - <ul class="dropdown-menu" role="menu" id="persistent-selection-list"> - <%= form_tag '/actions' do %> - <%= hidden_field_tag 'uuid', @object.andand.uuid %> - <div id="selection-form-content"></div> - <% end %> - </ul> - </li> - - <% if current_user.is_active %> - <li class="dropdown"> - <a href="#" class="dropdown-toggle" data-toggle="dropdown" id="system-menu"> - <span class="fa fa-lg fa-gear"></span> - </a> - <ul class="dropdown-menu" role="menu"> - <li role="presentation" class="dropdown-header"> - System tools - </li> - <li role="presentation"><a href="/repositories"> - <i class="fa fa-lg fa-code-fork fa-fw"></i> Repositories - </a></li> - <li role="presentation"><a href="/virtual_machines"> - <i class="fa fa-lg fa-terminal fa-fw"></i> Virtual machines - </a></li> - <li role="presentation"><a href="/links"> - <i class="fa fa-lg fa-arrows-h fa-fw"></i> Links - </a></li> - <% if current_user.andand.is_admin %> - <li role="presentation"><a href="/users"> - <i class="fa fa-lg fa-user fa-fw"></i> Users - </a></li> - <% end %> - <li role="presentation"><a href="/groups"> - <i class="fa fa-lg fa-users fa-fw"></i> Groups - </a></li> - <li role="presentation"><a href="/nodes"> - <i class="fa fa-lg fa-cloud fa-fw"></i> Compute nodes - </a></li> - <li role="presentation"><a href="/keep_services"> - <i class="fa fa-lg fa-exchange fa-fw"></i> Keep services - </a></li> - <li role="presentation"><a href="/keep_disks"> - <i class="fa fa-lg fa-hdd-o fa-fw"></i> Keep disks - </a></li> - </ul> - </li> - <% end %> - <% else %> - <li><a href="<%= arvados_api_client.arvados_login_url(return_to: root_url) %>">Log in</a></li> - <% end %> - </ul> - </div><!-- /.navbar-collapse --> - </nav> - - <% if current_user.andand.is_active %> - <nav class="navbar navbar-default breadcrumbs" role="navigation"> - <ul class="nav navbar-nav navbar-left"> - <li class="dropdown"> - <a href="#" class="dropdown-toggle" data-toggle="dropdown" id="projects-menu"> - <i class="fa fa-lg fa-fw fa-home"></i> - Projects - <span class="caret"></span> - </a> - <ul class="dropdown-menu" role="menu"> - <li role="presentation" class="dropdown-header"> - <%= link_to projects_path('project[owner_uuid]' => current_project_uuid), method: 'post', class: 'btn btn-xs btn-default pull-right' do %> - <i class="fa fa-plus"></i> New project - <% end %> - My projects - </li> - <% my_project_tree.each do |pnode| %> - <% next if pnode[:object].class != Group %> - <li style="padding-left: <%= pnode[:depth]-1 %>em"> - <%= link_to(pnode[:object].name, project_path(pnode[:object].uuid)) %> - </li> - <% end %> - <li class="divider"> - <li role="presentation" class="dropdown-header"> - Projects shared with me - </li> - <% shared_project_tree.each do |pnode| %> - <% next if pnode[:object].class != Group %> - <li style="padding-left: <%= pnode[:depth]-1 %>em"> - <%= link_to project_path(pnode[:object].uuid) do %> - <i class="fa fa-fw fa-share-alt" style="color:#aaa"></i> <%= pnode[:object].name %> - <% end %> - </li> - <% end %> - </ul> - </li> - <% project_breadcrumbs.each do |p| %> - <li class="nav-separator"> - <i class="fa fa-lg fa-angle-double-right"></i> - </li> - <li> - <%= link_to(p.name, project_path(p.uuid), data: {object_uuid: p.uuid, name: 'name'}) %> - </li> - <% end %> - </ul> - </nav> - <% end %> - - <div id="page-wrapper"> - <%= yield %> - </div> - </div> - - <%= yield :footer_html %> - <%= piwik_tracking_tag %> - <%= javascript_tag do %> - <%= yield :footer_js %> - <% end %> - -<div class="modal-container"></div> +<%= render template: 'layouts/body' %> +<%= javascript_tag do %> +<%= yield :footer_js %> +<% end %> </body> </html>