tiredbones | th1a, I have an ahtlonzp 1.3MHz processor with 500mg of ram, how long would you estimate make ftest run. Its been running for an hour now. | 00:01 |
---|---|---|
th1a | Zope 3 tests or SchoolTool tests? | 00:03 |
th1a | Do the non ftests run? | 00:04 |
tiredbones | th1a, I beleave the Zope 3 test, "make ftest". I haven't ran any of the python test.py. | 00:05 |
th1a | There are a lot of Zope3 tests. I avoid running them because they take so long, so I don't really know how long they take. | 00:06 |
tiredbones | th1a, I ran 'make test' and that took about 30minutes. I don't have to run, 'make test' or 'make ftest'? Just run the python test.py? | 00:07 |
th1a | make test and make ftest pretty much just run python test.py | 00:08 |
th1a | The SchoolTool tests don't take nearly as long. | 00:08 |
th1a | If you run make test from the SchoolTool directory instead of the Zope3 directory. | 00:09 |
tiredbones | th1a, I'm running them from the Schooltool directory. I'm at the top of schooltool tree. | 00:10 |
th1a | Ah. | 00:10 |
th1a | What happens if you do make test? | 00:11 |
tiredbones | I did that and it took about 30 minutes to run. | 00:11 |
tiredbones | I'm now running make ftest. | 00:11 |
th1a | What OS? | 00:12 |
tiredbones | Ubuntu breezy. | 00:12 |
tiredbones | The output from startin make ftest tells me inported 14 modules | 00:13 |
th1a | OK. I'm trying it on mine... | 00:13 |
tiredbones | My system is really slow. | 00:15 |
tiredbones | I think I lost it. I can type on the line that show the process dots. | 00:16 |
th1a | I need a clean checkout... | 00:16 |
tiredbones | Should I get a clean Checkout? | 00:17 |
tiredbones | To do a clean checkout just be at the top of schooltool tree and run svn's update command? | 00:18 |
th1a | Well, starting completely fresh. | 00:19 |
th1a | Things can get out of whack because we've changed which versions of Zope 3 we use, | 00:19 |
th1a | and also your Zope 3 checkout needs to be updated separately. | 00:20 |
tiredbones | So, the Zope-3.2 I have needs to be updated first. Then update schooltool. Is that the order? | 00:22 |
*** ignas has quit IRC | 00:22 | |
tiredbones | th1a, do you use svn for your Zope-3.2 or apt-get? | 00:23 |
th1a | You should use the one that comes with your SchoolTool checkout. | 00:24 |
*** pcardune has quit IRC | 00:24 | |
tiredbones | Little confuse now. Are you tell me that when one first does a checkout of schooltool they get a copy of zope3, then if they do svn update they only get schooltool without anothe copy of zope? | 00:27 |
tiredbones | So, to get my system in syn I have to remove schooltool and start over. | 00:28 |
tiredbones | Which would be ok. | 00:28 |
th1a | When you do svn up from the SchoolTool directory, it doesn't also update your Zope3, which currently comes from the Zope3 trunk. | 00:29 |
th1a | So you have to cd into the Zope3 directory and do a second svn up from there (if something has changed in the Zope3 trunk which breaks SchoolTool, which happens periodically. | 00:30 |
tiredbones | th1a, I think I got it. Two svns, on at the top of schooltool tree and then cd into `/schooltool/Zope3 and an update from there. | 00:33 |
th1a | If necessary. | 00:34 |
tiredbones | It looks like I got to reboot my system. | 00:36 |
*** tiredbones has left #schooltool | 00:37 | |
*** tiredbones has joined #schooltool | 00:46 | |
tiredbones | th1a, I wouldn't to udate zope after i udate my schooltool? | 00:49 |
tiredbones | th1a, It wouldn't to udate zope after i udate my schooltool? | 00:49 |
tiredbones | th1a, It wouldn't hurt to udate zope after i udate my schooltool? | 00:49 |
th1a | tiredbones: Here is what you need to do. | 00:49 |
th1a | Get a clean checkout of schooltool, which I think you just did. | 00:49 |
th1a | That should give you a new Zope 3. | 00:50 |
th1a | Why don't you just try 'python schooltool-server.py' at this point and see if the damn thing works? | 00:50 |
tiredbones | ok, thanks | 00:51 |
tiredbones | Sorry for get you upset. | 00:52 |
th1a | I'm not really upset. | 00:54 |
tiredbones | thanks for the education. It's up!!!!!! | 00:56 |
th1a | Well, that's a relief. | 00:57 |
tiredbones | I think I'll go have a good stiff drink now. | 00:58 |
tiredbones | th1a, the reason just didn't run 'python schooltool-server.py' is I thought the test where required to run before starting schooltool. | 01:05 |
tiredbones | may something in the README.txt file would help on this. | 01:05 |
srichter | th1a: ping...ing...ng....g | 01:25 |
tiredbones | srichter, where would I find the definition of New Event? i check around the site and couldn't find anything. | 01:37 |
srichter | "new event"? | 01:52 |
tiredbones | srichter, yes it's on the first screen that comes up after you signon to schooltool. | 02:10 |
srichter | look in the ZCML Files | 02:11 |
srichter | it is a menu entry for a simple add form | 02:11 |
th1a | srichter: Pong. | 03:05 |
th1a | tiredbones: It is to add a new calendar event. | 03:05 |
srichter | th1a: I have hit a pretty big wall today | 03:06 |
srichter | but after thinking about it all day I think I have a plan of attack | 03:06 |
th1a | Oof. What? | 03:06 |
srichter | after all, it turned out that the event model was not really adequate to manage the assessment grade items | 03:07 |
srichter | the system would have been too brittle | 03:07 |
th1a | You mean the term events triggering populating the gradebook? | 03:07 |
srichter | getting all the subscribers right would have been very delicate and difficult to argue about | 03:07 |
srichter | yes | 03:07 |
srichter | so I bit the bullet and introduced term templates, and the system becomes more stable | 03:08 |
tiredbones | th1a, I see that now. | 03:08 |
srichter | I have drawn up some UI mockups and an object creation workflow, so I will scan this in and send it to you tonight or tomorrow morning | 03:09 |
th1a | srichter: Ah. OK. Looking forward to it. | 03:09 |
th1a | This is what you and Martin were discussing in Rotterdam? | 03:09 |
srichter | yeah | 03:09 |
th1a | OK. | 03:09 |
srichter | though I think this latest design is a little bit easier in concept | 03:09 |
srichter | th1a: btw, I love the "understanding by design book" | 03:13 |
srichter | just the first half of chapter 1 was very instructive | 03:14 |
tiredbones | srichter, by who? | 03:16 |
srichter | dunno | 03:17 |
th1a | tiredbones: It is a book on curriculum design. | 03:17 |
tiredbones | just found it, Grant Wiggins,Jay McTighe. | 03:17 |
th1a | Yes. | 03:17 |
tiredbones | I'm going to critique the form that I see in schooltool. I don't expect a reply. I'll just give my $.02. take it for what it's worth. | 03:21 |
th1a | Well, navigation is kind of a mess at this point. | 03:22 |
tiredbones | I'll send these in an email. I know I'm a noob, but I do have lots of experience with IBM stuff(CICS). | 03:25 |
srichter | th1a: where you able to view the PNGs I sent you yesterday ok? | 03:26 |
srichter | th1a: ok, they are out; It | 03:32 |
srichter | th1a: it's 1.5 MB so it will take a little bit | 03:32 |
srichter | th1a: the great part of using term templates is that creating a new academic year is a one form task and it is guaranteed that the term structure is correct | 03:34 |
srichter | ok, I am done for today | 03:38 |
srichter | more tomorrow! | 03:38 |
tiredbones | I couldn't really see the need for testing, but one value I have for them is helping me to understand schooltool. | 06:46 |
tiredbones | good doc folk! | 06:46 |
*** auxesis has quit IRC | 07:09 | |
*** auxesis has joined #schooltool | 07:12 | |
*** dobee has joined #schooltool | 08:51 | |
*** dobee has quit IRC | 09:32 | |
*** dobee has joined #schooltool | 09:34 | |
*** carljm has joined #schooltool | 17:54 | |
*** jelkner has joined #schooltool | 18:00 | |
tiredbones | jelkner, hi, While i was googling for different terninology fo schooltool I was constanly point to CanDo. Can I assume that CanDo and Schooltool use the same definitions for the various terms like, Section, Manager and so for? | 18:06 |
*** huynh has joined #schooltool | 18:17 | |
carljm | am I an hour off, or was class supposed to start 20 mins ago? | 18:23 |
huynh | class is delayed an hour for today | 18:24 |
carljm | oh | 18:24 |
huynh | do some homework while you're waiting ;) | 18:24 |
carljm | working on it :-) | 18:24 |
tiredbones | jelkner, I don't see the configure.zcml file for the browser at the site. Did I over look it? | 18:27 |
carljm | huynh: as you read ch13, did you work with the messageboard example? | 18:34 |
huynh | I was doing the tutorials from those three websites | 18:34 |
carljm | I have the messageboard code from svn, and the web UI doesn't let me add a message to another message, which according to the tutorial it's supposed to. and I can't figure out why... | 18:35 |
tiredbones | carljm, how did you sign on? | 18:36 |
carljm | as manager | 18:36 |
carljm | i'm using a zope instance instead of running straight from zope3 src, does that a difference? | 18:37 |
carljm | i can add messages to the board, just not replies to a message - somehow it doesn't understand that the message is a container | 18:37 |
*** ignas has joined #schooltool | 18:38 | |
carljm | using unmodified step01 code | 18:38 |
tiredbones | carljm, do you see any errors on the screen you started zope on? | 18:38 |
tiredbones | carljm, I want you to know that I'm also a noob. | 18:39 |
carljm | tiredbones, just a number of i18n errors, which the book says to expect | 18:39 |
carljm | tiredbones, well, less of a noob than me i'm sure | 18:39 |
tiredbones | carljm, I also get the i18n error when I start zope. srichter informed me that I needed to add a directive to the configure.zcml. It did not solve my problem. | 18:41 |
tiredbones | carljm, I don't know why Paul not seeing this same error. When you look at the configure file the i18n directive is not there. | 18:43 |
*** wdickers has joined #schooltool | 18:44 | |
tiredbones | I ask jelkner to post the configure file for the browser. | 18:45 |
carljm | well, i'm not so worried about the i18n error right now, just trying to understand why it doesn't understand the message object as a container for other messages | 18:45 |
carljm | is it clear that I'm talking about the messageboard example from ch13, using the code from svn - not the timeclock example from class? | 18:45 |
tiredbones | carlym, it could be that the translation of object is not taking place. I grabed the out of thin air. | 18:46 |
carljm | hm | 18:46 |
carljm | seems odd that the rest of it works, then | 18:46 |
tiredbones | carlym, yes it does. | 18:47 |
jelkner | good morning huynh and wdickers | 18:58 |
jelkner | i don't see our teacher yet | 18:59 |
*** lhuynh has joined #schooltool | 18:59 | |
jelkner | but i wanted to ask you if you would prefer starting at noon instead of 11 am? | 18:59 |
tiredbones | how does that fit in with Paul's schedule? | 19:00 |
jelkner | tiredbones: i imagine he would like it better | 19:00 |
wdickers | morning | 19:00 |
jelkner | since he won't have to get up so early | 19:00 |
lhuynh | I thought noon was when we were starting anyways | 19:00 |
jelkner | lhuynh, we've been starting at 11 | 19:01 |
jelkner | 11 to 1 | 19:01 |
jelkner | so now it would be noon to 2 | 19:01 |
lhuynh | do you mean permanently moving the time? and not just for today? | 19:01 |
jelkner | i was wondering what you thought about making it regular? | 19:01 |
jelkner | the only disadvantage is it occupies the middle of the day | 19:02 |
wdickers | Heh, I have no qualms about moving it to 12 either | 19:02 |
lhuynh | mm... I'm more comfortable with early hours, but if that's what Paul wants, I can do it | 19:02 |
tiredbones | jelkner, did you read my earlier post about terminology between CanDo and schooltool? | 19:02 |
jelkner | when? | 19:02 |
jelkner | i didn't see it yet | 19:03 |
*** pcardune has joined #schooltool | 19:03 | |
tiredbones | jelkner, right after you sign on to irc. | 19:03 |
lhuynh | hello, teach | 19:03 |
pcardune | hello everybody | 19:03 |
jelkner | good morning teach! | 19:03 |
pcardune | they really open at exactly 9am here | 19:03 |
wdickers | Morning teach | 19:04 |
pcardune | ok, so where are people with the homework? | 19:04 |
*** flint has joined #schooltool | 19:04 | |
pcardune | I'm sure there must be a few questions | 19:04 |
flint | good afternoon campers... | 19:04 |
carljm | pcardune: did you add me to your student email list? i didn't get the notice about class being late today | 19:05 |
carljm | and hi everyone, i guess i'm the new student | 19:05 |
lhuynh | hello, carljm | 19:05 |
pcardune | carljm: sorry, I don't have access to that yet | 19:05 |
flint | pcardune, ewww a new kid, can we beat him up? BTW hi Carl!!! | 19:05 |
wdickers | hello carljrr | 19:06 |
flint | :^) | 19:06 |
carljm | well, you can virtually beat me up. hi all. | 19:06 |
flint | carljm, wait till recess... :^) wecome Carl | 19:06 |
carljm | to answer the original question: yes i have questions. like, why do I get a system error when trying to use my new AddPerson view | 19:07 |
pcardune | well, that's a really specific question | 19:07 |
pcardune | I was hoping for some more general questions | 19:07 |
flint | my question was why did not get an error in the hello world example... | 19:07 |
flint | ok, you want a general question, is the homework assignment on the wiki at a particular url? | 19:08 |
wdickers | ooo, I have one...I think. In the hello world configure.zcml file, do the tags that start with browser: essentially placed in a browser/configure.zcml file? | 19:08 |
pcardune | flint: no, I don't believe it is | 19:08 |
pcardune | wdickers: yes | 19:08 |
wdickers | okay ^_^ | 19:09 |
flint | pcardune, ok then the object dog we were talking about last week ate my homework for this week. | 19:09 |
pcardune | when we were working on timeclock, we separated out the browser zcml from the zope zcml tags | 19:09 |
carljm | in the area of more general questions, I don't fully understand what addMenuItem and containerViews do. | 19:09 |
pcardune | also in the zcml files, you should pay attention to the very first configure flag where is says xmlns= | 19:10 |
pcardune | in the hello world configure, you should see xmlns:browser="http://namespaces.zope.org/browser" | 19:11 |
pcardune | that allows us to use browser:whatever tags in the config file | 19:11 |
wdickers | right, because they're condensing both configs into one | 19:11 |
wdickers | ah | 19:11 |
pcardune | otherwise, had you put xmlns="http://namespaces.zope.org/browser" then we wouldn't have to prepend the browser tags with "browser" (this is the case in browser/configure.zcml) | 19:11 |
pcardune | as for carljm's question | 19:12 |
wdickers | so does it not actually matter if that config file is in a folder named browser? | 19:12 |
pcardune | wdickers: correct, it doesn't matter where it is | 19:12 |
tiredbones | Do you have a pointer the docs on all the driectives in these configure files? | 19:13 |
pcardune | strangely there is no static web page with the documentation (as far as I know), but you can use zope's apidoc to look through all of them | 19:13 |
pcardune | to use apidoc, you have to start up your zope server | 19:13 |
pcardune | log in | 19:13 |
pcardune | and then go to http://localhost:8080/++apidoc++ | 19:14 |
pcardune | or whatever the appropriate url would be (for those on maddog i guess it would be http://maddog.yhspatriot.net:someport/++apidoc++ ) | 19:14 |
srichter | we are working on a static version | 19:15 |
srichter | it had some bugs for 3.2, so we did not generate it | 19:15 |
pcardune | srichter: good to know | 19:16 |
flint | srichter, stephan is there a quick way to print a pdf of this? | 19:16 |
tiredbones | could someone post the configure.zcml file for the browser. | 19:16 |
tiredbones | could someone post the configure.zcml file for the browser fo timeclock. | 19:16 |
pcardune | http://www.ibiblio.org/obp/pyBiblio/courses/zope3class/timeclock/browser/configure_zcml.txt | 19:17 |
*** huynh has quit IRC | 19:17 | |
pcardune | so, if you are looking at the apidoc now, you can click on ZCML Reference, and then click on browser and zope in the lefthand tree | 19:17 |
pcardune | browser and zope contain all the tags that we have used so far, and really all the tabs that we will use in the future | 19:18 |
wdickers | uh-oh, I'm having an error with Todo. It says __setitems__ is not defined | 19:18 |
wdickers | wait, it's supposed to be singular. nvm | 19:19 |
pcardune | ok, so finally getting back to carljm question | 19:19 |
pcardune | what do addMenuItem and containerViews do? | 19:20 |
flint | pcardune, hey paul how do we make these neat collapsing lists like this documentation uses? | 19:20 |
pcardune | flint: with a fair amount of difficultly | 19:21 |
flint | pcardune, that is dissapointing... :^( | 19:21 |
pcardune | the zcml documentation for addMenuItem isn't the most helpful for explaining its purpose | 19:21 |
carljm | it adds an entry under Add: on the left, right? | 19:22 |
pcardune | Basically, in the ZMI (Zope Management Interface), assuming you are logged in, you will see a list of objects that you can add to any given container (when you first log in, you are at the root container) | 19:22 |
pcardune | carljm: right | 19:23 |
pcardune | that is basically all it does | 19:23 |
carljm | what creates an actual Add button if you view Contents | 19:23 |
flint | pcardune, very similar to the old zope2 add dropdown. | 19:23 |
carljm | it doesn't seem to necessarily do that | 19:23 |
pcardune | carljm: what exactly do you mean by view Contents? | 19:23 |
carljm | I mean, choose the Contents tab on a container | 19:24 |
carljm | if there are contents, under the list of them you get Rename, Delete etc buttons | 19:24 |
pcardune | ah, yes | 19:24 |
carljm | what makes an Add button appear there? | 19:24 |
pcardune | zope goes through and comes up with all the possible objects that you are allowed to add to a given container | 19:25 |
flint | It says you can add a wiki. is it merely that simple to add a wiki? | 19:25 |
pcardune | so, if a container has constraints, that say it can only contain x kind of object, then an add button will appear only for x | 19:25 |
carljm | aha - so it only appears if there's only one option | 19:25 |
pcardune | well, at least one option | 19:26 |
tiredbones | Does zope get this info fron the interface? | 19:26 |
pcardune | tiredbones: precisely | 19:26 |
carljm | in the messageboard example from ch13, there are multiple things you can add to a Message | 19:26 |
carljm | such as another Message, or a File, or a couple others | 19:26 |
carljm | and no Add button | 19:26 |
tiredbones | Is this also why we run test, so zope knows how to tie the pieces together? | 19:27 |
carljm | I presume because it wouldn't know which you intended to add? | 19:28 |
pcardune | tiredbones: no, zope knows how to tie the pieces together without the tests, we write the tests so that we know that we told zope the correct way to tie them together (does that make sense?) | 19:28 |
pcardune | carljm: I think I am confused | 19:28 |
pcardune | where does it not show the add buttons? | 19:29 |
carljm | Under the list of contents, when you choose the Contents tab | 19:29 |
carljm | next to Rename,Cut,Copy,Delete (which are only there if there are some contents) | 19:29 |
tiredbones | so the test verifies the contract. | 19:29 |
pcardune | oooh, i definitely was confused about what you were talking about | 19:30 |
pcardune | carljm: I actually never see an add button there next to rename, cut, copy, delete | 19:31 |
pcardune | actually, carljm, you are right, only when there is only one thing you can add to a container does it show the add button | 19:31 |
tiredbones | Doesn't that directive tell forms what we want on the form when its display. | 19:31 |
pcardune | otherwise there is a list on the left hand side | 19:31 |
carljm | alright, that's what it looked like - sorry for the long tangent | 19:31 |
pcardune | tiredbones: which directive? | 19:32 |
tiredbones | addMenuItem | 19:32 |
tiredbones | isn't this what we are talking about? | 19:33 |
pcardune | tiredbones: yes, i was just making sure | 19:33 |
pcardune | addMenuItem does not tell the forms what we want in them | 19:33 |
pcardune | the addform directive does that | 19:34 |
tiredbones | doen't it say to place something on the form. | 19:34 |
carljm | tiredbones: it places something on the left-bar Add: menu | 19:35 |
carljm | tiredbones: something we can add to the container | 19:35 |
tiredbones | ok | 19:35 |
flint | pcardune, what was the difference between the original QS hello world menu item and the hello world that eventually ended up on the menu? | 19:35 |
flint | are these two separate menu items of addMenuItem? | 19:36 |
pcardune | flint: one of them is another zope object that comes with zope as an example | 19:36 |
pcardune | the other is the one you made following the tutorial | 19:36 |
pcardune | they are totally separate packages alltogether | 19:36 |
flint | pcardune, I am concerned that this is not confusing enough... :^) so I can have many instances of the object hello world eh? | 19:37 |
pcardune | sure, as many as you want | 19:38 |
flint | pcardune, and I can ruthlessly destroy these instances or create more eh? | 19:38 |
pcardune | in otherwords, you can click on QS Hello World in the Add Menu, and add instances as many times as you want, and then delete them all if you want | 19:39 |
flint | pcardune, ok the instance "time clock person container" has a size factor. it is currently zero, what is that about? | 19:39 |
pcardune | well, when you are dealing with files in a file system, it is easy to come up with a size attribute (how many bytes the file takes up) | 19:40 |
pcardune | in zope though, you can define custom size attributes that dont reflect bytes but some other unit of measure | 19:41 |
flint | pcardune, could I associate a file with my instance of this object somehow? | 19:41 |
pcardune | for example, for our PersonContainer we could define our own size attribute that would tell us how many people were in the container | 19:41 |
pcardune | flint: no, i'm just trying to say that "size" in zope isn't necessarily synonymous with "size" in a file system | 19:41 |
flint | pcardune, and doing a fine job sir... :^) | 19:42 |
pcardune | chapter 17 talks about that | 19:42 |
pcardune | so, if those are all the questions at this point | 19:43 |
pcardune | I'd like to move on with the timeclock app | 19:43 |
flint | pcardune, go ahead. | 19:43 |
pcardune | so, a couple sundays ago I asked you all to add a few extra addforms and addmenuitems to the timeclock app | 19:44 |
pcardune | so that we could add Person objects to our PersonContainer instance | 19:44 |
pcardune | there was a bit of mass confusion, so last sunday we decided to do a few tutorials first | 19:46 |
pcardune | so, the last time we left off doing timeclock we had defined an addMenuItem for the PersonContainer along with an addform for it | 19:48 |
pcardune | allowing us to create instances of PersonContainer | 19:48 |
pcardune | however, after clicking on the instance of PersonContainer all we got was a crazy view dealing with a strange thing called "introspection" | 19:49 |
pcardune | now we want to create a simple view for the PersonContainer that just displays the contents of the container | 19:50 |
pcardune | thus, we use the containerViews directive | 19:50 |
pcardune | I think at this point most of you know how to apply that to timeclock | 19:50 |
pcardune | so, if you haven't already, go ahead and do that, and the first one to finish can post what they added | 19:51 |
flint | pcardune, is the PersonContiner menu item manifest on the z3 menu as TimeClock Person Container | 19:51 |
flint | ? | 19:51 |
pcardune | flint: yes | 19:52 |
carljm | <containerViews | 19:52 |
carljm | for="timeclock.interfaces.IPersonContainer" | 19:53 |
carljm | index="zope.View" | 19:53 |
carljm | contents="zope.View" | 19:53 |
carljm | add="zope.ManageContent" | 19:53 |
carljm | /> | 19:53 |
flint | carljm, does this go in person or interface? | 19:53 |
carljm | flint: browser/configure.zcml | 19:53 |
pcardune | perfect | 19:53 |
flint | carljm, and yes we are beating you up. :^) | 19:53 |
carljm | pcardune: all this does is add the Contents tab? | 19:54 |
wdickers | why are both index and contens zope.View? | 19:54 |
wdickers | *contents | 19:54 |
pcardune | carljm: yes, essentially | 19:54 |
pcardune | wdickers: the index, contents, and add attributes define permissions | 19:55 |
flint | pcardune, how besides experience do we know which file to put views in? | 19:55 |
carljm | wdickers: anyone can list the contents, only manager can add something | 19:55 |
wdickers | Oh, I see | 19:55 |
pcardune | flint: well, you know that we separated all the browser zcml directives from the zope zcml directives (we discussed this earlier today)... since containerViews is a browser zcml directive, it goes on browser/configure.zcml | 19:56 |
tiredbones | Don't we need a permission atribute? | 19:56 |
flint | pcardune, yea i see this now. | 19:56 |
pcardune | or you can think of it as: containerViews deals with stuff that we see in a browser, so it goes in browser/configure.zcml | 19:56 |
pcardune | tiredbones: we already have three permission attributes... they are index, add, and contents | 19:57 |
pcardune | those attributes define permissions for three different views | 19:57 |
pcardune | so containerViews actually creates three different types of views automatically, and we specify the permissions for them in the zcml directive | 19:58 |
flint | pcardune, ok, i put carls code in the configure.zcml and the silly thing is erroring out the instance now. | 19:58 |
pcardune | anyways, if you restart your zope servers after adding this, you wont see all the crazy introspection stuff after clicking on your PersonContainer instance | 19:58 |
carljm | pcardune: so the contents view is the Contents tab - where is the "index" view? | 19:59 |
flint | pcardune, na it is dead as a mackeral | 19:59 |
flint | pcardune, i am backing the code out and restarting. | 19:59 |
pcardune | carljm: instead of @@contents.html, go to @@index.html (in the address bar) | 20:00 |
carljm | flint: you put it in the right configure.zcml, browser/configure.zcml? and did you put it between the <configure> tags? | 20:00 |
*** jinty has joined #schooltool | 20:00 | |
carljm | pcardune: ah. or if you're logged in as manager, it's under "Preview" | 20:00 |
carljm | sort of | 20:00 |
flint | carljm, thanks by the way, you are failing the touring test... I think you are an alternate manifestation of Paul. :^) | 20:00 |
pcardune | carljm: exactly | 20:00 |
carljm | flint: nope i'm a noob too, just read chapter 13 of srichter's book 3 or 4 times this week :-) | 20:01 |
pcardune | ok, so is that working for everyone? | 20:02 |
flint | carl what is the whole path to the browser directory? | 20:03 |
wdickers | working for me | 20:03 |
carljm | flint: ~/zope3/lib/python/timeclock/browser - on my system anyway | 20:03 |
flint | carljm, thanks. | 20:03 |
pcardune | flint: that is what it should be on maddog too | 20:03 |
pcardune | ok, next thing we want to do is be able to add a person to our person container | 20:04 |
flint | pcardune, i love a system that spreads configuration files into as many separate directories as possible. reminds me of programming in visual basic! :^) | 20:04 |
pcardune | flint: well, we don't have to spread the configuration into different files, but there going to become large enough that it will be simpler to have them separate | 20:05 |
flint | pcardune, then why did it not work when I did it into the child configure.zcml? | 20:05 |
pcardune | besides, they are functionally separate as well, one is for components (under the hood), and one if for browser views (glossy paint job) | 20:05 |
pcardune | flint: because browser tags are not in the namespace for that configure file | 20:06 |
pcardune | remember to pay attention to the xmlns attribute in the configure flag | 20:06 |
pcardune | anyways, to add a person, we will want an addform | 20:07 |
pcardune | this is also something all of you should be able to figure out, (there is already an addform defined for PersonContainer) | 20:07 |
*** rjelliso has joined #schooltool | 20:08 | |
*** rjelliso has joined #schooltool | 20:08 | |
rjelliso | Ugh, finally here. | 20:08 |
pcardune | hi rjelliso | 20:08 |
lhuynh | hello | 20:08 |
wdickers | ello | 20:08 |
rjelliso | Hi | 20:09 |
carljm | hi rjelliso | 20:09 |
pcardune | so, if anyone has already written the zcml directive for the addform, please post it | 20:09 |
carljm | <addform | 20:09 |
carljm | label="Add Person" | 20:09 |
carljm | name="AddPerson.html" | 20:09 |
carljm | schema="timeclock.interfaces.IPerson" | 20:09 |
carljm | content_factory="timeclock.person.Person" | 20:09 |
carljm | permission="zope.ManageContent" | 20:09 |
carljm | /> | 20:09 |
carljm | but i get a system error when i try to use it, so take it with a grain of salt... | 20:09 |
wdickers | <addform | 20:10 |
wdickers | label="Add person" | 20:10 |
wdickers | name="AddPerson.html" | 20:10 |
wdickers | schema="timeclock.interfaces.IPerson" | 20:10 |
wdickers | content_factory="timeclock.person.Person" | 20:10 |
wdickers | permission="zope.ManageContent" | 20:10 |
wdickers | /> | 20:10 |
wdickers | That one doesn't give me an error | 20:10 |
wdickers | hmmm, they seem identical | 20:10 |
carljm | wdickers: I don't get an error on startup, but I do when I try to actually add a Person | 20:10 |
wdickers | ah | 20:10 |
wdickers | Well I don't have that problem... | 20:10 |
flint | pcardune, I am back a step. and am getting errors on carls first addition to the configure.zcml. please post what is correct so I can move on. | 20:11 |
pcardune | \msg flint if you are on maddog, you can take a look at /home/jelkner/zope3/lib/python/timeclock/browser/configure.zcml | 20:11 |
pcardune | woops, wrong back slash | 20:11 |
pcardune | ok, both wdickers and carljm's directives look fairly close to correct | 20:13 |
pcardune | what is the error you are getting carljm | 20:13 |
pcardune | ? | 20:13 |
flint | pcardune, I have residual errors that are still starting. these warnings are annoying. do we get rid of them or live with them. | 20:13 |
pcardune | flint: are they deprecation warnings or i18n warnings? | 20:14 |
flint | flint@maddog:~/zope3/bin$ ./runzope | 20:15 |
flint | /usr/local/src/Zope3/src/zope/configuration/fields.py:417: UserWarning: You did not specify an i18n translation domain for the 'label' field in /home/flint/zope3/lib/python/timeclock/browser/configure.zcml | 20:15 |
flint | warnings.warn( | 20:15 |
flint | /usr/local/src/Zope3/src/zope/configuration/fields.py:417: UserWarning: You did not specify an i18n translation domain for the 'description' field in /home/flint/zope3/lib/python/timeclock/browser/configure.zcml | 20:15 |
flint | warnings.warn( | 20:15 |
flint | /usr/local/src/Zope3/src/zope/configuration/fields.py:417: UserWarning: You did not specify an i18n translation domain for the 'title' field in /home/flint/zope3/lib/python/timeclock/browser/configure.zcml | 20:15 |
flint | warnings.warn( | 20:15 |
flint | ------ | 20:15 |
flint | 2006-03-12T13:15:27 INFO root -- HTTP:localhost:8084 Server started. | 20:15 |
flint | Hostname: localhost | 20:15 |
flint | Port: 8084 | 20:15 |
flint | ------ | 20:15 |
flint | 2006-03-12T13:15:27 INFO root Startup time: 6.211 sec real, 6.150 sec CPU | 20:15 |
carljm | pcardune: here's the end of my error: | 20:15 |
carljm | File "/usr/local/src/Zope3/src/zope/app/container/contained.py", line 214, in sublocations | 20:15 |
carljm | for key in container: | 20:15 |
carljm | TypeError: iteration over non-sequence | 20:15 |
carljm | can give you more if you want it | 20:16 |
carljm | pcardune, also I added an addMenuItem in addition to the addform for Person, else there was no option to add one | 20:16 |
pcardune | flint: these are related to internationalization, eventually we will get rid of them once we setup internationalization for timeclock | 20:16 |
flint | pcardune, as George H,W. Bush says, internationalization is annoying... :^) | 20:17 |
*** jinty has quit IRC | 20:18 | |
pcardune | wdickers: is it working for you? | 20:18 |
carljm | pcardune: i can also give you access to my instance if you want to use ++skin++Debug and see it all yourself | 20:18 |
wdickers | Is what? Adding personContainer and a Person? Yes | 20:19 |
*** jinty has joined #schooltool | 20:19 | |
carljm | hmm - do you guys perhaps have something in another file that I'm missing? Are the versions of everything else on ibiblio.org current? | 20:20 |
pcardune | actually, the ibiblio viersion has a few small problems, hold on a second, i will fix this | 20:20 |
wdickers | do you have the timeclock-configure.zcml in zope3/etc/package-includes? | 20:20 |
carljm | sure do | 20:21 |
carljm | else I wouldn't be able to anything at all with timeclock | 20:21 |
carljm | pcardune, I copied everything else from ibiblio.org, so if there's a problem there, that's probably it | 20:22 |
flint | pcardune, I need to go early. could you post the homework on the ibiblio site? | 20:23 |
jelkner | flint: i'll make sure that happens | 20:23 |
jelkner | and also send an email | 20:23 |
pcardune | flint: yes | 20:24 |
flint | carljm, for a while i thought you were jelkner in a cloak, but you are so much less optimistic in speach than he is. :^) | 20:24 |
flint | thanks all. sksk | 20:24 |
*** flint has quit IRC | 20:24 | |
pcardune | ok, the correct version is now on the ibiblio site | 20:25 |
pcardune | just hit refresh on the pages | 20:25 |
carljm | which file(s) have changed? | 20:25 |
wdickers | Could you link me? I don't think I have it bookmarked on this machine | 20:26 |
pcardune | yeah, just a second | 20:27 |
jelkner | http://ibiblio.org/obp/pyBiblio/courses/zope3class/ | 20:27 |
wdickers | thanks jelkner | 20:27 |
carljm | ok, the two attributes are TextLine instead of Text, see if that helps | 20:28 |
carljm | nope, same error | 20:29 |
pcardune | make sure in interfaces.py IPersonContained inherits from zope.app.container.interfaces.IContained | 20:30 |
pcardune | and that IPersonContainer inherits from zope.app.container.interfaces.IContainer | 20:31 |
pcardune | (there was a typo and the r/d were switched) | 20:31 |
pcardune | that should fix it | 20:32 |
carljm | that was it, thanks | 20:33 |
carljm | unrelated question: say I have a Person Container in my site. What changes to the code/zcml would make it necessary to delete my Data.fs on restart for things to work as expected? | 20:33 |
pcardune | changes to zcml do not require deletion of Data.fs | 20:34 |
pcardune | changes to the code can if they involve chaning the data structures of your object | 20:34 |
carljm | ok | 20:35 |
pcardune | say you can an attribute of a class that was a list, and then you make it a dictionary, you would have to delete the Data.fs, because it doesn't know how to put a list into a dictionary | 20:35 |
carljm | what about if you just change inheritance, like fixing that typo just now in interfaces.py? | 20:35 |
pcardune | that could potentially required deleting Data.fs | 20:36 |
pcardune | but only if the change in inheritance changes the data structure | 20:36 |
wdickers | umm, what are Data.fs? | 20:36 |
wdickers | are they the attribute values? | 20:37 |
pcardune | a lot of inheriting is done for the purpose of acquiring methods and not attributes when attributes are inherited, that is when you have to watch out | 20:37 |
pcardune | wdickers: Data.fs is the file that stores all the data on the ZODB (zope object database | 20:37 |
pcardune | ) | 20:37 |
pcardune | s/on/in | 20:37 |
wdickers | So it contains the instance data? | 20:38 |
carljm | alright, makes sense | 20:38 |
pcardune | you can find it in ~/zope3/var/ | 20:38 |
tiredbones | so if you change your interfaces.py attributes you wouls hve to reorg the Data.fs? | 20:38 |
pcardune | wdickers: correct, for your entire zope instance and everything in it | 20:38 |
wdickers | okay, I get it now | 20:39 |
pcardune | tiredbones: sometimes yes, and sometimes no, it depends on the changes you have made | 20:39 |
tiredbones | schema changes. | 20:40 |
pcardune | anyways, so hopefully everyone has working zcml directives? | 20:40 |
pcardune | tiredbones: again, it depends. it also depends on the implementation.... in general it is a good idea to solidify your data structures before making any major release of your software | 20:41 |
carljm | yep | 20:41 |
pcardune | i think jelkner wanted to talk about logistics for a second if he's around | 20:42 |
jelkner | he is | 20:43 |
jelkner | q1: do tiredbones and carljm want/need maddog accounts? | 20:43 |
tiredbones | I don't think so? | 20:43 |
pcardune | they seem to be doing pretty well without them | 20:44 |
carljm | does it get me anything besides a server on which to play with zope? because i have that already | 20:44 |
jelkner | q2: are tiredbones and carljm on the zope3@dc.ubuntu-us.org mailing list? | 20:44 |
tiredbones | yes | 20:44 |
jelkner | carljm: that's all it would be for | 20:44 |
jelkner | but since the rest of us are on it, it would be easier to copy files from each other. | 20:45 |
carljm | ok, i don't need a maddog account, but I do need to get on the mailing list | 20:45 |
pcardune | jelkner: and i need administrative access to that mailing list (and logs would be nice if that is possible) | 20:45 |
carljm | oh, ok, well if it's not a problem, go ahead and give me an account then. username carljm | 20:45 |
jelkner | http://dc.ubuntu-us.org/mailman/listinfo | 20:45 |
jelkner | carljm: send me an email: jeff@elkner.net and i'll set it up for you | 20:46 |
jelkner | send me your name while you're at it ;-) | 20:46 |
jelkner | ok next question: | 20:46 |
jelkner | does everyone know about the nelinux sprint from july 16-19? | 20:47 |
wdickers | yes | 20:47 |
lhuynh | where is it? | 20:47 |
jelkner | new hamshire | 20:47 |
tiredbones | what's the cost? | 20:47 |
jelkner | hampshire | 20:47 |
jelkner | http://nelinux.net/ | 20:47 |
wdickers | SOMEONE just called my parents :) | 20:47 |
jelkner | yes, i tried to reach linda's mom too, but she didn't answer | 20:48 |
lhuynh | ... she went out, I think | 20:48 |
jelkner | lhuynh: did you tell her about it? | 20:48 |
wdickers | is Linda here today? | 20:48 |
jelkner | yes | 20:49 |
carljm | jelkner: email sent | 20:49 |
*** ignas has quit IRC | 20:49 | |
lhuynh | jelkner: she needs info | 20:49 |
wdickers | oh, there you are xD | 20:49 |
jelkner | that's why i was trying to call her | 20:49 |
lhuynh | but it's a given that I can't come to the ACC one | 20:49 |
tiredbones | Whai is tha ACC one? | 20:49 |
jelkner | Arlington Virginia | 20:50 |
jelkner | Arlington Career Center | 20:50 |
tiredbones | when? | 20:50 |
jelkner | CanDo sprint | 20:50 |
jelkner | July 29-30, 2006 | 20:50 |
jelkner | no cost | 20:50 |
jelkner | except transportation and room and board | 20:50 |
jelkner | ok, that's all i have | 20:51 |
jelkner | oh, same time next week | 20:51 |
jelkner | 12 - 2 pm | 20:51 |
tiredbones | pcardune, do you have a new email address? | 20:51 |
wdickers | Wait...why would there be need for 'board' when it's at the Career Center? | 20:51 |
wdickers | *'room and board' | 20:51 |
jelkner | wdickers: not for you ;-) | 20:51 |
pcardune | tiredbones: nope same one | 20:51 |
wdickers | Oh | 20:51 |
jelkner | but for folks coming from a far, yes | 20:51 |
pcardune | wdickers: you already have permanent room and board | 20:52 |
lhuynh | what about the NH one? | 20:52 |
jelkner | we are staying on campus | 20:52 |
jelkner | but there is no cost to you, linda, the internship pays for everything | 20:52 |
lhuynh | even better :) | 20:53 |
carljm | is class over, or are we doing more after the logistics break? | 20:53 |
wdickers | Not really, I'm getting kicked out in 3 years T-T | 20:53 |
lhuynh | wdickers: you're a freshman? | 20:53 |
jelkner | pcardune: well, teach? | 20:53 |
jelkner | homework? | 20:53 |
wdickers | Nope, sophmore | 20:53 |
pcardune | well, if people need to go, they can, those who want to can stick around and we will do one more small thing (making a page) | 20:54 |
wdickers | I'll stay | 20:54 |
carljm | alright, i'm staying | 20:54 |
jelkner | i need to go (my son has a concert) | 20:54 |
lhuynh | I need to go | 20:54 |
jelkner | cya next week... | 20:54 |
carljm | later | 20:54 |
lhuynh | yeah, bye | 20:54 |
tiredbones | bye | 20:54 |
pcardune | homework will go out in an email and get posted on the internet | 20:54 |
*** jelkner has quit IRC | 20:54 | |
pcardune | bye | 20:54 |
*** lhuynh has quit IRC | 20:54 | |
pcardune | ok, so now you guys can add a Person instance to a PersonContainer instance yes? | 20:55 |
wdickers | yes | 20:55 |
wdickers | Oh wait, is this the making of the index.html? | 20:55 |
rjelliso | indeed I can. | 20:55 |
wdickers | I already did that 8D | 20:55 |
carljm | yep | 20:56 |
pcardune | wdickers: yeah, if you already did that, you have nothing more to do | 20:56 |
wdickers | Heh, okay. See you guys next week | 20:56 |
tiredbones | bye | 20:56 |
*** wdickers has quit IRC | 20:56 | |
pcardune | ok, so if you click on the Person object that you added, again you are going to get the Introspection view | 20:56 |
pcardune | because we haven't defined an index.html view for our Person object | 20:56 |
carljm | (unless I defined an editform already) | 20:57 |
pcardune | step one is to add a "page" zcml directive to the browser/configure.zcml file | 20:57 |
pcardune | carljm: yeah | 20:57 |
pcardune | so if you defined an edit form you will see that instead of the introspector | 20:58 |
pcardune | I will paste the directive below: | 20:58 |
pcardune | <page | 20:58 |
pcardune | name="index.html" | 20:58 |
pcardune | for="timeclock.interfaces.IPerson" | 20:58 |
pcardune | template="person.pt" | 20:58 |
pcardune | permission="zope.Public" | 20:58 |
pcardune | menu="zmi_views" title="View" | 20:58 |
pcardune | /> | 20:58 |
pcardune | the attributes here are just like the ones that we've seen | 20:59 |
pcardune | the new attributes are template, menu, and title | 20:59 |
pcardune | when we create a page we can add a link to it to any menu we want. In this case we add a link to the zmi_views menu | 21:00 |
pcardune | zmi_views is the menu for the tabs you see at the top | 21:00 |
carljm | what other menus are there? | 21:00 |
pcardune | (Instrospector, Edit, Contents, that kind of stuff) | 21:00 |
carljm | and what's the difference between zope.Public and zope.View? | 21:00 |
carljm | no, those are part of zmi_views - what other menus exist besides zmi_views? | 21:01 |
pcardune | carljm: that was a continuation of what i was saying before | 21:01 |
carljm | oh, sorry | 21:01 |
pcardune | i'm not sure there are any other useful menus other than zmi_views | 21:01 |
carljm | ok | 21:01 |
pcardune | but the idea is that you can create your own menus | 21:01 |
carljm | right | 21:02 |
pcardune | and use those | 21:02 |
pcardune | as many menus as you like, etc. | 21:02 |
pcardune | the title attribute goes along with the menu attribute (hence why they are usually on the same line) and just says what goes in the menu | 21:02 |
pcardune | or rather, the text to display for the menu | 21:02 |
pcardune | the template attribute specifies a file that says what our page is going to look like | 21:02 |
pcardune | so we are not going to create an index.html file anywhere, as you would on a regular web server. instead we are going to create a zope page template called person.pt which is essentially a dynamic web page | 21:03 |
pcardune | index.html is just the name by which you access it over the web | 21:03 |
pcardune | you check out http://www.ibiblio.org/obp/pyBiblio/courses/zope3class/timeclock/browser/person.pt to see what the person.pt file looks like | 21:04 |
*** rjelliso has quit IRC | 21:04 | |
pcardune | if any of you have worked with zope2, page templates are pretty much the same as from zope 2 | 21:05 |
pcardune | I would highly suggest reading up on zope page templates | 21:06 |
pcardune | there is lots of documentation on them | 21:06 |
pcardune | there is a very detailed reference here: http://www.zope.org/Documentation/Books/ZopeBook/2_6Edition/AppendixC.stx | 21:06 |
pcardune | we don't have time at the moment to go over what eavh tal attribute does in this file | 21:07 |
pcardune | but chapter 14 goes over that in more detail and I would suggest reading that to get started | 21:08 |
pcardune | anyways, if you restart your zope server now, then you will have an index.html page that displays the name and username of the person | 21:09 |
pcardune | and that's it for the class | 21:09 |
tiredbones | pcardune, while your on vaction do you read your email daily? | 21:09 |
pcardune | tiredbones: yes, but i don't necessarily respond daily | 21:09 |
tiredbones | ok | 21:09 |
pcardune | (i get a lot of emails) | 21:09 |
carljm | very nice | 21:10 |
carljm | one last question? what's the diff between zope.Public and zope.View permissions? | 21:10 |
carljm | the latter requires authentication? | 21:10 |
pcardune | you know, I'm not entirely sure | 21:11 |
pcardune | i think it has to do with some more in depth security stuff | 21:11 |
pcardune | involving principals (which we haven't learned about yet) | 21:11 |
carljm | ok | 21:11 |
pcardune | zope.Public is *always* public | 21:12 |
carljm | thanks for the class - homework? | 21:12 |
pcardune | where as zope.View isn't necessarily always public | 21:12 |
pcardune | i haven't decided what the homework should be yet | 21:13 |
pcardune | i'll send out an email about it soon though | 21:13 |
carljm | great | 21:13 |
tiredbones | pcardune, Does CanDo have a web site? | 21:13 |
pcardune | http://cando.sf.net is one of them | 21:14 |
tiredbones | pcardune, where is discussion being done? | 21:14 |
tiredbones | use-cases | 21:14 |
pcardune | use-cases for cando? | 21:14 |
tiredbones | yes | 21:14 |
pcardune | they are not really available publicly... there is a *very* small group of people working on it so we don't really have that kind of information up at this point | 21:15 |
pcardune | although there is another website you could look at about taht | 21:16 |
pcardune | http://www.careercenter.arlington.k12.va.us/cando/index.htm | 21:16 |
tiredbones | ok | 21:16 |
pcardune | jinty: i heard you that you are the new sys admin guy for schooltool? | 22:00 |
*** jinty has quit IRC | 22:10 | |
*** pcardune has quit IRC | 22:56 | |
*** carljm has quit IRC | 23:04 | |
*** jinty has joined #schooltool | 23:06 | |
*** auxesis has quit IRC | 23:09 | |
*** tiredbones has quit IRC | 23:09 | |
*** th1a has quit IRC | 23:09 | |
*** jinty has quit IRC | 23:09 | |
*** srichter has quit IRC | 23:09 | |
*** jinty has joined #schooltool | 23:09 | |
*** auxesis has joined #schooltool | 23:09 | |
*** tiredbones has joined #schooltool | 23:09 | |
*** th1a has joined #schooltool | 23:09 | |
*** srichter has joined #schooltool | 23:09 | |
*** Aiste is now known as Aiste|away | 23:10 | |
*** dobee has quit IRC | 23:30 | |
*** jinty has quit IRC | 23:41 | |
*** jinty has joined #schooltool | 23:43 |
Generated by irclog2html.py 2.15.1 by Marius Gedminas - find it at mg.pov.lt!