Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f006207112 | ||
|
|
d46d39a131 | ||
|
|
8a934cbf5c | ||
|
|
c6f242693a | ||
|
|
28471fe8c1 | ||
|
|
aacc920796 | ||
|
|
d3c7e444ea | ||
|
|
2c443568e8 | ||
|
|
2b426f53b3 | ||
|
|
830cd80de1 | ||
|
|
d9ca65958c | ||
|
|
5e9889e3f4 |
No files matched your search
@@ -0,0 +1,14 @@
|
|||||||
|
.background-picture {
|
||||||
|
overflow-x: hidden;
|
||||||
|
width: 100%;
|
||||||
|
height: 95vh;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
|
||||||
|
&.vertical {
|
||||||
|
background-size: 100% auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
&.horizontal {
|
||||||
|
background-size: auto 100%;
|
||||||
|
}
|
||||||
|
}
|
||||||
+6
-17
@@ -9,28 +9,17 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.page.page-home{
|
||||||
|
width: 90%;
|
||||||
|
margin: 0 auto;
|
||||||
|
}
|
||||||
|
|
||||||
.main-block {
|
.main-block {
|
||||||
width: 100%;
|
|
||||||
margin-top: 5px;
|
|
||||||
|
|
||||||
.telephone {
|
|
||||||
font-size: 1.25em;
|
|
||||||
margin-left: 30px;
|
|
||||||
}
|
|
||||||
|
|
||||||
h1 {
|
h1 {
|
||||||
font-size: 18pt;
|
font-size: 18pt;
|
||||||
text-align: center;
|
text-align: center;
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
margin: 1em 0 0;
|
margin: 1.2em 0 0;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@media screen and (max-device-width: 500px) {
|
|
||||||
.main-block {
|
|
||||||
.telephone {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -20,8 +20,7 @@ body {
|
|||||||
|
|
||||||
.content {
|
.content {
|
||||||
flex: 1;
|
flex: 1;
|
||||||
width: 90%;
|
margin: 41px auto 0;
|
||||||
margin: 3em auto 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
a {
|
a {
|
||||||
|
|||||||
@@ -1,10 +1,6 @@
|
|||||||
.page {
|
.page {
|
||||||
// position: absolute;
|
padding-top: 0;
|
||||||
// bottom: 0;
|
|
||||||
// top: 0;
|
|
||||||
padding-top: 0px;
|
|
||||||
width: 100%;
|
width: 100%;
|
||||||
// z-index: -1;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.page.ng-leave {
|
.page.ng-leave {
|
||||||
|
|||||||
@@ -1,179 +0,0 @@
|
|||||||
#page-container {
|
|
||||||
position: absolute;
|
|
||||||
top: 0;
|
|
||||||
left: 0;
|
|
||||||
margin: 0;
|
|
||||||
padding: 0;
|
|
||||||
border: 0;
|
|
||||||
z-index: -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media screen {
|
|
||||||
#page-container {
|
|
||||||
bottom: 0;
|
|
||||||
right: 0;
|
|
||||||
overflow: auto;
|
|
||||||
}
|
|
||||||
.loading-indicator {
|
|
||||||
display: none;
|
|
||||||
&.active {
|
|
||||||
display: block;
|
|
||||||
position: absolute;
|
|
||||||
width: 64px;
|
|
||||||
height: 64px;
|
|
||||||
top: 50%;
|
|
||||||
left: 50%;
|
|
||||||
margin-top: -32px;
|
|
||||||
margin-left: -32px;
|
|
||||||
}
|
|
||||||
img {
|
|
||||||
position: absolute;
|
|
||||||
top: 0;
|
|
||||||
left: 0;
|
|
||||||
bottom: 0;
|
|
||||||
right: 0;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@media print {
|
|
||||||
@page {
|
|
||||||
margin: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
html {
|
|
||||||
margin: 0;
|
|
||||||
}
|
|
||||||
body {
|
|
||||||
margin: 0;
|
|
||||||
-webkit-print-color-adjust: exact;
|
|
||||||
}
|
|
||||||
#page-container {
|
|
||||||
width: auto;
|
|
||||||
height: auto;
|
|
||||||
overflow: visible;
|
|
||||||
background-color: transparent;
|
|
||||||
}
|
|
||||||
.d {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.pf {
|
|
||||||
position: relative;
|
|
||||||
background-color: white;
|
|
||||||
overflow: hidden;
|
|
||||||
border: 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
.pc {
|
|
||||||
position: absolute;
|
|
||||||
border: 0;
|
|
||||||
padding: 0;
|
|
||||||
margin: 0;
|
|
||||||
top: 0;
|
|
||||||
left: 0;
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
overflow: hidden;
|
|
||||||
display: block;
|
|
||||||
transform-origin: 0 0;
|
|
||||||
-ms-transform-origin: 0 0;
|
|
||||||
-webkit-transform-origin: 0 0;
|
|
||||||
&.opened {
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.bf {
|
|
||||||
position: absolute;
|
|
||||||
border: 0;
|
|
||||||
margin: 0;
|
|
||||||
top: 0;
|
|
||||||
bottom: 0;
|
|
||||||
width: 100%;
|
|
||||||
height: 100%;
|
|
||||||
-ms-user-select: none;
|
|
||||||
-moz-user-select: none;
|
|
||||||
-webkit-user-select: none;
|
|
||||||
user-select: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.bi {
|
|
||||||
position: absolute;
|
|
||||||
border: 0;
|
|
||||||
margin: 0;
|
|
||||||
-ms-user-select: none;
|
|
||||||
-moz-user-select: none;
|
|
||||||
-webkit-user-select: none;
|
|
||||||
user-select: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
@media print {
|
|
||||||
.pf {
|
|
||||||
margin: 0;
|
|
||||||
box-shadow: none;
|
|
||||||
page-break-after: always;
|
|
||||||
page-break-inside: avoid;
|
|
||||||
}
|
|
||||||
@-moz-document url-prefix() {
|
|
||||||
.pf {
|
|
||||||
overflow: visible;
|
|
||||||
border: 1px solid #fff;
|
|
||||||
}
|
|
||||||
.pc {
|
|
||||||
overflow: visible;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
.c {
|
|
||||||
position: absolute;
|
|
||||||
border: 0;
|
|
||||||
padding: 0;
|
|
||||||
margin: 0;
|
|
||||||
overflow: hidden;
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
|
|
||||||
.t {
|
|
||||||
position: absolute;
|
|
||||||
white-space: pre;
|
|
||||||
font-size: 1px;
|
|
||||||
transform-origin: 0 100%;
|
|
||||||
-ms-transform-origin: 0 100%;
|
|
||||||
-webkit-transform-origin: 0 100%;
|
|
||||||
unicode-bidi: bidi-override;
|
|
||||||
-moz-font-feature-settings: "liga" 0;
|
|
||||||
}
|
|
||||||
|
|
||||||
._ {
|
|
||||||
color: transparent;
|
|
||||||
z-index: -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
::selection {
|
|
||||||
background: rgba(127, 255, 255, 0.4);
|
|
||||||
}
|
|
||||||
|
|
||||||
::-moz-selection {
|
|
||||||
background: rgba(127, 255, 255, 0.4);
|
|
||||||
}
|
|
||||||
|
|
||||||
.pi {
|
|
||||||
display: none;
|
|
||||||
}
|
|
||||||
|
|
||||||
.d {
|
|
||||||
position: absolute;
|
|
||||||
transform-origin: 0 100%;
|
|
||||||
-ms-transform-origin: 0 100%;
|
|
||||||
-webkit-transform-origin: 0 100%;
|
|
||||||
}
|
|
||||||
|
|
||||||
// .@CSS_LINK_CN span {
|
|
||||||
// position: relative;
|
|
||||||
// vertical-align: baseline;
|
|
||||||
// display: inline-block;
|
|
||||||
// unicode-bidi: bidi-override;
|
|
||||||
// }
|
|
||||||
@@ -1,5 +1,5 @@
|
|||||||
.tape-block{
|
.tape-block{
|
||||||
width: 70%;
|
width: 60%;
|
||||||
max-width: 1000px;
|
max-width: 1000px;
|
||||||
|
|
||||||
margin: 2em auto;
|
margin: 2em auto;
|
||||||
@@ -11,7 +11,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.tape-block-content{
|
.tape-block__body{
|
||||||
position: relative;
|
position: relative;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
|
|
||||||
@@ -53,7 +53,7 @@
|
|||||||
margin: 1.5em auto;
|
margin: 1.5em auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
.tape-block-content {
|
.tape-block__body {
|
||||||
.tape {
|
.tape {
|
||||||
width: 62px;
|
width: 62px;
|
||||||
height: 62px;
|
height: 62px;
|
||||||
|
|||||||
+38
-47
@@ -1,57 +1,48 @@
|
|||||||
.page-team {
|
.page-team {
|
||||||
&.ng-leave {
|
&.ng-leave {
|
||||||
animation: slideOutLeft 0.3s both ease-in;
|
animation: slideOutLeft 0.3s both ease-in;
|
||||||
}
|
}
|
||||||
|
|
||||||
&.ng-enter {
|
&.ng-enter {
|
||||||
animation: slideInRight 0.3s both ease-in;
|
animation: slideInRight 0.3s both ease-in;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.background-picture{
|
.team-block {
|
||||||
|
background-color: white;
|
||||||
|
width: 100%;
|
||||||
|
padding-top: 3em;
|
||||||
|
|
||||||
|
.team-member {
|
||||||
|
width: 80%;
|
||||||
|
margin: 0 auto 3em;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
flex-wrap: wrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
.team-member__picture {
|
||||||
|
width: 20%;
|
||||||
|
max-width: 15em;
|
||||||
|
min-width: 12em;
|
||||||
|
margin: 0 1em;
|
||||||
|
}
|
||||||
|
|
||||||
|
.team-member__picture img {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
position: fixed;
|
}
|
||||||
top:0;
|
|
||||||
left: 0;
|
|
||||||
z-index: -999;
|
|
||||||
}
|
|
||||||
|
|
||||||
.team-block{
|
.team-member__info {
|
||||||
background-color: white;
|
width: 60%;
|
||||||
width:100%;
|
margin: 0 1em;
|
||||||
min-height: 100px;
|
|
||||||
padding-top: 100px;
|
|
||||||
padding-bottom: 100px;
|
|
||||||
margin-top: 63%;
|
|
||||||
|
|
||||||
ul{
|
h3 {
|
||||||
list-style:none;
|
font-weight: 200;
|
||||||
}
|
|
||||||
|
|
||||||
.team-member{
|
span {
|
||||||
margin: 0 auto 50px auto;
|
font-weight: 600;
|
||||||
width: 70%;
|
}
|
||||||
|
|
||||||
img{
|
|
||||||
width: 40%;
|
|
||||||
max-width: 600px;
|
|
||||||
min-width: 200px;
|
|
||||||
display: inline-block;
|
|
||||||
}
|
|
||||||
|
|
||||||
.info{
|
|
||||||
display: inline-block;
|
|
||||||
float: right;
|
|
||||||
width: 55%;
|
|
||||||
line-height: 2em;
|
|
||||||
|
|
||||||
h3{
|
|
||||||
font-weight: 100;
|
|
||||||
|
|
||||||
span{
|
|
||||||
font-weight: 600;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
+2
-4
@@ -81,6 +81,8 @@ app.run(function ($location, $rootScope, $http) {
|
|||||||
require("./api/api")(app);
|
require("./api/api")(app);
|
||||||
require("./services/io")(app);
|
require("./services/io")(app);
|
||||||
require("./directives/mainMenu")(app);
|
require("./directives/mainMenu")(app);
|
||||||
|
require("./directives/teamMemberProfile")(app);
|
||||||
|
require("./directives/backgroundPicture")(app);
|
||||||
require("./ui/menu")(app);
|
require("./ui/menu")(app);
|
||||||
require("./ui/breadcrumbs")(app);
|
require("./ui/breadcrumbs")(app);
|
||||||
require("./ui/timeline")(app);
|
require("./ui/timeline")(app);
|
||||||
@@ -100,10 +102,6 @@ app.controller("SchedulePageController", function ($scope) {
|
|||||||
$scope.pageClass = "page-schedule";
|
$scope.pageClass = "page-schedule";
|
||||||
});
|
});
|
||||||
|
|
||||||
app.controller("TeamPageController", function ($scope) {
|
|
||||||
$scope.pageClass = "page-team";
|
|
||||||
});
|
|
||||||
|
|
||||||
app.controller("DocsPageController", function ($scope) {
|
app.controller("DocsPageController", function ($scope) {
|
||||||
$scope.pageClass = "page-docs";
|
$scope.pageClass = "page-docs";
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -0,0 +1,26 @@
|
|||||||
|
module.exports = function (app) {
|
||||||
|
app.directive('backgroundPicture', function () {
|
||||||
|
return {
|
||||||
|
restrict: 'E',
|
||||||
|
template: '<div class="background-picture" />',
|
||||||
|
scope: {
|
||||||
|
src: '='
|
||||||
|
},
|
||||||
|
link: function($scope, $element){
|
||||||
|
var element = $element.find('.background-picture').get(0);
|
||||||
|
element.style.backgroundImage = `url('${$scope.src}')`;
|
||||||
|
|
||||||
|
setTimeout(function () {
|
||||||
|
var w = element.offsetWidth;
|
||||||
|
var h = element.offsetHeight;
|
||||||
|
|
||||||
|
if (w > h) {
|
||||||
|
element.classList.add('horizontal');
|
||||||
|
} else {
|
||||||
|
element.classList.add('vertical');
|
||||||
|
}
|
||||||
|
}, 100);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
module.exports = function (app) {
|
||||||
|
app.directive('teamMemberProfile', function (menu) {
|
||||||
|
return {
|
||||||
|
restrict: 'E',
|
||||||
|
templateUrl: '/views/team/profile.html',
|
||||||
|
scope: {
|
||||||
|
person: '=profile'
|
||||||
|
},
|
||||||
|
link: function(scope, element){
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
};
|
||||||
+18
-9
@@ -3,27 +3,36 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
module.exports = function (app) {
|
module.exports = function (app) {
|
||||||
app.controller("HomePageController", function ($scope, config) {
|
app.controller('HomePageController', function ($scope, config) {
|
||||||
var fotorama;
|
var fotorama;
|
||||||
|
|
||||||
$scope.pageClass = "page-home";
|
$scope.pageClass = 'page-home';
|
||||||
|
|
||||||
var $tape = $('.tape-block');
|
var $tape = $('.tape-block');
|
||||||
var $fotorama = $('.fotorama');
|
var $fotorama = $tape.find('.tape-block__content');
|
||||||
|
|
||||||
$tape.addClass('simplified');
|
$tape.addClass('simplified');
|
||||||
$fotorama.on('fotorama:ready', function () {
|
$fotorama.on('fotorama:ready', function () {
|
||||||
$tape.removeClass('simplified');
|
$tape.removeClass('simplified');
|
||||||
fotorama.setOptions({
|
fotorama.setOptions({
|
||||||
nav: 'dots'
|
nav: 'dots',
|
||||||
|
transition: 'crossfade',
|
||||||
|
autoplay: '6000',
|
||||||
|
arrows: 'false',
|
||||||
|
width: '100%',
|
||||||
|
fit: 'cover',
|
||||||
|
loop: 'true'
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
fotorama = $fotorama.fotorama().data('fotorama');
|
fotorama = $fotorama.fotorama().data('fotorama');
|
||||||
fotorama.load([
|
|
||||||
{img: 'http://static.shburg.org/art/img/cat1.jpg'},
|
setTimeout(function(){
|
||||||
{img: 'http://static.shburg.org/art/img/cat2.jpg'},
|
fotorama.load([
|
||||||
{img: 'http://static.shburg.org/art/img/cat3.jpg'}
|
{img: 'https://static.shburg.org/art/img/cat1.jpg'},
|
||||||
]);
|
{img: 'https://static.shburg.org/art/img/cat2.jpg'},
|
||||||
|
{img: 'https://static.shburg.org/art/img/cat3.jpg'}
|
||||||
|
]);
|
||||||
|
}, 100);
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
@@ -1,9 +1,11 @@
|
|||||||
var populate = require("../../utils/populate").populate;
|
var populate = require('../../utils/populate').populate;
|
||||||
const course = require("../../models/course");
|
const course = require('../../models/course');
|
||||||
|
|
||||||
module.exports = function (app) {
|
module.exports = function (app) {
|
||||||
app.controller("TeamController", function ($scope, team) {
|
app.controller('TeamPageController', function ($scope, team) {
|
||||||
$scope.team = team.team.map(function (person) {
|
$scope.pageClass = 'page-team';
|
||||||
|
|
||||||
|
$scope.teamMembers = team.team.map(function (person) {
|
||||||
person.names = team.splitName(person.name);
|
person.names = team.splitName(person.name);
|
||||||
return person;
|
return person;
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -1,10 +1,16 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
|
echo "Deploying art.shburg.org"
|
||||||
|
|
||||||
NODE_ENV=production gulp
|
NODE_ENV=production gulp
|
||||||
|
|
||||||
tarfile=build.tar.gz
|
server="art.shburg.org"
|
||||||
|
app_port=1800
|
||||||
|
tarfile="build.tar.gz"
|
||||||
tarpath=$TMPDIR$tarfile
|
tarpath=$TMPDIR$tarfile
|
||||||
|
destpath="~/www/art.shburg.org"
|
||||||
|
|
||||||
|
echo "Packing..."
|
||||||
env GZIP=-9 tar -czf $tarpath \
|
env GZIP=-9 tar -czf $tarpath \
|
||||||
--disable-copyfile \
|
--disable-copyfile \
|
||||||
--exclude=node_modules \
|
--exclude=node_modules \
|
||||||
@@ -14,11 +20,14 @@ env GZIP=-9 tar -czf $tarpath \
|
|||||||
--exclude=deploy.sh \
|
--exclude=deploy.sh \
|
||||||
--exclude=install.sh .
|
--exclude=install.sh .
|
||||||
|
|
||||||
echo "build file: $tarpath"
|
echo "Build file: $tarpath"
|
||||||
|
|
||||||
|
ssh hoster.et "rm -rf $destpath/*"
|
||||||
|
scp $tarpath hoster@$server:$destpath
|
||||||
|
echo "Build file successfully uploaded on server"
|
||||||
|
|
||||||
|
echo "Installing..."
|
||||||
|
ssh hoster.et "bash -s" -- < ./install.sh $destpath $tarfile $app_port
|
||||||
|
|
||||||
ssh shburg.et "rm -rf art/*"
|
|
||||||
scp $tarpath shburg@146.185.183.243:~
|
|
||||||
scp install.sh shburg@146.185.183.243:~
|
|
||||||
ssh shburg.et "./install.sh"
|
|
||||||
rm $tarpath
|
rm $tarpath
|
||||||
echo "art.shlisselburg.org deployment completed successfully"
|
echo "Done"
|
||||||
+63
-59
@@ -1,78 +1,82 @@
|
|||||||
var path = require("path");
|
var gulp = require('gulp');
|
||||||
var gulp = require("gulp");
|
var _if = require('gulp-if');
|
||||||
var _if = require("gulp-if");
|
var postcss = require('gulp-postcss');
|
||||||
var sass = require("gulp-sass");
|
var sass = require('gulp-sass');
|
||||||
var babel = require("babelify");
|
var imageMin = require('gulp-imagemin');
|
||||||
var minify_css = require("gulp-minify-css");
|
var uglify = require('gulp-uglify');
|
||||||
var autoprefixer = require("gulp-autoprefixer");
|
var minify = require('gulp-minify');
|
||||||
var imageMin = require("gulp-imagemin");
|
var concat = require('gulp-concat');
|
||||||
var uglify = require("gulp-uglify");
|
var browserify = require('gulp-browserify');
|
||||||
var concat = require("gulp-concat");
|
|
||||||
var browserify = require("gulp-browserify");
|
|
||||||
var annotate = require("browserify-ngannotate");
|
|
||||||
|
|
||||||
var is_production = process.env['NODE_ENV'] == 'production';
|
var is_production = process.env['NODE_ENV'] == 'production';
|
||||||
|
|
||||||
gulp.task("concat-bower", function () {
|
gulp.task("concat-bower", function () {
|
||||||
var files = [
|
var files = [
|
||||||
"public/bower_components/jquery/dist/jquery.min.js",
|
"public/bower_components/jquery/dist/jquery.min.js",
|
||||||
"public/bower_components/angular/angular.min.js",
|
"public/bower_components/angular/angular.min.js",
|
||||||
"public/bower_components/angular-route/angular-route.min.js",
|
"public/bower_components/angular-route/angular-route.min.js",
|
||||||
"public/bower_components/angular-animate/angular-animate.min.js",
|
"public/bower_components/angular-animate/angular-animate.min.js",
|
||||||
"public/bower_components/angulartics/dist/angulartics.min.js",
|
"public/bower_components/angulartics/dist/angulartics.min.js",
|
||||||
"public/bower_components/angulartics/dist/angulartics-ga.min.js",
|
"public/bower_components/angulartics/dist/angulartics-ga.min.js",
|
||||||
"public/bower_components/spin.js/spin.js",
|
"public/bower_components/spin.js/spin.js",
|
||||||
"public/bower_components/angular-spinner/angular-spinner.min.js",
|
"public/bower_components/angular-spinner/angular-spinner.min.js",
|
||||||
"public/bower_components/socket.io-client/socket.io.js"
|
"public/bower_components/socket.io-client/socket.io.js"
|
||||||
];
|
];
|
||||||
gulp.src(files)
|
gulp.src(files)
|
||||||
.pipe(concat("libs.js"))
|
.pipe(concat("libs.js"))
|
||||||
.pipe(uglify())
|
.pipe(uglify())
|
||||||
.pipe(gulp.dest("public"));
|
.pipe(gulp.dest("public"));
|
||||||
});
|
});
|
||||||
|
|
||||||
gulp.task("sass", function () {
|
gulp.task('styles', function () {
|
||||||
gulp.src("./assets/style/*.scss")
|
var processors = [
|
||||||
|
require('autoprefixer')({browsers: ['last 1 version']}),
|
||||||
|
require('cssnano')()
|
||||||
|
];
|
||||||
|
|
||||||
|
gulp.src('./assets/style/*.scss')
|
||||||
.pipe(sass())
|
.pipe(sass())
|
||||||
.pipe(concat("style.css"))
|
.pipe(postcss(processors))
|
||||||
.pipe(autoprefixer())
|
.pipe(concat('style.css'))
|
||||||
.pipe(minify_css({processImport:false}))
|
.pipe(gulp.dest('./public'));
|
||||||
.pipe(gulp.dest("public"));
|
|
||||||
});
|
});
|
||||||
|
|
||||||
gulp.task("copy", function(){
|
gulp.task("copy", function () {
|
||||||
gulp.src("./assets/fonts/*")
|
gulp.src("./assets/fonts/*")
|
||||||
.pipe(gulp.dest("./public/fonts"));
|
.pipe(gulp.dest("./public/fonts"));
|
||||||
|
|
||||||
gulp.src("./assets/graphics/*")
|
gulp.src("./assets/graphics/*")
|
||||||
.pipe(gulp.dest("./public/graphics"));
|
.pipe(gulp.dest("./public/graphics"));
|
||||||
|
|
||||||
gulp.src([
|
gulp.src([
|
||||||
"./3rdparty/*",
|
"./3rdparty/*",
|
||||||
"robots.txt"
|
"robots.txt"
|
||||||
])
|
])
|
||||||
.pipe(gulp.dest("./public"));
|
.pipe(gulp.dest("./public"));
|
||||||
});
|
});
|
||||||
|
|
||||||
gulp.task("compile", function(){
|
gulp.task('compile', function () {
|
||||||
gulp.src([
|
gulp.src([
|
||||||
"client/app.js",
|
'client/app.js',
|
||||||
"client/document.js",
|
'client/document.js',
|
||||||
"client/data.js",
|
'client/data.js',
|
||||||
"client/instagram.js"
|
'client/instagram.js'
|
||||||
])
|
])
|
||||||
.pipe(browserify({
|
.pipe(browserify({
|
||||||
transform: [annotate, babel]
|
transform: [
|
||||||
}))
|
require('browserify-ngannotate'),
|
||||||
.pipe(_if(is_production, uglify()))
|
require('babelify')
|
||||||
.pipe(gulp.dest("public"));
|
]
|
||||||
|
}))
|
||||||
|
//.pipe(_if(is_production, minify()))
|
||||||
|
.pipe(gulp.dest('./public'));
|
||||||
});
|
});
|
||||||
|
|
||||||
gulp.task("imagemin", function(){
|
gulp.task("imagemin", function () {
|
||||||
gulp.src("./assets/img/**/*")
|
gulp.src("./assets/img/**/*")
|
||||||
.pipe(imageMin())
|
.pipe(imageMin())
|
||||||
.pipe(gulp.dest("./public/img"));
|
.pipe(gulp.dest("./public/img"));
|
||||||
});
|
});
|
||||||
|
|
||||||
gulp.task("default", ["sass", "compile"]);
|
gulp.task('default', ['styles', 'compile']);
|
||||||
gulp.task("deploy", ["default", "copy", "imagemin"]);
|
gulp.task('deploy', ['default', 'copy', 'imagemin']);
|
||||||
+10
-5
@@ -1,14 +1,19 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
gunzip build.tar.gz
|
dir_path="$1"
|
||||||
tar xf build.tar -C ~/art
|
build_file="$2"
|
||||||
rm build.tar
|
port="$3"
|
||||||
|
|
||||||
|
cd $dir_path
|
||||||
|
|
||||||
|
gunzip -c $build_file | tar xopf -
|
||||||
|
|
||||||
|
#rm build.tar
|
||||||
|
|
||||||
cd ~/art
|
|
||||||
npm install --production --loglevel error
|
npm install --production --loglevel error
|
||||||
|
|
||||||
export NODE_ENV=production
|
export NODE_ENV=production
|
||||||
export PORT=18010
|
export PORT=$port
|
||||||
|
|
||||||
#starting www
|
#starting www
|
||||||
if forever restart bin/www.js; then
|
if forever restart bin/www.js; then
|
||||||
|
|||||||
@@ -0,0 +1,4 @@
|
|||||||
|
rsa-key-size = 4096
|
||||||
|
email = roman@tmshv.ru
|
||||||
|
domains = art.shlisselburg.org, art.shburg.org
|
||||||
|
webroot-path = /home/hoster/www/art.shburg.org/public
|
||||||
+15
-15
@@ -2,47 +2,47 @@
|
|||||||
{
|
{
|
||||||
"name": "statue-2013",
|
"name": "statue-2013",
|
||||||
"title": "устав школы за 2013 год",
|
"title": "устав школы за 2013 год",
|
||||||
"url": "http://static.shburg.org/art/docs/hudozhka_statue-2013.pdf",
|
"url": "https://static.shburg.org/art/docs/hudozhka_statue-2013.pdf",
|
||||||
"preview": "http://static.shburg.org/art/graphics/statue-2013-preview.png",
|
"preview": "https://static.shburg.org/art/graphics/statue-2013-preview.png",
|
||||||
"files": ["http://static.shburg.org/art/docs/hudozhka_statue-2013.pdf"]
|
"files": ["https://static.shburg.org/art/docs/hudozhka_statue-2013.pdf"]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "edu-license",
|
"name": "edu-license",
|
||||||
"title": "образовательная лицензия",
|
"title": "образовательная лицензия",
|
||||||
"url": "/document/edu-license",
|
"url": "/document/edu-license",
|
||||||
"preview": "http://static.shburg.org/art/graphics/license_edu-preview.png",
|
"preview": "https://static.shburg.org/art/graphics/license_edu-preview.png",
|
||||||
"files": [
|
"files": [
|
||||||
"http://static.shburg.org/art/docs/hudozhka_license_edu.jpg",
|
"https://static.shburg.org/art/docs/hudozhka_license_edu.jpg",
|
||||||
"http://static.shburg.org/art/docs/hudozhka_license_edu_back.jpg",
|
"https://static.shburg.org/art/docs/hudozhka_license_edu_back.jpg",
|
||||||
"http://static.shburg.org/art/docs/hudozhka_license_edu_attachment.jpg"
|
"https://static.shburg.org/art/docs/hudozhka_license_edu_attachment.jpg"
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "gov-certificate",
|
"name": "gov-certificate",
|
||||||
"title": "свидетельство о государственной регистрации права",
|
"title": "свидетельство о государственной регистрации права",
|
||||||
"url": "/document/gov-certificate",
|
"url": "/document/gov-certificate",
|
||||||
"preview": "http://static.shburg.org/art/graphics/certificate_gov-preview.png",
|
"preview": "https://static.shburg.org/art/graphics/certificate_gov-preview.png",
|
||||||
"files": ["http://static.shburg.org/art/docs/hudozhka_certificate_gov.jpg"]
|
"files": ["https://static.shburg.org/art/docs/hudozhka_certificate_gov.jpg"]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "VAT",
|
"name": "VAT",
|
||||||
"title": "ИНН",
|
"title": "ИНН",
|
||||||
"url": "/document/VAT",
|
"url": "/document/VAT",
|
||||||
"preview": "http://static.shburg.org/art/graphics/vatin-preview.png",
|
"preview": "https://static.shburg.org/art/graphics/vatin-preview.png",
|
||||||
"files": ["http://static.shburg.org/art/docs/hudozhka_vatin.jpg"]
|
"files": ["https://static.shburg.org/art/docs/hudozhka_vatin.jpg"]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "EGRYL1",
|
"name": "EGRYL1",
|
||||||
"title": "свидетельство о внесении в «ЕГРЮЛ»",
|
"title": "свидетельство о внесении в «ЕГРЮЛ»",
|
||||||
"url": "/document/EGRYL1",
|
"url": "/document/EGRYL1",
|
||||||
"preview": "http://static.shburg.org/art/graphics/certificate_egryl1-preview.png",
|
"preview": "https://static.shburg.org/art/graphics/certificate_egryl1-preview.png",
|
||||||
"files": ["http://static.shburg.org/art/docs/hudozhka_certificate_egryl1.jpg"]
|
"files": ["https://static.shburg.org/art/docs/hudozhka_certificate_egryl1.jpg"]
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "EGRYL2",
|
"name": "EGRYL2",
|
||||||
"title": "свидетельство о внесении в «ЕГРЮЛ»",
|
"title": "свидетельство о внесении в «ЕГРЮЛ»",
|
||||||
"url": "/document/EGRYL2",
|
"url": "/document/EGRYL2",
|
||||||
"preview": "http://static.shburg.org/art/graphics/certificate_egryl2-preview.png",
|
"preview": "https://static.shburg.org/art/graphics/certificate_egryl2-preview.png",
|
||||||
"files": ["http://static.shburg.org/art/docs/hudozhka_certificate_egryl2.jpg"]
|
"files": ["https://static.shburg.org/art/docs/hudozhka_certificate_egryl2.jpg"]
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
+12
-12
@@ -6,7 +6,7 @@
|
|||||||
"edu": "Ленинградский инженерно-строительный институт",
|
"edu": "Ленинградский инженерно-строительный институт",
|
||||||
"diploma": "НВ №222567",
|
"diploma": "НВ №222567",
|
||||||
"status": "",
|
"status": "",
|
||||||
"picture": "http://static.shburg.org/art/team/teacher5.jpg",
|
"picture": "https://static.shburg.org/art/team/teacher5.jpg",
|
||||||
"anchor": "director"
|
"anchor": "director"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
@@ -16,7 +16,7 @@
|
|||||||
"edu": "Академия художеств имени И. Е. Репина",
|
"edu": "Академия художеств имени И. Е. Репина",
|
||||||
"diploma": "B-I №259798",
|
"diploma": "B-I №259798",
|
||||||
"status": "Первая квалификационная категория по живописи и станковой композиции",
|
"status": "Первая квалификационная категория по живописи и станковой композиции",
|
||||||
"picture": "http://static.shburg.org/art/team/teacher10.jpg"
|
"picture": "https://static.shburg.org/art/team/teacher10.jpg"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "od-gogoleva",
|
"id": "od-gogoleva",
|
||||||
@@ -25,7 +25,7 @@
|
|||||||
"edu": "Ленинградский инженерно-строительный институт",
|
"edu": "Ленинградский инженерно-строительный институт",
|
||||||
"diploma": "B-I №222572",
|
"diploma": "B-I №222572",
|
||||||
"status": "Высшая квалификационная категория по живописи и станковой композиции",
|
"status": "Высшая квалификационная категория по живописи и станковой композиции",
|
||||||
"picture": "http://static.shburg.org/art/team/teacher11.jpg"
|
"picture": "https://static.shburg.org/art/team/teacher11.jpg"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "nv-andreeva",
|
"id": "nv-andreeva",
|
||||||
@@ -34,7 +34,7 @@
|
|||||||
"edu": "Санкт-Петербургский государственный университет технологии и дизайна",
|
"edu": "Санкт-Петербургский государственный университет технологии и дизайна",
|
||||||
"diploma": "ИВС 0514253",
|
"diploma": "ИВС 0514253",
|
||||||
"status": "Вторая квалификационная категория по прикладной композиции",
|
"status": "Вторая квалификационная категория по прикладной композиции",
|
||||||
"picture": "http://static.shburg.org/art/team/teacher2.jpg"
|
"picture": "https://static.shburg.org/art/team/teacher2.jpg"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "vv-voronova",
|
"id": "vv-voronova",
|
||||||
@@ -43,7 +43,7 @@
|
|||||||
"edu": "Российский государственный университет имени А. И. Герцена",
|
"edu": "Российский государственный университет имени А. И. Герцена",
|
||||||
"diploma": "ВСГ 0530340",
|
"diploma": "ВСГ 0530340",
|
||||||
"status": "Вторая квалификационная категория по прикладной композиции",
|
"status": "Вторая квалификационная категория по прикладной композиции",
|
||||||
"picture": "http://static.shburg.org/art/team/teacher1.jpg"
|
"picture": "https://static.shburg.org/art/team/teacher1.jpg"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "in-vturina",
|
"id": "in-vturina",
|
||||||
@@ -52,7 +52,7 @@
|
|||||||
"edu": "Кировский государственный педагогический институт имени В. И. Ленина",
|
"edu": "Кировский государственный педагогический институт имени В. И. Ленина",
|
||||||
"diploma": "ШВ №164501",
|
"diploma": "ШВ №164501",
|
||||||
"status": "Первая квалификационная категория по скульптуре",
|
"status": "Первая квалификационная категория по скульптуре",
|
||||||
"picture": "http://static.shburg.org/art/team/teacher8.jpg"
|
"picture": "https://static.shburg.org/art/team/teacher8.jpg"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "my-valkova",
|
"id": "my-valkova",
|
||||||
@@ -61,7 +61,7 @@
|
|||||||
"edu": "Педагогический институт имени А. И. Герцена",
|
"edu": "Педагогический институт имени А. И. Герцена",
|
||||||
"diploma": "ПП №224197",
|
"diploma": "ПП №224197",
|
||||||
"status": "Высшая квалификационная категория по истории искусства",
|
"status": "Высшая квалификационная категория по истории искусства",
|
||||||
"picture": "http://static.shburg.org/art/team/teacher.jpg"
|
"picture": "https://static.shburg.org/art/team/teacher12.jpg"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "rk-timashev",
|
"id": "rk-timashev",
|
||||||
@@ -70,7 +70,7 @@
|
|||||||
"edu": "Санкт-Петербургский государственный архитектурно-строительный университет",
|
"edu": "Санкт-Петербургский государственный архитектурно-строительный университет",
|
||||||
"diploma": "ВСГ 5344910",
|
"diploma": "ВСГ 5344910",
|
||||||
"status": "",
|
"status": "",
|
||||||
"picture": "http://static.shburg.org/art/team/teacher4.jpg"
|
"picture": "https://static.shburg.org/art/team/teacher4.jpg"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "as-timasheva",
|
"id": "as-timasheva",
|
||||||
@@ -79,7 +79,7 @@
|
|||||||
"edu": "Московский архитектурный институт",
|
"edu": "Московский архитектурный институт",
|
||||||
"diploma": "РН 70241",
|
"diploma": "РН 70241",
|
||||||
"status": "",
|
"status": "",
|
||||||
"picture": "http://static.shburg.org/art/team/teacher3.jpg",
|
"picture": "https://static.shburg.org/art/team/teacher3.jpg",
|
||||||
"contacts": {
|
"contacts": {
|
||||||
"instagram": "annm101"
|
"instagram": "annm101"
|
||||||
}
|
}
|
||||||
@@ -91,7 +91,7 @@
|
|||||||
"edu": "Незаконченный Ленинградский государственный педагогический университет имени А. С. Пушкина",
|
"edu": "Незаконченный Ленинградский государственный педагогический университет имени А. С. Пушкина",
|
||||||
"diploma": "",
|
"diploma": "",
|
||||||
"status": "",
|
"status": "",
|
||||||
"picture": "http://static.shburg.org/art/team/teacher9.jpg"
|
"picture": "https://static.shburg.org/art/team/teacher9.jpg"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "ey-tarasova",
|
"id": "ey-tarasova",
|
||||||
@@ -100,11 +100,11 @@
|
|||||||
"edu": "Санкт-Петербургский государственный архитектурно-строительный университет",
|
"edu": "Санкт-Петербургский государственный архитектурно-строительный университет",
|
||||||
"diploma": "ВСВ 1321444",
|
"diploma": "ВСВ 1321444",
|
||||||
"status": "",
|
"status": "",
|
||||||
"picture": "http://static.shburg.org/art/team/teacher.jpg"
|
"picture": "https://static.shburg.org/art/team/teacher.jpg"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"id": "ea-burovtseva",
|
"id": "ea-burovtseva",
|
||||||
"name": "Ев Ал Буровцева",
|
"name": "Елена Ал Буровцева",
|
||||||
"position": "Преподаватель керамики",
|
"position": "Преподаватель керамики",
|
||||||
"edu": "",
|
"edu": "",
|
||||||
"diploma": "",
|
"diploma": "",
|
||||||
|
|||||||
+29
-8
@@ -1,9 +1,16 @@
|
|||||||
server {
|
server {
|
||||||
listen 80;
|
listen 443 ssl;
|
||||||
charset utf-8;
|
charset utf-8;
|
||||||
|
|
||||||
server_name art.shlisselburg.org;
|
server_name art.shlisselburg.org;
|
||||||
|
|
||||||
|
ssl_certificate /etc/letsencrypt/live/art.shlisselburg.org/fullchain.pem;
|
||||||
|
ssl_certificate_key /etc/letsencrypt/live/art.shlisselburg.org/privkey.pem;
|
||||||
|
|
||||||
|
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
|
||||||
|
ssl_prefer_server_ciphers on;
|
||||||
|
ssl_ciphers AES256+EECDH:AES256+EDH:!aNULL;
|
||||||
|
|
||||||
location / {
|
location / {
|
||||||
proxy_pass http://hudozka;
|
proxy_pass http://hudozka;
|
||||||
proxy_http_version 1.1;
|
proxy_http_version 1.1;
|
||||||
@@ -14,14 +21,28 @@ server {
|
|||||||
proxy_set_header X-Forwarded-For $remote_addr;
|
proxy_set_header X-Forwarded-For $remote_addr;
|
||||||
}
|
}
|
||||||
|
|
||||||
error_log /var/log/nginx/hudozhka.error.log;
|
error_log /var/log/nginx/art.shburg.error.log;
|
||||||
access_log /var/log/nginx/hudozhka.access.log;
|
access_log /var/log/nginx/art.shburg.access.log;
|
||||||
|
}
|
||||||
|
|
||||||
|
server {
|
||||||
|
listen 443 ssl;
|
||||||
|
server_name art.shburg.org;
|
||||||
|
|
||||||
|
ssl_certificate /etc/letsencrypt/live/art.shlisselburg.org/fullchain.pem;
|
||||||
|
ssl_certificate_key /etc/letsencrypt/live/art.shlisselburg.org/privkey.pem;
|
||||||
|
|
||||||
|
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
|
||||||
|
ssl_prefer_server_ciphers on;
|
||||||
|
ssl_ciphers AES256+EECDH:AES256+EDH:!aNULL;
|
||||||
|
|
||||||
|
return 301 https://art.shlisselburg.org$request_uri;
|
||||||
}
|
}
|
||||||
|
|
||||||
server {
|
server {
|
||||||
listen 80;
|
listen 80;
|
||||||
server_name art.shburg.org;
|
server_name art.shlisselburg.org art.shburg.org;
|
||||||
return 301 $scheme://art.shlisselburg.org$request_uri;
|
return 301 https://art.shlisselburg.org$request_uri;
|
||||||
}
|
}
|
||||||
|
|
||||||
map $http_upgrade $connection_upgrade {
|
map $http_upgrade $connection_upgrade {
|
||||||
@@ -30,5 +51,5 @@ map $http_upgrade $connection_upgrade {
|
|||||||
}
|
}
|
||||||
|
|
||||||
upstream hudozka {
|
upstream hudozka {
|
||||||
server localhost:18010;
|
server localhost:1800;
|
||||||
}
|
}
|
||||||
+11
-10
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "Hudozka",
|
"name": "Hudozka",
|
||||||
"private": true,
|
"private": true,
|
||||||
"version": "3.1.0",
|
"version": "3.4.1",
|
||||||
"description": "",
|
"description": "",
|
||||||
"main": "bin/www.js",
|
"main": "bin/www.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
@@ -19,12 +19,11 @@
|
|||||||
"koa-bodyparser": "^1.4.1",
|
"koa-bodyparser": "^1.4.1",
|
||||||
"koa-conditional-get": "^1.0.2",
|
"koa-conditional-get": "^1.0.2",
|
||||||
"koa-etag": "^2.0.0",
|
"koa-etag": "^2.0.0",
|
||||||
"koa-helmet": "0.0.3",
|
"koa-helmet": "^1.0.0",
|
||||||
"koa-logger": "^1.2.2",
|
"koa-logger": "^1.2.2",
|
||||||
"koa-prerender": "^1.0.3",
|
"koa-prerender": "^1.0.3",
|
||||||
"koa-route": "^2.4.0",
|
"koa-route": "^2.4.0",
|
||||||
"koa-static": "^1.4.9",
|
"koa-static": "^1.4.9",
|
||||||
"koa-useragent": "0.0.5",
|
|
||||||
"koa.io": "0.0.3",
|
"koa.io": "0.0.3",
|
||||||
"mz": "^1.3.0",
|
"mz": "^1.3.0",
|
||||||
"promised-mongo": "git+https://git@github.com/tmshv/promised-mongo",
|
"promised-mongo": "git+https://git@github.com/tmshv/promised-mongo",
|
||||||
@@ -32,18 +31,20 @@
|
|||||||
"thunkify": "^2.1.2"
|
"thunkify": "^2.1.2"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"babelify": "^6.1.3",
|
"autoprefixer": "^6.2.3",
|
||||||
|
"babelify": "^7.2.0",
|
||||||
"bower": "^1.3.12",
|
"bower": "^1.3.12",
|
||||||
"browserify-ngannotate": "^0.7.1",
|
"browserify-ngannotate": "^2.0.0",
|
||||||
|
"cssnano": "^3.4.0",
|
||||||
"gulp": "^3.8.10",
|
"gulp": "^3.8.10",
|
||||||
"gulp-autoprefixer": "0.0.6",
|
|
||||||
"gulp-browserify": "^0.5.0",
|
"gulp-browserify": "^0.5.0",
|
||||||
"gulp-concat": "^2.4.1",
|
"gulp-concat": "^2.4.1",
|
||||||
"gulp-if": "^1.2.5",
|
"gulp-if": "^2.0.0",
|
||||||
"gulp-imagemin": "~0.1.5",
|
"gulp-imagemin": "~0.1.5",
|
||||||
"gulp-minify-css": "~0.3.0",
|
"gulp-minify": "0.0.5",
|
||||||
"gulp-sass": "^1.2.2",
|
"gulp-postcss": "^6.0.1",
|
||||||
"gulp-uglify": "^1.1.0",
|
"gulp-sass": "^2.1.1",
|
||||||
|
"gulp-uglify": "^1.5.0",
|
||||||
"mocha": "~1.17.1",
|
"mocha": "~1.17.1",
|
||||||
"should": "~3.1.2"
|
"should": "~3.1.2"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,7 +34,7 @@ app.use(prerender(config.prerender));
|
|||||||
app.use(serve(path.join(__dirname, "public")));
|
app.use(serve(path.join(__dirname, "public")));
|
||||||
app.use(serve(path.join(__dirname, "templates")));
|
app.use(serve(path.join(__dirname, "templates")));
|
||||||
|
|
||||||
app.use(helmet.defaults());
|
app.use(helmet());
|
||||||
|
|
||||||
app.use(function *(next) {
|
app.use(function *(next) {
|
||||||
var q = this.query;
|
var q = this.query;
|
||||||
|
|||||||
+2
-2
@@ -15,8 +15,8 @@
|
|||||||
|
|
||||||
<script src="/libs.js"></script>
|
<script src="/libs.js"></script>
|
||||||
|
|
||||||
<link href="http://cdnjs.cloudflare.com/ajax/libs/fotorama/4.6.4/fotorama.css" rel="stylesheet">
|
<link href="//cdnjs.cloudflare.com/ajax/libs/fotorama/4.6.4/fotorama.css" rel="stylesheet">
|
||||||
<script src="http://cdnjs.cloudflare.com/ajax/libs/fotorama/4.6.4/fotorama.js"></script>
|
<script src="//cdnjs.cloudflare.com/ajax/libs/fotorama/4.6.4/fotorama.js"></script>
|
||||||
|
|
||||||
<link rel="stylesheet" href="//cdn.jsdelivr.net/jquery.slick/1.5.7/slick.css"/>
|
<link rel="stylesheet" href="//cdn.jsdelivr.net/jquery.slick/1.5.7/slick.css"/>
|
||||||
<script src="//cdn.jsdelivr.net/jquery.slick/1.5.7/slick.min.js"></script>
|
<script src="//cdn.jsdelivr.net/jquery.slick/1.5.7/slick.min.js"></script>
|
||||||
|
|||||||
+11
-19
@@ -1,36 +1,28 @@
|
|||||||
<div class="main-block">
|
<div class="main-block">
|
||||||
<!--<div>-->
|
<!--<div>-->
|
||||||
<!--<!–<a href="tel://{{telephone}}"></a>–>-->
|
<!--<!–<a href="tel://{{telephone}}"></a>–>-->
|
||||||
<!--<span class="telephone">{{contact.telephone}}</span>-->
|
<!--<span class="telephone">{{contact.telephone}}</span>-->
|
||||||
|
|
||||||
<!--<!–<ul class="submenu">–>-->
|
<!--<!–<ul class="submenu">–>-->
|
||||||
<!--<!–<li><a href="/team#director">директор</a><p>М. Г. Тимашева</p></li>–>-->
|
<!--<!–<li><a href="/team#director">директор</a><p>М. Г. Тимашева</p></li>–>-->
|
||||||
<!--<!–<li><a href="/enter">поступление</a></li>–>-->
|
<!--<!–<li><a href="/enter">поступление</a></li>–>-->
|
||||||
<!--<!–<li><a href="/contacts">контактная информация</a></li>–>-->
|
<!--<!–<li><a href="/contacts">контактная информация</a></li>–>-->
|
||||||
<!--<!–<li><a href="/awards">награды</a></li>–>-->
|
<!--<!–<li><a href="/awards">награды</a></li>–>-->
|
||||||
<!--<!–</ul>–>-->
|
<!--<!–</ul>–>-->
|
||||||
<!--</div>-->
|
<!--</div>-->
|
||||||
|
|
||||||
<h1>Шлиссельбургская детская художественная школа</h1>
|
<h1>Шлиссельбургская детская художественная школа</h1>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="tape-block">
|
<div class="tape-block">
|
||||||
<div class="tape-block-content">
|
<div class="tape-block__body">
|
||||||
<div class="tape tape-tl"></div>
|
<div class="tape tape-tl"></div>
|
||||||
<div class="tape tape-tr"></div>
|
<div class="tape tape-tr"></div>
|
||||||
<div class="tape tape-bl"></div>
|
<div class="tape tape-bl"></div>
|
||||||
<div class="tape tape-br"></div>
|
<div class="tape tape-br"></div>
|
||||||
|
|
||||||
<div class="fotorama"
|
<div class="tape-block__content"></div>
|
||||||
data-transition="crossfade"
|
|
||||||
data-autoplay="6000"
|
|
||||||
data-nav="false"
|
|
||||||
data-arrows="false"
|
|
||||||
data-width="100%"
|
|
||||||
data-fit="cover"
|
|
||||||
data-loop="true">
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<timeline></timeline>
|
<timeline></timeline>
|
||||||
@@ -1,18 +1,5 @@
|
|||||||
<img class="background-picture" src="http://static.shlisselburg.org/art/team/team.jpg">
|
<!--<background-picture src="'http://static.shlisselburg.org/art/team/team.jpg'"></background-picture>-->
|
||||||
|
|
||||||
<div class="team-block">
|
<div class="team-block">
|
||||||
<ul ng-controller="TeamController">
|
<team-member-profile ng-repeat="person in teamMembers track by $index" profile="person"/>
|
||||||
<li class="team-member" ng-repeat="person in team">
|
|
||||||
<a name="{{person.anchor}}"></a>
|
|
||||||
<img ng-src="{{person.picture}}">
|
|
||||||
<div class="info">
|
|
||||||
<h3>{{person.names[1]}} {{person.names[2]}} <span>{{person.names[3]}}</span></h3>
|
|
||||||
<p>{{person.position}}</p>
|
|
||||||
<p>{{person.status}}</p>
|
|
||||||
<p></p>
|
|
||||||
<p class="edu">{{person.edu}} </p>
|
|
||||||
<p class="diploma">Диплом {{person.diploma}}</p>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
</ul>
|
|
||||||
</div>
|
</div>
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
<div class="team-member">
|
||||||
|
<a name="{{person.anchor}}"></a>
|
||||||
|
|
||||||
|
<div class="team-member__picture">
|
||||||
|
<img ng-src="{{person.picture}}">
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="team-member__info">
|
||||||
|
<h3>{{person.names[1]}} {{person.names[2]}} <span>{{person.names[3]}}</span></h3>
|
||||||
|
|
||||||
|
<p>{{person.position}}</p>
|
||||||
|
<p>{{person.status}}</p>
|
||||||
|
<p></p>
|
||||||
|
|
||||||
|
<p class="edu">{{person.edu}} </p>
|
||||||
|
<p class="diploma">Диплом {{person.diploma}}</p>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
Reference in new issue
Block a user