merge of '31454db74b1a3b3d5fca41183f6969ab4a4d3f65'

and 'c663318a0219d6419a992fb60d66bd980d19ac2d'

Monotone-Parent: 31454db74b1a3b3d5fca41183f6969ab4a4d3f65
Monotone-Parent: c663318a0219d6419a992fb60d66bd980d19ac2d
Monotone-Revision: 389ee2a27fb75cca12b81a54f3b8a8c180f6d946

Monotone-Author: wsourdeau@inverse.ca
Monotone-Date: 2008-03-27T18:11:32
Monotone-Branch: ca.inverse.sogo
This commit is contained in:
Wolfgang Sourdeau 2008-03-27 18:11:32 +00:00
commit 7ee91d7414
4 changed files with 68 additions and 72 deletions

View file

@ -1,3 +1,9 @@
2008-03-27 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* UI/Scheduler/UIxComponentEditor.m ([UIxComponentEditor
-setComponent:newComponent]): the weeks start on sunday in
OpenStep and are indexed from 0.
2008-03-25 Wolfgang Sourdeau <wsourdeau@inverse.ca> 2008-03-25 Wolfgang Sourdeau <wsourdeau@inverse.ca>
* UI/Scheduler/UIxComponentEditor.m ([UIxComponentEditor * UI/Scheduler/UIxComponentEditor.m ([UIxComponentEditor

View file

@ -218,24 +218,19 @@ iRANGE(2);
- (NSString *) _dayMaskToInteger: (unsigned int) theMask - (NSString *) _dayMaskToInteger: (unsigned int) theMask
{ {
NSMutableString *s; iCalWeekDay maskDays[] = {iCalWeekDaySunday, iCalWeekDayMonday,
iCalWeekDayTuesday, iCalWeekDayWednesday,
iCalWeekDayThursday, iCalWeekDayFriday,
iCalWeekDaySaturday};
unsigned int i; unsigned int i;
NSMutableString *s;
unsigned char maskDays[] = { iCalWeekDayMonday, iCalWeekDayTuesday,
iCalWeekDayWednesday, iCalWeekDayThursday,
iCalWeekDayFriday, iCalWeekDaySaturday,
iCalWeekDaySunday };
s = [NSMutableString string]; s = [NSMutableString string];
for (i = 0; i < 7; i++)
{
if ((theMask&maskDays[i]) == maskDays[i])
[s appendFormat: @"%d,", i+1];
}
if ([s length]) for (i = 0; i < 7; i++)
return [s substringToIndex: [s length]-1]; if ((theMask & maskDays[i]))
[s appendFormat: @"%d,", i];
[s deleteSuffix: @","];
return s; return s;
} }
@ -262,9 +257,7 @@ iRANGE(2);
| iCalWeekDayFriday)) | iCalWeekDayFriday))
{ {
if ([rule isInfinite]) if ([rule isInfinite])
{ repeat = @"EVERY WEEKDAY";
repeat = @"EVERY WEEKDAY";
}
repeat1 = @"1"; repeat1 = @"1";
} }
else else
@ -272,9 +265,7 @@ iRANGE(2);
repeat1 = @"0"; repeat1 = @"0";
if ([rule repeatInterval] == 1 && [rule isInfinite]) if ([rule repeatInterval] == 1 && [rule isInfinite])
{ repeat = @"DAILY";
repeat = @"DAILY";
}
[self setRepeat2: [NSString stringWithFormat: @"%d", [rule repeatInterval]]]; [self setRepeat2: [NSString stringWithFormat: @"%d", [rule repeatInterval]]];
} }
@ -351,9 +342,7 @@ iRANGE(2);
[self setRange2: [[rule untilDate] descriptionWithCalendarFormat: @"%Y-%m-%d"]]; [self setRange2: [[rule untilDate] descriptionWithCalendarFormat: @"%Y-%m-%d"]];
} }
else else
{ [self setRange1: @"0"];
[self setRange1: @"0"];
}
} }
else else
DESTROY(repeat); DESTROY(repeat);
@ -1394,7 +1383,7 @@ RANGE(2);
mask = 0; mask = 0;
while (c--) while (c--)
mask |= 1 << ([[v objectAtIndex: c] intValue] - 1); mask |= 1 << ([[v objectAtIndex: c] intValue]);
[theRule setByDayMask: mask]; [theRule setByDayMask: mask];
} }

