swethak Posted November 12, 2008 Share Posted November 12, 2008 Hi, I am desiging the calendar application for that purpose i used the below code. But it is for only displys calendar. And also i want to add the events to calendar. In that code displys the events when click on that date that perticular event displyed in a text box.But my requirement is to when click on that date that related event displyed in same td row not the text box. and also i add the events to that calendar.plz advice how to modify my code. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <title>Calendar of Events</title> <style type="text/css"> #evtcal a:link {font: normal 12pt "Arial", "Helvetica", "Sans Serif"; color: #004400; text-decoration: none;} /* unvisited link */ #evtcal a:visited {font: normal 12pt "Arial", "Helvetica", "Sans Serif"; color: #004400; text-decoration: none;} /* visited link */ #evtcal a:hover {font: normal 12pt "Arial", "Helvetica", "Sans Serif"; color: #004400; text-decoration: underline;} /* mouse over link */ #evtcal a:active {font: normal 12pt "Arial", "Helvetica", "Sans Serif"; color: #004400; text-decoration: none;} /* selected link */ </style> <script language="JavaScript" type="text/javascript" src="events.js"></script> <script type="text/JavaScript" language="JavaScript"> /* Preload images script */ var myimages=new Array() function preloadimages(){ for (i=0;i<preloadimages.arguments.length;i++){ myimages=new Image(); myimages.src=preloadimages.arguments; } } /* The path of images to be preloaded inside parenthesis: (Extend list as desired.) */ preloadimages("images/PrevYrOff40x40.jpg","images/PrevYrOn40x40.jpg","images/PrevMoOff40x40.jpg","images/PrevMoOn40x40.jpg","images/NextYrOff40x40.jpg","images/NextYrOn40x40.jpg","images/NextMoOff40x40.jpg","images/NextMoOn40x40.jpg"); /*************************************************************************************** JavaScript Calendar - Digital Christian Design //Script featured on and available at JavaScript Kit: http://www.javascriptkit.com // Functions changedate(): Moves to next or previous month or year, or current month depending on the button clicked. createCalendar(): Renders the calander into the page with links for each to fill the date form filds above. ***************************************************************************************/ var thisDate = 1; // Tracks current date being written in calendar var wordMonth = new Array("January","February","March","April","May","June","July","August","September","October","November","December"); var today = new Date(); // Date object to store the current date var todaysDay = today.getDay() + 1; // Stores the current day number 1-7 var todaysDate = today.getDate(); // Stores the current numeric date within the month var todaysMonth = today.getUTCMonth() + 1; // Stores the current month 1-12 var todaysYear = today.getFullYear(); // Stores the current year var monthNum = todaysMonth; // Tracks the current month being displayed var yearNum = todaysYear; // Tracks the current year being displayed var firstDate = new Date(String(monthNum)+"/1/"+String(yearNum)); // Object Storing the first day of the current month var firstDay = firstDate.getUTCDay(); // Tracks the day number 1-7 of the first day of the current month var lastDate = new Date(String(monthNum+1)+"/0/"+String(yearNum)); // Tracks the last date of the current month var numbDays = 0; var calendarString = ""; var eastermonth = 0; var easterday = 0; function changedate(buttonpressed) { if (buttonpressed == "prevyr") yearNum--; else if (buttonpressed == "nextyr") yearNum++; else if (buttonpressed == "prevmo") monthNum--; else if (buttonpressed == "nextmo") monthNum++; else if (buttonpressed == "return") { monthNum = todaysMonth; yearNum = todaysYear; } if (monthNum == 0) { monthNum = 12; yearNum--; } else if (monthNum == 13) { monthNum = 1; yearNum++ } lastDate = new Date(String(monthNum+1)+"/0/"+String(yearNum)); numbDays = lastDate.getDate(); firstDate = new Date(String(monthNum)+"/1/"+String(yearNum)); firstDay = firstDate.getDay() + 1; createCalendar(); return; } function easter(year) { // feed in the year it returns the month and day of Easter using two GLOBAL variables: eastermonth and easterday var a = year % 19; var b = Math.floor(year/100); var c = year % 100; var d = Math.floor(b/4); var e = b % 4; var f = Math.floor((b+ / 25); var g = Math.floor((b-f+1) / 3); var h = (19*a + b - d - g + 15) % 30; var i = Math.floor(c/4); var j = c % 4; var k = (32 + 2*e + 2*i - h - j) % 7; var m = Math.floor((a + 11*h + 22*k) / 451); var month = Math.floor((h + k - 7*m + 114) / 31); var day = ((h + k - 7*m +114) % 31) + 1; eastermonth = month; easterday = day; } function createCalendar() { calendarString = ''; var daycounter = 0; calendarString += '<table width="312" border="1" cellpadding="0" cellspacing="1">'; calendarString += '<tr>'; calendarString += '<td align=\"center\" valign=\"center\" width=\"40\" height=\"40\"><a href=\"#\" onMouseOver=\"document.PrevYr.src=\'images\/PrevYrOn40x40\.jpg\';\" onMouseOut=\"document.PrevYr.src=\'images\/PrevYrOff40x40\.jpg\';\" onClick=\"changedate(\'prevyr\')\"><img name=\"PrevYr\" src=\"images\/PrevYrOff40x40\.jpg\" width=\"40\" height=\"40\" border=\"0\" alt=\"Prev Yr\"\/><\/a><\/td>'; calendarString += '<td align=\"center\" valign=\"center\" width=\"40\" height=\"40\"><a href=\"#\" onMouseOver=\"document.PrevMo.src=\'images\/PrevMoOn40x40\.jpg\';\" onMouseOut=\"document.PrevMo.src=\'images\/PrevMoOff40x40\.jpg\';\" onClick=\"changedate(\'prevmo\')\"><img name=\"PrevMo\" src=\"images\/PrevMoOff40x40\.jpg\" width=\"40\" height=\"40\" border=\"0\" alt=\"Prev Mo\"\/><\/a><\/td>'; calendarString += '<td bgcolor=\"#C8C896\" align=\"center\" valign=\"center\" width=\"128\" height=\"40\" colspan=\"3\"><b>' + wordMonth[monthNum-1] + ' ' + yearNum + '<\/b><\/td>'; calendarString += '<td align=\"center\" valign=\"center\" width=\"40\" height=\"40\"><a href=\"#\" onMouseOver=\"document.NextMo.src=\'images\/NextMoOn40x40\.jpg\';\" onMouseOut=\"document.NextMo.src=\'images\/NextMoOff40x40\.jpg\';\" onClick=\"changedate(\'nextmo\')\"><img name=\"NextMo\" src=\"images\/NextMoOff40x40\.jpg\" width=\"40\" height=\"40\" border=\"0\" alt=\"Next Mo\"\/><\/a><\/td>'; calendarString += '<td align=\"center\" valign=\"center\" width=\"40\" height=\"40\"><a href=\"#\" onMouseOver=\"document.NextYr.src=\'images\/NextYrOn40x40\.jpg\';\" onMouseOut=\"document.NextYr.src=\'images\/NextYrOff40x40\.jpg\';\" onClick=\"changedate(\'nextyr\')\"><img name=\"NextYr\" src=\"images\/NextYrOff40x40\.jpg\" width=\"40\" height=\"40\" border=\"0\" alt=\"Next Yr\"\/><\/a><\/td>'; calendarString += '<\/tr>'; calendarString += '<tr>'; calendarString += '<td bgcolor=\"#DDDDDD\" align=\"center\" valign=\"center\" width=\"40\" height=\"22\">Sun<\/td>'; calendarString += '<td bgcolor=\"#DDDDDD\" align=\"center\" valign=\"center\" width=\"40\" height=\"22\">Mon<\/td>'; calendarString += '<td bgcolor=\"#DDDDDD\" align=\"center\" valign=\"center\" width=\"40\" height=\"22\">Tue<\/td>'; calendarString += '<td bgcolor=\"#DDDDDD\" align=\"center\" valign=\"center\" width=\"40\" height=\"22\">Wed<\/td>'; calendarString += '<td bgcolor=\"#DDDDDD\" align=\"center\" valign=\"center\" width=\"40\" height=\"22\">Thu<\/td>'; calendarString += '<td bgcolor=\"#DDDDDD\" align=\"center\" valign=\"center\" width=\"40\" height=\"22\">Fri<\/td>'; calendarString += '<td bgcolor=\"#DDDDDD\" align=\"center\" valign=\"center\" width=\"40\" height=\"22\">Sat<\/td>'; calendarString += '<\/tr>'; thisDate == 1; for (var i = 1; i <= 6; i++) { calendarString += '<tr>'; for (var x = 1; x <= 7; x++) { daycounter = (thisDate - firstDay)+1; thisDate++; if ((daycounter > numbDays) || (daycounter < 1)) { calendarString += '<td align=\"center\" bgcolor=\"#888888\" height=\"30\" width=\"40\"> <\/td>'; } else { if (checkevents(daycounter,monthNum,yearNum,i,x) || ((todaysDay == x) && (todaysDate == daycounter) && (todaysMonth == monthNum))){ if ((todaysDay == x) && (todaysDate == daycounter) && (todaysMonth == monthNum)) { calendarString += '<td align=\"center\" bgcolor=\"#AAFFAA\" height=\"30\" width=\"40\">hello<a href=\"javascript:showevents(' + daycounter + ',' + monthNum + ',' + yearNum + ',' + i + ',' + x + ')\">' + daycounter + '<\/a><\/td>'; } else calendarString += '<td align=\"center\" bgcolor=\"#FFFFC8\" height=\"30\" width=\"40\"><a href=\"javascript:showevents(' + daycounter + ',' + monthNum + ',' + yearNum + ',' + i + ',' + x + ')\">' + daycounter + '<\/a><\/td>'; } else { calendarString += '<td align=\"center\" bgcolor=\"#DDFFFF\" height=\"30\" width=\"40\">' + daycounter + '<\/td>'; } } } calendarString += '<\/tr>'; } calendarString += '<tr><td colspan=\"7\" nowrap align=\"center\" valign=\"center\" bgcolor=\"#C8C896\" width=\"280\" height=\"22\"><a href=\"javascript:changedate(\'return\')\"><b>Show Current Date<\/b><\/a><\/td><\/tr><\/table>'; var object=document.getElementById('calendar'); object.innerHTML= calendarString; thisDate = 1; } function checkevents(day,month,year,week,dayofweek) { var numevents = 0; var floater = 0; for (var i = 0; i < events.length; i++) { if (events[0] == "W") { if ((events[2] == dayofweek)) numevents++; } else if (events[0] == "Y") { if ((events[2] == day) && (events[1] == month)) numevents++; } else if (events[0] == "F") { if ((events[1] == 3) && (events[2] == 0) && (events[3] == 0) ) { easter(year); if (easterday == day && eastermonth == month) numevents++; } else { floater = floatingholiday(year,events[1],events[2],events[3]); if ((month == 5) && (events[1] == 5) && (events[2] == 4) && (events[3] == 2)) { if ((floater + 7 <= 31) && (day == floater + 7)) { numevents++; } else if ((floater + 7 > 31) && (day == floater)) numevents++; } else if ((events[1] == month) && (floater == day)) numevents++; } } else if ((events[2] == day) && (events[1] == month) && (events[3] == year)) { numevents++; } } if (numevents == 0) { return false; } else { return true; } } function showevents(day,month,year,week,dayofweek) { var theevent = ""; var floater = 0; for (var i = 0; i < events.length; i++) { // First we'll process recurring events (if any): if (events[0] != "") { if (events[0] == "D") { } if (events[0] == "W") { if ((events[2] == dayofweek)) { theevent += "Events of: \n" + month +'/'+ day +'/'+ year + '\n'; theevent += events[6] + '\n'; theevent += 'Start Time: ' + events[4] + '\n'; theevent += 'Ending Time: ' + events[5] + '\n'; theevent += 'Description: ' + events[7] + '\n'; theevent += '\n -------------- \n\n'; document.forms.eventform.eventlist.value = theevent; } } if (events[0] == "M") { } if (events[0] == "Y") { if ((events[2] == day) && (events[1] == month)) { theevent += "Events of: \n" + month +'/'+ day +'/'+ year + '\n'; theevent += events[6] + '\n'; theevent += 'Start Time: ' + events[4] + '\n'; theevent += 'Ending Time: ' + events[5] + '\n'; theevent += 'Description: ' + events[7] + '\n'; theevent += '\n -------------- \n\n'; document.forms.eventform.eventlist.value = theevent; } } if (events[0] == "F") { if ((events[1] == 3) && (events[2] == 0) && (events[3] == 0) ) { if (easterday == day && eastermonth == month) { theevent += "Events of: \n" + month +'/'+ day +'/'+ year + '\n'; theevent += events[6] + '\n'; theevent += 'Start Time: ' + events[4] + '\n'; theevent += 'Ending Time: ' + events[5] + '\n'; theevent += 'Description: ' + events[7] + '\n'; theevent += '\n -------------- \n\n'; document.forms.eventform.eventlist.value = theevent; } } else { floater = floatingholiday(year,events[1],events[2],events[3]); if ((month == 5) && (events[1] == 5) && (events[2] == 4) && (events[3] == 2)) { if ((floater + 7 <= 31) && (day == floater + 7)) { theevent += "Events of: \n" + month +'/'+ day +'/'+ year + '\n'; theevent += events[6] + '\n'; theevent += 'Start Time: ' + events[4] + '\n'; theevent += 'Ending Time: ' + events[5] + '\n'; theevent += 'Description: ' + events[7] + '\n'; theevent += '\n -------------- \n\n'; document.forms.eventform.eventlist.value = theevent; } else if ((floater + 7 > 31) && (day == floater)) { theevent += "Events of: \n" + month +'/'+ day +'/'+ year + '\n'; theevent += events[6] + '\n'; theevent += 'Start Time: ' + events[4] + '\n'; theevent += 'Ending Time: ' + events[5] + '\n'; theevent += 'Description: ' + events[7] + '\n'; theevent += '\n -------------- \n\n'; document.forms.eventform.eventlist.value = theevent; } } else if ((events[1] == month) && (floater == day)) { theevent += "Events of: \n" + month +'/'+ day +'/'+ year + '\n'; theevent += events[6] + '\n'; theevent += 'Start Time: ' + events[4] + '\n'; theevent += 'Ending Time: ' + events[5] + '\n'; theevent += 'Description: ' + events[7] + '\n'; theevent += '\n -------------- \n\n'; document.forms.eventform.eventlist.value = theevent; } } } } // Now we'll process any One Time events happening on the matching month, day, year: else if ((events[2] == day) && (events[1] == month) && (events[3] == year)) { theevent += "Events of: \n" + month +'/'+ day +'/'+ year + '\n'; theevent += events[6] + '\n'; theevent += 'Start Time: ' + events[4] + '\n'; theevent += 'Ending Time: ' + events[5] + '\n'; theevent += 'Description: ' + events[7] + '\n'; theevent += '\n -------------- \n\n'; document.forms.eventform.eventlist.value = theevent; } } if (theevent == "") document.forms.eventform.eventlist.value = 'No events to show.'; } function floatingholiday(targetyr,targetmo,cardinaloccurrence,targetday) { // Floating holidays/events of the events.js file uses: // the Month field for the Month (here it becomes the targetmo field) // the Day field as the Cardinal Occurrence (here it becomes the cardinaloccurrence field) // 1=1st, 2=2nd, 3=3rd, 4=4th, 5=5th, 6=6th occurrence of the day listed next // the Year field as the Day of the week the event/holiday falls on (here it becomes the targetday field) // 1=Sunday, 2=Monday, 3=Tuesday, 4=Wednesday, 5=Thurday, 6=Friday, 7=Saturday // example: "F", "1", "3", "2", = Floating holiday in January on the 3rd Monday of that month. // // In our code below: // targetyr is the active year // targetmo is the active month (1-12) // cardinaloccurrence is the xth occurrence of the targetday (1-6) // targetday is the day of the week the floating holiday is on // 0=Sun; 1=Mon; 2=Tue; 3=Wed; 4=Thu; 5=Fri; 6=Sat // Note: subtract 1 from the targetday field if the info comes from the events.js file // // Note: // If Memorial Day falls on the 22nd, 23rd, or 24th, then we add 7 to the dayofmonth to the result. // // Example: targetyr = 2052; targetmo = 5; cardinaloccurrence = 4; targetday = 1 // This is the same as saying our floating holiday in the year 2052, is during May, on the 4th Monday // var firstdate = new Date(String(targetmo)+"/1/"+String(targetyr)); // Object Storing the first day of the current month. var firstday = firstdate.getUTCDay(); // The first day (0-6) of the target month. var dayofmonth = 0; // zero out our calendar day variable. targetday = targetday - 1; if (targetday >= firstday) { cardinaloccurrence--; // Subtract 1 from cardinal day. dayofmonth = (cardinaloccurrence * 7) + ((targetday - firstday)+1); } else { dayofmonth = (cardinaloccurrence * 7) + ((targetday - firstday)+1); } return dayofmonth; } </script> </head> <body style="background-color: transparent;" onload="changedate('return')"> <p align="center">Calendar of Events</p> <center> <table id="evtcal" border="0" cellpadding="0" cellspacing="0" width="584"> <tbody> <tr> <td style="padding: 3px;" align="center" bgcolor="#aaddff" valign="top" width="314"> <div id="calendar"><!-- Dynamically Filled --></div> You can move to a different month or year by clicking on the buttons or return to today's date by clicking "Show Current Date".</td> <td width="10"> </td> <td style="padding: 3px;" align="center" bgcolor="#ffffc8" valign="top" width="260"><b>Intructions:</b><br />Click a highlighted date on the calendar to see a list of events on that day in the box below.<br /><br /> <center><b><u>Events</u></b> <form id="eventform" name="eventform" action="#" method="get"> <textarea name="eventlist" cols="25" rows="11" wrap="soft">Auto filled when clicking on date.</textarea> </form> </center> </td> </tr> </tbody> </table> </center> <br /> <p style="font: normal 11px Arial" align="center">This free script provided by<br /> <a href="http://www.javascriptkit.com">JavaScript Kit</a></p> </body> </html> events.js [javascript] // This is the Database of Upcoming Events // Please Edit with Care. // // 8 Fields (surrounded by brackets[]) are used for EACH event: // ["Recurring", "Month", "Day", "Year", "StartTime", "EndTime", "Name", "Description"] // Each event field must be be surrounded by quotation marks followed by a comma ("",) EXCEPT the "Description" field. // The "Description" field is surrounded by quotation marks only (""). // // Each event has a comma after the closing bracket IF another event is below it on the next line down. // Note: The last event in this file should NOT have a comma after the closing bracket // // The Recurring field uses: // "D" = Daily; "W" = Weekly; "M" = Monthly; "Y" = Yearly; "F" = Floating Holiday // // One Time only events should leave the Recurring field blank // (ex. "") // // Daily events do NOT require that anything be in the Month Day and Year fields // Everything in the Month Day and Year fields will be ignored // // Weekly events should have the day of the week field set to 1 - 7 // 1=Sunday, 2=Monday, 3=Tuesday, 4=Wednesday, 5=Thurday, 6=Friday, 7=Saturday // // "F"loating events uses: // the Month field for the Month. // the Day field as the Cardinal Occurrence // 1=1st, 2=2nd, 3=3rd, 4=4th, 5=5th, 6=6th occurrence of the day listed next // the Year field as the Day of the week the event/holiday falls on // 1=Sunday, 2=Monday, 3=Tuesday, 4=Wednesday, 5=Thurday, 6=Friday, 7=Saturday // example: "F", "1", "3", "2", = Floating holiday in January on the 3rd Monday of that month. // // Note: Easter has it's own special formula so Please don't change anything related to Easter below // // "Y"early events are specific dates that never change - the Year field is ignored // example - Christmas is: "12","25","", events = new Array( ["Y", "1", "1", "2006", "1:00 AM", "12:00 PM", "New Year's Day", "New Year's Day will be ushered in with great joy and celebration. Come as you are."], ["F", "1", "3", "2", "1:00 AM", "12:59 PM", "Martin Luther King Day", "Honors civil rights leader Rev Martin Luther King."], ["Y", "2", "2", "2005", "1:00 AM", "12:59 PM", "Groundhog Day", "If Philadelphia's groundhog 'Punxsutawney Phil' sees his shadow, there will be six more weeks of winter weather. If he does not see his shadow, there will be an early spring."], ["Y", "2", "14", "2005", "1:00 AM", "12:59 PM", "Valentine's Day", "Traditional celebration of love and romance, including the exchange of cards, candy, flowers, and other gifts."], ["F", "2", "3", "2", "1:00 AM", "12:59 PM", "President's Day", "Honors the birthdays of George Washington, Abraham Lincoln and other past American Presidents."], ["F", "3", "0", "0", "1:00 AM", "12:59 PM", "Easter", "Traditional celebration of the resurrection of Jesus Christ."], ["Y", "3", "17", "2005", "1:00 AM", "12:59 PM", "St. Patrick's Day", "A celebration of Irish heritage and culture, based on the Catholic feast of St. Patrick. Primary activity is simply the wearing of green clothing ('wearing of the green')."], ["Y", "3", "22", "2005", "1:00 AM", "12:59 PM", "World Water Day", "A day to promote appreciation of the world's most valuable commodity - water."], ["Y", "4", "1", "2005", "1:00 AM", "12:59 PM", "April Fool's Day", "A day to play tricks on or 'fool' family, friends, and coworkers, if so inclined. As Ecclesiastes says: 'There is a time for everything'; in this case, a time to be silly."], ["F", "5", "2", "1", "1:00 AM", "12:59 PM", "Mother's Day", "Honors mothers and motherhood (made a Federal Holiday by Presidential order)."], ["F", "5", "3", "7", "1:00 AM", "12:59 PM", "Armed Forces Day", "Celebrates the United States Army, Navy, Air Force and Marine Corps; formerly - each used to have separate days."], ["F", "5", "4", "2", "1:00 AM", "12:59 PM", "Memorial Day", "Honors the nation's war dead, and those we love who have passed away. Traditionally a time to decorate graves and remember those who have gone before us. Also marks traditional beginning of summer."], ["Y", "6", "14", "2005", "1:00 AM", "12:59 PM", "Flag Day", "Honors the American flag, encourages patriotism. Citizens are urged to fly the flag and study its traditions."], ["F", "6", "3", "1", "1:00 AM", "12:59 PM", "Father's Day", "Honors all Fathers and fatherhood."], ["Y", "7", "4", "2005", "1:00 AM", "12:59 PM", "Independence Day", "Celebrates our Declaration of Independence from England in 1776, usually called the Fourth of July."], ["F", "9", "1", "2", "1:00 AM", "12:59 PM", "Labor Day", "Celebrates the achievements of workers, giving them a day of rest - marks traditional end of summer."], ["F", "10", "2", "2", "1:00 AM", "12:59 PM", "Columbus' Day", "Honors the traditional discovery of the Americas by Christopher Columbus."], ["Y", "10", "31", "2005", "1:00 AM", "12:59 PM", "Halloween", "Celebrates All Hallow's Eve, decorations include jack o'lanterns, costume wearing parties, and candy - considered a pagan holiday by many Christians."], ["Y", "11", "11", "2005", "1:00 AM", "12:59 PM", "Veteran's Day", "Honors all veterans of the United States armed forces. A traditional observation is a moment of silence at 11 AM remembering those who fought for peace."], ["F", "11", "4", "5", "1:00 AM", "12:59 PM", "Thanksgiving", "A day to give thanks for your many blessings - traditionally for the Autumn harvest, and it marks the beginning of the 'holiday season'."], ["Y", "12", "25", "2005", "1:00 AM", "12:59 PM", "Christmas", "Celebration of the traditional day of Jesus' birth - God was made flesh and dwelt among us."] // Please omit the final comma after the ] from the last line above unless you are going to add another event at this time. ); [/javascript] Quote Link to comment Share on other sites More sharing options...
BoltZ Posted November 12, 2008 Share Posted November 12, 2008 Oh god put that in code tags please man that is an eyesore. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.