*** didymo has joined #schooltool | 09:39 | |
*** alga has joined #SchoolTool | 12:01 | |
*** lisppaste5 has quit IRC | 14:04 | |
*** didymo has quit IRC | 14:16 | |
*** lisppaste5 has joined #schooltool | 14:20 | |
*** ignas has joined #schooltool | 14:30 | |
*** th1a has joined #schooltool | 16:29 | |
th1a | Hmmm... Took me a few minutes to realize my mouse wasn't working because my usb hub came unplugged... | 16:29 |
---|---|---|
th1a | Good morning folks. | 16:29 |
th1a | Or ignas, at least. | 16:30 |
ignas | :) | 16:30 |
ignas | hi | 16:30 |
th1a | I didn't remind aelkner we were meeting today, and he's got plenty of stuff to do for SLA before they start using interventions tomorrow. | 16:31 |
ignas | i guess he should concentrate on that then | 16:31 |
th1a | So what have you been up to, ignas? | 16:32 |
ignas | not too much | 16:33 |
ignas | mostly bug fixes | 16:33 |
*** mgedmin has joined #schooltool | 16:33 | |
ignas | but as i am going slowly at the moment | 16:33 |
ignas | i am doing it "the right way" | 16:33 |
th1a | What kind of bugs? | 16:33 |
ignas | as I want to fix the today and time problems in our system | 16:33 |
ignas | at least a lot of them | 16:34 |
ignas | and properly test my term aware calendar overlay portlet | 16:34 |
ignas | i am working on our pluggable traversers first | 16:34 |
ignas | then i will add views that allow full control over time in functional tests | 16:34 |
ignas | like setting one fixed date and time in the functional test | 16:34 |
ignas | to make tests less brittle | 16:34 |
ignas | and add ability to test "what will happen tomorrow" scenarios in functional tests | 16:35 |
ignas | and then i will proceed to test the calendar portlet, and start changing datetime.today calls to IDateTimeManager.today calls | 16:35 |
th1a | OK, I can see where that's necessary, especially for doing general passage of time stuff as well. | 16:35 |
ignas | but as most of the last week was a holiday in gere | 16:35 |
th1a | Terms... | 16:35 |
ignas | i didn't accomplish that much | 16:36 |
th1a | I was thinking it must be a holiday. | 16:36 |
ignas | it was thursday to monday | 16:36 |
ignas | but i'll be working this saturday | 16:36 |
ignas | May 1st was a holiday, and May 3rd was a holiday that got moved to monday (bank holiday stuff) | 16:37 |
th1a | Have you looked at Sphinx for documentation? | 16:37 |
ignas | not much | 16:37 |
ignas | looked at your repository | 16:37 |
ignas | but it was mostly bootstrap stuff at that moment | 16:37 |
th1a | Yes. | 16:37 |
th1a | I need someone else to try it to make sure I didn't forget something. | 16:38 |
th1a | You should be able to easy_install Sphinx | 16:38 |
th1a | and then grab my branch and do 'make html' | 16:38 |
ignas | emm, i'll look at it | 16:38 |
ignas | i guess i'll create a small buildout | 16:39 |
ignas | because i don't like easy_installing stuff | 16:39 |
th1a | I knew you'd say that ;-) | 16:39 |
ignas | maybe i'll just package sphinx for ubuntu | 16:39 |
th1a | But anyhow, I was thinking that I should just have a cron job or something that pulls updates and makes the html on schooltool.org | 16:40 |
th1a | There does seem to be a debian package. | 16:40 |
th1a | Or a buildbot? | 16:40 |
ignas | if i'll make it compile i might set up a buildbot for that | 16:40 |
ignas | so it would get updated every checkin instead of every night | 16:41 |
th1a | I need to talk to jinty about where to put the html. | 16:41 |
th1a | So working on that is the priority for me for a while. | 16:43 |
th1a | That's about all I've got. | 16:43 |
th1a | I'll cc: you on the summary of yesterday's meetings. | 16:43 |
ignas | cool, thanks | 16:44 |
th1a | Anything else? | 16:44 |
ignas | not really | 16:44 |
th1a | OK. Have a good week! | 16:45 |
ignas | thanks, you too | 16:45 |
* th1a drops the bag of gravel. | 16:45 | |
th1a | ignas & aiste: invoice time again. | 16:53 |
Aiste | th1a: working on it ;) | 16:54 |
*** aelkner has joined #schooltool | 17:11 | |
aelkner | th1a: is the meeting already over? | 17:13 |
ignas | aelkner: i think so, yes | 17:13 |
aelkner | i was up really late last night getting ready for SLA today | 17:14 |
ignas | but if you have some interesting news... | 17:14 |
ignas | though we should wait for Tom i guess | 17:14 |
aelkner | did you already meet? | 17:14 |
ignas | yes, we talked a bit, the meeting was quite short | 17:15 |
aelkner | i'll check the log | 17:15 |
aelkner | ignas: i saw what you did with the adapter traversals last week | 17:18 |
aelkner | eddectively, you made it do one doesn't have to write their own code | 17:19 |
aelkner | just register the traversal adapter | 17:19 |
aelkner | and teh meta directive uses the same code | 17:19 |
aelkner | each time | 17:19 |
aelkner | i love things like that that eliminate code | 17:19 |
aelkner | you know, that should be a part of zope's core | 17:20 |
th1a | I'm here. | 17:22 |
aelkner | hi, sorry i missed the meeting | 17:22 |
aelkner | i was exsauted from scramling last night | 17:22 |
aelkner | i had a really nasty security problem | 17:23 |
aelkner | when i opened up the interventions to all teachers | 17:23 |
aelkner | i was still getting an unauthorized exception when a teacher visited an exception | 17:23 |
aelkner | intervention | 17:23 |
aelkner | that was for a student that he didn't teach | 17:23 |
aelkner | debugging it was really hard, but eventually | 17:24 |
aelkner | i traced the crowds that returned False | 17:24 |
aelkner | and noted that tere was a PresonViewInfo (or something like that) | 17:24 |
aelkner | crowd that was failing | 17:24 |
aelkner | i finally figured out that i could work around the problem | 17:25 |
aelkner | by seeting the access control setting 'everyone can view person info' | 17:25 |
ignas | i'll look at the diff some time soon i guess | 17:25 |
ignas | oh, i see | 17:25 |
aelkner | that will be bad when students start to use the system | 17:25 |
aelkner | i was going to ask ignas | 17:26 |
ignas | usually only teachers that are teaching sections to the students | 17:26 |
ignas | or are leaders of groups students are in | 17:26 |
ignas | get that permission i think | 17:26 |
th1a | Ah... "everyone" is really everyone, I think. | 17:26 |
aelkner | yes | 17:26 |
th1a | Meaning, the public. | 17:26 |
aelkner | i understood the logic | 17:26 |
ignas | and I don't think we have advisor crowd | 17:26 |
th1a | You'd better check that. | 17:26 |
aelkner | we don't | 17:26 |
ignas | which should be used in this case i'd guess | 17:26 |
aelkner | no | 17:27 |
ignas | if you could define the teachers that can access the views | 17:27 |
aelkner | Chris wants ANY teacher to see all interventions | 17:27 |
ignas | i could see how it should be implemented | 17:27 |
ignas | oh, any teacher | 17:27 |
th1a | Anyone in the teacher group. | 17:27 |
ignas | hmm, in that case you should just set the crowd "teachers" for views | 17:27 |
th1a | Or the Administrator group. | 17:27 |
ignas | and do some remove security proxies | 17:27 |
ignas | on students | 17:27 |
ignas | because you know that anyone who can see the view | 17:27 |
ignas | can see the information | 17:28 |
aelkner | i yes, i thought of that | 17:28 |
ignas | and add a functional test that checks that teachers can see the view | 17:28 |
aelkner | it just seemed to be a pain to change the views all over the place to remove the security | 17:28 |
aelkner | but i could do that | 17:28 |
aelkner | laster | 17:28 |
aelkner | later | 17:28 |
aelkner | i already have the test for security for different types of users | 17:29 |
aelkner | so removing the proxy would work | 17:29 |
aelkner | it's just a pain | 17:29 |
aelkner | becuase i access the student's info in SO many paces | 17:29 |
ignas | I understand it's a pain, the alternative is a global switch that allows all the teachers see all the students | 17:29 |
aelkner | places | 17:29 |
aelkner | yes | 17:29 |
aelkner | that's what i was getting to | 17:29 |
ignas | if you think it's a better solution you can do that as well | 17:30 |
aelkner | i noticed you have an override in basicperson | 17:30 |
aelkner | for that crowd | 17:30 |
aelkner | could i override your override? | 17:30 |
ignas | hmm | 17:30 |
ignas | not sure you have to | 17:30 |
ignas | if you have a functional test | 17:30 |
ignas | that works with the "everyone can see students" | 17:30 |
ignas | i can try and look at it | 17:31 |
th1a | Legally, in the US, I don't think you can let all teachers see all students' interventions. | 17:31 |
ignas | and see how to make everything work without checking it | 17:31 |
th1a | So I'd be in favor of keeping the current design, even if it is more work for this implementation. | 17:31 |
th1a | Essentially, if you want to do what Chris wants, you should have to consciously do it. | 17:32 |
aelkner | if we change nothing | 17:32 |
th1a | I mean, I'm not saying change nothing. | 17:32 |
aelkner | wait | 17:32 |
aelkner | i'm saying | 17:32 |
aelkner | we can add a 'teachers can see all studen's info' | 17:32 |
aelkner | and make it the school's decision | 17:33 |
ignas | aelkner: by the way | 17:33 |
ignas | the override in basicperson | 17:33 |
ignas | is actually allowing all the teachers see student info | 17:33 |
ignas | so either you are not including it or something is not working | 17:34 |
aelkner | then why did it failing until i set the access control setting? | 17:34 |
aelkner | that's the only change i make and it works | 17:34 |
ignas | because either you are not including it in your zcml | 17:34 |
ignas | or something is broken | 17:34 |
aelkner | of course i include basicperson | 17:34 |
ignas | don't know which one without looking at the issue more closely | 17:34 |
aelkner | it's part of schooltool2007u | 17:35 |
ignas | overrides not just basicperson | 17:35 |
ignas | hmm | 17:35 |
ignas | i'll have to look at it | 17:35 |
aelkner | teh override IS in basicperson | 17:35 |
th1a | afk... | 17:35 |
aelkner | afk maens? | 17:35 |
ignas | away from keyboard | 17:35 |
ignas | i can see that | 17:35 |
ignas | which is why it seems strange | 17:36 |
aelkner | anither thing | 17:36 |
ignas | but as you have a functional test that reproduces the problem i'll just try playing with it | 17:36 |
aelkner | thatnks | 17:36 |
aelkner | listen | 17:36 |
aelkner | is there a way to get schooltool to tell us what it failed on | 17:36 |
aelkner | when i put the print statement before the return False | 17:37 |
aelkner | at the end of the crowds routine | 17:37 |
ignas | very difficult | 17:37 |
aelkner | it traced lke zic different failures | 17:37 |
aelkner | becuase i assuume | 17:37 |
ignas | i really wanted to do that, but i would have to go up the stack | 17:37 |
aelkner | lots of falures are ok | 17:37 |
ignas | or do some crazy hack | 17:37 |
ignas | :/ | 17:37 |
aelkner | i don't think going up the stack is so crazy | 17:38 |
ignas | it IS crazy | 17:38 |
ignas | you are relying not on what you are calling | 17:38 |
aelkner | i've been wanting to write a routine that goes up the stack | 17:38 |
ignas | but on "what is calling you" | 17:38 |
aelkner | to trace more info of a backtrace | 17:38 |
ignas | and you should never do that, unless you have a very very good reason | 17:38 |
aelkner | whenever a page template calls something that fails | 17:38 |
aelkner | the stupod backtrace is NO help | 17:39 |
ignas | really? | 17:39 |
aelkner | just twenty calls within the template routines | 17:39 |
aelkner | but no id of what template | 17:39 |
ignas | oh | 17:39 |
ignas | that part | 17:39 |
aelkner | or what part of the templare | 17:39 |
ignas | you just do a hack | 17:39 |
ignas | in your functional test | 17:39 |
ignas | 2 lines of code | 17:39 |
ignas | let me link to them | 17:39 |
ignas | http://alga42.blogspot.com/2007/04/debugging-page-templates-in-doctests.html | 17:40 |
ignas | and you get the traceback you would get in the browser | 17:40 |
ignas | in the functional test | 17:40 |
ignas | very useful | 17:40 |
ignas | as for the crowd | 17:40 |
ignas | my mistake, sorry | 17:40 |
ignas | the crowd is "inverse" | 17:40 |
ignas | it allows everyone to see teacher information | 17:41 |
ignas | (lyceum needed that) | 17:41 |
ignas | not sure if anyone needs that actually | 17:41 |
aelkner | you could move gthat to kyceum | 17:41 |
aelkner | but | 17:41 |
ignas | i will, and i will look at what is the best way | 17:41 |
ignas | to add a checkbox | 17:41 |
aelkner | and i could have mine in intervention | 17:41 |
ignas | that allows all the teachers | 17:41 |
ignas | see all the student information | 17:42 |
aelkner | ok | 17:42 |
aelkner | becuase tom said there are legal issues | 17:42 |
aelkner | adding the checkbox would probably be the best solution | 17:42 |
aelkner | then when i use the checkbox, i won't have students seeing other students | 17:42 |
aelkner | so it's a legal decision on the part of the school | 17:43 |
ignas | either a checkbox, or sla specific code in "schooltool.sla" or sla specific checkbox in "schooltool.sla" | 17:43 |
aelkner | right | 17:43 |
aelkner | those are options as well | 17:43 |
aelkner | let's see what tom wants there | 17:43 |
aelkner | another thing | 17:43 |
aelkner | we have a greater problem | 17:44 |
ignas | oooh | 17:44 |
aelkner | the fact that i found a hack is all well and good | 17:44 |
aelkner | setting the checkbox and all | 17:44 |
aelkner | but let me tell you how embarrasing it is | 17:44 |
aelkner | when a user hits a button and gets that dumb login page | 17:44 |
aelkner | no explanation | 17:45 |
aelkner | it not only makes it hard to debug | 17:45 |
aelkner | but it just is a stupid response to the user | 17:45 |
aelkner | we should have a page come up that explains | 17:45 |
aelkner | what resourse the user is not allowed to see | 17:45 |
aelkner | and an option to log in as another user | 17:45 |
aelkner | which would help teahers that are also site admins | 17:46 |
ignas | hmm, if you would create such a page | 17:46 |
ignas | or at least add a bug in schooltool bug tracker | 17:46 |
ignas | then we'd just have to redirect to it | 17:46 |
ignas | instead of redirecting to the login page | 17:46 |
aelkner | but how would we get the info of what resourse was not allowed | 17:47 |
ignas | what is doable i think | 17:47 |
ignas | the "why" is giving me trouble | 17:47 |
ignas | if you would just add a dumb page or a template | 17:47 |
ignas | for login page | 17:47 |
ignas | that checks for | 17:47 |
ignas | "is it a redirect or is it a plain "log in"" | 17:48 |
ignas | and shows at least an explanation | 17:48 |
ignas | why are you being asked to log in | 17:48 |
ignas | i could make the explanation show more info after that | 17:48 |
aelkner | could you show the resourse that was not allowed? | 17:48 |
ignas | maybe, i would have to look at it, i can't recall what information is available | 17:49 |
ignas | and where | 17:49 |
ignas | problem is | 17:49 |
ignas | login page has no information about the resource | 17:49 |
ignas | that you could not see | 17:49 |
aelkner | becuase ti's too late | 17:49 |
ignas | yeah | 17:49 |
aelkner | it's already redirected | 17:49 |
aelkner | we need the exception to extract the info | 17:49 |
ignas | if we can | 17:50 |
aelkner | and pass it to the redirect | 17:50 |
aelkner | if we can | 17:50 |
ignas | and passing it through the URL is quite dangerous too | 17:50 |
ignas | because that allows fishing | 17:50 |
ignas | like crafting a url | 17:50 |
ignas | that misleads the user | 17:50 |
aelkner | exposing the URL would be bad | 17:50 |
aelkner | but hiddens fields could work | 17:50 |
ignas | we don't have them at that poing | 17:50 |
ignas | point | 17:50 |
ignas | we can't "redirect" with hidden fields | 17:51 |
ignas | at the moment | 17:51 |
ignas | showing an error message | 17:51 |
ignas | will be an improvement | 17:51 |
ignas | over what we have now | 17:51 |
ignas | and then we can work on improving it | 17:51 |
ignas | something like if next_url in self.request: show the box in the log in page | 17:51 |
ignas | or even better | 17:51 |
ignas | if next_url in self.requrest and "there is a user logged in": show the box in the log in page | 17:52 |
aelkner | yes | 17:52 |
aelkner | sounds good | 17:52 |
ignas | because if no one is logged in - asking to log in before showing the page makes sense | 17:52 |
aelkner | simple and clean for now | 17:52 |
aelkner | i cold volunteer for that task | 17:52 |
ignas | so either fix that, or file a bug, and i'll fix it this week or so | 17:52 |
aelkner | but it will have to wait a coiuple of days | 17:53 |
th1a | I guess if our first two users want to allow all teachers to see student info, we have to regard it as a fairly common case. | 17:53 |
ignas | th1a: sorry, my bad | 17:53 |
ignas | th1a: lyceum does not want that | 17:53 |
ignas | th1a: lyceum wants it the other way | 17:53 |
ignas | th1a: they want all users being able to see teacher information | 17:53 |
th1a | Ah. | 17:53 |
aelkner | why do you keep pingin him? | 17:53 |
ignas | because it is another thread in our discussion | 17:54 |
aelkner | anyway, th1a: do we want a 'teachers can see all students' checkbox | 17:54 |
aelkner | is that legan | 17:55 |
aelkner | legal | 17:55 |
th1a | Well, it depends, I think. | 17:55 |
ignas | well - we have "make everything public" checkbox | 17:56 |
th1a | I mean, there is a difference between seeing the student exists, seeing his or her contact info, and seeing thinks like intervention info. | 17:56 |
aelkner | true | 17:56 |
th1a | We certainly can't design SchoolTool to disallow anything illegal anywhere in the world. | 17:56 |
aelkner | problem is | 17:57 |
th1a | At this point I'm not really clear on the full technical question -- I'd say aelkner should do what he needs and we'll discuss what checkboxes there should be later. | 17:57 |
aelkner | that's fine | 17:57 |
aelkner | because it's a really large discussion | 17:58 |
aelkner | and not one we have the time for now | 17:58 |
aelkner | th1a: did you see our discussion about changeing the lgin redirect view | 17:58 |
aelkner | to at least have a message in addition to the login | 17:58 |
th1a | I just want you to understand that a distributed version of intervention will not work the way Chris wants by default. | 17:58 |
aelkner | saying | 17:58 |
aelkner | 'You were redirected to this login page' | 17:59 |
th1a | aelkner: Yes, that could be improved. | 17:59 |
aelkner | 'becuase you attempted to access a resourse for which you are not authorized' | 17:59 |
aelkner | ignas said he'll try to see if there is a way to get more info for the user than that | 17:59 |
aelkner | but i volunteered to make the change to the view | 17:59 |
aelkner | after Wednesday | 18:00 |
th1a | OK. | 18:00 |
aelkner | I have to have get ready for SLA now | 18:01 |
th1a | OK. Good luck. | 18:03 |
*** aelkner has quit IRC | 18:40 | |
*** wgrant has quit IRC | 20:56 | |
*** ignas has quit IRC | 21:00 | |
*** alga has quit IRC | 21:01 | |
*** mgedmin has quit IRC | 21:03 | |
*** povbot has joined #schooltool | 22:05 |
Generated by irclog2html.py 2.15.1 by Marius Gedminas - find it at mg.pov.lt!