From 9b14c276e34ab8d15730281979a3042ae8ee4089 Mon Sep 17 00:00:00 2001
From: Bart Visscher <bartv@thisnet.nl>
Date: Tue, 6 Sep 2011 13:38:19 +0200
Subject: [PATCH] Store date for click in jQuery.data('date_info')

---
 apps/calendar/js/calendar.js         | 60 ++++++++++------------------
 apps/calendar/templates/calendar.php | 12 +++---
 2 files changed, 26 insertions(+), 46 deletions(-)

diff --git a/apps/calendar/js/calendar.js b/apps/calendar/js/calendar.js
index 1dbb63377f..fb252cc3fc 100644
--- a/apps/calendar/js/calendar.js
+++ b/apps/calendar/js/calendar.js
@@ -312,6 +312,20 @@ Calendar={
 		formatTime:function(date){
 			return date[3] + ':' + date[4];
 		},
+		addDateInfo:function(selector, date){
+			var generate_dayofmonth = date[0];
+			var generate_month = date[1];
+			var generate_year = date[2];
+			if(parseInt(generate_dayofmonth) <= 9){
+				generate_dayofmonth = "0" + generate_dayofmonth;
+			}
+			generate_month++;
+			if(parseInt(generate_month) <= 9){
+				generate_month = "0" + generate_month;
+			}
+			var generate_title = String(generate_dayofmonth) + String(generate_month) + String(generate_year);
+			$(selector).data('date_info', generate_title);
+		},
 		OneDay:{
 			forward:function(){
 				Calendar.Date.forward_day();
@@ -325,18 +339,7 @@ Calendar={
 			renderCal:function(){
 				$("#datecontrol_date").val(oc_cal_dayshort[oc_cal_dayofweek] + oc_cal_space + oc_cal_dayofmonth + oc_cal_space + oc_cal_monthshort[oc_cal_month] + oc_cal_space + oc_cal_year);
 				$("#onedayview_today").html(oc_cal_daylong[oc_cal_dayofweek] + oc_cal_space + oc_cal_dayofmonth + oc_cal_space + oc_cal_monthshort[oc_cal_month]);
-				var generate_dayofmonth = oc_cal_dayofmonth;
-				var generate_month = oc_cal_month;
-				var generate_year = oc_cal_year;
-				if(parseInt(generate_dayofmonth) <= 9){
-					generate_dayofmonth = "0" + generate_dayofmonth;
-				}
-				generate_month++;
-				if(parseInt(generate_month) <= 9){
-					generate_month = "0" + generate_month;
-				}
-				var generate_title = String(generate_dayofmonth) + String(generate_month) + String(generate_year);
-				$('#onedayview_today').attr('title', generate_title);
+				Calendar.UI.addDateInfo('#onedayview_today', [oc_cal_dayofmonth, oc_cal_month, oc_cal_year]);
 			},
 			showEvents:function(){
 				Calendar.UI.createEventsForDate([oc_cal_dayofmonth, oc_cal_month, oc_cal_year], 0, 0);
@@ -378,15 +381,7 @@ Calendar={
 					if(generate_dayofmonth == oc_cal_todaydayofmonth && generate_month == oc_cal_todaymonth && generate_year == oc_cal_todayyear){
 						$("#oneweekview ." + Calendar.UI.weekdays[i]).addClass("thisday");
 					}
-					if(parseInt(generate_dayofmonth) <= 9){
-						generate_dayofmonth = "0" + generate_dayofmonth;
-					}
-					generate_month++;
-					if(parseInt(generate_month) <= 9){
-						generate_month = "0" + generate_month;
-					}
-					var generate_title = String(generate_dayofmonth) + String(generate_month) + String(dates[i][2]);
-					$("#oneweekview th." + Calendar.UI.weekdays[i]).attr('title', generate_title);
+					Calendar.UI.addDateInfo('#oneweekview th.' + Calendar.UI.weekdays[i], dates[i]);
 					if(weekday == 6){
 						weekday = 0;
 					}else{
@@ -468,15 +463,7 @@ Calendar={
 					if(generate_dayofmonth == oc_cal_todaydayofmonth && generate_month == oc_cal_todaymonth && generate_year == oc_cal_todayyear){
 						$("#fourweeksview .week_" + week + " ." + Calendar.UI.weekdays[weekday]).addClass('thisday');
 					}
-					if(parseInt(generate_dayofmonth) <= 9){
-						generate_dayofmonth = "0" + generate_dayofmonth;
-					}
-					generate_month++;
-					if(parseInt(generate_month) <= 9){
-						generate_month = "0" + generate_month;
-					}
-					var generate_title = String(generate_dayofmonth) + String(generate_month) + String(dates[i][2]);
-					$("#fourweeksview ." + ".week_" + week + " ." + Calendar.UI.weekdays[weekday]).attr('title', generate_title);
+					Calendar.UI.addDateInfo('#fourweeksview .week_' + week + ' .' + Calendar.UI.weekdays[weekday], dates[i]);
 					if(weekday == 6){
 						weekday = 0;
 						week++;
@@ -569,15 +556,7 @@ Calendar={
 					if(generate_dayofmonth == oc_cal_todaydayofmonth && generate_month == oc_cal_todaymonth && generate_year == oc_cal_todayyear){
 						$("#onemonthview .week_" + week + " ." + Calendar.UI.weekdays[weekday]).addClass('thisday');
 					}
-					if(parseInt(generate_dayofmonth) <= 9){
-						generate_dayofmonth = "0" + generate_dayofmonth;
-					}
-					generate_month++;
-					if(parseInt(generate_month) <= 9){
-						generate_month = "0" + generate_month;
-					}
-					var generate_title = String(generate_dayofmonth) + String(generate_month) + String(generate_year);
-					$("#onemonthview .week_" + week + " ." + Calendar.UI.weekdays[weekday]).attr('title', generate_title);
+					Calendar.UI.addDateInfo('#onemonthview .week_' + week + ' .' + Calendar.UI.weekdays[weekday], dates[i]);
 					if(weekday == 6){
 						weekday = 0;
 						week++;
@@ -684,7 +663,8 @@ function oc_cal_switch2today() {
 	Calendar.UI.updateView();
 }
 
-function oc_cal_newevent(date, time){
+function oc_cal_newevent(selector, time){
+	var date = $(selector).data('date_info');
 	if(oc_cal_opendialog == 0){
 		$("#dialog_holder").load(oc_webroot + "/apps/calendar/ajax/neweventform.php?d=" + date + "&t=" + time);
 		oc_cal_opendialog = 1;
diff --git a/apps/calendar/templates/calendar.php b/apps/calendar/templates/calendar.php
index c736d12229..30692e14b5 100644
--- a/apps/calendar/templates/calendar.php
+++ b/apps/calendar/templates/calendar.php
@@ -69,14 +69,14 @@ $weekdays = array('monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'satur
 							<thead>
 								<tr>
 									<th class="calendar_time"><?php echo $l->t("Time");?></th>
-									<th id="onedayview_today" class="calendar_row" onclick="oc_cal_newevent($('#onedayview_today').attr('title'));"></th>
+									<th id="onedayview_today" class="calendar_row" onclick="oc_cal_newevent('#onedayview_today');"></th>
 								</tr>
 							</thead>
 							<tbody>
 <?php foreach($hours as $time => $time_label): ?>
 								<tr>
 									<td class="calendar_time"><?php echo $time_label ?></td>
-									<td class="calendar_row <?php echo $time ?>" onclick="oc_cal_newevent($('#onedayview_today').attr('title'), '<?php echo $time ?>');"></td>
+									<td class="calendar_row <?php echo $time ?>" onclick="oc_cal_newevent('#onedayview_today', '<?php echo $time ?>');"></td>
 								</tr>
 <?php endforeach; ?>
 							</tbody>
@@ -88,7 +88,7 @@ $weekdays = array('monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'satur
 								<tr>
 									<th class="calendar_time"><?php echo $l->t("Time");?></th>
 <?php foreach($weekdays as $weekdaynr => $weekday): ?>
-									<th class="calendar_row <?php echo $weekday ?> <?php echo $weekdaynr > 4 ? 'weekend_thead' : '' ?>" onclick="oc_cal_newevent($('#oneweekview th.<?php echo $weekday ?>').attr('title'));"></th>
+									<th class="calendar_row <?php echo $weekday ?> <?php echo $weekdaynr > 4 ? 'weekend_thead' : '' ?>" onclick="oc_cal_newevent('#oneweekview th.<?php echo $weekday ?>');"></th>
 <?php endforeach; ?>
 								</tr>
 							</thead>
@@ -97,7 +97,7 @@ $weekdays = array('monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'satur
 								<tr>
 									<td class="calendar_time"><?php echo $time_label?></td>
 <?php foreach($weekdays as $weekdaynr => $weekday): ?>
-									<td class="<?php echo $weekday ?> <?php echo $time ?> calendar_row <?php echo $weekdaynr > 4 ? 'weekend_row' : '' ?>" onclick="oc_cal_newevent($('#oneweekview th.<?php echo $weekday ?>').attr('title'), '<?php echo $time ?>');"></td>
+									<td class="<?php echo $weekday ?> <?php echo $time ?> calendar_row <?php echo $weekdaynr > 4 ? 'weekend_row' : '' ?>" onclick="oc_cal_newevent('#oneweekview th.<?php echo $weekday ?>', '<?php echo $time ?>');"></td>
 <?php endforeach; ?>
 								</tr>
 <?php endforeach; ?>
@@ -119,7 +119,7 @@ $weekdays = array('monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'satur
 								<tr class="week_<?php echo $week ?>">
 									<td class="calw"></td>
 <?php foreach($weekdays as $weekdaynr => $weekday): ?>
-									<td class="day <?php echo $weekday ?> <?php echo $weekdaynr > 4 ? 'weekend' : '' ?>" onclick="oc_cal_newevent($('#fourweeksview .week_<?php echo $week ?> .<?php echo $weekday ?>').attr('title'))">
+									<td class="day <?php echo $weekday ?> <?php echo $weekdaynr > 4 ? 'weekend' : '' ?>" onclick="oc_cal_newevent('#fourweeksview .week_<?php echo $week ?> .<?php echo $weekday ?>')">
 									<div class="dateinfo"></div>
 									<div class="events"></div>
 									</td>
@@ -142,7 +142,7 @@ $weekdays = array('monday', 'tuesday', 'wednesday', 'thursday', 'friday', 'satur
 <?php foreach(range(1, 6) as $week): ?>
 								<tr class="week_<?php echo $week ?>">
 <?php foreach($weekdays as $weekdaynr => $weekday): ?>
-									<td class="day <?php echo $weekday ?> <?php echo $weekdaynr > 4 ? 'weekend' : '' ?>" onclick="oc_cal_newevent($('#onemonthview .week_<?php echo $week ?> .<?php echo $weekday ?>').attr('title'))">
+									<td class="day <?php echo $weekday ?> <?php echo $weekdaynr > 4 ? 'weekend' : '' ?>" onclick="oc_cal_newevent('#onemonthview .week_<?php echo $week ?> .<?php echo $weekday ?>')">
 									<div class="dateinfo"></div>
 									<div class="events"></div>
 									</td>
-- 
GitLab