standalone_app_frameset.html
1 <!DOCTYPE html>
2 <html lang="<#if user_context_language?? && user_context_language?has_content>${user_context_language}</#if>">
3 <head>
4 <base href="${base_url}">
5 <title>#i18n{portal.site.standalone_app.applicationsList.pageTitle}</title>
6 <meta http-equiv="x-ua-compatible" content="IE=edge,chrome=1" >
7 <meta charset="UTF-8">
8 <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
9 <meta http-equiv="Content-Language" content="<#if user_context_language?? && user_context_language?has_content>${user_context_language}</#if>">
10 <meta name="author" content="">
11 <meta name="copyright" content="">
12 <meta name="keywords" content="">
13 <meta name="description" content="">
14 <meta name="generator" content="Lutece">
15 <#if dskey('theme.site_property.robotIndex.checkbox')?number = 0>
16 <!-- ========================================================== -->
17 <!-- Robots noindex -->
18 <!-- ========================================================== -->
19 <meta name="robots" content="noindex" data-test="${dskey('theme.site_property.robotIndex.checkbox')}">
20 <meta name="googlebot" content="noindex">
21 </#if>
22 <!-- Set the viewport width to device width for mobile -->
23 <meta name="viewport" content="width=device-width, initial-scale=1.0">
24 <!-- Le style -->
25 <#if plugin_theme?? ><#assign thetheme=plugin_theme /><#else><#assign thetheme=theme /></#if>
26 <#if themeCSSLinks?? >
27 <@themeCSSLinks />
28 <#else>
29 <link href="${thetheme.pathCss}/bootstrap.min.css" rel="stylesheet">
30 <!-- Theme CSS include -->
31 <link href="${thetheme.pathCss}/theme-parisfr.min.css" rel="stylesheet">
32 <!-- Plugins CSS includes -->
33 <link href="js/jquery/plugins/toastr/toastr.min.css" rel="stylesheet">
34 </#if>
35 <!-- Custom site styles include -->
36 <link href="${thetheme.pathCss}/page_template_styles.css" rel="stylesheet">
37 ${plugins_css_links}
38 <!-- Custom site styles include -->
39 <#assign optHeaderCss=.get_optional_template('theme_frameset_header_css.html')>
40 <#if optHeaderCss.exists><@optHeaderCss.include /></#if>
41 <link rel="apple-touch-icon" sizes="180x180" href="./apple-touch-icon.png">
42 <link rel="icon" type="image/png" sizes="32x32" href="./favicon-32x32.png">
43 <link rel="icon" type="image/png" sizes="16x16" href="./favicon-16x16.png">
44 <link rel="manifest" href="./site.webmanifest">
45 <link rel="mask-icon" href="./safari-pinned-tab.svg" color="#071f32">
46 <meta name="msapplication-TileColor" content="#ffffff">
47 <meta name="theme-color" content="#ffffff">
48 ${rss?default("<!-- no RSS feed -->")}
49 <!-- Site JS Include -->
50 <#-- Template to add js to header in page_frameset.html theme template -->
51 <!-- Included JS Files -->
52 <#assign optHeaderJs=.get_optional_template('theme_frameset_header_js.html')>
53 <#if optHeaderJs.exists><@optHeaderJs.include /></#if>
54 </head>
55 <body id="body-page"<#if lutece_user??> class="logged"</#if> data-bs-target-icon="${isTargetDefaultIconShown!'false'}" data-bs-theme="<#if isDark?? && isDark?boolean>dark<#else>light</#if>"<#if isLayoutFluid?? && isLayoutFluid?boolean> data-layout="fluid"</#if>>
56 <!-- Accessibility Skip Nav Menu-->
57 <@skipNav />
58
59 <!-- main container -->
60 <#assign optMainContentHeader=.get_optional_template('theme_frameset_content_header.html')>
61 <#if optMainContentHeader.exists><@optMainContentHeader.include /></#if>
62 ${page_content}
63 <#if display_last_modified?? && display_last_modified><@cText class='text-right pt-3 pe-5'><@parisIcon name='clock' title='' class='main-danger-color' /> #i18n{portal.site.site_property.page.lastModified} ${last_modified!}</@cText></#if>
64 <#assign optMainContentFooter=.get_optional_template('theme_frameset_content_footer.html')>
65 <#if optMainContentFooter.exists><@optMainContentFooter.include /></#if>
66 </main>
67 <!-- Footer -->
68
69 <!-- Le javascript
70 ================================================== -->
71 <!-- Placed at the end of the document so the pages load faster -->
72 <!-- Theme JS includes -->
73 <#-- Template to add js to footer in page_frameset.html theme template -->
74 <#if themeJSLinks?? >
75 <@themeJSLinks />
76 <#else>
77 <script src="themes/skin/parisfr/js/vendor/js/bootstrap.bundle.min.js"></script>
78 </#if>
79 <#-- Plugins JS includes -->
80 ${plugins_javascript_links!}
81 <!-- Theme - Base JS init -->
82 <script>
83 var longMenu=${dskey('theme.site_property.menu.longMenu.checkbox')!};
84 var xssChars='${dskey("theme.site_property.xss.xssChars")!}';
85 var xssMsg='${dskey("theme.site_property.xss.xssMsg")!}';
86 </script>
87 <#if dskey('theme.site_property.bannerBrowserWarning.checkbox')?number = 1>
88 <!-- Browser detection and warning old browser -->
89 <script src="themes/skin/parisfr/js/vendor/es5.js"></script>
90 <script>
91 window.addEventListener( "load", function() {
92 const browser = bowser.getParser(window.navigator.userAgent);
93 const browserName=browser['parsedResult']['browser']['name'];
94 const browserVer=browser['parsedResult']['browser']['version'];
95 const isValidBrowser = browser.satisfies({
96 // declare browsers per OS
97 windows: {
98 "internet explorer": ">11",
99 "edge" : ">=80",
100 },
101 macos: {
102 safari: ">=6"
103 },
104 ios: {
105 safari: ">=6"
106 },
107 // or in general
108 chrome: ">=80",
109 firefox: ">=52",
110 opera: ">=22",
111 });
112 if ( !isValidBrowser ){
113 toastr.options = {
114 "closeButton": true,
115 "debug": false,
116 "newestOnTop": false,
117 "progressBar": false,
118 "positionClass": "toast-top-full-width browser-warning",
119 "preventDuplicates": true,
120 "onclick": null,
121 "showDuration": "300",
122 "hideDuration": "1000",
123 "timeOut": "0",
124 "extendedTimeOut": "0",
125 "showEasing": "swing",
126 "hideEasing": "linear",
127 "showMethod": "fadeIn",
128 "hideMethod": "fadeOut"
129 }
130 const urlMessage='<p class="mt-3"><a class="btn btn-primary" target="_blank" href="https://browsehappy.com/?locale=fr">#i18n{theme.toast.msg.updateBrowser}</a></p>';
131 toastr["warning"]("#i18n{theme.toast.msg.ContentBrowser}" + urlMessage, "#i18n{theme.toast.msg.titleBrowser}" + browserName + ' ' + browserVer );
132 }
133 });
134 </script>
135 </#if>
136 <#assign optJsFooter=.get_optional_template('theme_frameset_footer_js.html')>
137 <#if optJsFooter.exists><@optJsFooter.include /></#if>
138 <#if lutece_user??>
139 <#assign optUserFooter=.get_optional_template('theme_frameset_footer_user.html')>
140 <#if optUserFooter.exists><@optUserFooter.include /></#if>
141 </#if>
142 <script src="js/site.js"></script>
143 <#if addGoToTop?? && addGoToTop?boolean><@cGoToTop /></#if>
144 </body>
145 </html>