diff --git a/events/details/000-wayanad-install-fest.yaml b/events/details/000-wayanad-install-fest.yaml deleted file mode 100644 index 2bf082902019a8ae31f211abaf1a2ba6950a4c75..0000000000000000000000000000000000000000 --- a/events/details/000-wayanad-install-fest.yaml +++ /dev/null @@ -1,10 +0,0 @@ -id: "0" -name: "GNU/Linux Install Fest - Wayanad" -lat: "" -lng: "" -locationame: "Pazhassi Library, Mananthavady" -organizedby: "FSUG Wayanadu" -when: "2017-06-17 10:00 AM to 02:00 PM" -description: "GNU/Linux install fest" -contactinfo: "TBA" -imgurl: "https://wiki.debian.org/ReleasePartyStretch/India/Kerala/Mananthavady?action=AttachFile&do=get&target=wayanadfest.jpeg" diff --git a/events/details/2017-06-17-00.yaml b/events/details/2017-06-17-00.yaml new file mode 100644 index 0000000000000000000000000000000000000000..a306e633a98a91eb56db89a95ae143e1b97fd037 --- /dev/null +++ b/events/details/2017-06-17-00.yaml @@ -0,0 +1,12 @@ +id: "2017-06-17-00" +name: "GNU/Linux Install Fest and Debian Stretch Release Party - Wayanad" +state: "Kerala" +district: "Wayanad" +venue: "Pazhassi Library, Mananthavady" +lat: "" +lon: "" +organizedby: "FSUG Wayanad" +when: "17-06-2017 10:00 AM to 02:00 PM" +description: "GNU/Linux install fest" +contactinfo: "" +imgurl: "https://wiki.debian.org/ReleasePartyStretch/India/Kerala/Mananthavady?action=AttachFile&do=get&target=wayanadfest.jpeg" diff --git a/events/details/001-calicut-insall-fest.yaml b/events/details/2017-06-18-00.yaml similarity index 52% rename from events/details/001-calicut-insall-fest.yaml rename to events/details/2017-06-18-00.yaml index 59ea7dafe48d52cc55b45b2f65e53a960c03119c..f1dcbb45413857775ea21cfb8a6fbec57981955c 100644 --- a/events/details/001-calicut-insall-fest.yaml +++ b/events/details/2017-06-18-00.yaml @@ -1,10 +1,12 @@ -id: "1" -name: "GNU/Linux Install Fest - Calicut" +id: "2017-06-18-00" +name: "GNU/Linux Install Fest and Debian Stretch Release Party - Calicut" +state: "Kerala" +district: "Calicut" +venue: "Parishad Bhavan" lat: "" -lng: "" -locationame: "Calicut" +lon: "" organizedby: "FSUG Calicut" -when: "2017-06-18 10:00 AM" +when: "18-06-2017 10:00 AM" description: "GNU/Linux Install Fest" contactinfo: "" imgurl: "https://wiki.debian.org/ReleasePartyStretch/India/Kerala/Kozhikode?action=AttachFile&do=get&target=cltfest.png" diff --git a/events/details/002-cusat-debian-release-party.yaml b/events/details/2017-06-24-00.yaml similarity index 71% rename from events/details/002-cusat-debian-release-party.yaml rename to events/details/2017-06-24-00.yaml index 0ccf4851558cf79159af608c175f35e505823478..fc1588cccc8936b3bebb27497c33f523c3aeb185 100644 --- a/events/details/002-cusat-debian-release-party.yaml +++ b/events/details/2017-06-24-00.yaml @@ -1,10 +1,12 @@ -id: "2" +id: "2017-06-24-00" name: "Debian Stretch Release Party - Kochi" +state: "Kerala" +district: "Ernakulam" +venue: "CUSAT" lat: "" -lng: "" -locationame: "CUSAT" +lon: "" organizedby: "FOSSClub, ILUG Cochin and DAKF" -when: "2017-06-24 03:00 PM to 06:00 PM" +when: "24-06-2017 03:00 PM to 06:00 PM" description: "Debian Stretch Release Party - Kochi" contactinfo: "TBA" imgurl: "https://wiki.debian.org/ReleasePartyStretch/India/Kerala/Cochin/CUSAT?action=AttachFile&do=get&target=cochin_cufest.jpeg" diff --git a/events/details/003-thrissur-debian-release-party.yaml b/events/details/2017-07-05-00.yaml similarity index 62% rename from events/details/003-thrissur-debian-release-party.yaml rename to events/details/2017-07-05-00.yaml index 4f145999618b7fd19140628f73f4d6f8a879b3af..e6503ad106ec171e95a52caf393a29e7d5ceba62 100644 --- a/events/details/003-thrissur-debian-release-party.yaml +++ b/events/details/2017-07-05-00.yaml @@ -1,10 +1,12 @@ -id: "3" -name: "Debian Stretch Release Party - Thrissur" +id: "2017-07-05-00" +name: "GNU/Linux Install Fest and Debian Stretch Release Party - Thrissur" +state: "Kerala" +district: "Thrissur" +venue: "St.Mary's College" lat: "" -lng: "" -locationame: "St.Mary's College" +lon: "" organizedby: "FSUG Thrissur, ICFOSS and KSSP" -when: "2017-07-05 09:30 AM to 12:30 PM" +when: "05-07-2017 09:30 AM to 12:30 PM" description: "Debian Stretch Release Party along with GNU/Linux Install Fest - Thrissur" contactinfo: "Riot room #fsugtcr:matrix.org" imgurl: "https://wiki.debian.org/ReleasePartyStretch/India/Kerala/Thrissur?action=AttachFile&do=get&target=fsug_thrissur_debian_stretch_release_party_poster.png" diff --git a/events/index.yaml b/events/index.yaml index ee7976473b5c4e3c54b2aa64b36cdc2964e4a02b..7502285040df0a19a94112f6dd60d2984293119e 100644 --- a/events/index.yaml +++ b/events/index.yaml @@ -1,2 +1 @@ -version: "1.0" events: !!inc/dir [ 'details' , { ignoreTopLevelDir: true, ignoreIndicator: '-', excludeTopLevelDirSeparator: true } ] diff --git a/gulpfile.js b/gulpfile.js index 5e01e2a6631b30e6a4d82d9c9d84688b0d2a6736..36224006dd2d9cf441cfa06ef7e1da098dac4cbe 100644 --- a/gulpfile.js +++ b/gulpfile.js @@ -10,10 +10,13 @@ var uglify = require('gulp-uglify'); var connect = require('gulp-connect'); var connectProxy = require('gulp-connect-proxy'); -var yamlinc = require("gulp-yaml-include"); +var yamlinc = require('gulp-yaml-include'); var runSequence = require('run-sequence'); var readYaml = require('read-yaml'); -var glob = require("glob"); +var glob = require('glob'); +var yaml = require('gulp-yaml'); +var sortJSON = require('gulp-json-sort').default; + gulp.task('assetscopy', function() { gulp.src([ @@ -47,7 +50,7 @@ gulp.task('jslint', function() { .pipe(jshint.reporter('default')); }); -gulp.task('GenerateIndexPage', function(){ +gulp.task('GenerateIndexPage', function() { gulp.src('pug/pages/*.pug') .pipe(pug({ pretty: true, @@ -58,65 +61,81 @@ gulp.task('GenerateIndexPage', function(){ .pipe(gulp.dest('public')); }); -gulp.task('GenerateEventsYAML', function(){ +gulp.task('GenerateEventsYAML', function() { return gulp.src("events/index.yaml") - .pipe(yamlinc()) - .pipe(gulp.dest('public/events')); + .pipe(yamlinc()) + .pipe(gulp.dest('public/events')); +}); + +gulp.task('GenerateEventsJSON', function() { + gulp.src('public/events/index.yaml') + .pipe(yaml()) + .pipe(sortJSON({ + cmp: function(a, b) { + return a.key < b.key ? 1 : -1; + }, + space: 2 + })) + .pipe(gulp.dest('public/events')) }); -gulp.task('GenerateEventsPage', function(){ - readYaml('public/events/index.yaml', function(err, ydata) { - if (err) throw err; - gulp.src('pug/templates/events.pug') - .pipe(pug({ - pretty: true, - data: { - debug: true, - events: ydata - } - })) - .pipe(concat('index' + '.html')) - .pipe(gulp.dest('public/events')); - }); - glob("events/details/*.yaml", {}, function (er, files) { - var nooffiles = files.length; - for(var i = 0; i < nooffiles; i++){ - readYaml(files[i], function(err, ydata) { - if (err) throw err; - var id = ydata.id; - gulp.src('pug/templates/individual_event_page.pug') - .pipe(pug({ - pretty: true, - data: { - debug: true, - evt: ydata - } - })) - .pipe(concat(id + '.html')) - .pipe(gulp.dest('public/events')); - }); +gulp.task('GenerateEventsIndex', function() { + var sortedEvents = require('./public/events/index.json'); + gulp.src('pug/templates/events.pug') + .pipe(pug({ + pretty: true, + data: { + debug: true, + events: sortedEvents } - }); + })) + .pipe(concat('index' + '.html')) + .pipe(gulp.dest('public/events')); +}); + +gulp.task('GenerateEventPages', function() { + glob("events/details/*.yaml", {}, function(er, files) { + var nooffiles = files.length; + for (var i = 0; i < nooffiles; i++) { + readYaml(files[i], function(err, ydata) { + if (err) throw err; + var id = ydata.id; + gulp.src('pug/templates/individual_event_page.pug') + .pipe(pug({ + pretty: true, + data: { + debug: true, + evt: ydata + } + })) + .pipe(concat(id + '.html')) + .pipe(gulp.dest('public/events')); + }); + } + }); }); -gulp.task('pughtml', function(){ - runSequence('GenerateEventsYAML',[ +gulp.task('pughtml', function() { + runSequence( 'GenerateIndexPage', - 'GenerateEventsPage' - ]); + 'GenerateEventsYAML', + 'GenerateEventsJSON', + 'GenerateEventPages', + 'GenerateEventsIndex' + ) }); gulp.task('cssmin', function() { gulp.src([ - 'node_modules/bootstrap/dist/css/bootstrap.min.css', - //'node_modules/font-awesome/css/font-awesome.min.css', - //'node_modules/normalize.css/normalize.css', - 'node_modules/leaflet/dist/leaflet.css', - 'node_modules/bootcards/dist/css/bootcards-desktop.min.css', - // 'node_modules/bootcards/dist/css/bootcards-android.min.css', - // 'node_modules/bootcards/dist/css/bootcards-ios.min.css', - 'css/*.css' - ]) + 'node_modules/bootstrap/dist/css/bootstrap.min.css', + //'node_modules/font-awesome/css/font-awesome.min.css', + //'node_modules/normalize.css/normalize.css', + 'node_modules/leaflet/dist/leaflet.css', + 'node_modules/bootcards/dist/css/bootcards-desktop.min.css', + // 'node_modules/bootcards/dist/css/bootcards-android.min.css', + // 'node_modules/bootcards/dist/css/bootcards-ios.min.css', + 'css/*.css' + ]) .pipe(concat('index.css')) .pipe(cssmin()) .pipe(gulp.dest('public/css')); @@ -124,12 +143,12 @@ gulp.task('cssmin', function() { gulp.task('jsuglify', function() { gulp.src([ - 'node_modules/jquery/dist/jquery.min.js', - 'node_modules/bootstrap/dist/js/bootstrap.min.js', - 'node_modules/leaflet/dist/leaflet.js', - 'node_modules/bootcards/dist/js/bootcards.min.js', - 'js/*.js' - ]) + 'node_modules/jquery/dist/jquery.min.js', + 'node_modules/bootstrap/dist/js/bootstrap.min.js', + 'node_modules/leaflet/dist/leaflet.js', + 'node_modules/bootcards/dist/js/bootcards.min.js', + 'js/*.js' + ]) .pipe(concat('index.js')) .pipe(uglify()) .pipe(gulp.dest('public/js')); diff --git a/package.json b/package.json index a13a5124b5c84cc04a36b8940ffe55af9509c006..2219a6ef1cd71856d36183b664577089a10be503 100644 --- a/package.json +++ b/package.json @@ -20,8 +20,10 @@ "gulp-cssmin": "^0.2.0", "gulp-htmlhint": "^0.3.1", "gulp-jshint": "^2.0.4", + "gulp-json-sort": "^1.0.0", "gulp-pug": "^3.3.0", "gulp-uglify": "^3.0.0", + "gulp-yaml": "^1.0.1", "gulp-yaml-data": "^0.2.0", "gulp-yaml-include": "^0.2.0", "read-yaml": "^1.1.0",