View file

@ -60,13 +60,13 @@
</td> </td>
<td> <td>
<div id="week"><span class="week"> <div id="week"><span class="week">
<div name="1"><p><var:string label:value="Mon"/></p></div> <div id="weekDay1"><p><var:string label:value="Mon"/></p></div>
<div name="2"><p><var:string label:value="Tue"/></p></div> <div id="weekDay2"><p><var:string label:value="Tue"/></p></div>
<div name="3"><p><var:string label:value="Wed"/></p></div> <div id="weekDay3"><p><var:string label:value="Wed"/></p></div>
<div name="4"><p><var:string label:value="Thu"/></p></div> <div id="weekDay4"><p><var:string label:value="Thu"/></p></div>
<div name="5"><p><var:string label:value="Fri"/></p></div> <div id="weekDay5"><p><var:string label:value="Fri"/></p></div>
<div name="6"><p><var:string label:value="Sat"/></p></div> <div id="weekDay6"><p><var:string label:value="Sat"/></p></div>
<div name="7"><p><var:string label:value="Sun"/></p></div> <div id="weekDay0"><p><var:string label:value="Sun"/></p></div>
</span><span class="week"><!-- space --></span> </span><span class="week"><!-- space --></span>
</div> </div>
</td> </td>
@ -103,45 +103,45 @@
<td> <td>
<div id="month"> <div id="month">
<span class="week"> <span class="week">
<div name="1"><p>1</p></div> <div id="monthDay1"><p>1</p></div>
<div name="2"><p>2</p></div> <div id="monthDay2"><p>2</p></div>
<div name="3"><p>3</p></div> <div id="monthDay3"><p>3</p></div>
<div name="4"><p>4</p></div> <div id="monthDay4"><p>4</p></div>
<div name="5"><p>5</p></div> <div id="monthDay5"><p>5</p></div>
<div name="6"><p>6</p></div> <div id="monthDay6"><p>6</p></div>
<div name="7"><p>7</p></div> <div id="monthDay7"><p>7</p></div>
</span> </span>
<span class="week"> <span class="week">
<div name="8"><p>8</p></div> <div id="monthDay8"><p>8</p></div>
<div name="9"><p>9</p></div> <div id="monthDay9"><p>9</p></div>
<div name="10"><p>10</p></div> <div id="monthDay10"><p>10</p></div>
<div name="11"><p>11</p></div> <div id="monthDay11"><p>11</p></div>
<div name="12"><p>12</p></div> <div id="monthDay12"><p>12</p></div>
<div name="13"><p>13</p></div> <div id="monthDay13"><p>13</p></div>
<div name="14"><p>14</p></div> <div id="monthDay14"><p>14</p></div>
</span> </span>
<span class="week"> <span class="week">
<div name="15"><p>15</p></div> <div id="monthDay15"><p>15</p></div>
<div name="16"><p>16</p></div> <div id="monthDay16"><p>16</p></div>
<div name="17"><p>17</p></div> <div id="monthDay17"><p>17</p></div>
<div name="18"><p>18</p></div> <div id="monthDay18"><p>18</p></div>
<div name="19"><p>19</p></div> <div id="monthDay19"><p>19</p></div>
<div name="20"><p>20</p></div> <div id="monthDay20"><p>20</p></div>
<div name="21"><p>21</p></div> <div id="monthDay21"><p>21</p></div>
</span> </span>
<span class="week"> <span class="week">
<div name="22"><p>22</p></div> <div id="monthDay22"><p>22</p></div>
<div name="23"><p>23</p></div> <div id="monthDay23"><p>23</p></div>
<div name="24"><p>24</p></div> <div id="monthDay24"><p>24</p></div>
<div name="25"><p>25</p></div> <div id="monthDay25"><p>25</p></div>
<div name="26"><p>26</p></div> <div id="monthDay26"><p>26</p></div>
<div name="27"><p>27</p></div> <div id="monthDay27"><p>27</p></div>
<div name="28"><p>28</p></div> <div id="monthDay28"><p>28</p></div>
</span> </span>
<span class="week"> <span class="week">
<div name="29"><p>29</p></div> <div id="monthDay29"><p>29</p></div>
<div name="30"><p>30</p></div> <div id="monthDay30"><p>30</p></div>
<div name="31"><p>31</p></div> <div id="monthDay31"><p>31</p></div>
</span> </span>
<span class="week"></span> <span class="week"></span>
</div> </div>

