2015-05-05 03:10:25 +02:00
|
|
|
<!DOCTYPE html>
|
|
|
|
<html lang="<%= I18n.locale %>" ng-app="application" class="app">
|
|
|
|
<head>
|
|
|
|
<meta charset="utf-8">
|
|
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
|
|
|
|
<meta name="description" content="">
|
2016-03-23 18:39:41 +01:00
|
|
|
<meta name="author" content="">
|
|
|
|
|
2020-05-13 15:02:03 +02:00
|
|
|
<title><%=Setting.get('fablab_name')%></title>
|
2016-03-23 18:39:41 +01:00
|
|
|
|
2019-03-26 10:40:58 +01:00
|
|
|
<link href='https://fonts.googleapis.com/css?family=Open+Sans:400,400italic,600,600italic,700,800,700italic' rel='stylesheet' type='text/css'>
|
|
|
|
<link href='https://fonts.googleapis.com/css?family=Open+Sans+Condensed:300,700,300italic' rel='stylesheet' type='text/css'>
|
|
|
|
<link href='https://fonts.googleapis.com/css?family=Loved+by+the+King' rel='stylesheet' type='text/css'>
|
2019-12-23 13:49:46 +01:00
|
|
|
<% if Rails.env.staging? && Rails.application.secrets.enable_in_context_translation %>
|
2019-12-18 16:50:16 +01:00
|
|
|
<script type="text/javascript">
|
|
|
|
var _jipt = [];
|
|
|
|
_jipt.push(['project', 'fab-manager']);
|
|
|
|
</script>
|
|
|
|
<script type="text/javascript" src="//cdn.crowdin.com/jipt/jipt.js"></script>
|
|
|
|
<% end %>
|
2019-09-04 17:20:18 +02:00
|
|
|
<script type="text/javascript" src="https://js.stripe.com/v3/"></script>
|
2016-03-23 18:39:41 +01:00
|
|
|
<script type="text/javascript">
|
|
|
|
var Fablab = Fablab || {};
|
|
|
|
|
2019-10-22 14:41:49 +02:00
|
|
|
Fablab.withoutPlans = ('<%= Rails.application.secrets.fablab_without_plans %>' === 'true');
|
2020-05-26 13:59:40 +02:00
|
|
|
Fablab.spacesModule = ('<%= Setting.get('spaces_module') %>' === 'true');
|
2019-10-22 14:41:49 +02:00
|
|
|
Fablab.withoutOnlinePayment = ('<%= Rails.application.secrets.fablab_without_online_payments %>' === 'true');
|
|
|
|
Fablab.withoutInvoices = ('<%= Rails.application.secrets.fablab_without_invoices %>' === 'true');
|
2020-02-12 18:15:44 +01:00
|
|
|
Fablab.fablabWithoutWallet = ('<%= Rails.application.secrets.fablab_without_wallet %>' === 'true');
|
2020-02-25 18:02:41 +01:00
|
|
|
Fablab.featureTourDisplay = "<%= Rails.application.secrets.feature_tour_display %>";
|
2016-03-23 18:39:41 +01:00
|
|
|
Fablab.disqusShortname = "<%= Rails.application.secrets.disqus_shortname %>";
|
2016-05-24 14:51:23 +02:00
|
|
|
Fablab.defaultHost = "<%= Rails.application.secrets.default_host %>";
|
2020-05-19 16:20:59 +02:00
|
|
|
Fablab.gaId = "<%= Setting.get('tracking_id') %>";
|
2019-03-20 16:49:38 +01:00
|
|
|
Fablab.superadminId = parseInt("<%= User.superadmin&.id %>", 10);
|
2016-03-23 18:39:41 +01:00
|
|
|
|
|
|
|
// i18n stuff
|
2017-04-27 18:35:00 +02:00
|
|
|
Fablab.locale = "<%= Rails.application.secrets.app_locale %>";
|
2016-03-23 18:39:41 +01:00
|
|
|
Fablab.moment_locale = "<%= Rails.application.secrets.moment_locale %>";
|
|
|
|
Fablab.summernote_locale = "<%= Rails.application.secrets.summernote_locale %>";
|
|
|
|
Fablab.fullcalendar_locale = "<%= Rails.application.secrets.fullcalendar_locale %>";
|
|
|
|
Fablab.timezone = "<%= Time.zone.tzinfo.name %>";
|
|
|
|
Fablab.translations = {
|
|
|
|
app: {
|
|
|
|
shared: {
|
|
|
|
buttons: <%= I18n.t('app.shared.buttons').to_json.html_safe %>,
|
|
|
|
messages: <%= I18n.t('app.shared.messages').to_json.html_safe %>
|
|
|
|
}
|
|
|
|
}
|
|
|
|
};
|
|
|
|
Fablab.weekStartingDay = <%= Date.parse(Rails.application.secrets.week_starting_day).strftime('%w') %>;
|
|
|
|
Fablab.d3DateFormat = "<%= Rails.application.secrets.d3_date_format %>";
|
2016-03-29 13:31:02 +02:00
|
|
|
Fablab.uibDateFormat = "<%= Rails.application.secrets.uib_date_format %>";
|
2016-04-22 18:17:55 +02:00
|
|
|
Fablab.openlabProjectsActive = <%= Rails.application.secrets.openlab_app_secret.present? %>;
|
2019-10-22 14:41:49 +02:00
|
|
|
Fablab.openlabDefault = ('<%= Rails.application.secrets.openlab_default %>' !== 'false');
|
2016-04-22 18:17:55 +02:00
|
|
|
<% if Rails.application.secrets.openlab_app_id.present? %>
|
|
|
|
Fablab.openlabAppId = "<%= Rails.application.secrets.openlab_app_id %>";
|
2019-09-23 17:46:46 +02:00
|
|
|
<% end %>
|
|
|
|
<% if RecaptchaService.recaptcha_enabled? %>
|
|
|
|
Fablab.recaptchaSiteKey = "<%= RecaptchaService.site_key %>";
|
2016-04-22 18:17:55 +02:00
|
|
|
<% end %>
|
2020-01-07 10:34:12 +01:00
|
|
|
Fablab.userConfirmationNeededToSignIn = ('<%= Rails.application.secrets.user_confirmation_needed_to_sign_in %>' === 'true');
|
2020-03-02 11:17:28 +01:00
|
|
|
|
|
|
|
// feature tour (used when feature_tour_display = session)
|
|
|
|
Fablab.sessionTours = [];
|
2016-03-23 18:39:41 +01:00
|
|
|
</script>
|
|
|
|
|
|
|
|
<%= stylesheet_link_tag 'application', media: 'all' %>
|
|
|
|
<%= stylesheet_link_tag 'app.printer', media: 'print' %>
|
2020-01-27 17:10:29 +01:00
|
|
|
<% unless Stylesheet.theme.nil? %>
|
|
|
|
<link rel="stylesheet" media="all" href="<%= stylesheet_path(Stylesheet.theme.id) %>-<%= Stylesheet.theme.updated_at.to_i.to_s %>.css" />
|
|
|
|
<% end %>
|
|
|
|
<% unless Stylesheet.home_page.nil? %>
|
|
|
|
<link rel="stylesheet" media="all" href="<%= stylesheet_path(Stylesheet.home_page.id) %>-<%= Stylesheet.home_page.updated_at.to_i.to_s %>.css" />
|
|
|
|
<% end %>
|
2015-05-05 03:10:25 +02:00
|
|
|
<base href="/"></base>
|
|
|
|
|
2016-04-25 17:55:37 +02:00
|
|
|
<% if CustomAsset.get_url('favicon-file') %>
|
|
|
|
<link rel="shortcut icon" type="image/x-icon" href="<%= CustomAsset.get_url('favicon-file') %>">
|
|
|
|
<link rel="shortcut icon" type="image/ico" href="<%= CustomAsset.get_url('favicon-file') %>">
|
|
|
|
<% end %>
|
2015-05-05 03:10:25 +02:00
|
|
|
|
2016-09-29 11:54:08 +02:00
|
|
|
<!-- RSS -->
|
2019-12-19 12:06:45 +01:00
|
|
|
<link rel="alternate" type="application/rss+xml" title="RSS: <%= t('app.public.projects_list.the_fablab_projects') %>" href="<%= rss_projects_path %>.xml">
|
2016-09-29 11:54:08 +02:00
|
|
|
<link rel="alternate" type="application/rss+xml" title="RSS: <%= t('app.public.events_list.the_fablab_s_events') %>" href="<%= rss_events_path %>.xml">
|
2015-05-05 03:10:25 +02:00
|
|
|
|
|
|
|
<!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media queries -->
|
|
|
|
<!--[if lt IE 9]>
|
|
|
|
<script src="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js"></script>
|
|
|
|
<script src="https://oss.maxcdn.com/libs/respond.js/1.4.2/respond.min.js"></script>
|
|
|
|
<![endif]-->
|
|
|
|
</head>
|
|
|
|
|
2020-02-18 17:36:45 +01:00
|
|
|
<body ng-controller="ApplicationController"
|
|
|
|
ng-init="setCurrentUser(<%= current_user ? current_user.to_json : 'null' %>)"
|
2020-03-02 11:40:00 +01:00
|
|
|
ng-cloak>
|
2016-03-23 18:39:41 +01:00
|
|
|
<div growl></div>
|
2015-05-05 03:10:25 +02:00
|
|
|
|
2016-03-23 18:39:41 +01:00
|
|
|
<%= flash_messages %>
|
2015-05-05 03:10:25 +02:00
|
|
|
|
2016-03-23 18:39:41 +01:00
|
|
|
<section class="vbox">
|
2015-05-05 03:10:25 +02:00
|
|
|
|
2016-03-23 18:39:41 +01:00
|
|
|
<header class="header header-md navbar navbar-fixed-top-xs">
|
|
|
|
<div ui-view="header"></div>
|
|
|
|
</header>
|
2015-05-05 03:10:25 +02:00
|
|
|
|
2016-03-23 18:39:41 +01:00
|
|
|
<section ui-view="content">
|
|
|
|
<section class="hbox stretch">
|
|
|
|
<aside id="nav" class="aside-md bg-red hidden-print" ui-view="leftnav"></aside>
|
2015-05-05 03:10:25 +02:00
|
|
|
|
2016-03-23 18:39:41 +01:00
|
|
|
<section id="content">
|
|
|
|
<section class="vbox">
|
2019-06-13 11:28:55 +02:00
|
|
|
<section id="cookies-modal" ui-view="cookies">
|
|
|
|
</section>
|
2019-06-13 12:52:56 +02:00
|
|
|
<section id="content-main" class="scrollable" ui-view="main">
|
|
|
|
</section>
|
2015-05-05 03:10:25 +02:00
|
|
|
</section>
|
|
|
|
</section>
|
|
|
|
|
2016-03-23 18:39:41 +01:00
|
|
|
</section> <!-- /.hbox -->
|
|
|
|
</section>
|
|
|
|
|
|
|
|
</section> <!-- /.vbox -->
|
2015-05-05 03:10:25 +02:00
|
|
|
|
2016-09-22 16:46:14 +02:00
|
|
|
<div class="app-generator">
|
2020-01-14 17:39:13 +01:00
|
|
|
<span class="app-version" uib-tooltip="{{'app.public.common.version' | translate}} {{version.current}}" ng-if="currentUser && currentUser.role == 'admin'" ng-click="versionModal()">
|
2020-01-14 17:12:36 +01:00
|
|
|
<i class="fa fa-question-circle" aria-label="Version ?" ng-show="version.up_to_date"></i>
|
2020-05-13 16:02:54 +02:00
|
|
|
<i class="fa fa-refresh text-info pointer" aria-label="Upgrade required" ng-show="!version.up_to_date && !version.security"></i>
|
|
|
|
<i class="fa fa-warning text-danger pointer" aria-label="Security upgrade required" ng-show="!version.up_to_date && version.security"></i>
|
2016-09-22 16:46:14 +02:00
|
|
|
</span>
|
2020-03-02 08:59:43 +01:00
|
|
|
<span class="text-sm">Powered by <a href="http://www.fab-manager.com" target="_blank">Fab-manager</a></span>
|
2016-09-22 16:46:14 +02:00
|
|
|
</div>
|
2015-05-05 03:10:25 +02:00
|
|
|
|
|
|
|
<%= javascript_include_tag 'application' %>
|
|
|
|
|
2016-03-23 18:39:41 +01:00
|
|
|
<!-- i18n of external libraries -->
|
|
|
|
<script type="text/javascript" src="<%= asset_path "angular-i18n/angular-locale_#{Rails.application.secrets.angular_locale}.js" %>"></script>
|
2016-03-24 11:03:26 +01:00
|
|
|
<!-- if required locale does not exist, use the default "en" -->
|
2020-04-01 12:51:46 +02:00
|
|
|
<% if asset_available?("moment/locale/#{Rails.application.secrets.moment_locale}.js") %>
|
2016-03-23 18:39:41 +01:00
|
|
|
<script type="text/javascript" src="<%= asset_path "moment/locale/#{Rails.application.secrets.moment_locale}.js" %>"></script>
|
2016-03-24 11:03:26 +01:00
|
|
|
<%
|
|
|
|
elsif Rails.application.secrets.moment_locale != 'en'
|
|
|
|
raise LoadError, "moment/locale/#{Rails.application.secrets.moment_locale}.js does not exists"
|
|
|
|
end
|
|
|
|
%>
|
|
|
|
<!-- if required locale does not exist, use the default "en-US" -->
|
2020-04-01 12:51:46 +02:00
|
|
|
<% if asset_available?("summernote/lang/summernote-#{Rails.application.secrets.summernote_locale}.js") %>
|
2016-03-23 18:39:41 +01:00
|
|
|
<script type="text/javascript" src="<%= asset_path "summernote/lang/summernote-#{Rails.application.secrets.summernote_locale}.js" %>"></script>
|
2016-03-24 11:03:26 +01:00
|
|
|
<%
|
|
|
|
elsif Rails.application.secrets.summernote_locale != 'en-US'
|
|
|
|
raise LoadError, "summernote/lang/summernote-#{Rails.application.secrets.summernote_locale}.js does not exists"
|
|
|
|
end
|
|
|
|
%>
|
|
|
|
<!-- if required locale does not exist, use the default "en" -->
|
2020-04-01 12:51:46 +02:00
|
|
|
<% if asset_available?("fullcalendar/dist/lang/#{Rails.application.secrets.fullcalendar_locale}.js") %>
|
2016-03-23 18:39:41 +01:00
|
|
|
<script type="text/javascript" src="<%= asset_path "fullcalendar/dist/lang/#{Rails.application.secrets.fullcalendar_locale}.js" %>"></script>
|
2016-03-24 11:03:26 +01:00
|
|
|
<%
|
|
|
|
elsif Rails.application.secrets.fullcalendar_locale != 'en'
|
|
|
|
raise LoadError, "fullcalendar/dist/lang/#{Rails.application.secrets.fullcalendar_locale}.js does not exists"
|
|
|
|
end
|
|
|
|
%>
|
2015-05-05 03:10:25 +02:00
|
|
|
</body>
|
|
|
|
</html>
|