Fix blinks and separate project tag and project type.

This commit is contained in:
Alexander Nozik 2021-03-26 21:04:29 +03:00
parent 10ffaf2a21
commit bb3bc967d8
63 changed files with 285 additions and 283 deletions

View File

@ -3,7 +3,6 @@ module.exports = {
title: `MIPT-NPM laboratory`, title: `MIPT-NPM laboratory`,
description: `Nuclear Physics Methods Laboratory`, description: `Nuclear Physics Methods Laboratory`,
}, },
plugins: [ plugins: [
{ {
resolve: 'gatsby-source-filesystem', resolve: 'gatsby-source-filesystem',

View File

@ -26,7 +26,7 @@ exports.createPages = async ({actions, graphql}) => {
const result = await graphql(` const result = await graphql(`
{ {
courses: allMarkdownRemark( courses: allMarkdownRemark(
filter: {frontmatter: {content_type: {eq: "page_education"}, published: {eq: true}}} filter: {frontmatter: {content_type: {eq: "page_education"}, published: {ne: false}}}
){ ){
edges{ edges{
node{ node{
@ -40,7 +40,7 @@ exports.createPages = async ({actions, graphql}) => {
} }
news: allMarkdownRemark( news: allMarkdownRemark(
filter: {frontmatter: {content_type: {eq: "post"}, published: {eq: true}}}, filter: {frontmatter: {content_type: {eq: "post"}, published: {ne: false}}},
sort: {fields: [frontmatter___date], order: DESC} sort: {fields: [frontmatter___date], order: DESC}
) { ) {
edges{ edges{

View File

@ -2,9 +2,8 @@
"name": "npm-site", "name": "npm-site",
"private": true, "private": true,
"description": "Nuclear Physics Methods laboratory", "description": "Nuclear Physics Methods laboratory",
"version": "0.1.0", "version": "0.2.0",
"dependencies": { "dependencies": {
"@types/bootstrap": "5.0.9",
"bootstrap": "4.6.0", "bootstrap": "4.6.0",
"gatsby": "3.1.1", "gatsby": "3.1.1",
"gatsby-awesome-pagination": "0.3.6", "gatsby-awesome-pagination": "0.3.6",

View File

@ -1,6 +1,6 @@
import React from "react" import React from "react"
import PropTypes from "prop-types" import PropTypes from "prop-types"
import {injectIntl, useIntl} from "gatsby-plugin-react-intl" import {injectIntl, useIntl} from "react-intl"
import Navbar from "./navBar" import Navbar from "./navBar"
import Footer from "./footer" import Footer from "./footer"
@ -15,8 +15,8 @@ const Layout = ({children}) => {
const lang = intl.locale; const lang = intl.locale;
return ( return (
<> <>
<Navbar/>
<SEO lang={lang} title={intl.formatMessage({id: "title"})}/> <SEO lang={lang} title={intl.formatMessage({id: "title"})}/>
<Navbar/>
<div className="container"> <div className="container">
<main>{children}</main> <main>{children}</main>
</div> </div>

View File

@ -2,54 +2,62 @@ import React from "react"
import {Link} from "gatsby" import {Link} from "gatsby"
import {globalHistory as history} from '@reach/router' import {globalHistory as history} from '@reach/router'
import {FormattedMessage, injectIntl, useIntl} from "gatsby-plugin-react-intl" import {FormattedMessage, injectIntl, useIntl} from "react-intl"
import {Container, Nav, Navbar} from "react-bootstrap" import {Container, Nav, Navbar} from "react-bootstrap"
import Language from "./language" import Language from "./language"
import SEO from "./seo"
import "../styles/navbar.css" import "../styles/navbar.css"
import logo from "../images/index/logo_white.png" import logo from "../images/index/logo_white.png"
const CustomNavbar = () => { const CustomNavbar = () => {
const {location} = history; const intl = useIntl();
let active = ["", "", "", ""] const {location} = history;
active[0] = location.pathname.includes('/news/') ? 'active' : "link-no-style"; //let active = ["", "", "", ""]
active[1] = location.pathname.includes('/about/') ? 'active' : "link-no-style"; // active[0] = location.pathname.includes('/news/') ? 'active' : "link-no-style";
active[2] = location.pathname.includes('/projects/') ? 'active' : "link-no-style"; // active[1] = location.pathname.includes('/about/') ? 'active' : "link-no-style";
active[3] = location.pathname.includes('/partners/') ? 'active' : "link-no-style"; // active[2] = location.pathname.includes('/projects/') ? 'active' : "link-no-style";
// active[3] = location.pathname.includes('/partners/') ? 'active' : "link-no-style";
let activeBrand = location.pathname === "/ru/" || location.pathname === "/en/" ? 'activeBrand' : "link-no-style"; let activeBrand = location.pathname === "/ru/" || location.pathname === "/en/" ? 'activeBrand' : "link-no-style";
const intl = useIntl();
const lang = intl.locale;
return ( return (
<> <>
<SEO lang={lang} title={intl.formatMessage({id: "title"})}/> <Navbar bg="dark" expand="lg" id="site-navbar" fixed="top" variant="dark">
<Navbar bg="dark" expand="lg" id="site-navbar" fixed="top">
<Container> <Container>
<Link to="/" className={activeBrand}> <Link to={"/" + intl.locale + "/"} className={activeBrand}>
<Navbar.Brand as="span"><img src={logo} height="50px" alt="npm logo" id="logo"/></Navbar.Brand> <Navbar.Brand as="span"><img src={logo} height="50px" alt="npm logo" id="logo"/></Navbar.Brand>
</Link> </Link>
<Navbar.Toggle aria-controls="basic-navbar-nav"/> <Navbar.Toggle aria-controls="basic-navbar-nav"/>
<Navbar.Collapse id="basic-navbar-nav"> <Navbar.Collapse id="basic-navbar-nav">
<Nav className="mr-auto" activeKey={location.pathname}> <Nav className="mr-auto" activeKey={location.pathname}>
<Link to="/news" className={active[0]}> {/* news */} <Link to={`/${intl.locale}/news`} className="nav-item" activeClassName="active"
partiallyActive={true}>
{/* news */}
<Nav.Link as="span" eventKey="news"><FormattedMessage id="header.news"/></Nav.Link> <Nav.Link as="span" eventKey="news"><FormattedMessage id="header.news"/></Nav.Link>
</Link> </Link>
<Link to="/about" className={active[1]}> {/* about */} <Link to={`/${intl.locale}/about`} className="nav-item" activeClassName="active"
<Nav.Link as="span" eventKey="about"><FormattedMessage id="header.group"/></Nav.Link> partiallyActive={true}>
{/* about */}
<Nav.Link as="span" eventKey="about"><FormattedMessage
id="header.group"/></Nav.Link>
</Link> </Link>
<Link to="/projects/physics" className={active[2]}> <Link to={`/${intl.locale}/projects/physics`} className="nav-item" activeClassName="active"
<Nav.Link as="span" eventKey="projects"><FormattedMessage partiallyActive={true}>
id="header.projects"/></Nav.Link> {/* projects */}
<Nav.Link as="span" eventKey="projects">
<FormattedMessage id="header.projects"/>
</Nav.Link>
</Link> </Link>
<Link to="/partners" className={active[3]}> {/* partners */} <Link to={`/${intl.locale}/partners`} className="nav-item" activeClassName="active"
partiallyActive={true}>
{/* partners */}
<Nav.Link as="span" eventKey="partners"><FormattedMessage <Nav.Link as="span" eventKey="partners"><FormattedMessage
id="header.partners"/></Nav.Link> id="header.partners"/></Nav.Link>
</Link> </Link>
<Link> <Nav.Link eventKey="language" className="language">
<Nav.Link eventKey="language" className="language"><Language/></Nav.Link> <Language/>
</Link> </Nav.Link>
</Nav> </Nav>
</Navbar.Collapse> </Navbar.Collapse>
</Container> </Container>

View File

@ -0,0 +1,41 @@
import {Link} from "gatsby-plugin-react-intl";
import {FormattedMessage} from "react-intl";
import React from "react";
export default function ProjectsNavbar({project_type}) {
function navClasses(nav) {
if (project_type === nav) {
return "nav-link active"
} else {
return "nav-link"
}
}
return (
<>
<ul className="nav nav-tabs">
<li className="nav-item">
<Link id="project_physics" className={navClasses("physics")} to="/projects/physics">
<FormattedMessage id="physics.bc_title"/>
</Link>
</li>
<li className="nav-item">
<Link id="project_education" className={navClasses("education")} to="/projects/education">
<FormattedMessage id="education.bc_title"/>
</Link>
</li>
<li className="nav-item">
<Link id="project_math" className={navClasses("math")} to="/projects/math">
<FormattedMessage id="math.bc_title"/>
</Link>
</li>
<li className="nav-item">
<Link id="project_software" className={navClasses("software")} to="/projects/software">
<FormattedMessage id="software.bc_title"/>
</Link>
</li>
</ul>
</>
)
}

View File

@ -1,5 +1,5 @@
import React from "react" import React from "react"
import {injectIntl} from "gatsby-plugin-react-intl" import {injectIntl} from "react-intl"
import SEO from "./seo" import SEO from "./seo"
const Redirect = ({intl}) => { const Redirect = ({intl}) => {

View File

@ -55,7 +55,7 @@ export default injectIntl(NewsTemplate)
export const query = graphql` export const query = graphql`
query NewsQuery($limit: Int!, $skip: Int!) { query NewsQuery($limit: Int!, $skip: Int!) {
ru_news: allMarkdownRemark( ru_news: allMarkdownRemark(
filter: {frontmatter: {content_type: {eq: "post"}, published: {eq: true}, language: {eq: "ru"}}}, filter: {frontmatter: {content_type: {eq: "post"}, published: {ne: false}, language: {eq: "ru"}}},
sort: {fields: [frontmatter___date], order: DESC}, sort: {fields: [frontmatter___date], order: DESC},
limit: $limit limit: $limit
skip: $skip skip: $skip
@ -73,7 +73,7 @@ export const query = graphql`
} }
en_news: allMarkdownRemark( en_news: allMarkdownRemark(
filter: {frontmatter: {content_type: {eq: "post"}, published: {eq: true}, language: {eq: "en"}}}, filter: {frontmatter: {content_type: {eq: "post"}, published: {ne: false}, language: {eq: "en"}}},
sort: {fields: [frontmatter___date], order: DESC}, sort: {fields: [frontmatter___date], order: DESC},
limit: $limit limit: $limit
skip: $skip skip: $skip

View File

@ -0,0 +1,62 @@
import React from "react"
import {FormattedMessage} from "react-intl"
import {Link} from "gatsby-plugin-react-intl"
import Parser from "html-react-parser"
import ProjectsNavbar from "../projectsNavbar";
export default function Projects({projects, project_type}) {
return (
<>
<ProjectsNavbar project_type={project_type}/>
<h1 style={{marginTop: `20px`}}><FormattedMessage id={project_type + ".title"}/></h1>
<p style={{marginBottom: `5px`}}><FormattedMessage id={project_type + ".description"}/></p>
<ul>
{projects.map(({node}) => {
const link = node.frontmatter.shortTitle;
const id = node.frontmatter.id;
return (
<li><Link to={`/projects/${project_type}#${id}`}>{link}</Link></li>
)
})}
</ul>
{projects.map(({node}) => {
const title = node.frontmatter.title;
const id = node.frontmatter.id;
return (
<div className="row" id={id}>
<div className="col-lg-12">
<hr/>
<h2 id={id}>{title}</h2>
<div>{Parser(node.html)}</div>
</div>
</div>
)
})}
{/* {posts.map(({node}) => {
const title = node.frontmatter.title;
const id = node.frontmatter.id;
const courseName = node.frontmatter.courseName;
return (
<div className="row" id={id}>
<div className="col-lg-12">
<hr/>
<h2 id={id}>{title}</h2>
<div>{Parser(node.html)}</div>
<div className="card" style={{backgroundColor: `#F5F5F5`}}>
<div className="card-body" style={{padding: `10px`}}>
<p style={{textAlign: `center`, margin: `5px`}}>
<FormattedMessage id={`${project_type}.course1`}/><Link
to={`/pages/${courseName}`}><FormattedMessage id="education.course2"/></Link>
</p>
</div>
</div>
</div>
</div>
)
})}*/}
</>
)
}

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_education content_type: project
project_type: education
id: analysis id: analysis
shortTitle: Data analysis course shortTitle: Data analysis course
title: Statistical methods in experimental physics title: Statistical methods in experimental physics

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_education content_type: project
project_type: education
id: atom id: atom
shortTitle: Lecture series on the history of the atomic project shortTitle: Lecture series on the history of the atomic project
title: History of atomic project title: History of atomic project

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_education content_type: project
project_type: education
id: kotlin id: kotlin
shortTitle: Scientific programming shortTitle: Scientific programming
title: Introduction to Kotlin scientific programming title: Introduction to Kotlin scientific programming

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_education content_type: project
project_type: education
id: labs id: labs
shortTitle: Laboratory works shortTitle: Laboratory works
title: Laboratory work at the department of general physics title: Laboratory work at the department of general physics

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_education content_type: project
project_type: education
id: lowbackground id: lowbackground
shortTitle: Low background experiment course shortTitle: Low background experiment course
title: Low background subterranean laboratory experiments course title: Low background subterranean laboratory experiments course

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_math content_type: project
project_type: math
id: deconvolution id: deconvolution
shortTitle: Inverse problems shortTitle: Inverse problems
title: Statistical regularization of incorrect inverse problems title: Statistical regularization of incorrect inverse problems

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_math content_type: project
project_type: math
id: significance id: significance
shortTitle: Significance functions shortTitle: Significance functions
title: Optimal experiment planning with parameter significance functions title: Optimal experiment planning with parameter significance functions

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_physics content_type: project
project_type: physics
id: gerda id: gerda
shortTitle: GERDA shortTitle: GERDA
title: International experiment GERDA title: International experiment GERDA

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_physics content_type: project
project_type: physics
id: iaxo id: iaxo
shortTitle: IAXO shortTitle: IAXO
title: International collaboration IAXO title: International collaboration IAXO

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_physics content_type: project
project_type: physics
id: mounMonitor id: mounMonitor
shortTitle: Muon monitor shortTitle: Muon monitor
title: Muon monitor for subterranean low-background experiments title: Muon monitor for subterranean low-background experiments

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_physics content_type: project
project_type: physics
id: numass id: numass
shortTitle: Troitsk nu-mass shortTitle: Troitsk nu-mass
title: Neutrino mass search facility Troitsk nu-mass title: Neutrino mass search facility Troitsk nu-mass

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_physics content_type: project
project_type: physics
id: satelite id: satelite
shortTitle: Satellite detector shortTitle: Satellite detector
title: Satellite detector of solar radiation title: Satellite detector of solar radiation

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_physics content_type: project
project_type: physics
id: spectMatter id: spectMatter
shortTitle: Spectator matter shortTitle: Spectator matter
title: Spectator matter title: Spectator matter

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_physics content_type: project
project_type: physics
id: atmosphere id: atmosphere
shortTitle: TGE/TGF shortTitle: TGE/TGF
title: Studying TGE and TGF title: Studying TGE and TGF

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_software content_type: project
project_type: software
id: biref id: biref
shortTitle: Birefringence shortTitle: Birefringence
title: Data analysis in laboratory work on birefringence title: Data analysis in laboratory work on birefringence

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_software content_type: project
project_type: software
id: dataforge id: dataforge
shortTitle: DataForge shortTitle: DataForge
title: DataForge, an automated data processing system title: DataForge, an automated data processing system

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_software content_type: project
project_type: software
id: dataforge id: dataforge
shortTitle: Kmath shortTitle: Kmath
title: Experimental Kotlin math library title: Experimental Kotlin math library

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_software content_type: project
project_type: software
id: muon-sim id: muon-sim
shortTitle: Modeling Muon Monitor shortTitle: Modeling Muon Monitor
title: Muon Monitor experiment data analysis model title: Muon Monitor experiment data analysis model

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_software content_type: project
project_type: software
id: plotly id: plotly
shortTitle: Plotly.kt shortTitle: Plotly.kt
title: Plotly.kt wrapper library for kotlin-multiplatform title: Plotly.kt wrapper library for kotlin-multiplatform

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_software content_type: project
project_type: software
id: prog-seminar id: prog-seminar
shortTitle: Programming workshop shortTitle: Programming workshop
title: Programming in experimental physics title: Programming in experimental physics

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_software content_type: project
project_type: software
id: reactor id: reactor
shortTitle: RL-TGE modeling shortTitle: RL-TGE modeling
title: Macro modeling for a reactor model in atmospheric physics title: Macro modeling for a reactor model in atmospheric physics

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_education content_type: project
project_type: education
id: analysis id: analysis
shortTitle: Курс по анализу данных shortTitle: Курс по анализу данных
title: Статистические методы в экспериментальной физике title: Статистические методы в экспериментальной физике

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_education content_type: project
project_type: education
id: atom id: atom
shortTitle: Цикл лекций по истории атомного проекта shortTitle: Цикл лекций по истории атомного проекта
title: История атомного проекта title: История атомного проекта

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_education content_type: project
project_type: education
id: kotlin id: kotlin
shortTitle: Научное программирование shortTitle: Научное программирование
title: Введение в научное программирование на языке Kotlin title: Введение в научное программирование на языке Kotlin

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_education content_type: project
project_type: education
id: labs id: labs
shortTitle: Лабораторные работы shortTitle: Лабораторные работы
title: Лабораторные работы на кафедре общей физики title: Лабораторные работы на кафедре общей физики

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_education content_type: project
project_type: education
id: lowbackground id: lowbackground
shortTitle: Курс по низкофоновым экспериментам shortTitle: Курс по низкофоновым экспериментам
title: Курс по экспериментам, проводимым в низкофоновых подземных лабораториях title: Курс по экспериментам, проводимым в низкофоновых подземных лабораториях

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_math content_type: project
project_type: math
id: deconvolution id: deconvolution
shortTitle: Обратные задачи shortTitle: Обратные задачи
title: Статистическая регуляризация некорректных обратных задач title: Статистическая регуляризация некорректных обратных задач

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_math content_type: project
project_type: math
id: significance id: significance
shortTitle: Функции значимости shortTitle: Функции значимости
title: Оптимальное планирование эксперимента при помощи функций значимости параметров title: Оптимальное планирование эксперимента при помощи функций значимости параметров

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_physics content_type: project
project_type: physics
id: gerda id: gerda
shortTitle: GERDA shortTitle: GERDA
title: Международный эксперимент GERDA title: Международный эксперимент GERDA

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_physics content_type: project
project_type: physics
id: iaxo id: iaxo
shortTitle: IAXO shortTitle: IAXO
title: Международная коллаборация IAXO title: Международная коллаборация IAXO

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_physics content_type: project
project_type: physics
id: mounMonitor id: mounMonitor
shortTitle: Мюонный монитор shortTitle: Мюонный монитор
title: Мюонный монитор для подземных низкофоновых экспериментов title: Мюонный монитор для подземных низкофоновых экспериментов

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_physics content_type: project
project_type: physics
id: numass id: numass
shortTitle: Троицк ню-масс shortTitle: Троицк ню-масс
title: Установка по поиску массы нейтрино Троицк ню-масс title: Установка по поиску массы нейтрино Троицк ню-масс

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_physics content_type: project
project_type: physics
id: satelite id: satelite
shortTitle: Спутниковый детектор shortTitle: Спутниковый детектор
title: Спутниковый детектор солнечного излучения title: Спутниковый детектор солнечного излучения

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_physics content_type: project
project_type: physics
id: spectMatter id: spectMatter
shortTitle: Спектаторная материя shortTitle: Спектаторная материя
title: Спектаторная материя title: Спектаторная материя

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_physics content_type: project
project_type: physics
id: atmosphere id: atmosphere
shortTitle: TGE/TGF shortTitle: TGE/TGF
title: Изучение TGE и TGF title: Изучение TGE и TGF

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_software content_type: project
project_type: software
id: biref id: biref
shortTitle: Двулучепреломление shortTitle: Двулучепреломление
title: Анализ данных в лабораторной работе по двулучепреломлению title: Анализ данных в лабораторной работе по двулучепреломлению

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_software content_type: project
project_type: software
id: dataforge id: dataforge
shortTitle: DataForge shortTitle: DataForge
title: Система автоматизированной обработки данных DataForge title: Система автоматизированной обработки данных DataForge

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_software content_type: project
project_type: software
id: dataforge id: dataforge
shortTitle: Kmath shortTitle: Kmath
title: "Экспериментальная математическая библиотека на kotlin" title: "Экспериментальная математическая библиотека на kotlin"

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_software content_type: project
project_type: software
id: muon-sim id: muon-sim
shortTitle: Моделирование Muon Monitor shortTitle: Моделирование Muon Monitor
title: Модель для анализа данных эксперимента Muon Monitor title: Модель для анализа данных эксперимента Muon Monitor

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_software content_type: project
project_type: software
id: plotly id: plotly
shortTitle: Plotly.kt shortTitle: Plotly.kt
title: Plotly.kt для Kotlin-multiplatform title: Plotly.kt для Kotlin-multiplatform

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_software content_type: project
project_type: software
id: prog-seminar id: prog-seminar
shortTitle: Семинар по программированию shortTitle: Семинар по программированию
title: Программирование в экспериментальной физике title: Программирование в экспериментальной физике

View File

@ -1,5 +1,6 @@
--- ---
content_type: project_software content_type: project
project_type: software
id: reactor id: reactor
shortTitle: Моделирование RL-TGE shortTitle: Моделирование RL-TGE
title: Макро-моделирование для реакторной модели в физике атмосферы title: Макро-моделирование для реакторной модели в физике атмосферы

View File

@ -4,7 +4,6 @@ import {graphql} from "gatsby"
import Parser from "html-react-parser" import Parser from "html-react-parser"
import Layout from "../components/layout" import Layout from "../components/layout"
import SEO from "../components/seo"
import "../styles/main.css" import "../styles/main.css"
const AboutPage = ({data}) => { const AboutPage = ({data}) => {
@ -18,9 +17,8 @@ const AboutPage = ({data}) => {
} }
return ( return (
<Layout> <Layout>
<SEO lang={lang} title={intl.formatMessage({id: "title"})}/> <h1><FormattedMessage id="about.title"/></h1>
<h1 style={{marginTop: `20px`}}><FormattedMessage id="about.title"/></h1> <p><FormattedMessage id="about.descr"/></p>
<p style={{marginTop: `0px`}}><FormattedMessage id="about.descr"/></p>
<h2 id="publications"><FormattedMessage id="about.pubs.title"/></h2> <h2 id="publications"><FormattedMessage id="about.pubs.title"/></h2>
<p style={{marginTop: `0px`, marginBottom: `0px`}}><FormattedMessage id="about.pubs.available1"/><Link <p style={{marginTop: `0px`, marginBottom: `0px`}}><FormattedMessage id="about.pubs.available1"/><Link
@ -75,7 +73,7 @@ export default injectIntl(AboutPage)
export const query = graphql` export const query = graphql`
query { query {
ru_members: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "member"}, published: {eq: true}, language: {eq: "ru"}}}, ru_members: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "member"}, published: {ne: false}, language: {eq: "ru"}}},
sort: {fields: frontmatter___order, order: ASC}) { sort: {fields: frontmatter___order, order: ASC}) {
edges{ edges{
node { node {
@ -89,7 +87,7 @@ export const query = graphql`
} }
} }
en_members: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "member"}, published: {eq: true}, language: {eq: "en"}}}, en_members: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "member"}, published: {ne: false}, language: {eq: "en"}}},
sort: {fields: frontmatter___order, order: ASC}) { sort: {fields: frontmatter___order, order: ASC}) {
edges{ edges{
node { node {

View File

@ -2,7 +2,6 @@ import React from "react"
import {FormattedMessage, injectIntl, Link, useIntl} from "gatsby-plugin-react-intl" import {FormattedMessage, injectIntl, Link, useIntl} from "gatsby-plugin-react-intl"
import {graphql} from "gatsby" import {graphql} from "gatsby"
import Layout from "../components/layout" import Layout from "../components/layout"
import SEO from "../components/seo"
import Parser from "html-react-parser" import Parser from "html-react-parser"
import head_ru from "../images/index/head.png" import head_ru from "../images/index/head.png"
@ -27,8 +26,6 @@ const IndexPage = ({data}) => {
return ( return (
<Layout> <Layout>
<SEO lang={lang} title={intl.formatMessage({id: "title"})}/>
{/* --------------------------------- */} {/* --------------------------------- */}
<Jumbotron> <Jumbotron>
<img src={head} width="90%" className="center-block" alt="head"/> <img src={head} width="90%" className="center-block" alt="head"/>
@ -89,7 +86,7 @@ export default injectIntl(IndexPage)
export const query = graphql` export const query = graphql`
query { query {
ru_posts: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "post"}, published: {eq: true}, language: {eq: "ru"}}}, ru_posts: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "post"}, published: {ne: false}, language: {eq: "ru"}}},
sort: {fields: [frontmatter___date], order: DESC}, limit: 3 ) sort: {fields: [frontmatter___date], order: DESC}, limit: 3 )
{ {
edges{ edges{
@ -104,7 +101,7 @@ export const query = graphql`
} }
} }
en_posts: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "post"}, published: {eq: true}, language: {eq: "en"}}}, en_posts: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "post"}, published: {ne: false}, language: {eq: "en"}}},
sort: {fields: [frontmatter___date], order: DESC}, limit: 3 ) sort: {fields: [frontmatter___date], order: DESC}, limit: 3 )
{ {
edges{ edges{

View File

@ -23,7 +23,7 @@ export default injectIntl(MagProg)
export const query = graphql` export const query = graphql`
query{ query{
page: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "magprog"}, published: {eq: true}, language: {eq: "ru"}}}){ page: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "magprog"}, published: {ne: false}, language: {eq: "ru"}}}){
edges{ edges{
node{ node{
html html

View File

@ -1,6 +1,6 @@
import React from "react" import React from "react"
import Layout from "../components/layout" import Layout from "../components/layout"
import {FormattedMessage, injectIntl, useIntl} from "gatsby-plugin-react-intl" import {FormattedMessage, injectIntl} from "gatsby-plugin-react-intl"
import "../styles/main.css" import "../styles/main.css"
///------------------------------------------------------ ///------------------------------------------------------
import mipt_logo from "../images/partners/mipt_logo.jpg" import mipt_logo from "../images/partners/mipt_logo.jpg"
@ -8,15 +8,10 @@ import inr_linac from "../images/partners/Linac-OUK_big.gif"
import inr_logo from "../images/partners/inr_logo.png" import inr_logo from "../images/partners/inr_logo.png"
import jetbrains_logo from "../images/partners/jetbrains.svg" import jetbrains_logo from "../images/partners/jetbrains.svg"
import jbr from "../images/partners/JBR.svg" import jbr from "../images/partners/JBR.svg"
import SEO from "../components/seo"
const PartnersPage = () => { const PartnersPage = () => {
const intl = useIntl()
const lang = intl.locale
return ( return (
<Layout> <Layout>
<SEO lang={lang} title={intl.formatMessage({id: "title"})}/>
<div className="media" style={{marginTop: `30px`}}> <div className="media" style={{marginTop: `30px`}}>
<div className="media-body"> <div className="media-body">
<h1><a aria-label="MIPT general physics" <h1><a aria-label="MIPT general physics"

View File

@ -4,7 +4,7 @@ import {FormattedMessage, injectIntl, Link, useIntl} from "gatsby-plugin-react-i
import Parser from "html-react-parser" import Parser from "html-react-parser"
import Layout from "../../components/layout" import Layout from "../../components/layout"
import SEO from "../../components/seo" import ProjectsNavbar from "../../components/projectsNavbar";
const SoftwarePage = ({data}) => { const SoftwarePage = ({data}) => {
const intl = useIntl() const intl = useIntl()
@ -17,21 +17,7 @@ const SoftwarePage = ({data}) => {
} }
return ( return (
<Layout> <Layout>
<SEO lang={lang} title={intl.formatMessage({id: "title"})}/> <ProjectsNavbar project_type="education"/>
<ul className="nav nav-tabs">
<li className="nav-item"><Link id="project" className="nav-link "
to="/projects/physics"><FormattedMessage id="physics.bc_title"/></Link>
</li>
<li className="nav-item"><Link id="project" className="nav-link active"
to="/projects/education"><FormattedMessage
id="education.bc_title"/></Link></li>
<li className="nav-item"><Link id="project" className="nav-link " to="/projects/math"><FormattedMessage
id="math.bc_title"/></Link></li>
<li className="nav-item"><Link id="project" className="nav-link "
to="/projects/software"><FormattedMessage id="software.bc_title"/></Link>
</li>
</ul>
<h1 style={{marginTop: `20px`}}><FormattedMessage id="education.title"/></h1> <h1 style={{marginTop: `20px`}}><FormattedMessage id="education.title"/></h1>
<p style={{marginBottom: `5px`}}><FormattedMessage id="education.description"/></p> <p style={{marginBottom: `5px`}}><FormattedMessage id="education.description"/></p>
@ -76,7 +62,7 @@ export default injectIntl(SoftwarePage)
export const query = graphql` export const query = graphql`
query{ query{
ru_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project_education"}, published: {eq: true}, language: {eq: "ru"}}}, ru_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project"}, project_type: {eq: "education"}, published: {ne: false}, language: {eq: "ru"}}},
sort: {fields: [frontmatter___order], order: ASC}){ sort: {fields: [frontmatter___order], order: ASC}){
edges{ edges{
node{ node{
@ -90,7 +76,7 @@ export const query = graphql`
} }
}} }}
en_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project_education"}, published: {eq: true}, language: {eq: "en"}}}, en_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project"}, project_type: {eq: "education"}, published: {ne: false}, language: {eq: "en"}}},
sort: {fields: [frontmatter___order], order: ASC}){ sort: {fields: [frontmatter___order], order: ASC}){
edges{ edges{
node{ node{

View File

@ -1,64 +1,23 @@
import React from "react" import React from "react"
import {graphql} from "gatsby" import {graphql} from "gatsby"
import {FormattedMessage, injectIntl, Link, useIntl} from "gatsby-plugin-react-intl" import {injectIntl, useIntl} from "gatsby-plugin-react-intl"
import Parser from "html-react-parser"
import Layout from "../../components/layout" import Layout from "../../components/layout"
import SEO from "../../components/seo" import Projects from "../../components/templates/projectsTemplate";
const SoftwarePage = ({data}) => { const SoftwarePage = ({data}) => {
const intl = useIntl() const intl = useIntl()
const lang = intl.locale const lang = intl.locale
var posts = "" let mathProjects = [];
if (lang === "ru") { if (lang === "ru") {
posts = data.ru_projects.edges; mathProjects = data.ru_projects.edges;
} else if (lang === "en") { } else if (lang === "en") {
posts = data.en_projects.edges; mathProjects = data.en_projects.edges;
} }
return ( return (
<Layout> <Layout>
<SEO lang={lang} title={intl.formatMessage({id: "title"})}/> <Projects projects={mathProjects} project_type="math"/>
<ul className="nav nav-tabs">
<li className="nav-item"><Link id="project" className="nav-link "
to="/projects/physics"><FormattedMessage id="physics.bc_title"/></Link>
</li>
<li className="nav-item"><Link id="project" className="nav-link "
to="/projects/education"><FormattedMessage
id="education.bc_title"/></Link></li>
<li className="nav-item"><Link id="project" className="nav-link active"
to="/projects/math"><FormattedMessage id="math.bc_title"/></Link></li>
<li className="nav-item"><Link id="project" className="nav-link "
to="/projects/software"><FormattedMessage id="software.bc_title"/></Link>
</li>
</ul>
<h1 style={{marginTop: `20px`}}><FormattedMessage id="math.title"/></h1>
<p style={{marginBottom: `5px`}}><FormattedMessage id="math.description"/></p>
<ul>
{posts.map(({node}) => {
const link = node.frontmatter.shortTitle;
const id = node.frontmatter.id;
return (
<li><Link to={`/projects/math#${id}`}>{link}</Link></li>
)
})}
</ul>
{posts.map(({node}) => {
const title = node.frontmatter.title;
const id = node.frontmatter.id;
return (
<div className="row" id={id}>
<div className="col-lg-12">
<hr/>
<h2 name={id}>{title}</h2>
<div>{Parser(node.html)}</div>
</div>
</div>
)
})}
</Layout> </Layout>
) )
} }
@ -67,7 +26,7 @@ export default injectIntl(SoftwarePage)
export const query = graphql` export const query = graphql`
query{ query{
ru_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project_math"}, published: {eq: true}, language: {eq: "ru"}}}, ru_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project"}, project_type: {eq: "math"}, published: {ne: false}, language: {eq: "ru"}}},
sort: {fields: [frontmatter___order], order: ASC}){ sort: {fields: [frontmatter___order], order: ASC}){
edges{ edges{
node{ node{
@ -80,7 +39,7 @@ export const query = graphql`
} }
}} }}
en_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project_math"}, published: {eq: true}, language: {eq: "en"}}}, en_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project"}, project_type: {eq: "math"}, published: {ne: false}, language: {eq: "en"}}},
sort: {fields: [frontmatter___order], order: ASC}){ sort: {fields: [frontmatter___order], order: ASC}){
edges{ edges{
node{ node{

View File

@ -1,63 +1,22 @@
import React from "react" import React from "react"
import {graphql} from "gatsby" import {graphql} from "gatsby"
import {FormattedMessage, injectIntl, Link, useIntl} from "gatsby-plugin-react-intl" import {injectIntl, useIntl} from "gatsby-plugin-react-intl"
import Parser from "html-react-parser"
import Layout from "../../components/layout" import Layout from "../../components/layout"
import SEO from "../../components/seo" import Projects from "../../components/templates/projectsTemplate";
const PhysicsPage = ({data}) => { const PhysicsPage = ({data}) => {
const intl = useIntl() const intl = useIntl()
const lang = intl.locale const lang = intl.locale
var posts = "" let physicsProjects = "";
if (lang === "ru") { if (lang === "ru") {
posts = data.ru_projects.edges; physicsProjects = data.ru_projects.edges;
} else if (lang === "en") { } else if (lang === "en") {
posts = data.en_projects.edges; physicsProjects = data.en_projects.edges;
} }
return ( return (
<Layout> <Layout>
<SEO lang={lang} title={intl.formatMessage({id: "title"})}/> <Projects projects={physicsProjects} project_type="physics"/>
<ul className="nav nav-tabs">
<li className="nav-item"><Link id="project" className="nav-link active"
to="/projects/physics"><FormattedMessage id="physics.bc_title"/></Link>
</li>
<li className="nav-item"><Link id="project" className="nav-link "
to="/projects/education"><FormattedMessage
id="education.bc_title"/></Link></li>
<li className="nav-item"><Link id="project" className="nav-link " to="/projects/math"><FormattedMessage
id="math.bc_title"/></Link></li>
<li className="nav-item"><Link id="project" className="nav-link "
to="/projects/software"><FormattedMessage id="software.bc_title"/></Link>
</li>
</ul>
<h1 style={{marginTop: `20px`}}><FormattedMessage id="physics.title"/></h1>
<p style={{marginBottom: `5px`}}><FormattedMessage id="physics.description"/></p>
<ul>
{posts.map(({node}) => {
const link = node.frontmatter.shortTitle;
const id = node.frontmatter.id;
return (
<li><Link to={`/projects/physics#${id}`}>{link}</Link></li>
)
})}
</ul>
{posts.map(({node}) => {
const title = node.frontmatter.title;
const id = node.frontmatter.id;
return (
<div className="row" id={id}>
<div className="col-lg-12">
<hr/>
<h2 name={id}>{title}</h2>
<div>{Parser(node.html)}</div>
</div>
</div>
)
})}
</Layout> </Layout>
) )
} }
@ -66,7 +25,7 @@ export default injectIntl(PhysicsPage)
export const query = graphql` export const query = graphql`
query{ query{
ru_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project_physics"}, published: {eq: true}, language: {eq: "ru"}}}, ru_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project"}, project_type: {eq: "physics"} published: {ne: false}, language: {eq: "ru"}}},
sort: {fields: [frontmatter___order], order: ASC}){ sort: {fields: [frontmatter___order], order: ASC}){
edges{ edges{
node{ node{
@ -79,7 +38,7 @@ export const query = graphql`
} }
}} }}
en_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project_physics"}, published: {eq: true}, language: {eq: "en"}}}, en_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project"}, project_type: {eq: "physics"} published: {ne: false}, language: {eq: "en"}}},
sort: {fields: [frontmatter___order], order: ASC}){ sort: {fields: [frontmatter___order], order: ASC}){
edges{ edges{
node{ node{

View File

@ -1,73 +1,22 @@
import React from "react" import React from "react"
import {graphql} from "gatsby" import {graphql} from "gatsby"
import {FormattedMessage, injectIntl, Link, useIntl} from "gatsby-plugin-react-intl" import {injectIntl, useIntl} from "react-intl"
import Parser from "html-react-parser"
import Layout from "../../components/layout" import Layout from "../../components/layout"
import SEO from "../../components/seo" import Projects from "../../components/templates/projectsTemplate";
const SoftwarePage = ({data}) => { const SoftwarePage = ({data}) => {
const intl = useIntl() const intl = useIntl()
const lang = intl.locale const lang = intl.locale
var posts = "" let softwareProjects = "";
if (lang === "ru") { if (lang === "ru") {
posts = data.ru_projects.edges; softwareProjects = data.ru_projects.edges;
} else if (lang === "en") { } else if (lang === "en") {
posts = data.en_projects.edges; softwareProjects = data.en_projects.edges;
} }
return ( return (
<Layout> <Layout>
<SEO lang={lang} title={intl.formatMessage({id: "title"})}/> <Projects projects={softwareProjects} project_type="software"/>
<ul className="nav nav-tabs">
<li className="nav-item">
<Link id="project" className="nav-link " to="/projects/physics">
<FormattedMessage id="physics.bc_title"/>
</Link>
</li>
<li className="nav-item">
<Link id="project" className="nav-link " to="/projects/education">
<FormattedMessage id="education.bc_title"/>
</Link>
</li>
<li className="nav-item">
<Link id="project" className="nav-link " to="/projects/math">
<FormattedMessage id="math.bc_title"/>
</Link>
</li>
<li className="nav-item">
<Link id="project" className="nav-link active" to="/projects/software">
<FormattedMessage id="software.bc_title"/>
</Link>
</li>
</ul>
<h1 style={{marginTop: `20px`}}><FormattedMessage id="software.title"/></h1>
<p style={{marginBottom: `5px`}}><FormattedMessage id="software.description"/></p>
<ul>
{posts.map(({node}) => {
const link = node.frontmatter.shortTitle;
const id = node.frontmatter.id;
return (
<li><Link to={`/projects/software#${id}`}>{link}</Link></li>
)
})}
</ul>
{posts.map(({node}) => {
const title = node.frontmatter.title;
const id = node.frontmatter.id;
return (
<div className="row" id={id}>
<div className="col-lg-12">
<hr/>
<h2 name={id}>{title}</h2>
<div>{Parser(node.html)}</div>
</div>
</div>
)
})}
</Layout> </Layout>
) )
} }
@ -76,7 +25,7 @@ export default injectIntl(SoftwarePage)
export const query = graphql` export const query = graphql`
query{ query{
ru_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project_software"}, published: {eq: true}, language: {eq: "ru"}}}, ru_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project"}, project_type: {eq: "software"}, published: {ne: false}, language: {eq: "ru"}}},
sort: {fields: [frontmatter___order], order: ASC}){ sort: {fields: [frontmatter___order], order: ASC}){
edges{ edges{
node{ node{
@ -89,7 +38,7 @@ export const query = graphql`
} }
}} }}
en_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project_software"}, published: {eq: true}, language: {eq: "en"}}}, en_projects: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "project"}, project_type: {eq: "software"}, published: {ne: false}, language: {eq: "en"}}},
sort: {fields: [frontmatter___order], order: ASC}){ sort: {fields: [frontmatter___order], order: ASC}){
edges{ edges{
node{ node{

View File

@ -4,7 +4,6 @@ import {injectIntl, Link, useIntl} from "gatsby-plugin-react-intl"
import Parser from "html-react-parser" import Parser from "html-react-parser"
import Layout from "../components/layout" import Layout from "../components/layout"
import SEO from "../components/seo"
const PublicationsPage = ({data}) => { const PublicationsPage = ({data}) => {
const intl = useIntl() const intl = useIntl()
@ -17,8 +16,6 @@ const PublicationsPage = ({data}) => {
} }
return ( return (
<Layout> <Layout>
<SEO lang={lang} title={intl.formatMessage({id: "title"})}/>
{publications.map(({node}) => { {publications.map(({node}) => {
const title = node.frontmatter.title const title = node.frontmatter.title
return ( return (
@ -44,7 +41,7 @@ export default injectIntl(PublicationsPage)
export const query = graphql` export const query = graphql`
query{ query{
ru_publications: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "publications"}, published: {eq: true}, language: {eq: "ru"}}}){ ru_publications: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "publications"}, published: {ne: false}, language: {eq: "ru"}}}){
edges{ edges{
node{ node{
html html
@ -55,7 +52,7 @@ export const query = graphql`
} }
}} }}
en_publications: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "publications"}, published: {eq: true}, language: {eq: "en"}}}){ en_publications: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "publications"}, published: {ne: false}, language: {eq: "en"}}}){
edges{ edges{
node{ node{
html html

View File

@ -4,7 +4,6 @@ import {FormattedMessage, injectIntl, Link, useIntl} from "gatsby-plugin-react-i
import Parser from "html-react-parser" import Parser from "html-react-parser"
import Layout from "../components/layout" import Layout from "../components/layout"
import SEO from "../components/seo"
const QuarksPage = ({data}) => { const QuarksPage = ({data}) => {
const intl = useIntl() const intl = useIntl()
@ -17,8 +16,6 @@ const QuarksPage = ({data}) => {
} }
return ( return (
<Layout> <Layout>
<SEO lang={lang} title={intl.formatMessage({id: "title"})}/>
<nav aria-label="breadcrumb"> <nav aria-label="breadcrumb">
<ol className="breadcrumb" style={{margin: 0}}> <ol className="breadcrumb" style={{margin: 0}}>
<li className="breadcrumb-item"> <li className="breadcrumb-item">
@ -41,7 +38,7 @@ export default injectIntl(QuarksPage)
export const query = graphql` export const query = graphql`
query{ query{
ru_publications: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "quarks"}, published: {eq: true}, language: {eq: "ru"}}}){ ru_publications: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "quarks"}, published: {ne: false}, language: {eq: "ru"}}}){
edges{ edges{
node{ node{
html html
@ -51,7 +48,7 @@ export const query = graphql`
} }
}} }}
en_publications: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "quarks"}, published: {eq: true}, language: {eq: "en"}}}){ en_publications: allMarkdownRemark(filter: {frontmatter: {content_type: {eq: "quarks"}, published: {ne: false}, language: {eq: "en"}}}){
edges{ edges{
node{ node{
html html

View File

@ -1,4 +1,4 @@
nav#site-navbar.navbar.navbar-expand-lg.navbar-light.bg-dark.fixed-top { nav#site-navbar.navbar.navbar-expand-lg.bg-dark.fixed-top {
height: 75px; height: 75px;
} }
@ -10,6 +10,11 @@ img#logo {
margin-bottom: 0; margin-bottom: 0;
} }
/*
a.nav-item span{
color: white;
}
a[href="/"] { a[href="/"] {
padding-top: 1.5%; padding-top: 1.5%;
opacity: 0.75 opacity: 0.75
@ -29,6 +34,11 @@ a.link-no-style[href="/"] {
margin-top: 0 margin-top: 0
} }
a.link-no-style[href="/"] {
padding: 0;
margin-top: 0
}
a.link-no-style span[data-rb-event-key="news"].nav-link, a.link-no-style span[data-rb-event-key="news"].nav-link,
a.link-no-style span[data-rb-event-key="about"].nav-link, a.link-no-style span[data-rb-event-key="about"].nav-link,
a.link-no-style span[data-rb-event-key="projects"].nav-link, a.link-no-style span[data-rb-event-key="projects"].nav-link,
@ -38,6 +48,7 @@ a.link-no-style span[data-rb-event-key="partners"].nav-link {
margin-right: 10px; margin-right: 10px;
} }
a.link-no-style { a.link-no-style {
margin-top: 10px; margin-top: 10px;
} }
@ -62,10 +73,13 @@ a.active {
margin-bottom: 8px; margin-bottom: 8px;
} }
.navbar-light .navbar-nav a.active > .nav-link { .navbar-light .navbar-nav a.active > .nav-link {
color: white; color: white;
} }
*/
a.language.nav-link { a.language.nav-link {
margin-left: 50px; margin-left: 50px;
} }
@ -104,7 +118,7 @@ div p a:hover {
/* ----- collapse show ---------------------- */ /* ----- collapse show ---------------------- */
@media (max-width: 769px) { @media (max-width: 769px) {
a.activeBrand { a.activeBrand {
margin: 0 0px 0 20px; margin: 0 0 0 20px;
padding-top: 0 padding-top: 0
} }
@ -118,13 +132,13 @@ div p a:hover {
/* button.navbar-toggler.collapsed { margin-top: 0px; margin-left: 15px; } */ /* button.navbar-toggler.collapsed { margin-top: 0px; margin-left: 15px; } */
button.navbar-toggler { button.navbar-toggler {
margin-top: 0px; margin-top: 0;
margin-right: 17px; margin-right: 17px;
} }
div#basic-navbar-nav.navbar-collapse.collapse.show { div#basic-navbar-nav.navbar-collapse.collapse.show {
width: 100px; width: 100px;
padding-bottom: 0px; padding-bottom: 0;
text-align: center; text-align: center;
background-color: rgb(52, 58, 64); background-color: rgb(52, 58, 64);
margin-top: -0px; margin-top: -0px;