View file

@ -25,12 +25,16 @@ function setRepeatType(type) {
}); });
} }
function getSelectedDays(element) { function getSelectedDays(periodType) {
var element = $(periodType);
var elementsArray = $A(element.getElementsByTagName('DIV')); var elementsArray = $A(element.getElementsByTagName('DIV'));
var days = new Array(); var days = new Array();
var dayPrefix = periodType + "Day";
elementsArray.each(function(item) { elementsArray.each(function(item) {
if (isNodeSelected(item)) if (isNodeSelected(item)) {
days.push(item.readAttribute("name")); var label = "" + item.getAttribute("id");
days.push(label.substr(dayPrefix.length));
}
}); });
return days.join(","); return days.join(",");
} }
@ -93,15 +97,13 @@ function initializeFormValues() {
else if (repeatType == 1) { else if (repeatType == 1) {
// Repeat weekly // Repeat weekly
$('weeklyWeeksField').value = parent$("repeat1").value; $('weeklyWeeksField').value = parent$("repeat1").value;
var weekDiv = $($("week").firstChild);
// log ("div: " + weekDiv); // log ("div: " + weekDiv);
// log ("days: " + parent$("repeat2").value); // log ("days: " + parent$("repeat2").value);
var days = "" + parent$("repeat2").value; var days = "" + parent$("repeat2").value;
if (days.length > 0) { if (days.length > 0) {
var daysArray = days.split(","); var daysArray = days.split(",");
var divs = weekDiv.childNodesWithTag("div");
daysArray.each(function(index) { daysArray.each(function(index) {
divs[index-1].addClassName("_selected"); $("weekDay"+index).addClassName("_selected");
}); });
} }
} }
@ -111,12 +113,11 @@ function initializeFormValues() {
$('recurrence_form').setRadioValue('monthlyRadioButtonName', parent$("repeat2").value); $('recurrence_form').setRadioValue('monthlyRadioButtonName', parent$("repeat2").value);
$('monthlyRepeat').value = parent$("repeat3").value; $('monthlyRepeat').value = parent$("repeat3").value;
$('monthlyDay').value = parent$("repeat4").value; $('monthlyDay').value = parent$("repeat4").value;
var monthDiv = $("month");
var days = "" + parent$("repeat5").value; var days = "" + parent$("repeat5").value;
if (days.length > 0) { if (days.length > 0) {
var daysArray = days.split(","); var daysArray = days.split(",");
daysArray.each(function(index) { daysArray.each(function(index) {
$(monthDiv).down('DIV[name="'+index+'"]').addClassName("_selected"); $("monthDay" + index).addClassName("_selected");
}); });
} }
} }
@ -200,7 +201,7 @@ function handleWeeklyRecurrence() {
validate = true; validate = true;
showError = false; showError = false;
parent$("repeat1").value = fieldValue; parent$("repeat1").value = fieldValue;
parent$("repeat2").value = getSelectedDays($('week')); parent$("repeat2").value = getSelectedDays("week");
} }
} }
@ -233,7 +234,7 @@ function handleMonthlyRecurrence() {
parent$("repeat2").value = radioValue; parent$("repeat2").value = radioValue;
parent$("repeat3").value = $('monthlyRepeat').value; parent$("repeat3").value = $('monthlyRepeat').value;
parent$("repeat4").value = $('monthlyDay').value; parent$("repeat4").value = $('monthlyDay').value;
parent$("repeat5").value = getSelectedDays($('month')); parent$("repeat5").value = getSelectedDays("month");
} }
} }