mirror of
https://github.com/overleaf/overleaf.git
synced 2024-11-21 20:47:08 -05:00
commit
ba5b3bb06a
7 changed files with 221 additions and 11 deletions
|
@ -11,18 +11,25 @@ html(itemscope, itemtype='http://schema.org/Product')
|
||||||
|
|
||||||
-if (typeof(gaExperiments) != "undefined")
|
-if (typeof(gaExperiments) != "undefined")
|
||||||
|!{gaExperiments}
|
|!{gaExperiments}
|
||||||
|
|
||||||
|
|
||||||
|
//- Title
|
||||||
-if (typeof(title) == "undefined")
|
-if (typeof(title) == "undefined")
|
||||||
title= settings.appName + ', '+ translate("online_latex_editor")
|
title= settings.appName + ', '+ translate("online_latex_editor")
|
||||||
|
meta(name="twitter:title", content=settings.appName + ', '+ translate("online_latex_editor"))
|
||||||
|
meta(name="og:title", content=settings.appName + ', '+ translate("online_latex_editor"))
|
||||||
-else
|
-else
|
||||||
title= translate(title) + ' - ' + settings.appName + ', ' + translate("online_latex_editor")
|
title= translate(title) + ' - ' + settings.appName + ', ' + translate("online_latex_editor")
|
||||||
|
//- to do - not translate?
|
||||||
|
meta(name="twitter:title", content=translate(title))
|
||||||
|
meta(name="og:title", content=translate(title))
|
||||||
|
|
||||||
|
//- Icons
|
||||||
link(rel="icon", href="/" + settings.brandPrefix + "favicon.ico")
|
link(rel="icon", href="/" + settings.brandPrefix + "favicon.ico")
|
||||||
link(rel="icon", sizes="192x192", href="/" + settings.brandPrefix + "touch-icon-192x192.png")
|
link(rel="icon", sizes="192x192", href="/" + settings.brandPrefix + "touch-icon-192x192.png")
|
||||||
link(rel="apple-touch-icon-precomposed", href="/" + settings.brandPrefix + "apple-touch-icon-precomposed.png")
|
link(rel="apple-touch-icon-precomposed", href="/" + settings.brandPrefix + "apple-touch-icon-precomposed.png")
|
||||||
link(rel="mask-icon", href="/" + settings.brandPrefix + "mask-favicon.svg", color=settings.brandPrefix === 'ol-' ? "#4f9c45" : "#a93529")
|
link(rel="mask-icon", href="/" + settings.brandPrefix + "mask-favicon.svg", color=settings.brandPrefix === 'ol-' ? "#4f9c45" : "#a93529")
|
||||||
|
|
||||||
|
//- Stylesheet
|
||||||
link(rel='stylesheet', href=buildCssPath("/" + settings.brandPrefix + "style.css", {hashedPath:true}))
|
link(rel='stylesheet', href=buildCssPath("/" + settings.brandPrefix + "style.css", {hashedPath:true}))
|
||||||
|
|
||||||
block _headLinks
|
block _headLinks
|
||||||
|
@ -34,14 +41,46 @@ html(itemscope, itemtype='http://schema.org/Product')
|
||||||
|
|
||||||
|
|
||||||
meta(itemprop="name", content=settings.appName + ", the Online LaTeX Editor")
|
meta(itemprop="name", content=settings.appName + ", the Online LaTeX Editor")
|
||||||
|
|
||||||
|
//- Description
|
||||||
-if (typeof(meta) == "undefined")
|
-if (typeof(meta) == "undefined")
|
||||||
meta(itemprop="description", name="description", content=translate("site_description"))
|
meta(itemprop="description", name="description", content=translate("site_description"))
|
||||||
-else
|
-else
|
||||||
meta(itemprop="description", name="description" , content=meta)
|
meta(itemprop="description", name="description" , content=meta)
|
||||||
|
|
||||||
meta(itemprop="image", name="image", content="/" + settings.brandPrefix + "favicon.ico")
|
|
||||||
|
|
||||||
|
-if (typeof(metaImage) == "undefined")
|
||||||
|
meta(itemprop="image", name="image", content="/" + settings.brandPrefix + "favicon.ico")
|
||||||
|
-else
|
||||||
|
meta(itemprop="image", name="image", content=metaImage.fields.file.url)
|
||||||
|
|
||||||
|
//- Meta Tags: Twitter
|
||||||
|
-if (typeof(settings.social.twitter.handle) != "undefined")
|
||||||
|
meta(name="twitter:site", content=settings.social.twitter.handle)
|
||||||
|
meta(name="twitter:card", content=metaTwitterCard ? metaTwitterCard : 'summary')
|
||||||
|
-if (typeof(metaTwitterDescription) != "undefined")
|
||||||
|
meta(itemprop="twitter:description", content=metaTwitterDescription)
|
||||||
|
-if (typeof(metaTwitterImage) != "undefined")
|
||||||
|
meta(itemprop="image", name="image", content=metaTwitterImage.fields.file.url)
|
||||||
|
-else if (typeof(metaImage) != "undefined")
|
||||||
|
meta(itemprop="image", name="image", content=metaImage.fields.file.url)
|
||||||
|
|
||||||
|
//- Meta Tags: Open Graph
|
||||||
|
-if (typeof(settings.social.facebook.appId) != "undefined")
|
||||||
|
meta(name="fb:app_id", content=settings.social.facebook.appId)
|
||||||
|
-if (typeof(metaOpenGraphDescription) != "undefined")
|
||||||
|
meta(itemprop="og:description", content=metaOpenGraphDescription)
|
||||||
|
-if (typeof(metaOpenGraphImage) != "undefined")
|
||||||
|
meta(itemprop="image", name="image", content=metaOpenGraphImage.fields.file.url)
|
||||||
|
-else if (typeof(metaImage) != "undefined")
|
||||||
|
meta(itemprop="image", name="image", content=metaImage.fields.file.url)
|
||||||
|
-if (typeof(metaOgType) != "undefined")
|
||||||
|
meta(name="og:type", metaOgType)
|
||||||
|
-else
|
||||||
|
meta(name="og:type", content="website")
|
||||||
|
|
||||||
|
//- Scripts
|
||||||
|
|
||||||
|
//- Google Analytics
|
||||||
- if (typeof(gaToken) != "undefined")
|
- if (typeof(gaToken) != "undefined")
|
||||||
script(type='text/javascript').
|
script(type='text/javascript').
|
||||||
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
|
||||||
|
@ -53,10 +92,10 @@ html(itemscope, itemtype='http://schema.org/Product')
|
||||||
- else
|
- else
|
||||||
script(type='text/javascript').
|
script(type='text/javascript').
|
||||||
window.ga = function() { console.log("would send to GA", arguments) };
|
window.ga = function() { console.log("would send to GA", arguments) };
|
||||||
|
|
||||||
script(type="text/javascript").
|
script(type="text/javascript").
|
||||||
window.csrfToken = "#{csrfToken}";
|
window.csrfToken = "#{csrfToken}";
|
||||||
|
|
||||||
script(src=buildJsPath("libs/jquery-1.11.1.min.js"))
|
script(src=buildJsPath("libs/jquery-1.11.1.min.js"))
|
||||||
script(type="text/javascript").
|
script(type="text/javascript").
|
||||||
var noCdnKey = "nocdn=true"
|
var noCdnKey = "nocdn=true"
|
||||||
|
@ -152,4 +191,3 @@ html(itemscope, itemtype='http://schema.org/Product')
|
||||||
include sentry
|
include sentry
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -36,6 +36,7 @@
|
||||||
"bufferedstream": "1.6.0",
|
"bufferedstream": "1.6.0",
|
||||||
"codemirror": "^5.33.0",
|
"codemirror": "^5.33.0",
|
||||||
"connect-redis": "^3.1.0",
|
"connect-redis": "^3.1.0",
|
||||||
|
"contentful": "^6.1.1",
|
||||||
"cookie": "^0.2.3",
|
"cookie": "^0.2.3",
|
||||||
"cookie-parser": "1.3.5",
|
"cookie-parser": "1.3.5",
|
||||||
"csurf": "^1.8.3",
|
"csurf": "^1.8.3",
|
||||||
|
|
33
services/web/public/stylesheets/app/about.less
Normal file
33
services/web/public/stylesheets/app/about.less
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
/*
|
||||||
|
v2
|
||||||
|
About Page
|
||||||
|
*/
|
||||||
|
.team {
|
||||||
|
list-style: none;
|
||||||
|
padding: 0;
|
||||||
|
.team-member {
|
||||||
|
display: block;
|
||||||
|
float: left;
|
||||||
|
margin-bottom: @margin-lg;
|
||||||
|
width: 100%;
|
||||||
|
h3 {
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
.team-pic {
|
||||||
|
float: left;
|
||||||
|
margin-right: @margin-sm;
|
||||||
|
}
|
||||||
|
.team-info {
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
.team-connect {
|
||||||
|
list-style: none;
|
||||||
|
margin-top: @margin-sm;
|
||||||
|
padding: 0;
|
||||||
|
li {
|
||||||
|
display: inline-block;
|
||||||
|
margin: 0 @margin-md 0 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
41
services/web/public/stylesheets/app/blog-posts.less
Normal file
41
services/web/public/stylesheets/app/blog-posts.less
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
/*
|
||||||
|
v2
|
||||||
|
Blog Pages
|
||||||
|
*/
|
||||||
|
.blog {
|
||||||
|
img {
|
||||||
|
max-width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.blog-list {
|
||||||
|
list-style: none;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0;
|
||||||
|
li {
|
||||||
|
margin: 0 0 @margin-lg 0;
|
||||||
|
}
|
||||||
|
.card-header {
|
||||||
|
margin-bottom: @margin-sm;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
p {
|
||||||
|
margin-top: 12.5px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.tags {
|
||||||
|
margin-top: @margin-md;
|
||||||
|
.tags-list {
|
||||||
|
list-style: none;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
li {
|
||||||
|
display: inline-block;
|
||||||
|
margin: 0;
|
||||||
|
padding: 0 @margin-sm 0 0;
|
||||||
|
}
|
||||||
|
a {
|
||||||
|
font-size: small;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
88
services/web/public/stylesheets/app/cms-page.less
Normal file
88
services/web/public/stylesheets/app/cms-page.less
Normal file
|
@ -0,0 +1,88 @@
|
||||||
|
/*
|
||||||
|
v2
|
||||||
|
CMS Generated Pages,
|
||||||
|
including About and Blog
|
||||||
|
*/
|
||||||
|
.cms-page {
|
||||||
|
.contact-btn-description {
|
||||||
|
margin-right: @margin-sm;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tab-content {
|
||||||
|
float: left;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
When on preview mode
|
||||||
|
*/
|
||||||
|
.cms-preview {
|
||||||
|
background-color: @blue;
|
||||||
|
color: black;
|
||||||
|
font-weight: bold;
|
||||||
|
height: @navbar-padding-vertical;
|
||||||
|
left: 0;
|
||||||
|
line-height: @navbar-padding-vertical;
|
||||||
|
opacity: 0.8;
|
||||||
|
position: fixed;
|
||||||
|
text-align: center;
|
||||||
|
top: 0;
|
||||||
|
width: 100%;
|
||||||
|
z-index: 1;
|
||||||
|
&:after {
|
||||||
|
content: 'Preview';
|
||||||
|
width: 100%;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
All content from CMS is in .row-spaced.
|
||||||
|
Margin below is to fix extra whitespace for first rows
|
||||||
|
*/
|
||||||
|
.container > .row:nth-child(2) {
|
||||||
|
//- first child is page header, don't correct margin
|
||||||
|
margin-top: 0;
|
||||||
|
}
|
||||||
|
.tab-pane {
|
||||||
|
.row:first-child {
|
||||||
|
margin-top: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
quotes
|
||||||
|
*/
|
||||||
|
blockquote {
|
||||||
|
/*
|
||||||
|
type.less sets <p> inline, so that quotation mark is inline
|
||||||
|
but sometimes we have multiple <p>,
|
||||||
|
so hide quotation mark from type.less and add one here
|
||||||
|
*/
|
||||||
|
&:before {
|
||||||
|
/* hide quotation from type.less */
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
p {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
p:first-child {
|
||||||
|
/* below copied from type.less */
|
||||||
|
&:before {
|
||||||
|
content: open-quote;
|
||||||
|
font-size: @blockquote-font-size * 3;
|
||||||
|
color: @blockquote-border-color;
|
||||||
|
margin-right: 0.25em;
|
||||||
|
vertical-align: -0.4em;
|
||||||
|
line-height: 0.1em;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.quote-full-width {
|
||||||
|
img {
|
||||||
|
margin-right: @margin-sm;
|
||||||
|
margin-bottom: @margin-sm;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -62,6 +62,10 @@
|
||||||
//
|
//
|
||||||
//## Define common padding and border radius sizes and more. Values based on 14px text and 1.428 line-height (~20px to start).
|
//## Define common padding and border radius sizes and more. Values based on 14px text and 1.428 line-height (~20px to start).
|
||||||
|
|
||||||
|
@margin-sm: 10px;
|
||||||
|
@margin-md: 20px;
|
||||||
|
@margin-lg: 30px;
|
||||||
|
|
||||||
@padding-base-vertical: 5px;
|
@padding-base-vertical: 5px;
|
||||||
@padding-base-horizontal: 16px;
|
@padding-base-horizontal: 16px;
|
||||||
|
|
||||||
|
|
|
@ -5,4 +5,9 @@
|
||||||
@import "core/ol-variables.less";
|
@import "core/ol-variables.less";
|
||||||
@import "app/ol-style-guide.less";
|
@import "app/ol-style-guide.less";
|
||||||
@import "_style_includes.less";
|
@import "_style_includes.less";
|
||||||
@import "_ol_style_includes.less";
|
@import "_ol_style_includes.less";
|
||||||
|
|
||||||
|
// Pages
|
||||||
|
@import "app/about.less";
|
||||||
|
@import "app/blog-posts.less";
|
||||||
|
@import "app/cms-page.less";
|
Loading…
Reference in a new issue