From b2f213a7e153bf4d85821158448ecf387640d571 Mon Sep 17 00:00:00 2001 From: Roman Timashev Date: Mon, 17 Mar 2014 21:57:52 +0400 Subject: [PATCH] = data files now stored in ./modules in json-files; = config.js loads data files using require(); = config.js stores listening port; = document page ui enhancements; = other; --- config.js | 9 +- models/documents.json | 83 +++++++++++++++ models/menu.json | 33 ++++++ pages/docs/docs.jade | 7 +- pages/docs/docs.json | 31 ------ pages/document/display.jade | 2 +- pages/document/document.jade | 2 +- routers/route.js | 196 +++-------------------------------- server.js | 4 +- 9 files changed, 144 insertions(+), 223 deletions(-) create mode 100644 models/documents.json create mode 100644 models/menu.json delete mode 100644 pages/docs/docs.json diff --git a/config.js b/config.js index 63deb7bd..63f47e48 100644 --- a/config.js +++ b/config.js @@ -1,3 +1,10 @@ module.exports = { - pub: "./" + port: 18010, + pub: "./", + data:{ + documents: require("./models/documents.json"), + schedule: require("./models/schedule-2014-early.json"), + team: require("./models/team.json"), + menu: require("./models/menu.json"), + } } \ No newline at end of file diff --git a/models/documents.json b/models/documents.json new file mode 100644 index 00000000..d600990d --- /dev/null +++ b/models/documents.json @@ -0,0 +1,83 @@ +[ + { + "name": "statue-2013", + "title": "устав школы за 2013 год", + "path": "/document/statue-2013", + "preview": "/img/preview/statue-2013.png", + "download": "http://static.shburg.org/art/docs/hudozhka_statue-2013.pdf", + "url": [ + "http://static.shburg.org/art/docs/hudozhka_statue-2013-1.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-2.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-3.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-4.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-5.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-6.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-7.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-8.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-9.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-10.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-11.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-12.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-13.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-14.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-15.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-16.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-17.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-18.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-19.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-20.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-21.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-22.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-23.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-24.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-25.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-26.page", + "http://static.shburg.org/art/docs/hudozhka_statue-2013-27.page" + ], + "view":"frame" + }, + { + "name": "edu-license", + "title": "образовательная лицензия", + "path": "/document/edu-license", + "preview": "/img/preview/license_edu.png", + "url": [ + "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_attachment.jpg" + ], + "view":"page" + }, + { + "name": "gov-certificate", + "title": "свидетельство о государственной регистрации права", + "path": "/document/gov-certificate", + "preview": "/img/preview/certificate_gov.png", + "url": ["http://static.shburg.org/art/docs/hudozhka_certificate_gov.jpg"], + "view":"page" + }, + { + "name": "VAT", + "title": "ИНН", + "path": "/document/VAT", + "preview": "/img/preview/vatin.png", + "url": ["http://static.shburg.org/art/docs/hudozhka_vatin.jpg"], + "view":"page" + }, + { + "name": "EGRYL1", + "title": "свидетельство о внесении в «ЕГРЮЛ»", + "path": "/document/EGRYL1", + "preview": "/img/preview/certificate_egryl1.png", + "url": ["http://static.shburg.org/art/docs/hudozhka_certificate_egryl1.jpg"], + "view":"page" + }, + { + "name": "EGRYL2", + "title": "свидетельство о внесении в «ЕГРЮЛ»", + "path": "/document/EGRYL2", + "preview": "/img/preview/certificate_egryl2.png", + "url": ["http://static.shburg.org/art/docs/hudozhka_certificate_egryl2.jpg"], + "view":"page" + } +] \ No newline at end of file diff --git a/models/menu.json b/models/menu.json new file mode 100644 index 00000000..06ba55a6 --- /dev/null +++ b/models/menu.json @@ -0,0 +1,33 @@ +{ + "items":[ + { + "text":"Школа", + "url":"/", + "class":"selected blue" + }, + { + "text":"Расписание", + "url":"/schedule", + "class":"selected green" + }, + { + "text":"Занятия", + "class":"selected" + }, + { + "text":"Коллектив", + "url":"/team", + "class":"selected pink" + }, + { + "text":"Галерея", + "class":"selected" + }, + { + "text":"Документы", + "url":"/docs", + "class":"selected yellow" + } + ], + "vkgroup":"https://vk.com/club10436104" +} diff --git a/pages/docs/docs.jade b/pages/docs/docs.jade index 5de59c1c..442ad964 100644 --- a/pages/docs/docs.jade +++ b/pages/docs/docs.jade @@ -9,11 +9,12 @@ block content for group in blocks .docblock if(group.type == 'documents') - h2 #{group.name} + //- h2 #{group.name} for i in group.items .doc - img(src='#{i.preview}') - a(href='#{i.path}') #{i.name} + a(href='#{i.path}') + img(src='#{i.preview}') + span #{i.title} //- .docblock //- h2 Лицензии, свидетельства и уставы diff --git a/pages/docs/docs.json b/pages/docs/docs.json deleted file mode 100644 index c1e78b88..00000000 --- a/pages/docs/docs.json +++ /dev/null @@ -1,31 +0,0 @@ -[ - { - "category":"Лицензии. сертификаты", - "" - } - "licences":[ - ], - - "g":[ - ], - - "docs":[ - { - "file": "", - "name": "", - "pages": 10 - }, - - { - "file": "", - "name": "", - "pages": 10 - }, - - { - "file": "", - "name": "", - "pages": 10 - } - ] -] \ No newline at end of file diff --git a/pages/document/display.jade b/pages/document/display.jade index 7ab2961c..65a295a0 100644 --- a/pages/document/display.jade +++ b/pages/document/display.jade @@ -12,4 +12,4 @@ block menu block content .displaybox - iframe#doc(src="#{doc.url[0]}") \ No newline at end of file + iframe#doc(src="#{doc.download}") \ No newline at end of file diff --git a/pages/document/document.jade b/pages/document/document.jade index 57425337..ff89a51d 100644 --- a/pages/document/document.jade +++ b/pages/document/document.jade @@ -8,7 +8,7 @@ block content h1 span.bold ДХШ span.norm Шлиссельбурга, - span.norm #{doc.name} + span.norm #{doc.title} .doclist for a in doc.url img(src='#{a}') \ No newline at end of file diff --git a/routers/route.js b/routers/route.js index ea818d16..0679f6f2 100644 --- a/routers/route.js +++ b/routers/route.js @@ -1,192 +1,20 @@ -const DOCUMENTS = { - "statue-2013": { - name: "устав школы за 2013 год", - path: "/document/statue-2013", - preview: "/img/preview/statue-2013.png", - url: ["http://static.shburg.org/art/docs/hudozhka_statue-2013.pdf"], - view:"frame" - }, - "edu-license": { - name: "образовательная лицензия", - path: "/document/edu-license", - preview: "/img/preview/license_edu.png", - url: [ - "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_attachment.jpg", - ], - view:"page" - }, - "gov-certificate": { - name: "свидетельство о государственной регистрации права", - path: "/document/gov-certificate", - preview: "/img/preview/certificate_gov.png", - url: ["http://static.shburg.org/art/docs/hudozhka_certificate_gov.jpg"], - view:"page" - }, - "VAT": { - name: "ИНН", - path: "/document/VAT", - preview: "/img/preview/vatin.png", - url: ["http://static.shburg.org/art/docs/hudozhka_vatin.jpg"], - view:"page" - }, - "EGRYL1": { - name: "свидетельство о внесении в «ЕГРЮЛ»", - path: "/document/EGRYL1", - preview: "/img/preview/certificate_egryl1.png", - url: ["http://static.shburg.org/art/docs/hudozhka_certificate_egryl1.jpg"], - view:"page" - }, - "EGRYL2": { - name: "свидетельство о внесении в «ЕГРЮЛ»", - path: "/document/EGRYL2", - preview: "/img/preview/certificate_egryl2.png", - url: ["http://static.shburg.org/art/docs/hudozhka_certificate_egryl2.jpg"], - view:"page" - } -}; - -const TEAM = [ - { - name: "Марина Геннадьевна Тимашева", - position: "Директор", - edu: "Ленинградский инженерно-строительный институт", - diplom: "НВ №222567", - status: "", - picture: "http://static.shburg.org/art/team/teacher5.jpg" - }, - { - name: "Валерий Александрович Саржин", - position: "Преподаватель живописи", - edu: "Академия художеств имени И. Е. Репина", - diplom: "B-I №259798", - status: "Первая квалификационная категория по живописи и станковой композиции", - picture: "http://static.shburg.org/art/team/teacher10.jpg" - }, - { - name: "Ольга Дмитриевна Гоголева", - position: "Преподаватель живописи", - edu: "Ленинградский инженерно-строительный институт", - diplom: "B-I №222572", - status: "Высшая квалификационная категория по живописи и станковой композиции", - picture: "http://static.shburg.org/art/team/teacher11.jpg" - }, - { - name: "Наталья Викторовна Андреева", - position: "Преподаватель композиции", - edu: "Санкт-Петербургский государственный университет технологии и дизайна", - diplom: "ИВС 0514253", - status: "Вторая квалификационная категория по прикладной композиции", - picture: "http://static.shburg.org/art/team/teacher2.jpg" - }, - { - name: "Вера Викторовна Воронова", - position: "Преподаватель композииции", - edu: "Российский государственный университет имени А. И. Герцена", - diplom: "ВСГ 0530340", - status: "Вторая квалификационная категория по прикладной композиции", - picture: "http://static.shburg.org/art/team/teacher1.jpg" - }, - { - name: "Ирина Николаевна Втюрина", - position: "Преподаватель скульптуры", - edu: "Кировский государственный педагогический институт имени В. И. Ленина", - diplom: "ШВ №164501", - status: "Первая квалификационная категория по скульптуре", - picture: "http://static.shburg.org/art/team/teacher8.jpg" - }, - { - name: "Мария Юрьевна Валькова", - position: "Преподаватель истории искусства", - edu: "Педагогический институт имени А. И. Герцена", - diplom: "ПП №224197", - status: "Высшая квалификационная категория по истории искусства", - picture: "http://static.shburg.org/art/team/teacher.jpg" - }, - { - name: "Руслан Камилевич Тимашев", - position: "Преподаватель компьютерной графики", - edu: "Санкт-Петербургский государственный архитектурно-строительный университет", - diplom: "ВСГ 5344910", - status: "", - picture: "http://static.shburg.org/art/team/teacher4.jpg" - }, - { - name: "Анна Сергеевна Манцева", - position: "Преподаватель рисунка", - edu: "Московский архитектурный институт", - diplom: "РН 70241", - status: "", - picture: "http://static.shburg.org/art/team/teacher3.jpg" - }, - { - name: "Серафима Александровна Латыпова", - position: "Преподаватель рисунка", - edu: "Незаконченный Ленинградский государственный педагогический университет имени А. С. Пушкина", - diplom: "", - status: "", - picture: "http://static.shburg.org/art/team/teacher9.jpg" - }, - { - name: "Евгения Юрьевна Тарасова", - position: "Преподаватель гравюры", - edu: "Санкт-Петербургский государственный архитектурно-строительный университет", - diplom: "ВСВ 1321444", - status: "", - picture: "http://static.shburg.org/art/team/teacher.jpg" - }, -]; +const config = require("../config") +const DOCUMENTS = config.data.documents; function getMenu(){ - var menu = { - items:[ - { - text:"Школа", - url:"/", - class:"selected blue" - }, - { - text:"Расписание", - // url:"/schedule", - class:"selected green" - }, - { - text:"Занятия", - // url:"/schedule", - class:"selected" - }, - { - text:"Коллектив", - url:"/team", - class:"selected pink" - }, - { - text:"Выпускники", - // url:"/graduates", - class:"selected" - }, - { - text:"Галерея", - // url:"/gallery", - class:"selected" - }, - { - text:"Документы", - url:"/docs", - class:"selected yellow" - }, - ], - vkgroup:"https://vk.com/club10436104" - }; - return menu; + return config.data.menu; } function getDoc(name, capitalFirstLetter){ if(name && typeof name == "string"){ - var doc = DOCUMENTS[name]; - if(capitalFirstLetter) return makeCap(clone(doc)); - else return clone(doc); + for(var i=0; i