Hello to all, welcome to therichpost.com. In this post, I will tell you, Nodejs – Fullcalendar Working Example.
You can see in my blog, I have implemented FullCalendar in many JS-Frameworks and today, I am going to this in Nodejs.
Here is the working Picture:
Here is the working and tested code, here you will follow:
1. Very First, you need to add below code into your node js file:
In this file, we import npm ‘FS’ package to read or write the external files:
var http = require('http'); var fs = require('fs');//Library for call files http.createServer(function (req, res) { fs.readFile('fullcalendar.html', function(err, data) { res.writeHead(200, {'Content-Type': 'text/html'}); res.write(data); res.end(); }); }).listen(3000);
2. Here is the fullcalendar.html file code you will call this file into your node js file:
This is html code for fullcalendar and In this I have also implemented sweet-alert and I am counting the total number of event in it.
<!DOCTYPE html> <html> <head> <meta charset='utf-8' /> <link href='https://fullcalendar.io/releases/fullcalendar/3.9.0/fullcalendar.min.css' rel='stylesheet' /> <link rel='stylesheet' href='https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/ bootstrap.min.css'> <link href='https://fullcalendar.io/releases/fullcalendar/3.9.0/fullcalendar.print.min.css' rel='stylesheet' media='print' /> <link rel="stylesheet" href="http://code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css"> <link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.3.1/css/all.css" integrity="sha384-mzrmE5qonljUremFsqc01SB46JvROS7bZs3IO2EmfFsd15uHvIt+Y8vEf7N7fWAU" crossorigin="anonymous"> <script src='https://fullcalendar.io/releases/fullcalendar/3.9.0/lib/moment.min.js'></script> <script src='https://fullcalendar.io/releases/fullcalendar/3.9.0/lib/jquery.min.js'></script> <script src='https://fullcalendar.io/releases/fullcalendar/3.9.0/fullcalendar.min.js'></script> <script src='https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min .js'></script> <script src="https://unpkg.com/sweetalert/dist/sweetalert.min.js"></script> <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script> <script> $(document).ready(function() { $('#calendar').fullCalendar({ header: { left: 'prev,next today', center: 'title', right: 'month,basicWeek,basicDay' }, defaultDate: '2018-03-12', navLinks: true, // can click day/week names to navigate views editable: true, eventLimit: true, // allow "more" link when too many events events: [ { title: 'All Day Event', start: '2018-03-01', backgroundColor:'red' }, { title: 'Long Event', start: '2018-03-07', end: '2018-03-10', backgroundColor:'green' }, { id: 999, title: 'Repeating Event', start: '2018-03-09T16:00:00' }, { id: 999, title: 'Repeating Event', start: '2018-03-16T16:00:00' }, { title: 'Conference', start: '2018-03-11', end: '2018-03-13' }, { title: 'Meeting', start: '2018-03-12T10:30:00', end: '2018-03-12T12:30:00' }, { title: 'Lunch', start: '2018-03-12T12:00:00' }, { title: 'Meeting', start: '2018-03-12T14:30:00' }, { title: 'Happy Hour', start: '2018-03-12T17:30:00' }, { title: 'Dinner', start: '2018-03-12T20:00:00' }, { title: 'Birthday Party', start: '2018-03-13T07:00:00' }, { title: 'Click for Google', url: 'http://google.com/', start: '2018-03-28' } ], eventClick: function(calEvent, jsEvent, view, resourceObj) { swal({ title: calEvent.title, text: "Start From : "+moment(calEvent.start).format("MMMM Do YYYY, h:mm a"), icon: "success", }); } }); $(".fc-right .fc-button-group").append( '<div class="input-group datetimepicker"><input type="text" class="form-control fc-datepicker" placeholder="YYYY-MM-DD" style="padding: 0;width: 0;border: none;margin: 0;"></div>'); $(".fc-datepicker").datepicker({ dateFormat: 'yy-mm-dd', showOn: "button", buttonText: '<span class="input-group-addon"><i class="fas fa-calendar-alt"></i></span>' }); }); </script> <style> body { margin: 40px 10px; padding: 0; font-family: "Lucida Grande",Helvetica,Arial,Verdana,sans-serif; font-size: 14px; } #calendar { max-width: 900px; margin: 0 auto; } .hoverEffect { font-size: 29px; position: absolute; margin: 30px 55px; cursor: pointer; } .ui-datepicker-trigger { background: transparent; border: none; margin: 0!important; padding: 0!important; } .datetimepicker .input-group-addon { background-color: #f9f9f9; border-radius: 0; border-top-right-radius: 3px; border-bottom-right-radius: 3px; cursor: pointer; height: 2.1em; border: 1px solid #ccc; } .fc-state-default.fc-corner-right { border-radius: 0px; } </style> </head> <body> <div id='calendar'></div> </body> </html>
3. After it, you need to run below command into your terminal to execute js file:
node YourFileName.js
4. After it, run below url into your browser:
http://localhost:3000/
If you have any query related to this post, then please do comment below or you can ask questions.
Thank you,
Happy Coding,
Jatt Da Muqabla,
TheRichPost
Recent Comments