Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a34b9ecf6e | ||
|
|
8b533f52a6 | ||
|
|
6994549360 | ||
|
|
85ca132c3e | ||
|
|
af5f5dc5b1 | ||
|
|
ba2891d09b | ||
|
|
d892105e9f | ||
|
|
467753a2e1 | ||
|
|
ec51adbfbe | ||
|
|
cc14b51fbb | ||
|
|
5dee8fd44a | ||
|
|
d178c1220f | ||
|
|
4d0c64bb93 | ||
|
|
6e4749476a | ||
|
|
141a8ebdf4 | ||
|
|
54d3ee8ecc | ||
|
|
02906582ac | ||
|
|
22edc3b275 | ||
|
|
a694abb3e5 | ||
|
|
6af90258c9 | ||
|
|
38381b5605 | ||
|
|
f6a43ca7e1 | ||
|
|
1de5e31515 | ||
|
|
14d89adb9d | ||
|
|
f3eb176dc4 | ||
|
|
1226573b8b | ||
|
|
6c27308c07 | ||
|
|
737bebec15 | ||
|
|
627a18c5fa | ||
|
|
1d2e17a581 | ||
|
|
7f7dcf84f3 |
No files matched your search
@@ -2,6 +2,8 @@
|
|||||||
.idea
|
.idea
|
||||||
*.sublime*
|
*.sublime*
|
||||||
|
|
||||||
|
private.json
|
||||||
|
|
||||||
/node_modules
|
/node_modules
|
||||||
/bower_components
|
/bower_components
|
||||||
/public
|
/public
|
||||||
File renamed without changes.
-22
@@ -1,22 +0,0 @@
|
|||||||
/**
|
|
||||||
* Created by tmshv on 22/11/14.
|
|
||||||
*/
|
|
||||||
|
|
||||||
var Router = require("express").Router;
|
|
||||||
var Post = require("../schema/post");
|
|
||||||
|
|
||||||
module.exports = function (app) {
|
|
||||||
var router;
|
|
||||||
router = new Router();
|
|
||||||
router.route("/api/feed")
|
|
||||||
.get(function (req, res) {
|
|
||||||
Post.find({}).exec(function (error, list) {
|
|
||||||
if (error) return res.error(error);
|
|
||||||
|
|
||||||
res.json(list.map(function (post) {
|
|
||||||
return post.toObject();
|
|
||||||
}));
|
|
||||||
});
|
|
||||||
});
|
|
||||||
app.use(router);
|
|
||||||
};
|
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
.error-404{
|
||||||
|
text-align: center;
|
||||||
|
margin: 40px;
|
||||||
|
|
||||||
|
h1{
|
||||||
|
font-size: 16pt;
|
||||||
|
font-weight: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
img{
|
||||||
|
margin: 20px;
|
||||||
|
width: 40%;
|
||||||
|
max-width: 800px;
|
||||||
|
}
|
||||||
|
}
|
||||||
+1
-1
@@ -74,7 +74,7 @@ function instagramSandbox(ig, res) {
|
|||||||
// // res.json(result);
|
// // res.json(result);
|
||||||
// //});
|
// //});
|
||||||
|
|
||||||
findByTag(ig, "shlb_hudozka", 10)
|
findByTag(ig, "shlb_hudozka", 50)
|
||||||
.catch(function (error) {
|
.catch(function (error) {
|
||||||
console.log(error);
|
console.log(error);
|
||||||
})
|
})
|
||||||
|
|||||||
+1
-1
@@ -6,7 +6,7 @@ var config = require("../config");
|
|||||||
var db = require("../core/db");
|
var db = require("../core/db");
|
||||||
var server = require("../server");
|
var server = require("../server");
|
||||||
|
|
||||||
db.init(config.db)
|
db.init(config.db.uri)
|
||||||
.then(function () {
|
.then(function () {
|
||||||
server(config.port);
|
server(config.port);
|
||||||
});
|
});
|
||||||
+2
-1
@@ -24,6 +24,7 @@
|
|||||||
"jquery": "~2.1.1",
|
"jquery": "~2.1.1",
|
||||||
"angular-route": "~1.3.3",
|
"angular-route": "~1.3.3",
|
||||||
"angular-animate": "~1.3.3",
|
"angular-animate": "~1.3.3",
|
||||||
"angular": "~1.3.3"
|
"angular": "~1.3.3",
|
||||||
|
"angulartics": "~0.17.2"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
+2
-2
@@ -5,8 +5,8 @@
|
|||||||
module.exports = function(app) {
|
module.exports = function(app) {
|
||||||
app.factory("api", function ($http) {
|
app.factory("api", function ($http) {
|
||||||
var api = {};
|
var api = {};
|
||||||
var Endpoint = require("./feed");
|
var Endpoint = require("./news");
|
||||||
api.feed = new Endpoint($http);
|
api.news = new Endpoint($http);
|
||||||
|
|
||||||
return api;
|
return api;
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -6,8 +6,8 @@ function APIFeed(http){
|
|||||||
this.request = http;
|
this.request = http;
|
||||||
}
|
}
|
||||||
|
|
||||||
APIFeed.prototype.post = function() {
|
APIFeed.prototype.feed = function() {
|
||||||
return this.request.get("/api/feed");
|
return this.request.get("/news");
|
||||||
};
|
};
|
||||||
|
|
||||||
module.exports = APIFeed;
|
module.exports = APIFeed;
|
||||||
+24
-6
@@ -2,31 +2,41 @@
|
|||||||
* Created by tmshv on 04/11/14.
|
* Created by tmshv on 04/11/14.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
var app = angular.module("hudozhka", ["ngRoute", "data.hudozhka"]);
|
var app = angular.module("hudozhka", [
|
||||||
|
"hudozhka.data",
|
||||||
|
"ngRoute",
|
||||||
|
"angulartics",
|
||||||
|
"angulartics.google.analytics"
|
||||||
|
]);
|
||||||
|
|
||||||
app.config(function ($locationProvider, $routeProvider) {
|
app.config(function ($locationProvider, $routeProvider) {
|
||||||
|
$locationProvider.hashPrefix("!");
|
||||||
$locationProvider.html5Mode(true);
|
$locationProvider.html5Mode(true);
|
||||||
|
|
||||||
var routes = [
|
var routes = [
|
||||||
{
|
{
|
||||||
name: "/",
|
name: "/",
|
||||||
templateUrl: "/views/home.html",
|
templateUrl: "/views/home.html",
|
||||||
controller: "HomePageController"
|
controller: "HomePageController",
|
||||||
|
title:"ДШХ Шлиссельбурга"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "/schedule",
|
name: "/schedule",
|
||||||
templateUrl: "/views/schedule.html",
|
templateUrl: "/views/schedule.html",
|
||||||
controller: "SchedulePageController"
|
controller: "SchedulePageController",
|
||||||
|
title:"Расписание"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "/team",
|
name: "/team",
|
||||||
templateUrl: "/views/team.html",
|
templateUrl: "/views/team.html",
|
||||||
controller: "TeamPageController"
|
controller: "TeamPageController",
|
||||||
|
title:"Преподаватели"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: "/docs",
|
name: "/docs",
|
||||||
templateUrl: "/views/docs.html",
|
templateUrl: "/views/docs.html",
|
||||||
controller: "DocsPageController"
|
controller: "DocsPageController",
|
||||||
|
title: "Документы"
|
||||||
}
|
}
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -35,10 +45,18 @@ app.config(function ($locationProvider, $routeProvider) {
|
|||||||
});
|
});
|
||||||
|
|
||||||
$routeProvider.otherwise({
|
$routeProvider.otherwise({
|
||||||
redirectTo: "/"
|
templateUrl: "/404.html"
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
app.run(function($location, $rootScope, $http) {
|
||||||
|
$rootScope.$on("$routeChangeSuccess", function (event, current) {
|
||||||
|
$rootScope.title = current["$$route"].title;
|
||||||
|
});
|
||||||
|
|
||||||
|
$http.defaults.headers.common["Accept"] = "application/json";
|
||||||
|
});
|
||||||
|
|
||||||
require("./api/api")(app);
|
require("./api/api")(app);
|
||||||
require("./ui/menu")(app);
|
require("./ui/menu")(app);
|
||||||
require("./ui/timeline")(app);
|
require("./ui/timeline")(app);
|
||||||
|
|||||||
+1
-1
@@ -2,7 +2,7 @@
|
|||||||
* Created by tmshv on 06/11/14.
|
* Created by tmshv on 06/11/14.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
angular.module("data.hudozhka", [])
|
angular.module("hudozhka.data", [])
|
||||||
.service("team", function () {
|
.service("team", function () {
|
||||||
return require("../models/team");
|
return require("../models/team");
|
||||||
})
|
})
|
||||||
|
|||||||
+24
-30
@@ -1,36 +1,30 @@
|
|||||||
var app = angular.module("document.hudozhka", ["ngRoute", "data.hudozhka"]);
|
var app = angular.module("hudozhka.document", [
|
||||||
|
"hudozhka.data",
|
||||||
|
"angulartics",
|
||||||
|
"angulartics.google.analytics"
|
||||||
|
]);
|
||||||
|
|
||||||
app.config(function ($locationProvider, $sceDelegateProvider, $routeProvider) {
|
app.factory("docname", function ($location) {
|
||||||
$locationProvider.html5Mode(true);
|
return function(){
|
||||||
//$routeProvider
|
var abs = $location.absUrl();
|
||||||
// .when("/document/:doc", {
|
var doc_uri = /\/([\w-]+)$/.exec(abs);
|
||||||
// controller: "DocumentPageController"
|
if(doc_uri.length >= 2) {
|
||||||
// })
|
return doc_uri[1];
|
||||||
// .otherwise({
|
}else{
|
||||||
// redirectTo: "/"
|
return null;
|
||||||
// });
|
}
|
||||||
|
}
|
||||||
$sceDelegateProvider.resourceUrlWhitelist([
|
|
||||||
"self",
|
|
||||||
"http://static.shburg.org/**",
|
|
||||||
"http://static.shlisselburg.org/**"
|
|
||||||
]);
|
|
||||||
});
|
});
|
||||||
|
|
||||||
//app.factory("document", function () {
|
app.controller("DocumentController", function ($rootScope, $scope, docs, docname) {
|
||||||
// var document;
|
|
||||||
// return {
|
|
||||||
// init:function(doc) {
|
|
||||||
// document = doc;
|
|
||||||
// },
|
|
||||||
//
|
|
||||||
// document: document
|
|
||||||
// };
|
|
||||||
//});
|
|
||||||
|
|
||||||
app.controller("DocumentPageController", function ($scope) {
|
|
||||||
$scope.pageClass = "page-document";
|
$scope.pageClass = "page-document";
|
||||||
|
|
||||||
|
var n = docname();
|
||||||
|
if(n) {
|
||||||
|
var d = docs.doc(n);
|
||||||
|
$scope.document = d;
|
||||||
|
$rootScope.title = d.title;
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
require("./ui/pdf")(app);
|
require("./filters/uppercase-first")(app);
|
||||||
require("./ui/doc-controller")(app);
|
|
||||||
@@ -2,20 +2,23 @@ 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("ScheduleController", function ($scope, schedule, team) {
|
app.controller("ScheduleController", function ($scope, $http, schedule, team) {
|
||||||
var now = new Date();
|
var now = new Date();
|
||||||
var dates = getDates(now);
|
var dates = getDates(now);
|
||||||
|
|
||||||
var sem = "late";
|
var sem = "autumn";
|
||||||
$scope.sem = [["early", "весеннего"], ["late", "осеннего"]].reduce(function (s, word) {
|
$scope.sem = [["spring", "весеннего"], ["autumn", "осеннего"]].reduce(function (s, word) {
|
||||||
if (word[0] === sem) return word[1];
|
if (word[0] === sem) return word[1];
|
||||||
});
|
});
|
||||||
$scope.year = 2014;
|
$scope.year = "2014-2015";
|
||||||
|
|
||||||
$scope.schedule = schedule($scope.year, sem, [
|
$http.get("/schedule/2014-2015/spring")
|
||||||
populate(team.short, "teacher"),
|
.success(function (s) {
|
||||||
populate(course.name, "lesson")
|
$scope.schedule = schedule.populate(s.schedule, [
|
||||||
]);
|
populate(team.short, "teacher"),
|
||||||
|
populate(course.name, "lesson")
|
||||||
|
]);
|
||||||
|
});
|
||||||
|
|
||||||
$scope.isToday = function (weekDayIndex) {
|
$scope.isToday = function (weekDayIndex) {
|
||||||
return (now.getDay() - 1) === weekDayIndex;
|
return (now.getDay() - 1) === weekDayIndex;
|
||||||
|
|||||||
@@ -1,52 +0,0 @@
|
|||||||
/**
|
|
||||||
* Created by tmshv on 24/11/14.
|
|
||||||
*/
|
|
||||||
|
|
||||||
module.exports = function (app) {
|
|
||||||
app.controller("DocumentController", function ($scope, $location, docs) {
|
|
||||||
$scope.showControls = false;
|
|
||||||
|
|
||||||
var doc_uri = $location.$$path.replace("/document/", "");
|
|
||||||
$scope.document = docs.doc(doc_uri);
|
|
||||||
$scope.document.currentPage = 0;
|
|
||||||
|
|
||||||
$scope.viewDocument = function () {
|
|
||||||
switch ($scope.document.viewer) {
|
|
||||||
case "img-sheet":
|
|
||||||
$scope.showControls = false;
|
|
||||||
return "/views/document-image.html";
|
|
||||||
|
|
||||||
default:
|
|
||||||
$scope.showControls = true;
|
|
||||||
return "/views/document-paper.html";
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
$scope.totalPages = $scope.document.url.length;
|
|
||||||
$scope.currentPage = 1;
|
|
||||||
|
|
||||||
$scope.prevPage = function () {
|
|
||||||
var i = $scope.currentPage - 1;
|
|
||||||
if (i > 0) {
|
|
||||||
$scope.currentPage = i;
|
|
||||||
$scope.document.currentPage = i - 1;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
$scope.nextPage = function () {
|
|
||||||
var i = $scope.currentPage + 1;
|
|
||||||
if (i <= $scope.totalPages) {
|
|
||||||
$scope.currentPage = i;
|
|
||||||
$scope.document.currentPage = i - 1;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
$scope.update = function () {
|
|
||||||
var i = $scope.currentPage;
|
|
||||||
if (i > 0 && i <= $scope.totalPages) {
|
|
||||||
$scope.currentPage = i;
|
|
||||||
$scope.document.currentPage = i - 1;
|
|
||||||
}
|
|
||||||
};
|
|
||||||
});
|
|
||||||
};
|
|
||||||
@@ -1,148 +0,0 @@
|
|||||||
/**
|
|
||||||
* Created by tmshv on 24/11/14.
|
|
||||||
*/
|
|
||||||
|
|
||||||
module.exports = function (app) {
|
|
||||||
app.directive("pdf", function () {
|
|
||||||
return {
|
|
||||||
scope: {
|
|
||||||
document: "="
|
|
||||||
},
|
|
||||||
templateUrl: "/views/pdf.html",
|
|
||||||
link: function (scope, element, attrs) {
|
|
||||||
|
|
||||||
},
|
|
||||||
|
|
||||||
controller: function ($scope) {
|
|
||||||
var doc = $scope.document;
|
|
||||||
if (doc.extra && doc.extra.style) {
|
|
||||||
angular.element("head").append('<link href="' + doc.extra.style + '" rel="stylesheet">');
|
|
||||||
}
|
|
||||||
|
|
||||||
$scope.$watch(
|
|
||||||
function () {
|
|
||||||
return $scope.document.currentPage;
|
|
||||||
},
|
|
||||||
function (value) {
|
|
||||||
value = parseInt(value);
|
|
||||||
try{
|
|
||||||
$scope.pageURL = $scope.document.url[value];
|
|
||||||
}catch (error){
|
|
||||||
$scope.pageURL = "";
|
|
||||||
}
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
//const PAGES = [];
|
|
||||||
//var currentPageIndex = 0;
|
|
||||||
//var doc = new Document(location.pathname.replace(/\/\d+$/, ""));
|
|
||||||
|
|
||||||
//$(document).ready(function(){
|
|
||||||
// try{
|
|
||||||
// var hrefPage = /\/(\d+)$/.exec(location.href)[1];
|
|
||||||
// currentPageIndex = parseInt(hrefPage) - 1;
|
|
||||||
// }catch(error){
|
|
||||||
//
|
|
||||||
// }
|
|
||||||
|
|
||||||
//$("#buttonNext").click(function(event){
|
|
||||||
// loadNext();
|
|
||||||
//});
|
|
||||||
//
|
|
||||||
//$("#buttonPrev").click(function(event){
|
|
||||||
// loadPrevious();
|
|
||||||
//});
|
|
||||||
//
|
|
||||||
//$("#page-container .pf").each(function(index, elem){
|
|
||||||
// var url = $(elem).data("page-url");
|
|
||||||
// doc.pages.push(url);
|
|
||||||
//});
|
|
||||||
//
|
|
||||||
//$("#currentPage").attr("max", doc.pages.length);
|
|
||||||
//$("#totalPages").text(doc.pages.length);
|
|
||||||
//$("#currentPage").change(function(){
|
|
||||||
// var i = parseInt($(this).val()) - 1;
|
|
||||||
// if(i && doc.hasPage(i)){
|
|
||||||
// loadPage(i);
|
|
||||||
// }
|
|
||||||
//});
|
|
||||||
//
|
|
||||||
//$("#page-container").html("");
|
|
||||||
//loadPage(currentPageIndex);
|
|
||||||
//
|
|
||||||
//window.addEventListener("popstate", function(event){
|
|
||||||
// console.log("pops");
|
|
||||||
// console.log(event);
|
|
||||||
// var i = event.state;
|
|
||||||
// loadPage(i);
|
|
||||||
//});
|
|
||||||
//});
|
|
||||||
|
|
||||||
//function loadNext(){
|
|
||||||
// var i = currentPageIndex + 1;
|
|
||||||
// if(doc.hasPage(i)){
|
|
||||||
// loadPage(i);
|
|
||||||
// }else{
|
|
||||||
//
|
|
||||||
// }
|
|
||||||
//}
|
|
||||||
//
|
|
||||||
//function loadPrevious(){
|
|
||||||
// var i = currentPageIndex - 1;
|
|
||||||
// if(doc.hasPage(i)){
|
|
||||||
// loadPage(i);
|
|
||||||
// }else{
|
|
||||||
//
|
|
||||||
// }
|
|
||||||
//}
|
|
||||||
//
|
|
||||||
//function loadPage(index){
|
|
||||||
// if(doc.hasPage(index)){
|
|
||||||
// var url = doc.pages[index];
|
|
||||||
// // $.ajax(
|
|
||||||
// // url,
|
|
||||||
//
|
|
||||||
// // {
|
|
||||||
// // xhrFields: {
|
|
||||||
// // crossDomain: true,
|
|
||||||
// // withCredentials: true
|
|
||||||
// // },
|
|
||||||
//
|
|
||||||
// // success: function(data, status){
|
|
||||||
// // currentPageIndex = index;
|
|
||||||
// // $("#currentPage").val(doc.page(currentPageIndex));
|
|
||||||
// // $("#page-container").html(data);
|
|
||||||
//
|
|
||||||
// // var p = doc.page(currentPageIndex);
|
|
||||||
// // console.log("look at page ", p);
|
|
||||||
// // window.history.pushState(
|
|
||||||
// // currentPageIndex,
|
|
||||||
// // "State 2013 — " + p,
|
|
||||||
// // doc.getPageURL(p)
|
|
||||||
// // );
|
|
||||||
// // },
|
|
||||||
//
|
|
||||||
// // error: function(xhr, aaa, error){
|
|
||||||
// // console.log(error);
|
|
||||||
// // }
|
|
||||||
// // }
|
|
||||||
// // );
|
|
||||||
// $.get(url, function(data){
|
|
||||||
// currentPageIndex = index;
|
|
||||||
// $("#currentPage").val(doc.page(currentPageIndex));
|
|
||||||
// $("#page-container").html(data);
|
|
||||||
//
|
|
||||||
// var p = doc.page(currentPageIndex);
|
|
||||||
// console.log("look at page ", p);
|
|
||||||
// window.history.pushState(
|
|
||||||
// currentPageIndex,
|
|
||||||
// "State 2013 — " + p,
|
|
||||||
// doc.getPageURL(p)
|
|
||||||
// );
|
|
||||||
// });
|
|
||||||
// }
|
|
||||||
//}
|
|
||||||
}
|
|
||||||
};
|
|
||||||
});
|
|
||||||
};
|
|
||||||
+11
-2
@@ -18,6 +18,14 @@ function personByInstagram(list, instagram){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function postText(post){
|
||||||
|
try{
|
||||||
|
return post.data.caption.text.replace(/#[\w_]+/, "")
|
||||||
|
}catch(error){
|
||||||
|
return "";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
module.exports = function(app) {
|
module.exports = function(app) {
|
||||||
app.directive("timeline", function (team) {
|
app.directive("timeline", function (team) {
|
||||||
return {
|
return {
|
||||||
@@ -31,18 +39,19 @@ module.exports = function(app) {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
controller: function($scope, api){
|
controller: function($scope, api){
|
||||||
api.feed.post()
|
api.news.feed()
|
||||||
.success(function (list) {
|
.success(function (list) {
|
||||||
$scope.feed = list.map(function (post) {
|
$scope.feed = list.map(function (post) {
|
||||||
var author_id = personByInstagram(team.team, post.data.user.username);
|
var author_id = personByInstagram(team.team, post.data.user.username);
|
||||||
var name = author_id ? team.short(author_id) : post.data.user.username;
|
var name = author_id ? team.short(author_id) : post.data.user.username;
|
||||||
|
|
||||||
return {
|
return {
|
||||||
date: post.publishDate,
|
date: post.publishDate,
|
||||||
image: post.data.images.standard_resolution.url,
|
image: post.data.images.standard_resolution.url,
|
||||||
url: post.data.link,
|
url: post.data.link,
|
||||||
username: name,
|
username: name,
|
||||||
userpic: post.data.user.profile_picture,
|
userpic: post.data.user.profile_picture,
|
||||||
text: post.data.caption.text.replace(/#[\w_]+/, "")
|
text: postText(post)
|
||||||
};
|
};
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
var fs = require("fs");
|
||||||
const MENU = require("./models/menu.json");
|
const MENU = require("./models/menu.json");
|
||||||
|
|
||||||
const team = require("./models/team");
|
const team = require("./models/team");
|
||||||
@@ -5,7 +6,10 @@ const course = require("./models/course");
|
|||||||
const document = require("./models/document");
|
const document = require("./models/document");
|
||||||
const schedule = require("./models/schedule");
|
const schedule = require("./models/schedule");
|
||||||
|
|
||||||
module.exports = {
|
var privateFile = process.env["PRIVATE"] || "private.json";
|
||||||
|
var privateData = JSON.parse(fs.readFileSync(privateFile, "utf-8"));
|
||||||
|
|
||||||
|
var config = {
|
||||||
port: process.env["PORT"] || 3000,
|
port: process.env["PORT"] || 3000,
|
||||||
pub: "./",
|
pub: "./",
|
||||||
data: {
|
data: {
|
||||||
@@ -19,12 +23,11 @@ module.exports = {
|
|||||||
uri: "mongodb://localhost:27017/hudozka"
|
uri: "mongodb://localhost:27017/hudozka"
|
||||||
},
|
},
|
||||||
|
|
||||||
instagram:{
|
|
||||||
client_id: "f17901a26a5e4a5ca4544dd0eebe2a15",
|
|
||||||
client_secret: "ecce08509871427ab9f8f383318315fc",
|
|
||||||
redirect_uri: "http://72.tmshv.ru:1337/auth/instagram/callback"
|
|
||||||
},
|
|
||||||
|
|
||||||
tags: ["shlb_hudozka"]
|
tags: ["shlb_hudozka"]
|
||||||
};
|
};
|
||||||
|
|
||||||
|
module.exports = Object.keys(privateData)
|
||||||
|
.reduce(function (config, key) {
|
||||||
|
config[key] = privateData[key];
|
||||||
|
return config;
|
||||||
|
}, config);
|
||||||
+32
-8
@@ -2,17 +2,41 @@
|
|||||||
* Created by tmshv on 22/11/14.
|
* Created by tmshv on 22/11/14.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
var mongoose = require("mongoose");
|
var mongo = require("promised-mongo");
|
||||||
var Promise = require("promise");
|
var ObjectId = mongo.ObjectId;
|
||||||
|
|
||||||
|
var client = null;
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
init: function (options) {
|
init: function (uri) {
|
||||||
return new Promise(function (resolve, reject) {
|
//noinspection JSUnresolvedFunction
|
||||||
mongoose.connect(options.uri, function (error) {
|
return new Promise(function (resolve) {
|
||||||
if (error) return reject(error);
|
client = mongo(uri);
|
||||||
resolve();
|
resolve();
|
||||||
});
|
|
||||||
});
|
});
|
||||||
|
},
|
||||||
|
|
||||||
|
get db() {
|
||||||
|
return client;
|
||||||
|
},
|
||||||
|
|
||||||
|
c: function(name){
|
||||||
|
return client.collection(name);
|
||||||
|
},
|
||||||
|
|
||||||
|
id: function(i) {
|
||||||
|
if(typeof i === "string"){
|
||||||
|
return ObjectId(i);
|
||||||
|
}
|
||||||
|
|
||||||
|
else if(i instanceof ObjectId) {
|
||||||
|
return i;
|
||||||
|
}
|
||||||
|
|
||||||
|
else if(i instanceof Object) {
|
||||||
|
return "_id" in i ? ObjectId(i._id) : null;
|
||||||
|
}
|
||||||
|
|
||||||
|
return null;
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
@@ -1,16 +1,22 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
tar cf ~/www-build.tar \
|
tarfile=build.tar.gz
|
||||||
|
tarpath=$TMPDIR$tarfile
|
||||||
|
|
||||||
|
env GZIP=-9 tar -czf $tarpath \
|
||||||
|
--disable-copyfile \
|
||||||
--exclude=node_modules \
|
--exclude=node_modules \
|
||||||
--exclude=bower_components \
|
|
||||||
--exclude=.git \
|
--exclude=.git \
|
||||||
--exclude=.idea \
|
--exclude=.idea \
|
||||||
|
--exclude=.DS_Store \
|
||||||
--exclude=deploy.sh \
|
--exclude=deploy.sh \
|
||||||
--exclude=install.sh .
|
--exclude=install.sh .
|
||||||
|
|
||||||
|
echo "build file: $tarpath"
|
||||||
|
|
||||||
ssh shburg.et "rm -rf art/*"
|
ssh shburg.et "rm -rf art/*"
|
||||||
scp ~/www-build.tar shburg@37.139.6.120:~
|
scp $tarpath shburg@37.139.6.120:~
|
||||||
scp install.sh shburg@37.139.6.120:~
|
scp install.sh shburg@37.139.6.120:~
|
||||||
ssh shburg.et "./install.sh && rm ./install.sh"
|
ssh shburg.et "./install.sh"
|
||||||
rm ~/www-build.tar
|
rm $tarpath
|
||||||
echo "art.shburg.org deployment completed successfully"
|
echo "art.shlisselburg.org deployment completed successfully"
|
||||||
+18
-8
@@ -1,19 +1,20 @@
|
|||||||
var path = require("path");
|
var path = require("path");
|
||||||
var gulp = require("gulp");
|
var gulp = require("gulp");
|
||||||
var sass = require("gulp-sass");
|
var sass = require("gulp-sass");
|
||||||
var minifyCSS = require("gulp-minify-css");
|
var minify_css = require("gulp-minify-css");
|
||||||
var autoprefixer = require("gulp-autoprefixer");
|
var autoprefixer = require("gulp-autoprefixer");
|
||||||
var imageMin = require("gulp-imagemin");
|
var imageMin = require("gulp-imagemin");
|
||||||
var uglify = require("gulp-uglify");
|
var uglify = require("gulp-uglify");
|
||||||
var concat = require("gulp-concat");
|
var concat = require("gulp-concat");
|
||||||
var browserify = require("gulp-browserify");
|
var browserify = require("gulp-browserify");
|
||||||
|
var annotate = require("browserify-ngannotate");
|
||||||
|
|
||||||
gulp.task("sass", function () {
|
gulp.task("sass", function () {
|
||||||
gulp.src("./assets/style/*.scss")
|
gulp.src("./assets/style/*.scss")
|
||||||
.pipe(sass())
|
.pipe(sass())
|
||||||
.pipe(concat("style.css"))
|
.pipe(concat("style.css"))
|
||||||
.pipe(autoprefixer())
|
.pipe(autoprefixer())
|
||||||
//.pipe(minifyCSS({processImport:false}))
|
.pipe(minify_css({processImport:false}))
|
||||||
.pipe(gulp.dest("public"));
|
.pipe(gulp.dest("public"));
|
||||||
});
|
});
|
||||||
|
|
||||||
@@ -21,24 +22,33 @@ 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/style/*.css")
|
|
||||||
.pipe(gulp.dest("./public/s"));
|
|
||||||
|
|
||||||
gulp.src("./assets/graphics/*")
|
gulp.src("./assets/graphics/*")
|
||||||
.pipe(gulp.dest("./public/graphics"));
|
.pipe(gulp.dest("./public/graphics"));
|
||||||
|
|
||||||
|
gulp.src("./3rdparty/*")
|
||||||
|
.pipe(gulp.dest("./public"));
|
||||||
});
|
});
|
||||||
|
|
||||||
gulp.task("compile", function(){
|
gulp.task("compile", function(){
|
||||||
gulp.src("client/app.js")
|
gulp.src("client/app.js")
|
||||||
.pipe(browserify())
|
.pipe(browserify({
|
||||||
|
transform: [annotate]
|
||||||
|
}))
|
||||||
|
.pipe(uglify())
|
||||||
.pipe(gulp.dest("public"));
|
.pipe(gulp.dest("public"));
|
||||||
|
|
||||||
gulp.src("client/document.js")
|
gulp.src("client/document.js")
|
||||||
.pipe(browserify())
|
.pipe(browserify({
|
||||||
|
transform: [annotate]
|
||||||
|
}))
|
||||||
|
.pipe(uglify())
|
||||||
.pipe(gulp.dest("public"));
|
.pipe(gulp.dest("public"));
|
||||||
|
|
||||||
gulp.src("client/data.js")
|
gulp.src("client/data.js")
|
||||||
.pipe(browserify())
|
.pipe(browserify({
|
||||||
|
transform: [annotate]
|
||||||
|
}))
|
||||||
|
.pipe(uglify())
|
||||||
.pipe(gulp.dest("public"));
|
.pipe(gulp.dest("public"));
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|||||||
+5
-4
@@ -1,10 +1,11 @@
|
|||||||
#!/bin/sh
|
#!/bin/sh
|
||||||
|
|
||||||
|
gunzip build.tar.gz
|
||||||
|
tar xf build.tar -C ~/art
|
||||||
|
rm build.tar
|
||||||
|
|
||||||
cd ~/art
|
cd ~/art
|
||||||
tar xvf ../www-build.tar
|
npm install --production --loglevel error
|
||||||
rm ../www-build.tar
|
|
||||||
npm install --production
|
|
||||||
node_modules/bower/bin/bower install
|
|
||||||
|
|
||||||
export NODE_ENV=production
|
export NODE_ENV=production
|
||||||
export PORT=18010
|
export PORT=18010
|
||||||
|
|||||||
@@ -1,18 +0,0 @@
|
|||||||
const CONTENT_PATH = "http://hudozhka.tmshv.ru/files/";
|
|
||||||
const CONTENT_PATH = "/files/";
|
|
||||||
|
|
||||||
var fs = require("fs");
|
|
||||||
|
|
||||||
function gatherNotFoundCollection (dir) {
|
|
||||||
var list = fs.readdirSync(dir);
|
|
||||||
if(list){
|
|
||||||
list.forEach(function(i){
|
|
||||||
|
|
||||||
});
|
|
||||||
}
|
|
||||||
return [];
|
|
||||||
}
|
|
||||||
|
|
||||||
var config = require("./config").populate({
|
|
||||||
|
|
||||||
});
|
|
||||||
+13
-51
@@ -2,85 +2,47 @@
|
|||||||
{
|
{
|
||||||
"name": "statue-2013",
|
"name": "statue-2013",
|
||||||
"title": "устав школы за 2013 год",
|
"title": "устав школы за 2013 год",
|
||||||
"path": "/document/statue-2013",
|
"url": "http://static.shburg.org/art/docs/hudozhka_statue-2013.pdf",
|
||||||
"preview": "http://static.shburg.org/art/graphics/statue-2013-preview.png",
|
"preview": "http://static.shburg.org/art/graphics/statue-2013-preview.png",
|
||||||
"download": "http://static.shburg.org/art/docs/hudozhka_statue-2013.pdf",
|
"files": ["http://static.shburg.org/art/docs/hudozhka_statue-2013.pdf"]
|
||||||
"url": [
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-1.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-2.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-3.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-4.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-5.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-6.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-7.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-8.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-9.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-10.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-11.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-12.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-13.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-14.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-15.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-16.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-17.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-18.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-19.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-20.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-21.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-22.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-23.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-24.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-25.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-26.page",
|
|
||||||
"http://static.shburg.org/art/html/hudozhka_statue-2013-27.page"
|
|
||||||
],
|
|
||||||
"extra": {
|
|
||||||
"style": ["http://static.shburg.org/art/docs/preview/hudozhka_statue-2013.css"]
|
|
||||||
},
|
|
||||||
"viewer": "pdf"
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "edu-license",
|
"name": "edu-license",
|
||||||
"title": "образовательная лицензия",
|
"title": "образовательная лицензия",
|
||||||
"path": "/document/edu-license",
|
"url": "/document/edu-license",
|
||||||
"preview": "http://static.shburg.org/art/graphics/license_edu-preview.png",
|
"preview": "http://static.shburg.org/art/graphics/license_edu-preview.png",
|
||||||
"url": [
|
"files": [
|
||||||
"http://static.shburg.org/art/docs/hudozhka_license_edu.jpg",
|
"http://static.shburg.org/art/docs/hudozhka_license_edu.jpg",
|
||||||
"http://static.shburg.org/art/docs/hudozhka_license_edu_back.jpg",
|
"http://static.shburg.org/art/docs/hudozhka_license_edu_back.jpg",
|
||||||
"http://static.shburg.org/art/docs/hudozhka_license_edu_attachment.jpg"
|
"http://static.shburg.org/art/docs/hudozhka_license_edu_attachment.jpg"
|
||||||
],
|
]
|
||||||
"viewer": "img-sheet"
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "gov-certificate",
|
"name": "gov-certificate",
|
||||||
"title": "свидетельство о государственной регистрации права",
|
"title": "свидетельство о государственной регистрации права",
|
||||||
"path": "/document/gov-certificate",
|
"url": "/document/gov-certificate",
|
||||||
"preview": "http://static.shburg.org/art/graphics/certificate_gov-preview.png",
|
"preview": "http://static.shburg.org/art/graphics/certificate_gov-preview.png",
|
||||||
"url": ["http://static.shburg.org/art/docs/hudozhka_certificate_gov.jpg"],
|
"files": ["http://static.shburg.org/art/docs/hudozhka_certificate_gov.jpg"]
|
||||||
"viewer": "img-sheet"
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "VAT",
|
"name": "VAT",
|
||||||
"title": "ИНН",
|
"title": "ИНН",
|
||||||
"path": "/document/VAT",
|
"url": "/document/VAT",
|
||||||
"preview": "http://static.shburg.org/art/graphics/vatin-preview.png",
|
"preview": "http://static.shburg.org/art/graphics/vatin-preview.png",
|
||||||
"url": ["http://static.shburg.org/art/docs/hudozhka_vatin.jpg"],
|
"files": ["http://static.shburg.org/art/docs/hudozhka_vatin.jpg"]
|
||||||
"viewer": "img-sheet"
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "EGRYL1",
|
"name": "EGRYL1",
|
||||||
"title": "свидетельство о внесении в «ЕГРЮЛ»",
|
"title": "свидетельство о внесении в «ЕГРЮЛ»",
|
||||||
"path": "/document/EGRYL1",
|
"url": "/document/EGRYL1",
|
||||||
"preview": "http://static.shburg.org/art/graphics/certificate_egryl1-preview.png",
|
"preview": "http://static.shburg.org/art/graphics/certificate_egryl1-preview.png",
|
||||||
"url": ["http://static.shburg.org/art/docs/hudozhka_certificate_egryl1.jpg"],
|
"files": ["http://static.shburg.org/art/docs/hudozhka_certificate_egryl1.jpg"]
|
||||||
"viewer": "img-sheet"
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"name": "EGRYL2",
|
"name": "EGRYL2",
|
||||||
"title": "свидетельство о внесении в «ЕГРЮЛ»",
|
"title": "свидетельство о внесении в «ЕГРЮЛ»",
|
||||||
"path": "/document/EGRYL2",
|
"url": "/document/EGRYL2",
|
||||||
"preview": "http://static.shburg.org/art/graphics/certificate_egryl2-preview.png",
|
"preview": "http://static.shburg.org/art/graphics/certificate_egryl2-preview.png",
|
||||||
"url": ["http://static.shburg.org/art/docs/hudozhka_certificate_egryl2.jpg"],
|
"files": ["http://static.shburg.org/art/docs/hudozhka_certificate_egryl2.jpg"]
|
||||||
"viewer": "img-sheet"
|
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
@@ -1,402 +0,0 @@
|
|||||||
[
|
|
||||||
{
|
|
||||||
"name": "1",
|
|
||||||
"monday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "as-timasheva",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"tuesday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "od-gogoleva",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"saturday": {
|
|
||||||
"lesson": "sculpting",
|
|
||||||
"teacher": "in-vturina",
|
|
||||||
"time": [
|
|
||||||
"10:00 10:45",
|
|
||||||
"10:55 11:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "2",
|
|
||||||
"tuesday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "od-gogoleva",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"friday": {
|
|
||||||
"lesson": "sculpting",
|
|
||||||
"teacher": "in-vturina",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"saturday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "as-timasheva",
|
|
||||||
"time": [
|
|
||||||
"12:00 12:45",
|
|
||||||
"12:55 13:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "3",
|
|
||||||
"thursday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "od-gogoleva",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"friday": {
|
|
||||||
"lesson": "sculpting",
|
|
||||||
"teacher": "in-vturina",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"saturday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "as-timasheva",
|
|
||||||
"time": [
|
|
||||||
"10:00 10:45",
|
|
||||||
"10:55 11:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "4",
|
|
||||||
"monday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "vv-voronova",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"wednesday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "od-gogoleva",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"thursday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "nv-andreeva",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "5",
|
|
||||||
"monday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "vv-voronova",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"wednesday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "od-gogoleva",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"thursday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "nv-andreeva",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "6",
|
|
||||||
"wednesday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "nv-andreeva",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"thursday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "od-gogoleva",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"friday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "vv-voronova",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "7",
|
|
||||||
"wednesday": {
|
|
||||||
"lesson": "history",
|
|
||||||
"teacher": "my-valkova",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"thursday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "va-sarzhin",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"friday": {
|
|
||||||
"lesson": "drawing",
|
|
||||||
"teacher": "sa-latipova",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"saturday": {
|
|
||||||
"lesson": "cg",
|
|
||||||
"teacher": "rk-timashev",
|
|
||||||
"time": [
|
|
||||||
"10:00 10:45",
|
|
||||||
"10:55 11:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "8",
|
|
||||||
"wednesday": {
|
|
||||||
"lesson": "history",
|
|
||||||
"teacher": "my-valkova",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"thursday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "va-sarzhin",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"friday": {
|
|
||||||
"lesson": "drawing",
|
|
||||||
"teacher": "sa-latipova",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"saturday": {
|
|
||||||
"lesson": "cg",
|
|
||||||
"teacher": "rk-timashev",
|
|
||||||
"time": [
|
|
||||||
"12:00 12:45",
|
|
||||||
"12:55 13:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "9",
|
|
||||||
"monday": {
|
|
||||||
"lesson": "drawing",
|
|
||||||
"teacher": "sa-latipova",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"tuesday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "va-sarzhin",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"wednesday": {
|
|
||||||
"lesson": "history",
|
|
||||||
"teacher": "my-valkova",
|
|
||||||
"time": [
|
|
||||||
"18:00 18:45"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"friday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "nv-andreeva",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "10",
|
|
||||||
"monday": {
|
|
||||||
"lesson": "drawing",
|
|
||||||
"teacher": "sa-latipova",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"tuesday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "va-sarzhin",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"wednesday": {
|
|
||||||
"lesson": "history",
|
|
||||||
"teacher": "my-valkova",
|
|
||||||
"time": [
|
|
||||||
"18:00 18:45"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"friday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "nv-andreeva",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "11",
|
|
||||||
"monday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "va-sarzhin",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"wednesday": {
|
|
||||||
"lesson": "drawing",
|
|
||||||
"teacher": "mg-timasheva",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"thursday": {
|
|
||||||
"lesson": "history",
|
|
||||||
"teacher": "my-valkova",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"friday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "od-gogoleva",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "12",
|
|
||||||
"monday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "va-sarzhin",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"wednesday": {
|
|
||||||
"lesson": "drawing",
|
|
||||||
"teacher": "mg-timasheva",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"thursday": {
|
|
||||||
"lesson": "history",
|
|
||||||
"teacher": "my-valkova",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"friday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "od-gogoleva",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "13",
|
|
||||||
"tuesday": {
|
|
||||||
"lesson": "drawing",
|
|
||||||
"teacher": "mg-timasheva",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"wednesday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "va-sarzhin",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"thursday": {
|
|
||||||
"lesson": "history",
|
|
||||||
"teacher": "my-valkova",
|
|
||||||
"time": [
|
|
||||||
"18:00 18:45"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"friday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "vv-voronova",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
@@ -1,438 +0,0 @@
|
|||||||
[
|
|
||||||
{
|
|
||||||
"name": "1-1",
|
|
||||||
"tuesday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "vv-voronova",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"thursday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "od-gogoleva",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"saturday": {
|
|
||||||
"lesson": "sculpting",
|
|
||||||
"teacher": "in-vturina",
|
|
||||||
"time": [
|
|
||||||
"11:00 11:45",
|
|
||||||
"11:55 12:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "1-2",
|
|
||||||
"tuesday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "vv-voronova",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"thursday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "od-gogoleva",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"saturday": {
|
|
||||||
"lesson": "sculpting",
|
|
||||||
"teacher": "in-vturina",
|
|
||||||
"time": [
|
|
||||||
"13:00 13:45",
|
|
||||||
"13:55 14:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "1-3",
|
|
||||||
"monday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "od-gogoleva",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"friday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "vv-voronova",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"saturday": {
|
|
||||||
"lesson": "sculpting",
|
|
||||||
"teacher": "in-vturina",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "2-1",
|
|
||||||
"monday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "nv-andreeva",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"wednesday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "od-gogoleva",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"saturday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "as-timasheva",
|
|
||||||
"time": [
|
|
||||||
"11:00 11:45",
|
|
||||||
"11:55 12:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "2-2",
|
|
||||||
"monday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "nv-andreeva",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"wednesday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "od-gogoleva",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"saturday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "as-timasheva",
|
|
||||||
"time": [
|
|
||||||
"13:00 13:45",
|
|
||||||
"13:55 14:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "2-3",
|
|
||||||
"monday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "od-gogoleva",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"thursday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "nv-andreeva",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"friday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "as-timasheva",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "3-1",
|
|
||||||
"monday": {
|
|
||||||
"lesson": "drawing",
|
|
||||||
"teacher": "sa-latipova",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"tuesday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "nv-andreeva",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"wednesday": {
|
|
||||||
"lesson": "history",
|
|
||||||
"teacher": "my-valkova",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
""
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"thursday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "sa-latipova",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"saturday": {
|
|
||||||
"lesson": "cg",
|
|
||||||
"teacher": "rk-timashev",
|
|
||||||
"time": [
|
|
||||||
"13:00 13:45",
|
|
||||||
"13:55 14:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "3-2",
|
|
||||||
"monday": {
|
|
||||||
"lesson": "drawing",
|
|
||||||
"teacher": "sa-latipova",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"tuesday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "nv-andreeva",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"wednesday": {
|
|
||||||
"lesson": "history",
|
|
||||||
"teacher": "my-valkova",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
""
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"thursday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "sa-latipova",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"saturday": {
|
|
||||||
"lesson": "cg",
|
|
||||||
"teacher": "rk-timashev",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "3-3",
|
|
||||||
"wednesday": {
|
|
||||||
"lesson": "history",
|
|
||||||
"teacher": "my-valkova",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
""
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"thursday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "nv-andreeva",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"friday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "as-timasheva",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"saturday": {
|
|
||||||
"lesson": "drawing",
|
|
||||||
"teacher": "as-timasheva",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "4-1",
|
|
||||||
"monday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "vv-voronova",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"tuesday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "va-sarzhin",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"wednesday": {
|
|
||||||
"lesson": "history",
|
|
||||||
"teacher": "my-valkova",
|
|
||||||
"time": [
|
|
||||||
"18:00 18:45",
|
|
||||||
""
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"friday": {
|
|
||||||
"lesson": "drawing",
|
|
||||||
"teacher": "sa-latipova",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "4-2",
|
|
||||||
"monday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "vv-voronova",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"tuesday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "va-sarzhin",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"wednesday": {
|
|
||||||
"lesson": "history",
|
|
||||||
"teacher": "my-valkova",
|
|
||||||
"time": [
|
|
||||||
"18:00 18:45",
|
|
||||||
""
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"friday": {
|
|
||||||
"lesson": "drawing",
|
|
||||||
"teacher": "sa-latipova",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "5-1",
|
|
||||||
"monday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "va-sarzhin",
|
|
||||||
"time": [
|
|
||||||
"15:00 15:45",
|
|
||||||
"15:55 16:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"thursday": {
|
|
||||||
"lesson": "history",
|
|
||||||
"teacher": "my-valkova",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
""
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "5-2",
|
|
||||||
"monday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "va-sarzhin",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"tuesday": {
|
|
||||||
"lesson": "drawing",
|
|
||||||
"teacher": "mg-timasheva",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"thursday": {
|
|
||||||
"lesson": "history",
|
|
||||||
"teacher": "my-valkova",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
""
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"name": "6-1",
|
|
||||||
"wednesday": {
|
|
||||||
"lesson": "painting",
|
|
||||||
"teacher": "va-sarzhin",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"thursday": {
|
|
||||||
"lesson": "drawing",
|
|
||||||
"teacher": "mg-timasheva",
|
|
||||||
"time": [
|
|
||||||
"16:00 17:45",
|
|
||||||
""
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"friday": {
|
|
||||||
"lesson": "composition",
|
|
||||||
"teacher": "vv-voronova",
|
|
||||||
"time": [
|
|
||||||
"17:00 17:45",
|
|
||||||
"17:55 18:40"
|
|
||||||
]
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"thursday": {
|
|
||||||
"lesson": "history",
|
|
||||||
"teacher": "my-valkova",
|
|
||||||
"time": [
|
|
||||||
"18:00 18:45",
|
|
||||||
""
|
|
||||||
]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
+52
-64
@@ -1,74 +1,62 @@
|
|||||||
var pop = require("../utils/populate").pop;
|
var pop = require("../utils/populate").pop;
|
||||||
|
|
||||||
const WEEK = ["monday", "tuesday", "wednesday", "thursday", "friday", "saturday"];
|
const WEEK = ["monday", "tuesday", "wednesday", "thursday", "friday", "saturday"];
|
||||||
const SCHEDULES = {
|
|
||||||
"2014-early": require("./schedule-2014-early.json"),
|
module.exports = {
|
||||||
"2014-late": require("./schedule-2014-late.json")
|
populate: populateSchedule
|
||||||
};
|
};
|
||||||
|
|
||||||
module.exports = function (year, name, pops) {
|
function populateSchedule(s, pops) {
|
||||||
//var s = require(
|
var days = function (group) {
|
||||||
// [year, name].reduce(function (r, v, i) {
|
var result = [];
|
||||||
// var n = "{i}".replace("i", i);
|
|
||||||
// return r.replace(n, v);
|
|
||||||
// }, "./schedule-{0}-{1}.json")
|
|
||||||
//);
|
|
||||||
|
|
||||||
var s = SCHEDULES[year + "-" + name];
|
WEEK.forEach(function (i) {
|
||||||
return populateSchedule(s, pops);
|
var lesson = group[i];
|
||||||
};
|
if (lesson) {
|
||||||
|
result.push(
|
||||||
|
pop(lesson)
|
||||||
|
.populate(time())
|
||||||
|
.populate(pops)
|
||||||
|
.result()
|
||||||
|
)
|
||||||
|
} else {
|
||||||
|
result.push(null);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
return result;
|
||||||
|
};
|
||||||
|
|
||||||
function populateSchedule(s, pops){
|
var time = function () {
|
||||||
var days = function (group) {
|
return function (lesson) {
|
||||||
var result = [];
|
for (var i = 0; i < lesson.time.length; i++) {
|
||||||
|
lesson.time[i] = lesson.time[i].replace(" ", "—");
|
||||||
|
}
|
||||||
|
return lesson;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
WEEK.forEach(function (i) {
|
var mondayTime = function (group) {
|
||||||
var lesson = group[i];
|
var day;
|
||||||
if (lesson) {
|
for (var i = 0; i < WEEK.length; i++) {
|
||||||
result.push(
|
if (group[WEEK[i]]) {
|
||||||
pop(lesson)
|
day = WEEK[i];
|
||||||
.populate(time())
|
break;
|
||||||
.populate(pops)
|
}
|
||||||
.result()
|
}
|
||||||
)
|
if (day) {
|
||||||
} else {
|
return group[day].time[0].substr(0, 5);
|
||||||
result.push(null);
|
} else {
|
||||||
}
|
return "00:00"
|
||||||
});
|
}
|
||||||
return result;
|
};
|
||||||
};
|
|
||||||
|
|
||||||
var time = function () {
|
var result = [];
|
||||||
return function (lesson) {
|
s.forEach(function (group) {
|
||||||
for (var i = 0; i < lesson.time.length; i++) {
|
result.push({
|
||||||
lesson.time[i] = lesson.time[i].replace(" ", "—");
|
name: group.name,
|
||||||
}
|
days: days(group),
|
||||||
return lesson;
|
time: mondayTime(group)
|
||||||
}
|
});
|
||||||
};
|
});
|
||||||
|
return result;
|
||||||
var mondayTime = function (group) {
|
|
||||||
var day;
|
|
||||||
for (var i = 0; i < WEEK.length; i++) {
|
|
||||||
if (group[WEEK[i]]) {
|
|
||||||
day = WEEK[i];
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (day) {
|
|
||||||
return group[day].time[0].substr(0, 5);
|
|
||||||
} else {
|
|
||||||
return "00:00"
|
|
||||||
}
|
|
||||||
};
|
|
||||||
|
|
||||||
var result = [];
|
|
||||||
s.forEach(function (group) {
|
|
||||||
result.push({
|
|
||||||
name: group.name,
|
|
||||||
days: days(group),
|
|
||||||
time: mondayTime(group)
|
|
||||||
});
|
|
||||||
});
|
|
||||||
return result;
|
|
||||||
}
|
}
|
||||||
+3
-44
@@ -5,58 +5,17 @@ server {
|
|||||||
server_name art.shlisselburg.org;
|
server_name art.shlisselburg.org;
|
||||||
|
|
||||||
location / {
|
location / {
|
||||||
# First attempt to serve request as file, then
|
|
||||||
# as directory, then fall back to displaying a 404.
|
|
||||||
# try_files $uri $uri/ /index.html;
|
|
||||||
# Uncomment to enable naxsi on this location
|
|
||||||
# include /etc/nginx/naxsi.rules
|
|
||||||
|
|
||||||
proxy_pass http://localhost:18010;
|
proxy_pass http://localhost:18010;
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
proxy_set_header X-Forwarded-For $remote_addr;
|
||||||
}
|
}
|
||||||
|
|
||||||
error_log /var/log/nginx/hudozhka.error.log;
|
error_log /var/log/nginx/hudozhka.error.log;
|
||||||
access_log /var/log/nginx/hudozhka.access.log;
|
access_log /var/log/nginx/hudozhka.access.log;
|
||||||
|
|
||||||
# Only for nginx-naxsi used with nginx-naxsi-ui : process denied requests
|
|
||||||
#location /RequestDenied {
|
|
||||||
# proxy_pass http://127.0.0.1:8080;
|
|
||||||
#}
|
|
||||||
|
|
||||||
#error_page 404 /404.html;
|
|
||||||
|
|
||||||
# redirect server error pages to the static page /50x.html
|
|
||||||
#
|
|
||||||
#error_page 500 502 503 504 /50x.html;
|
|
||||||
#location = /50x.html {
|
|
||||||
# root /usr/share/nginx/html;
|
|
||||||
#}
|
|
||||||
|
|
||||||
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
|
|
||||||
#
|
|
||||||
#location ~ \.php$ {
|
|
||||||
# fastcgi_split_path_info ^(.+\.php)(/.+)$;
|
|
||||||
# # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
|
|
||||||
#
|
|
||||||
# # With php5-cgi alone:
|
|
||||||
# fastcgi_pass 127.0.0.1:9000;
|
|
||||||
# # With php5-fpm:
|
|
||||||
# fastcgi_pass unix:/var/run/php5-fpm.sock;
|
|
||||||
# fastcgi_index index.php;
|
|
||||||
# include fastcgi_params;
|
|
||||||
#}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
server {
|
server {
|
||||||
listen 80;
|
listen 80;
|
||||||
server_name hudozhka.shlisselburg.org
|
server_name art.shburg.org;
|
||||||
hudozka.shlisselburg.org
|
|
||||||
artschool.shlisselburg.org
|
|
||||||
art-school.shlisselburg.org
|
|
||||||
hudozhka.shburg.org
|
|
||||||
hudozka.shburg.org
|
|
||||||
artschool.shburg.org
|
|
||||||
art-school.shburg.org
|
|
||||||
;
|
|
||||||
|
|
||||||
return 301 $scheme://art.shlisselburg.org$request_uri;
|
return 301 $scheme://art.shlisselburg.org$request_uri;
|
||||||
}
|
}
|
||||||
+16
-11
@@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"name": "app",
|
"name": "Hudozka",
|
||||||
"private": true,
|
"private": true,
|
||||||
"version": "2.0.0",
|
"version": "3.0.0",
|
||||||
"description": "",
|
"description": "",
|
||||||
"main": "main.js",
|
"main": "main.js",
|
||||||
"scripts": {
|
"scripts": {
|
||||||
@@ -14,17 +14,22 @@
|
|||||||
"author": "Roman Timashev",
|
"author": "Roman Timashev",
|
||||||
"license": "ISC",
|
"license": "ISC",
|
||||||
"dependencies": {
|
"dependencies": {
|
||||||
"body-parser": "^1.9.3",
|
|
||||||
"bower": "^1.3.12",
|
|
||||||
"cookie-parser": "^1.3.3",
|
|
||||||
"express": "^4.10.1",
|
|
||||||
"instagram-node": "^0.5.1",
|
"instagram-node": "^0.5.1",
|
||||||
"method-override": "^2.3.0",
|
"koa": "^0.18.0",
|
||||||
"mongoose": "^3.8.19",
|
"koa-conditional-get": "^1.0.2",
|
||||||
"morgan": "^1.5.0",
|
"koa-etag": "^2.0.0",
|
||||||
"promise": "^6.0.1"
|
"koa-helmet": "0.0.3",
|
||||||
|
"koa-logger": "^1.2.2",
|
||||||
|
"koa-prerender": "^1.0.3",
|
||||||
|
"koa-route": "^2.4.0",
|
||||||
|
"koa-static": "^1.4.9",
|
||||||
|
"koa-useragent": "0.0.5",
|
||||||
|
"mz": "^1.3.0",
|
||||||
|
"promised-mongo": "^0.11.1"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
"bower": "^1.3.12",
|
||||||
|
"browserify-ngannotate": "^0.7.1",
|
||||||
"gulp": "^3.8.10",
|
"gulp": "^3.8.10",
|
||||||
"gulp-autoprefixer": "0.0.6",
|
"gulp-autoprefixer": "0.0.6",
|
||||||
"gulp-browserify": "^0.5.0",
|
"gulp-browserify": "^0.5.0",
|
||||||
@@ -32,7 +37,7 @@
|
|||||||
"gulp-imagemin": "~0.1.5",
|
"gulp-imagemin": "~0.1.5",
|
||||||
"gulp-minify-css": "~0.3.0",
|
"gulp-minify-css": "~0.3.0",
|
||||||
"gulp-sass": "^1.2.2",
|
"gulp-sass": "^1.2.2",
|
||||||
"gulp-uglify": "^0.2.1",
|
"gulp-uglify": "^1.1.0",
|
||||||
"mocha": "~1.17.1",
|
"mocha": "~1.17.1",
|
||||||
"should": "~3.1.2"
|
"should": "~3.1.2"
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,118 +0,0 @@
|
|||||||
extends ../layout
|
|
||||||
|
|
||||||
block custom_head
|
|
||||||
link(rel="stylesheet", href="/s/docs.css")
|
|
||||||
|
|
||||||
block content
|
|
||||||
include ../menu
|
|
||||||
.main
|
|
||||||
for group in blocks
|
|
||||||
.docblock
|
|
||||||
if(group.type == 'documents')
|
|
||||||
//- h2 #{group.name}
|
|
||||||
for i in group.items
|
|
||||||
.doc
|
|
||||||
a(href='#{i.path}')
|
|
||||||
img(src='#{i.preview}')
|
|
||||||
span #{i.title}
|
|
||||||
|
|
||||||
//- .docblock
|
|
||||||
//- h2 Лицензии, свидетельства и уставы
|
|
||||||
//- .panel
|
|
||||||
//- .docs
|
|
||||||
//- .doc
|
|
||||||
//- img(src='/docs/preview/statue-2013.png')
|
|
||||||
//- a(href='/document/statue-2013') Устав школы в 2013 году
|
|
||||||
//- .doc
|
|
||||||
//- img(src='/docs/preview/license_edu.png')
|
|
||||||
//- a(href='/document/edu-license') Образовательная лицензия
|
|
||||||
//- .doc
|
|
||||||
//- img(src='/docs/preview/certificate_gov.png')
|
|
||||||
//- a(href='/document/gov_certificate') Свидетельство о государственной регистрации права
|
|
||||||
//- .doc
|
|
||||||
//- img(src='/docs/preview/vatin.png')
|
|
||||||
//- a(href='/document/VAT') ИНН
|
|
||||||
//- .doc
|
|
||||||
//- img(src='/docs/preview/certificate_egryl1.png')
|
|
||||||
//- a(href='/document/EGRYL1') Свидетельство о внесении в «ЕГРЮЛ»
|
|
||||||
//- .doc
|
|
||||||
//- img(src='/docs/preview/certificate_egryl2.png')
|
|
||||||
//- a(href='/document/EGRYL2') Свидетельство о внесении в «ЕГРЮЛ»
|
|
||||||
//- .docblock
|
|
||||||
//- h2 Грамоты
|
|
||||||
//- .panel
|
|
||||||
//- ul
|
|
||||||
//- li
|
|
||||||
//- a(href='').act.select ученикам
|
|
||||||
//- li
|
|
||||||
//- a(href='').act учителям
|
|
||||||
//- ul
|
|
||||||
//- li
|
|
||||||
//- a(href='').act 2014
|
|
||||||
//- li
|
|
||||||
//- a(href='').act.select 2013
|
|
||||||
//- li
|
|
||||||
//- a(href='').act 2012
|
|
||||||
//- li
|
|
||||||
//- a(href='').act 2011
|
|
||||||
//- li
|
|
||||||
//- a(href='').act 2010
|
|
||||||
//- li
|
|
||||||
//- a(href='').act 2009
|
|
||||||
//- li
|
|
||||||
//- a(href='').act 2008
|
|
||||||
//- li
|
|
||||||
//- a(href='').act 2007
|
|
||||||
//- .docs
|
|
||||||
//- .doc
|
|
||||||
//- img(src='/docs/temp/0002_600_0.jpg')
|
|
||||||
//- .doc
|
|
||||||
//- img(src='/docs/temp/gramota1296478114.jpg')
|
|
||||||
//- .doc
|
|
||||||
//- img(src='/docs/temp/Грамота_Буркун_И.Г.jpg')
|
|
||||||
//- .doc
|
|
||||||
//- img(src='/docs/temp/Грамота_ГребенникО.С.jpg')
|
|
||||||
//- .docblock
|
|
||||||
//- h2 Образовательные программы
|
|
||||||
//- .panel
|
|
||||||
//- .docs
|
|
||||||
//- .doc
|
|
||||||
//- img(src='/docs/temp/03_.JPG')
|
|
||||||
//- .docinfo
|
|
||||||
//- p
|
|
||||||
//- a(href='') Живопись
|
|
||||||
//- p 500 страниц
|
|
||||||
//- p
|
|
||||||
//- a(href='') Скачать пдф (5 mb)
|
|
||||||
//- .doc
|
|
||||||
//- img(src='/docs/temp/22.jpg')
|
|
||||||
//- .docinfo
|
|
||||||
//- p
|
|
||||||
//- a(href='') Рисунок
|
|
||||||
//- p 500 страниц
|
|
||||||
//- p
|
|
||||||
//- a(href='') Скачать пдф (5 mb)
|
|
||||||
//- .doc
|
|
||||||
//- img(src='/docs/temp/dokument.gif')
|
|
||||||
//- .docinfo
|
|
||||||
//- p
|
|
||||||
//- a(href='') Скульптура
|
|
||||||
//- p 500 страниц
|
|
||||||
//- p
|
|
||||||
//- a(href='') Скачать пдф (5 mb)
|
|
||||||
//- .doc
|
|
||||||
//- img(src='/docs/temp/license_cryptomodulc.jpg')
|
|
||||||
//- .docinfo
|
|
||||||
//- p
|
|
||||||
//- a(href='') ДПИ
|
|
||||||
//- p 500 страниц
|
|
||||||
//- p
|
|
||||||
//- a(href='') Скачать пдф (5 mb)
|
|
||||||
//- .doc
|
|
||||||
//- img(src='/docs/temp/1340870449_1283936456_dog_bez_pol.jpg')
|
|
||||||
//- .docinfo
|
|
||||||
//- p
|
|
||||||
//- a(href='') История искусств
|
|
||||||
//- p 500 страниц
|
|
||||||
//- p
|
|
||||||
//- a(href='') Скачать пдф (5 mb)
|
|
||||||
@@ -1,15 +0,0 @@
|
|||||||
extends ../layout
|
|
||||||
|
|
||||||
block custom_head
|
|
||||||
link(rel="stylesheet", href="/s/document.css")
|
|
||||||
|
|
||||||
block menu
|
|
||||||
.menu
|
|
||||||
h1
|
|
||||||
span.bold ДХШ
|
|
||||||
span.norm Шлиссельбурга,
|
|
||||||
span.norm #{doc.name}
|
|
||||||
|
|
||||||
block content
|
|
||||||
.displaybox
|
|
||||||
iframe#doc(src="#{doc.download}")
|
|
||||||
@@ -1,57 +0,0 @@
|
|||||||
extends ../layout
|
|
||||||
|
|
||||||
block custom_head
|
|
||||||
if doc.viewer == "default"
|
|
||||||
link(rel='stylesheet', href='/s/pdf.css')
|
|
||||||
|
|
||||||
link(rel='stylesheet', href='/s/document.css')
|
|
||||||
|
|
||||||
if doc.extra && doc.extra.style
|
|
||||||
for style in doc.extra.style
|
|
||||||
link(rel='stylesheet', href='#{style}')
|
|
||||||
|
|
||||||
if doc.viewer == "default"
|
|
||||||
script(src='http://code.jquery.com/jquery-2.1.0.min.js')
|
|
||||||
script(src='/c/document.js')
|
|
||||||
|
|
||||||
if doc.extra && doc.extra.script
|
|
||||||
for script in doc.extra.script
|
|
||||||
script(src='#{script}')
|
|
||||||
|
|
||||||
block content
|
|
||||||
.menu.opac
|
|
||||||
.panel
|
|
||||||
h1
|
|
||||||
span.bold ДХШ
|
|
||||||
span.norm Шлиссельбурга,
|
|
||||||
span.norm #{doc.title}
|
|
||||||
.panel.right
|
|
||||||
if doc.viewer == "default" && doc.url.length > 1
|
|
||||||
.controls
|
|
||||||
p.block
|
|
||||||
span Страница
|
|
||||||
input#currentPage(pattern='[0-9]{,3}')
|
|
||||||
| из
|
|
||||||
span#totalPages
|
|
||||||
|
|
||||||
p.block
|
|
||||||
button#buttonPrev ←
|
|
||||||
button#buttonNext →
|
|
||||||
|
|
||||||
if doc.download
|
|
||||||
p.block
|
|
||||||
a.download(href='#{doc.download}')
|
|
||||||
if doc.viewer == "default"
|
|
||||||
div(id='page-container')
|
|
||||||
for url in doc.url
|
|
||||||
//- p #{url}
|
|
||||||
.pf(data-page-url='#{url}')
|
|
||||||
//- img(src='#{url}')
|
|
||||||
//- //- for url in doc.url
|
|
||||||
//- //- .pf
|
|
||||||
//- //- //-
|
|
||||||
|
|
||||||
if doc.viewer == "img-sheet"
|
|
||||||
.doclist
|
|
||||||
for url in doc.url
|
|
||||||
img(src='#{url}')
|
|
||||||
@@ -1,11 +0,0 @@
|
|||||||
doctype html
|
|
||||||
|
|
||||||
html
|
|
||||||
head
|
|
||||||
link(rel="stylesheet", href="/s/main.css")
|
|
||||||
link(rel="stylesheet", href="/fonts/stylesheet.css")
|
|
||||||
block custom_head
|
|
||||||
body
|
|
||||||
block content
|
|
||||||
|
|
||||||
include yandex.metrika.jade
|
|
||||||
@@ -1,7 +0,0 @@
|
|||||||
extends ../layout
|
|
||||||
|
|
||||||
block custom_head
|
|
||||||
meta(name="google-site-verification", content="8BxOTw-Q02DS2KAdcGcnIMwiPZ58DVB18XpOfRibCcg")
|
|
||||||
|
|
||||||
block content
|
|
||||||
include ../menu
|
|
||||||
@@ -1,10 +0,0 @@
|
|||||||
.menu
|
|
||||||
ul
|
|
||||||
each i in menu.items
|
|
||||||
li(class='#{i.class}')
|
|
||||||
if(i.url)
|
|
||||||
a(href='#{i.url}') #{i.text}
|
|
||||||
else
|
|
||||||
span #{i.text}
|
|
||||||
a.vk(href='#{menu.vkgroup}')
|
|
||||||
img(src='/img/icon.vk.png')
|
|
||||||
@@ -1,46 +0,0 @@
|
|||||||
extends ../layout
|
|
||||||
|
|
||||||
block custom_head
|
|
||||||
link(rel='stylesheet', href='/s/animate.min.css')
|
|
||||||
link(rel='stylesheet', href='/s/schedule.css')
|
|
||||||
//- script(src='http://code.jquery.com/jquery-2.1.0.min.js')
|
|
||||||
script(src='/c/jquery-2.1.0.js')
|
|
||||||
script(src='/c/schedule.js')
|
|
||||||
|
|
||||||
block content
|
|
||||||
include ../menu
|
|
||||||
.schedule
|
|
||||||
p Расписание весеннего семестра 2014 года
|
|
||||||
//- ul
|
|
||||||
//- li
|
|
||||||
//- a(href='') 2012, осень
|
|
||||||
//- li
|
|
||||||
//- a(href='') 2013, весна
|
|
||||||
//- li
|
|
||||||
//- a(href='') 2013, осень
|
|
||||||
//- li.current 2014, весна
|
|
||||||
table
|
|
||||||
thead
|
|
||||||
- var days = ["Понедельник", "Вторник", "Среда", "Четверг", "Пятница", "Суббота"];
|
|
||||||
th.group Гр.
|
|
||||||
for day in days
|
|
||||||
//- th.current.first
|
|
||||||
//- th.weekend
|
|
||||||
th
|
|
||||||
p.day #{day}
|
|
||||||
p.date
|
|
||||||
tbody
|
|
||||||
for group in groups
|
|
||||||
tr
|
|
||||||
td.group
|
|
||||||
p.name #{group.name}
|
|
||||||
p.time #{group.time}
|
|
||||||
for day in group.days
|
|
||||||
td
|
|
||||||
if day
|
|
||||||
p.lesson
|
|
||||||
a(href='') #{day.lesson}
|
|
||||||
p.teacher
|
|
||||||
a(href='') #{day.teacher}
|
|
||||||
for time in day.time
|
|
||||||
p.time #{time}
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
extends ../layout
|
|
||||||
|
|
||||||
block custom_head
|
|
||||||
link(rel="stylesheet", href="/s/team.css")
|
|
||||||
|
|
||||||
block content
|
|
||||||
img.main-picture(src='http://static.shburg.org/art/team/team.jpg')
|
|
||||||
include ../menu
|
|
||||||
.main
|
|
||||||
ul.team-list
|
|
||||||
for member in team
|
|
||||||
li.team-member
|
|
||||||
img(src='#{member.picture}')
|
|
||||||
.info
|
|
||||||
h3 #{member.firstName} #{member.middleName}
|
|
||||||
span #{member.lastName}
|
|
||||||
p #{member.position}
|
|
||||||
p #{member.status}
|
|
||||||
p #{member.edu}
|
|
||||||
@@ -1,13 +0,0 @@
|
|||||||
//- //Yandex.Metrika informer
|
|
||||||
//- a(href='http://metrika.yandex.ru/stat/?id=24027460&from=informer', target='_blank', rel='nofollow')
|
|
||||||
//- img(src='//bs.yandex.ru/informer/24027460/3_1_FFFFFFFF_EFEFEFFF_0_pageviews', style='width: 88px; height: 31px; border: 0;', alt='Яндекс.Метрика', title='Яндекс.Метрика: данные за сегодня (просмотры, визиты и уникальные посетители)', onclick='try{Ya.Metrika.informer({i:this,id:24027460,lang:\'ru\'});return false}catch(e){}')
|
|
||||||
//- //Yandex.Metrika informer
|
|
||||||
|
|
||||||
// Yandex.Metrika counter
|
|
||||||
|
|
||||||
script
|
|
||||||
include yandex.metrika.js
|
|
||||||
noscript
|
|
||||||
div
|
|
||||||
img(src='//mc.yandex.ru/watch/24027460', style='position: absolute; left: -9999px;', alt='')
|
|
||||||
// Yandex.Metrika counter
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
(function (d, w, c) { (w[c] = w[c] || []).push(function() { try { w.yaCounter24027460 = new Ya.Metrika({id:24027460, webvisor:true, clickmap:true, trackLinks:true, accurateTrackBounce:true}); } catch(e) { } }); var n = d.getElementsByTagName("script")[0], s = d.createElement("script"), f = function () { n.parentNode.insertBefore(s, n); }; s.type = "text/javascript"; s.async = true; s.src = (d.location.protocol == "https:" ? "https:" : "http:") + "//mc.yandex.ru/metrika/watch.js"; if (w.opera == "[object Opera]") { d.addEventListener("DOMContentLoaded", f, false); } else { f(); } })(document, window, "yandex_metrika_callbacks");
|
|
||||||
@@ -1,46 +0,0 @@
|
|||||||
var Router = require("express").Router;
|
|
||||||
var route = require("./route");
|
|
||||||
var document = require("../models/document");
|
|
||||||
|
|
||||||
var router = new Router();
|
|
||||||
module.exports = router.middleware;
|
|
||||||
|
|
||||||
router.get("/docs", function(req, res){
|
|
||||||
var url = "/docs";
|
|
||||||
|
|
||||||
res.render("docs/docs", {
|
|
||||||
menu: route.menu(url),
|
|
||||||
blocks: [
|
|
||||||
{
|
|
||||||
type: "documents",
|
|
||||||
name: "Лицензии, свидетельства и уставы",
|
|
||||||
items: document.cap(
|
|
||||||
document.doc(
|
|
||||||
["statue-2013", "edu-license", "gov-certificate", "VAT", "EGRYL1", "EGRYL2"]
|
|
||||||
)
|
|
||||||
)
|
|
||||||
}
|
|
||||||
]
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
router.get("/document/:doc/:page?", function(req, res){
|
|
||||||
var name = req.param("doc");
|
|
||||||
var doc = document.doc(name);
|
|
||||||
// doc = document.extra(doc, {
|
|
||||||
// "style": [
|
|
||||||
// "/s/pdf.css"
|
|
||||||
// ],
|
|
||||||
// "script": [
|
|
||||||
// "http://code.jquery.com/jquery-2.1.0.min.js",
|
|
||||||
// "/c/document.js"
|
|
||||||
// ]
|
|
||||||
// });
|
|
||||||
|
|
||||||
if(doc){
|
|
||||||
doc.startPage = req.param("page");
|
|
||||||
res.render("document/document", {doc: doc});
|
|
||||||
}else{
|
|
||||||
res.error(404);
|
|
||||||
}
|
|
||||||
});
|
|
||||||
@@ -1,45 +0,0 @@
|
|||||||
const config = require("../config")
|
|
||||||
|
|
||||||
function getMenu(){
|
|
||||||
return clone(config.data.menu);
|
|
||||||
}
|
|
||||||
|
|
||||||
function clone(obj){
|
|
||||||
if(obj == null || typeof(obj) != 'object')
|
|
||||||
return obj;
|
|
||||||
|
|
||||||
var temp = obj.constructor(); // changed
|
|
||||||
|
|
||||||
for(var key in obj)
|
|
||||||
temp[key] = clone(obj[key]);
|
|
||||||
return temp;
|
|
||||||
}
|
|
||||||
|
|
||||||
exports.menu = function(url){
|
|
||||||
var m = getMenu();
|
|
||||||
m.items.forEach(function(i){
|
|
||||||
if(i.url != url) i.class = "";
|
|
||||||
});
|
|
||||||
return m;
|
|
||||||
}
|
|
||||||
|
|
||||||
exports.team = function(processor) {
|
|
||||||
var list = [];
|
|
||||||
config.data.team.forEach(function(m){
|
|
||||||
if(processor){
|
|
||||||
processor(m);
|
|
||||||
}
|
|
||||||
list.push(m);
|
|
||||||
});
|
|
||||||
return list;
|
|
||||||
}
|
|
||||||
|
|
||||||
exports.nameProcessor = function(delimiter){
|
|
||||||
if(!delimiter) delimiter = /\s+/;
|
|
||||||
return function(member){
|
|
||||||
var nnn = member.name.split(delimiter);
|
|
||||||
member.firstName = nnn[0];
|
|
||||||
member.middleName = nnn[1];
|
|
||||||
member.lastName = nnn[2];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
var Router = require("express").Router;
|
|
||||||
var route = require("./route");
|
|
||||||
|
|
||||||
// var router = Object.create(Router);
|
|
||||||
var router = new Router();
|
|
||||||
router.get("/team", function(req, res){
|
|
||||||
var url = "/team";
|
|
||||||
|
|
||||||
res.render("team/team", {
|
|
||||||
menu: route.menu(url),
|
|
||||||
team: route.team(route.nameProcessor())
|
|
||||||
});
|
|
||||||
});
|
|
||||||
|
|
||||||
router.get("/teachers/:name", function(req, res){
|
|
||||||
var name = req.param("name");
|
|
||||||
res.error(404);
|
|
||||||
});
|
|
||||||
|
|
||||||
module.exports = router;
|
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
/**
|
||||||
|
* Created by tmshv on 01/03/15.
|
||||||
|
*/
|
||||||
|
|
||||||
|
var route = require("koa-route");
|
||||||
|
var router = require("./");
|
||||||
|
|
||||||
|
module.exports = function (app) {
|
||||||
|
app.use(function *(next) {
|
||||||
|
yield next;
|
||||||
|
|
||||||
|
if (404 != this.status) return;
|
||||||
|
|
||||||
|
this.status = 404;
|
||||||
|
yield router.accepts({
|
||||||
|
"text/html": router.index(),
|
||||||
|
|
||||||
|
"text/plain": function *() {
|
||||||
|
this.type = "text/plain";
|
||||||
|
this.body = "Page not found";
|
||||||
|
},
|
||||||
|
|
||||||
|
"application/json": function *() {
|
||||||
|
this.type = "application/json";
|
||||||
|
this.body = {
|
||||||
|
message: "Not Found"
|
||||||
|
};
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
};
|
||||||
@@ -0,0 +1,41 @@
|
|||||||
|
/**
|
||||||
|
* Created by tmshv on 01/03/15.
|
||||||
|
*/
|
||||||
|
|
||||||
|
var path = require("path");
|
||||||
|
var fs = require("mz/fs");
|
||||||
|
|
||||||
|
function accepts(routes, def) {
|
||||||
|
return function *() {
|
||||||
|
var req = this.request;
|
||||||
|
var types = Object.keys(routes)
|
||||||
|
.filter(function (type) {
|
||||||
|
return req.accepts(type);
|
||||||
|
});
|
||||||
|
|
||||||
|
if (types.length) {
|
||||||
|
var type = types[0];
|
||||||
|
yield routes[type].apply(this, arguments);
|
||||||
|
} else if(def){
|
||||||
|
yield def;
|
||||||
|
}else{
|
||||||
|
this.status = 406;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
function index(filename) {
|
||||||
|
if (!filename){
|
||||||
|
filename = path.join(__dirname, "../templates/index.html");
|
||||||
|
}
|
||||||
|
|
||||||
|
return function *() {
|
||||||
|
this.type = "text/html";
|
||||||
|
this.body = fs.createReadStream(filename);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
module.exports = {
|
||||||
|
index: index,
|
||||||
|
accepts: accepts
|
||||||
|
};
|
||||||
@@ -3,15 +3,13 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
var Router = require("express").Router;
|
var Router = require("express").Router;
|
||||||
var instagram = require("./instagram");
|
var instagram = require("../core/instagram");
|
||||||
|
|
||||||
module.exports = function (app) {
|
module.exports = function (app) {
|
||||||
var router;
|
var router;
|
||||||
router = new Router();
|
router = new Router();
|
||||||
router.route("/auth/instagram/callback")
|
router.route("/auth/instagram/callback")
|
||||||
.get(function (req, res) {
|
.get(function (req, res) {
|
||||||
var api = instagram.client();
|
|
||||||
|
|
||||||
var code = req.query.code;
|
var code = req.query.code;
|
||||||
instagram.authorize(code)
|
instagram.authorize(code)
|
||||||
.catch(function(error){
|
.catch(function(error){
|
||||||
@@ -0,0 +1,12 @@
|
|||||||
|
/**
|
||||||
|
* Created by tmshv on 22/11/14.
|
||||||
|
*/
|
||||||
|
|
||||||
|
var route = require("koa-route");
|
||||||
|
var db = require("../core/db");
|
||||||
|
|
||||||
|
module.exports = function (app) {
|
||||||
|
app.use(route.get("/news", function *(){
|
||||||
|
this.body = yield db.c("posts").find().toArray();
|
||||||
|
}));
|
||||||
|
};
|
||||||
@@ -0,0 +1,47 @@
|
|||||||
|
/**
|
||||||
|
* Created by tmshv on 22/11/14.
|
||||||
|
*/
|
||||||
|
|
||||||
|
var route = require("koa-route");
|
||||||
|
var router = require("./");
|
||||||
|
var db = require("../core/db");
|
||||||
|
var schedule = require("../models/schedule");
|
||||||
|
var populate = require("../utils/populate").populate;
|
||||||
|
const course = require("../models/course");
|
||||||
|
const team = require("../models/team");
|
||||||
|
|
||||||
|
module.exports = function (app) {
|
||||||
|
app.use(
|
||||||
|
route.get("/schedule/:period?/:semester?", router.accepts(
|
||||||
|
{
|
||||||
|
"text/html": router.index(),
|
||||||
|
"text/plain": router.index(),
|
||||||
|
|
||||||
|
"application/json": function *(period, semester) {
|
||||||
|
this.type = "application/json";
|
||||||
|
|
||||||
|
var doPopulate = this.query.populate || false;
|
||||||
|
|
||||||
|
var data = yield db.c("schedules").findOne({
|
||||||
|
period: period,
|
||||||
|
semester: semester
|
||||||
|
});
|
||||||
|
|
||||||
|
if(!data) {
|
||||||
|
this.status = 404;
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(doPopulate) {
|
||||||
|
data.schedule = schedule.populate(data.schedule, [
|
||||||
|
populate(team.short, "teacher"),
|
||||||
|
populate(course.name, "lesson")
|
||||||
|
]);
|
||||||
|
}
|
||||||
|
|
||||||
|
this.body = data;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
))
|
||||||
|
);
|
||||||
|
};
|
||||||
@@ -1,20 +0,0 @@
|
|||||||
/**
|
|
||||||
* Created by tmshv on 22/11/14.
|
|
||||||
*/
|
|
||||||
|
|
||||||
var mongoose = require("mongoose");
|
|
||||||
var Schema = mongoose.Schema;
|
|
||||||
var ObjectId = Schema.Types.ObjectId;
|
|
||||||
|
|
||||||
var schema = new Schema({
|
|
||||||
id: {type: String, required: true, index: {unique: true}},
|
|
||||||
author: {type: String, default: []},
|
|
||||||
type: {type: String, enum: ["post", "instagram"]},
|
|
||||||
publishDate: Date,
|
|
||||||
body: String,
|
|
||||||
data: Object
|
|
||||||
}
|
|
||||||
);
|
|
||||||
|
|
||||||
var Post = mongoose.model("Post", schema, "posts");
|
|
||||||
module.exports = Post;
|
|
||||||
@@ -1,34 +1,74 @@
|
|||||||
var express = require("express");
|
|
||||||
var path = require("path");
|
var path = require("path");
|
||||||
var Post = require("./schema/post");
|
|
||||||
|
|
||||||
var Promise = require("promise");
|
var koa = require("koa");
|
||||||
var methodOverride = require("method-override");
|
var route = require("koa-route");
|
||||||
var logger = require("morgan");
|
var serve = require("koa-static");
|
||||||
var cookieParser = require("cookie-parser");
|
var logger = require("koa-logger");
|
||||||
var bodyParser = require("body-parser");
|
var conditional = require("koa-conditional-get");
|
||||||
|
var etag = require("koa-etag");
|
||||||
|
var prerender = require("koa-prerender");
|
||||||
|
var helmet = require('koa-helmet');
|
||||||
|
|
||||||
var app = express();
|
var config = require("./config");
|
||||||
app.use("/bower_components", express.static(path.join(__dirname, "bower_components")));
|
var routes = require("./routes");
|
||||||
app.use("/views", express.static(path.join(__dirname, "views")));
|
|
||||||
app.use(express.static(path.join(__dirname, "public")));
|
|
||||||
|
|
||||||
app.use(logger("dev"));
|
var app = koa();
|
||||||
app.use(cookieParser());
|
app.proxy = true;
|
||||||
app.use(bodyParser.json());
|
|
||||||
app.use(bodyParser.urlencoded({extended: true}));
|
|
||||||
app.use(methodOverride());
|
|
||||||
|
|
||||||
require("./api/feed")(app);
|
app.use(logger());
|
||||||
require("./routers/instagram")(app);
|
app.use(conditional());
|
||||||
|
app.use(etag());
|
||||||
|
app.use(prerender(config.prerender));
|
||||||
|
|
||||||
app.get("/document/*", function (req, res) {
|
app.use(serve(path.join(__dirname, "public")));
|
||||||
res.sendFile(path.join(__dirname, "views/document.html"));
|
app.use(serve(path.join(__dirname, "templates")));
|
||||||
|
|
||||||
|
app.use(helmet.defaults());
|
||||||
|
|
||||||
|
app.use(function *(next) {
|
||||||
|
var q = this.query;
|
||||||
|
this.query = Object.keys(q)
|
||||||
|
.reduce(function (q, key) {
|
||||||
|
var v = q[key];
|
||||||
|
if(v === "true"){
|
||||||
|
v = true;
|
||||||
|
}else if(v === "false"){
|
||||||
|
v = false;
|
||||||
|
}
|
||||||
|
q[key] = v;
|
||||||
|
return q;
|
||||||
|
}, q);
|
||||||
|
|
||||||
|
yield next;
|
||||||
});
|
});
|
||||||
|
|
||||||
app.get("*", function (req, res) {
|
app.use(route.get("/", routes.index()));
|
||||||
res.sendFile(path.join(__dirname, "views/index.html"));
|
app.use(route.get("/team", routes.index()));
|
||||||
});
|
app.use(route.get("/docs", routes.index()));
|
||||||
|
|
||||||
|
app.use(route.get("/document/:doc", routes.index(
|
||||||
|
path.join(__dirname, "templates/document.html")
|
||||||
|
)));
|
||||||
|
|
||||||
|
require("./routes/schedule")(app);
|
||||||
|
require("./routes/news")(app);
|
||||||
|
|
||||||
|
require("./routes/404")(app);
|
||||||
|
|
||||||
|
if (process.env["NODE_ENV"] === "development") {
|
||||||
|
app.use(route.get("/debug", function *() {
|
||||||
|
var out = {};
|
||||||
|
out.ip = this.ip;
|
||||||
|
out.host = this.host;
|
||||||
|
out.headers = this.headers;
|
||||||
|
out.protocol = this.protocol;
|
||||||
|
out.query = this.query;
|
||||||
|
out.url = this.url;
|
||||||
|
|
||||||
|
this.type = "application/json";
|
||||||
|
this.body = out;
|
||||||
|
}));
|
||||||
|
}
|
||||||
|
|
||||||
module.exports = function (port) {
|
module.exports = function (port) {
|
||||||
app.listen(port);
|
app.listen(port);
|
||||||
|
|||||||
@@ -0,0 +1,4 @@
|
|||||||
|
<div class="error-404">
|
||||||
|
<h1>Страница не найдена.</h1>
|
||||||
|
<img src="http://static.shburg.org/art/graphics/skull.jpg" alt=""/>
|
||||||
|
</div>
|
||||||
@@ -0,0 +1,54 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html ng-app="hudozhka.document">
|
||||||
|
<head>
|
||||||
|
<base href="/">
|
||||||
|
<link rel="stylesheet" href="/style.css">
|
||||||
|
<link rel="stylesheet" href="/fonts/stylesheet.css">
|
||||||
|
<meta name="google-site-verification" content="8BxOTw-Q02DS2KAdcGcnIMwiPZ58DVB18XpOfRibCcg">
|
||||||
|
|
||||||
|
<title ng-bind="title | uppercaseFirst"></title>
|
||||||
|
|
||||||
|
<script src="/bower_components/jquery/dist/jquery.min.js"></script>
|
||||||
|
<script src="/bower_components/angular/angular.min.js"></script>
|
||||||
|
<script src="/bower_components/angulartics/dist/angulartics.min.js"></script>
|
||||||
|
<script src="/bower_components/angulartics/dist/angulartics-ga.min.js"></script>
|
||||||
|
|
||||||
|
<script src="data.js"></script>
|
||||||
|
<script src="document.js"></script>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
(function (i, s, o, g, r, a, m) {
|
||||||
|
i['GoogleAnalyticsObject'] = r;
|
||||||
|
i[r] = i[r] || function () {
|
||||||
|
(i[r].q = i[r].q || []).push(arguments)
|
||||||
|
}, i[r].l = 1 * new Date();
|
||||||
|
a = s.createElement(o),
|
||||||
|
m = s.getElementsByTagName(o)[0];
|
||||||
|
a.async = 1;
|
||||||
|
a.src = g;
|
||||||
|
m.parentNode.insertBefore(a, m)
|
||||||
|
})(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');
|
||||||
|
|
||||||
|
ga('create', 'UA-60209057-1', 'auto');
|
||||||
|
// ga('send', 'pageview');
|
||||||
|
</script>
|
||||||
|
</head>
|
||||||
|
|
||||||
|
<body>
|
||||||
|
<div class="document-block" ng-controller="DocumentController">
|
||||||
|
<div class="menu transparent">
|
||||||
|
<div class="panel">
|
||||||
|
<h1>
|
||||||
|
<span class="bold">ДХШ</span>
|
||||||
|
<span class="norm">Шлиссельбурга</span> ,
|
||||||
|
<span class="norm">{{document.title}}</span>
|
||||||
|
</h1>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="document doclist">
|
||||||
|
<img ng-src="{{url}}" alt="" ng-repeat="url in document.files"/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</body>
|
||||||
|
</html>
|
||||||
@@ -1,24 +1,47 @@
|
|||||||
<!DOCTYPE html>
|
<!DOCTYPE html>
|
||||||
<html>
|
<html ng-app="hudozhka">
|
||||||
<head>
|
<head>
|
||||||
<base href="/">
|
<base href="/">
|
||||||
<link rel="stylesheet" href="/style.css">
|
<meta name="fragment" content="!">
|
||||||
<link rel="stylesheet" href="/s/animate.min.css">
|
|
||||||
<link rel="stylesheet" href="/fonts/stylesheet.css">
|
|
||||||
<meta name="google-site-verification" content="8BxOTw-Q02DS2KAdcGcnIMwiPZ58DVB18XpOfRibCcg">
|
<meta name="google-site-verification" content="8BxOTw-Q02DS2KAdcGcnIMwiPZ58DVB18XpOfRibCcg">
|
||||||
|
|
||||||
|
<title ng-bind="title">ДШХ Шлиссельбурга</title>
|
||||||
|
|
||||||
|
<link rel="stylesheet" href="/style.css">
|
||||||
|
<link rel="stylesheet" href="/animate.min.css">
|
||||||
|
<link rel="stylesheet" href="/fonts/stylesheet.css">
|
||||||
|
|
||||||
<script src="/bower_components/jquery/dist/jquery.min.js"></script>
|
<script src="/bower_components/jquery/dist/jquery.min.js"></script>
|
||||||
<script src="/bower_components/angular/angular.min.js"></script>
|
<script src="/bower_components/angular/angular.min.js"></script>
|
||||||
<script src="/bower_components/angular-route/angular-route.min.js"></script>
|
<script src="/bower_components/angular-route/angular-route.min.js"></script>
|
||||||
<script src="/bower_components/angular-animate/angular-animate.min.js"></script>
|
<script src="/bower_components/angular-animate/angular-animate.min.js"></script>
|
||||||
|
<script src="/bower_components/angulartics/dist/angulartics.min.js"></script>
|
||||||
|
<script src="/bower_components/angulartics/dist/angulartics-ga.min.js"></script>
|
||||||
|
|
||||||
<link rel="stylesheet" href="/bower_components/fotorama/fotorama.css">
|
<link rel="stylesheet" href="/bower_components/fotorama/fotorama.css">
|
||||||
<script src="/bower_components/fotorama/fotorama.js"></script>
|
<script src="/bower_components/fotorama/fotorama.js"></script>
|
||||||
|
|
||||||
<script src="data.js"></script>
|
<script src="/data.js"></script>
|
||||||
<script src="/app.js"></script>
|
<script src="/app.js"></script>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
(function (i, s, o, g, r, a, m) {
|
||||||
|
i['GoogleAnalyticsObject'] = r;
|
||||||
|
i[r] = i[r] || function () {
|
||||||
|
(i[r].q = i[r].q || []).push(arguments)
|
||||||
|
}, i[r].l = 1 * new Date();
|
||||||
|
a = s.createElement(o),
|
||||||
|
m = s.getElementsByTagName(o)[0];
|
||||||
|
a.async = 1;
|
||||||
|
a.src = g;
|
||||||
|
m.parentNode.insertBefore(a, m)
|
||||||
|
})(window, document, 'script', '//www.google-analytics.com/analytics.js', 'ga');
|
||||||
|
|
||||||
|
ga('create', 'UA-60209057-1', 'auto');
|
||||||
|
// ga('send', 'pageview');
|
||||||
|
</script>
|
||||||
</head>
|
</head>
|
||||||
<body ng-app="hudozhka">
|
<body>
|
||||||
<div class="menu" ng-controller="MenuController">
|
<div class="menu" ng-controller="MenuController">
|
||||||
<ul>
|
<ul>
|
||||||
<li ng-repeat="item in menu" class="{{item.color}}" ng-class="{selected:isCurrent(item)}">
|
<li ng-repeat="item in menu" class="{{item.color}}" ng-class="{selected:isCurrent(item)}">
|
||||||
@@ -64,36 +87,5 @@
|
|||||||
<p>Художественная школа Шлиссельбурга, 2014 год</p>
|
<p>Художественная школа Шлиссельбурга, 2014 год</p>
|
||||||
</div>
|
</div>
|
||||||
</footer>
|
</footer>
|
||||||
|
|
||||||
<!-- Yandex.Metrika counter -->
|
|
||||||
<script>(function (d, w, c) {
|
|
||||||
(w[c] = w[c] || []).push(function () {
|
|
||||||
try {
|
|
||||||
w.yaCounter24027460 = new Ya.Metrika({
|
|
||||||
id: 24027460,
|
|
||||||
webvisor: true,
|
|
||||||
clickmap: true,
|
|
||||||
trackLinks: true,
|
|
||||||
accurateTrackBounce: true
|
|
||||||
});
|
|
||||||
} catch (e) {
|
|
||||||
}
|
|
||||||
});
|
|
||||||
var n = d.getElementsByTagName("script")[0], s = d.createElement("script"), f = function () {
|
|
||||||
n.parentNode.insertBefore(s, n);
|
|
||||||
};
|
|
||||||
s.type = "text/javascript";
|
|
||||||
s.async = true;
|
|
||||||
s.src = (d.location.protocol == "https:" ? "https:" : "http:") + "//mc.yandex.ru/metrika/watch.js";
|
|
||||||
if (w.opera == "[object Opera]") {
|
|
||||||
d.addEventListener("DOMContentLoaded", f, false);
|
|
||||||
} else {
|
|
||||||
f();
|
|
||||||
}
|
|
||||||
})(document, window, "yandex_metrika_callbacks");</script>
|
|
||||||
<noscript>
|
|
||||||
<div><img src="//mc.yandex.ru/watch/24027460" style="position: absolute; left: -9999px;" alt=""></div>
|
|
||||||
</noscript>
|
|
||||||
<!-- Yandex.Metrika counter -->
|
|
||||||
</body>
|
</body>
|
||||||
</html>
|
</html>
|
||||||
@@ -1,7 +1,7 @@
|
|||||||
<div class="main" ng-controller="DocumentsController">
|
<div class="main" ng-controller="DocumentsController">
|
||||||
<div class="docblock"><h2>Лицензии, свидетельства и уставы</h2>
|
<div class="docblock"><h2>Лицензии, свидетельства и уставы</h2>
|
||||||
<div class="doc" ng-repeat="doc in documents">
|
<div class="doc" ng-repeat="doc in documents">
|
||||||
<a href="{{doc.path}}" target="_blank">
|
<a href="{{doc.url}}" target="_blank">
|
||||||
<img ng-src="{{doc.preview}}">
|
<img ng-src="{{doc.preview}}">
|
||||||
<span>{{doc.title | uppercaseFirst}}</span>
|
<span>{{doc.title | uppercaseFirst}}</span>
|
||||||
</a>
|
</a>
|
||||||
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
@@ -1 +0,0 @@
|
|||||||
<img ng-src="{{url}}" alt="" ng-repeat="url in document.url"/>
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
<pdf document="document"></pdf>
|
|
||||||
@@ -1,87 +0,0 @@
|
|||||||
<!DOCTYPE html>
|
|
||||||
<html>
|
|
||||||
<head>
|
|
||||||
<base href="/document">
|
|
||||||
<link rel="stylesheet" href="/style.css">
|
|
||||||
<link rel="stylesheet" href="/s/animate.min.css">
|
|
||||||
<link rel="stylesheet" href="/fonts/stylesheet.css">
|
|
||||||
<meta name="google-site-verification" content="8BxOTw-Q02DS2KAdcGcnIMwiPZ58DVB18XpOfRibCcg">
|
|
||||||
|
|
||||||
<script src="/bower_components/jquery/dist/jquery.min.js"></script>
|
|
||||||
<script src="/bower_components/angular/angular.min.js"></script>
|
|
||||||
<script src="/bower_components/angular-route/angular-route.min.js"></script>
|
|
||||||
<script src="/bower_components/angular-animate/angular-animate.min.js"></script>
|
|
||||||
<script src="data.js"></script>
|
|
||||||
<script src="document.js"></script>
|
|
||||||
</head>
|
|
||||||
|
|
||||||
<body ng-app="document.hudozhka" ng-controller="DocumentPageController">
|
|
||||||
<div class="document-block" ng-controller="DocumentController">
|
|
||||||
<div class="menu transparent">
|
|
||||||
<div class="panel">
|
|
||||||
<h1>
|
|
||||||
<span class="bold">ДХШ</span>
|
|
||||||
<span class="norm">Шлиссельбурга</span> ,
|
|
||||||
<span class="norm">{{document.title}}</span>
|
|
||||||
</h1>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="panel right">
|
|
||||||
<div class="controls" ng-show="showControls">
|
|
||||||
<p class="block">
|
|
||||||
<span>Страница</span>
|
|
||||||
<input ng-model="currentPage" ng-change="update()" type="text" pattern="[0-9]{,3}">
|
|
||||||
из
|
|
||||||
<span>{{totalPages}}</span>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p class="block">
|
|
||||||
<button ng-click="prevPage()">←</button>
|
|
||||||
<button ng-click="nextPage()">→</button>
|
|
||||||
</p>
|
|
||||||
|
|
||||||
<p class="block">
|
|
||||||
<a class="download" href="{{document.download}}"></a>
|
|
||||||
</p>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<div class="document">
|
|
||||||
<div class="page {{pageClass}}" ng-include="viewDocument()"></div>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
|
|
||||||
<!-- Yandex.Metrika counter -->
|
|
||||||
<script>(function (d, w, c) {
|
|
||||||
(w[c] = w[c] || []).push(function () {
|
|
||||||
try {
|
|
||||||
w.yaCounter24027460 = new Ya.Metrika({
|
|
||||||
id: 24027460,
|
|
||||||
webvisor: true,
|
|
||||||
clickmap: true,
|
|
||||||
trackLinks: true,
|
|
||||||
accurateTrackBounce: true
|
|
||||||
});
|
|
||||||
} catch (e) {
|
|
||||||
}
|
|
||||||
});
|
|
||||||
var n = d.getElementsByTagName("script")[0], s = d.createElement("script"), f = function () {
|
|
||||||
n.parentNode.insertBefore(s, n);
|
|
||||||
};
|
|
||||||
s.type = "text/javascript";
|
|
||||||
s.async = true;
|
|
||||||
s.src = (d.location.protocol == "https:" ? "https:" : "http:") + "//mc.yandex.ru/metrika/watch.js";
|
|
||||||
if (w.opera == "[object Opera]") {
|
|
||||||
d.addEventListener("DOMContentLoaded", f, false);
|
|
||||||
} else {
|
|
||||||
f();
|
|
||||||
}
|
|
||||||
})(document, window, "yandex_metrika_callbacks");</script>
|
|
||||||
<noscript>
|
|
||||||
<div><img src="//mc.yandex.ru/watch/24027460" style="position: absolute; left: -9999px;" alt=""></div>
|
|
||||||
</noscript>
|
|
||||||
<!-- Yandex.Metrika counter -->
|
|
||||||
|
|
||||||
</body>
|
|
||||||
</html>
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
<div id="page-container" ng-include="pageURL">
|
|
||||||
|
|
||||||
</div>
|
|
||||||
Reference in new issue
Block a user