IRC log of #schooltool for Monday, 2004-12-27

**** BEGIN LOGGING AT Mon Dec 27 15:53:07 2004
-->You are now talking on #schooltool15:53
---Topic for #schooltool is http://schooltool.org15:53
---Topic for #schooltool set by Aiste at Mon Oct 18 12:47:26 200415:53
-->Aiste ( has joined #schooltool17:40
mgedminbska|mobile: ayt?17:41
mgedmincould I ask you a question or two about overlaying calendars in schoolbell?17:49
bska|mobileI'm not the best person to ask, Tom did them right before leaving for the holiday17:50
bska|mobileI'm looking at them today17:50
mgedminas far as I can understand from looking at the user interface17:51
mgedminthere is a portlet on the lest17:51
mgedminthat shows a list of calendars17:51
mgedminand a button that says 'overlay'17:51
mgedminthe list is empty in my case, and the button appears to do nothing17:51
mgedmin(I think the button, and perhaps the whole portlet, should be hidden when there are no calendars that can be overlaid)17:51
*bska|mobile nods17:52
mgedminwhat calendars should be shown there?17:52
mgedmincalendars of groups that the logged in user is a member of?17:52
bska|mobilethe calendars are toggled in the personal info page17:52
mgedminok, if I select the 'system managers' group in the manager's info page, I can see that group in the overlay box17:53
mgedminwhy two levels of selection?17:53
bska|mobilethe goal is to store a list of calendars you may want to see17:53
bska|mobilewith the ability to toggle any of that list on/off easily17:54
bska|mobilea new user starts with just their calendar a manager defined system defaults17:54
bska|mobilethe user can add "Joe's Calendar" and "The science dept. calendar" to their portlet17:55
mgedminI see17:55
bska|mobileand toggle them on off as needed17:55
mgedminit could be expressed a bit better, I think17:55
mgedminin the person's info page it could say17:55
mgedmin"Select calendars to be shown in the overlay box"17:55
mgedminor something like that17:55
mgedminalso, perhaps selected calendars should be overlaid by default, no17:55
mgedminanyway, now that I understand the reason for two levels of selection17:56
bska|mobilenew selected calendars should I think17:56
mgedminI'd like to talk about implementation17:56
mgedminin SchoolTool trunk we have a relationship that defines which calendars are overlaid on top of a user's calendar17:56
mgedminyou changed the meaning of that relationship to "calendars that can be selected for overlaying", added a list attribute on a person (there's a bug there, by the way -- see my comments on the list), and added a bunch of tal:conditions to page templates to perform additional filtering17:58
bska|mobilecalendar subscriptions17:58
mgedminI think a simpler implementation would be to keep using that relationship for overlaying17:59
mgedmin(perhaps it should be renamed, as we now refer to the same process as "merging", "composing", "overlaying" and "subscribing")17:59
mgedminand add a new relationship "calendars shown in the overlay box"18:00
mgedminthen you need no extra attributes on persons18:00
mgedminand you need no extra tal:conditions in page templates, because all events will already be filtered in view code18:00
bska|mobileok, I'll work on that approach today18:00
bska|mobilewhere do you think the public system calendar should be?18:00
mgedminalso, it would make merging the branch and trunk easier, as the meaning of URICalendarSubscription would not be changed18:00
*mgedmin thinks18:01
mgedmincalendar for the root group, pehaps?18:01
bska|mobilethat makes sense18:01
mgedminwe could rename "Root Group" to "Everyone"18:01
*bska|mobile nods18:01
mgedminand have a calendar for Everyone18:01
mgedminnewly added persons could automatically become a members of the Everyone group18:02
*mgedmin thinks he saw something about all new persons becoming members of the root group in the RELEASE file on schooltool-0.9.x branch18:02
bska|mobiletom h. wanted to remove some of the nesting in groups18:02
mgedminminor suggestion: could you show the day of the week in daily calendar view?18:03
*bska|mobile nods18:03
bska|mobileyeah, that should be displayed18:03
mgedminok, thanks for answering my questions about calendar overlaying18:04
mgedminthe new calendar views look nice, although firefox for some reason sometimes does not show some of the icons18:04
bska|mobileno problem, thanks for the help18:04
mgedminprobably a firefox bug18:04
bska|mobileI'm not sure about that18:04
mgedminthe icons get shown when I reload the page18:04
bska|mobileI'm afraid its related to the safari/konqueror bug18:05
bska|mobilesome files getting loaded inconsistently18:05
bska|mobilein safari/konq its the css file, in mozilla its the images18:05
*mgedmin can't reproduce the problem18:08
bska|mobilewith konqueror?18:10
bska|mobileor firefox?18:10
bska|mobileIE running doesn't seem to have either problem18:11
bska|mobiles/running /running in wine /18:11
mgedmintoday, e.g, I saw about half of the "add event" icons in one view, while the other half was just white squares18:14
mgedminbut I cannot reproduce this at will -- I tried clearing the browser cache and restarting firefox18:14
-->th1a ( has joined #schooltool18:21
gintasmgedmin: should absoluteURL quote the suffix or not?18:59
mgedmingintas: huh?19:00
gintasi.e., should absoluteURL(request, context, 'hi!') return '...!' or '...%21'?19:00
gintasI'm implementing what you suggested in issue 9619:00
gintasand lots of tests broke because they did not expect the arguments to be quoted19:01
gintasthey do things like absoluteURL(r, c, '?foo=bar&baz=xyzzy')19:01
mgedminI did not realize that ! must be quoted in URLs19:02
gintasshould I use urllib.encode just on the result of getPath rather than the entire URL?19:02
gintasI'm not sure it needs to be19:02
gintasurllib.quote does quote it19:02
mgedminabsoluteURL(request, context, u'something in unicode') should return URL-quoted UTF-8 representation of u'something in unicode'19:02
mgedminI think19:02
mgedminIf we use absoluteURL in views, we could get by with simply encoding the URL in UTF-819:03
gintasso I should change instances of absoluteURL(r, c, '?a=b') to absoluteURL(r, c) + '?a=b' then, or does the quoting do no harm here?19:03
mgedminhowever setHeader('Location', absoluteURL(...)) won't handle that19:03
mgedminperhaps we should just special-case 'Location' in our Request.setHeader and perform URL quoting there?19:04
*mgedmin does not know whether path?a=b is equivalent to path%3Fa%3Db or not19:04
gintasDo we have to quote ? and & in the Location field or not?19:05
mgedminwe have to quote non-ASCII characters19:05
gintaswell, urllib.quote is not as picky19:05
mgedminHTTP/1.1 says19:05
mgedminLocation       = "Location" ":" absoluteURI19:05
mgedminFor definitive information on19:06
mgedmin   URL syntax and semantics, see "Uniform Resource Identifiers (URI):19:06
mgedmin   Generic Syntax and Semantics," RFC 2396 [42] (which replaces RFCs19:06
mgedmin   1738 [4] and RFC 1808 [11]). This specification adopts the19:06
mgedmin   definitions of "URI-reference", "absoluteURI", "relativeURI", "port",19:06
mgedmin   "host","abs_path", "rel_path", and "authority" from that19:06
mgedmin   specification.19:06
*mgedmin 's mozilla is going crazy19:07
mgedminRFC 2396 is tricky19:10
mgedminI believe you should replace absoluteURL(..., '?a=b') with absoluteURL(...) + '?a=b'19:11
mgedminand then url-escape the suffix19:11
mgedminwe want absoluteURL(..., someobject.__name__) to work, don't we19:11
gintasfine, that's what I originally suggested19:11
mgedmineven if __name__ contains '?' or something else that is outlandish19:12
gintasbtw, why do I get this:19:14
gintasdoctest_TraversableView ( changed class view registry19:14
gintastest_delete ( changed class view registry19:15
gintasbut only when I run the whole suite19:15
gintas(try make test)19:15
mgedminunbalanced use of RegistriesSetupMixin.cleanUp and tearDown?19:15
gintasI think I checked and didn't find anything out of the ordinary19:16
mgedminby the way I am currently working on that19:16
gintason what?19:17
gintasnot on URLs I hope19:17
mgedminhunting tests that don't clean up after themselves19:17
mgedminare there any modules that do things on import?19:18
mgedminyes there are, and these are in Zope 3, grr19:21
gintasif there are just a few, you could preemptively import them19:21
mgedminno, wait a second19:21
*mgedmin is deeply confused19:21
gintaszope.component adds a hook on zope.interface on import, I think19:22
*mgedmin slaps gintas a little bit19:26
mgedminabsolutePath calls setUpRegistries but doesn't call tearDownRegistries19:27
mgedminand I am staring at the doctest of absoluteURL which calls both19:27
*mgedmin stupid19:27
mgedminhowever I am surprised why running just tests for failed to discover the problem and I had to run the full test suite19:28
*mgedmin slaps himself19:32
mgedminof course!  the test runner applies the file name filter to as well19:32
mgedminthat's why no safety checks are run if you limit the tests to a subpackage19:32
mgedminI should just give up and create a config file for the test runner19:34
gintasdid you commit a fix?19:34
gintasmaybe it's a good idea19:34
mgedminno, I haven't committed my fixes yet19:34
*mgedmin tries to commit but gets an out of date error19:39
*mgedmin commits19:41
*mgedmin wants an irc bot to sit in #schooltool and announce all commits, plus keep logs19:42
th1aThat's a good idea.19:46
*mgedmin fights the urge to write one from scratch during his spare time19:51
mgedmin(fighting the urge isn't difficult as I have no spare time ;)19:51
th1aI think there are plenty of existing alternatives.19:51
gintasmgedmin: I'm inclined to mark all wxclient-related bug reports as resolved, so that they don't get in the way19:56
gintaswe are not going to revive wxclient anyway, right?19:56
gintasmgedmin: can I do that?19:59
th1aAs far as I'm concerned you can.19:59
gintasth1a: OK20:00
mgedminI think it is better to not do that while we have wxclient in the source repository20:00
mgedminchange the importance to minor... uh, we don't have 'minor' there, do we?20:00
mgedminroundup's default set of priorities is... suboptimal20:01
th1aWe need to weed out the source tree before 1.0.20:01
<--gintas has quit ("Bye")20:49
Aistebska|mobile: ayt?21:04
AisteMarius showed me the schoolbell design21:07
Aistelooks much prettier than the old stuff :)21:08
Aistethe only problem that I see there is the overlaping events21:08
AisteI find it somewhat disturbing, that the actual event boxes overlap21:09
Aistedoes not look nice21:09
bska|mobileits a bit of a pain when you have just 2 events a the same time, when we have 5 or 10 calendars displayed together though we could get multiple events at the same time21:10
bska|mobileif we don't overlap them, they'd have to get smaller and smaller21:11
bska|mobilehow else could they display?21:11
Aistesmaller :)21:12
bska|mobilemaybe we should put it to a vote ;)21:12
bska|mobileI don't like it when they get skinny21:12
bska|mobilethough, now that I think about it21:13
bska|mobilemaybe they could get smaller and just have javascript hover boxes21:13
mgedminI think that many overlapping events will be a rare case21:14
bska|mobileI'm not sure about the accesibility of that21:14
Aisteis it possible to make them overlap only when there is too many of the events?21:15
bska|mobileits tricky to decide when that happens21:15
bska|mobilenot knowing the width of the screen21:15
bska|mobilethat's the ideal though21:16
bska|mobileI was advocating not overlapping until there are 4 or more21:16
Aisteyup, something like that21:16
mgedminin javascript, can you get the width of the screen (or better yet, the calendar box)?21:16
bska|mobilewidth of the screen I believe, not sure about the width of the element21:17
bska|mobileeverything is done in ems to be scalale21:17
bska|mobileer., scalable even21:17
bska|mobilelets go with three side by side then start overlapping21:21
<--bska|mobile has quit (Read error: 110 (Connection timed out))21:38
-->bska|mobile (~bskahan@ has joined #schooltool21:48
<--SteveA has quit ("Leaving")23:29
**** ENDING LOGGING AT Mon Dec 27 23:45:56 2004

Generated by 2.15.1 by Marius Gedminas - find it at!