IRC log of #schooltool for Wednesday, 2012-04-18

*** replaceafill has joined #schooltool00:42
*** alga has quit IRC02:51
*** replaceafill has quit IRC03:44
*** aks has joined #schooltool06:18
*** alga has joined #schooltool09:58
*** menesis has joined #schooltool12:35
*** hlsousa has joined #schooltool13:26
*** aks has quit IRC15:02
*** hlsousa has quit IRC16:02
*** replaceafill has joined #schooltool16:22
*** th1a has joined #schooltool16:31
th1ahi aelkner, replaceafill, yvl, menesis16:32
menesishi16:32
replaceafillgood morning/afternoon16:32
yvlhi16:33
aelknermorning16:33
th1aI read your chat from yesterday.16:34
th1aThe one thing that struck me is that we probably do need to talk about the input format.16:34
th1aI think yvl had a plan at the sprint.16:35
th1aWhich we probably didn't write down...16:35
th1ayvl?16:36
yvlsoryr16:37
yvlwhat input format are you talking about?16:37
th1axls import of skills?16:37
yvlah16:38
th1aI may be hallucinating.16:38
yvlwell, I'd say go the way we discussed at the sprint16:38
yvl(and actually showed to David :) )16:38
yvl(so he may have taken notes)16:38
th1aDid we only have it on a giant post-it?16:40
yvllikely16:40
yvlor it may be in some shared doc16:41
* yvl hasn't checked16:41
th1aWell, regardless, do you remember in general terms?16:41
yvlvaguely16:43
th1a...16:44
yvlthere should be a document model importer that defines the document model16:45
* th1a has been kicking himself over leaving those post-its.16:45
yvlbasically: levels with lists of child levels16:45
aelknerdidn't we take a picture of the post its?16:45
aelknersorry for interrupting16:45
yvlthere should also be a skill importer, it depends on data model16:46
yvlbasically16:46
yvllev1 lev2 levr skillset skill16:46
yvlcells16:46
aelknerby data model, you mean levels, right?16:46
yvlyes16:46
th1aI think aelkner was the one with a camera phone.16:46
yvlso, those cells16:46
yvland blank cells mean --- // ---16:47
yvlas in - same a above16:47
yvlalso there will be some sharp edges, I don't remember off hand16:47
aelknersounds like the flat tables that i've been working on lately16:47
yvlyes, like that16:48
th1aYes.16:48
th1aIt wasn't anything particularly non-obvious.16:48
yvlreimport will be tricky16:48
aelkneri was thinking about that, too, last ight16:49
aelknerhow do you think it will be tricky?16:49
yvlalso read "VERSO revision continuinity" if you missed it somehow16:49
yvljust a hunch, aelkner16:49
aelkneri started being concerned, but then i remembered how our other imports work16:50
aelknerreimporting is just a case of ignoring keys that are already there, i.e., don't add16:50
aelkneronly titles, descriptions get updated16:50
aelknermy conclusion was that we would be ok here for the same reason16:50
aelknerbut i could be wrong16:51
aelknerin either case, that should be my problem to solve16:51
yvltrue16:52
th1aI just wanted to make sure we were on the same page on the issue.16:52
th1aNot marching in different directions entirely.16:52
yvlif for some reason datamodel does not fit, please bug me, aelkner16:52
th1aOK.  So... other issues, questions aelkner?16:53
aelknerth1a, i need to handle theses things, and i will bug you, yvl, as i am concerned about something16:53
aelknerbut i haven't gotten that far yet to be concerned16:53
aelknerstill groking the incoming code16:53
aelkneryvl, you're adding stuff too fast :)16:54
aelknerbut for today, if i may:16:54
aelknerso far, i noticed that we have levels and nodes by school year16:54
aelknerok, stating over16:55
aelknerthe way i want to approach this is devide and concur, for my small mind16:55
aelknerthe first thing is levels because they don't depend on anything16:55
aelknerso one sheet for those16:55
yvlyes16:55
aelknerthen, nodes, depend on level ids, so one sheet for those16:55
aelkneroh, and i say one sheet because i'm assuming that we will have on flat table for all years?16:56
yvlI'd say - a sheet for a year16:56
yvlor rather - importer for a year16:57
yvlas opposed of importer for a school16:57
yvl* opposed to16:57
yvland I think nodes and skills go together16:57
yvlinto the same sheet16:57
aelknerif the importer is for a year, then we could have it run off of the year as context16:57
aelknerthat would greatly simplify it for sure16:57
th1aToo many sheets will make users unhappy.16:58
yvldoes not compute, th1a16:59
aelknerso are we agreed that the cando importer is only run from year context?16:59
yvlwell, at least it is registered that way now16:59
yvlsee cando/browser/configure.zcml and cando/browser/importer.py16:59
th1ayvl:  I was trying to agree that nodes and skills should go on the same sheet if possible.17:00
yvlah!17:00
yvlthanks17:00
yvltext parsing error on my side :)17:00
th1anp17:00
th1aIt is a miracle we can communicate at all.17:00
yvl:D17:00
aelkner:)17:00
aelkneryvl, side note, not using flourush.zcml name for browser config?17:01
yvlno17:01
aelknerbecause there is no old version17:01
yvland not using FlourishXXX names17:01
yvlyes17:01
yvlwe should have renamed everything in ST from flrousihXXX to XXX17:02
yvlbut, well, time limits and all17:02
aelkneri was just thinking about that recently, why didn't we rename old stuff to old_configure.zcml and OldViewClasss17:03
aelknerbut, like you said, time limits17:03
aelkneranyway, the model skills imported17:03
aelkneris that for the levels and nodes?17:03
th1a?17:05
yvlModelImporter - for "levels"17:05
yvlSkillsImporter - nodes + skillsets + skills17:06
aelknerah, i see17:06
yvlfeel free to rename them better :)17:06
aelkneri think the name of the sheet and the column headings within the sheet should match the ui17:07
aelknerwhatever we call a level when we have the user add it in the ui, that's what we should call it in the xls17:07
yvlabsolutely your call ;)17:08
aelkneryvl, i'll just follow your ui choices17:08
aelkneri'm curious, you are working on ttw skills, did you already do ttw levels?17:09
yvlno, like I said yesterday17:09
yvlhmm17:09
yvllet me quickly report :D17:09
aelknersure17:10
yvlI did ttw skillset/skill creation17:10
yvlthey're stored in a global container17:10
yvlnow I'm doing skillset assigning to courses17:10
yvlonce that is done, replaceafill should be able to start working on skill gradebook17:10
yvlafter that - levels17:10
yvlafter that nodes17:10
yvlafter that - linking nodes with skillsets17:11
aelknerif skills depend on the existence of levels, how can you code one without the other?17:11
yvllike I said yesterday17:11
aelknerare you hard-coding levels for now?17:11
yvlthey do not17:11
yvlnodes depend on levels17:12
yvlnodes get linked with skillsets17:12
aelknerwhat do skillsets mean without being linked to nodes?17:13
yvla skillset is a set of skills17:14
yvlroughly - a worksheet17:14
yvlor - a project17:14
yvlthink about it this way:17:15
yvlwhy would you need to know the pathway or occupation the skillset is part of17:15
yvlto use the skillset in a gradebook?17:15
yvlor to put it in CTE terms17:16
yvlyou can create and assign duty areas to courses17:16
* yvl apologizes if not being very clear17:17
aelknera lot was said at the sprint, and some understand our decisions better than others17:20
aelknerespecially those who made the decisions :)17:20
aelkneri'm still needing to catch up to these things17:20
aelkneri still have the idea in my head from the old cando, that comps are stored globally17:21
aelknerthen assigned to a course, at which time they can be graded17:21
aelknerbut the dependency of course comps on comps was there17:21
aelknerso i'm not sure how you see grading something that is not linked to a skill17:22
yvlcomps are called skills17:22
yvlskills are not linked to skills for grading17:22
yvlskills are graded17:22
yvlskills are kept in skillsets17:23
yvlwhich is like a worksheet17:23
yvlskill being like an activity17:23
yvlok, frankly, I just don't see how you don't see it17:23
th1a(VA CTE uses "skills" btw)17:24
yvlreally?17:24
aelknersorry i mentioned comps only because i was referring to old cando17:24
yvlnot "tasks"?17:24
yvlok17:24
th1aOr maybe I'm wrong...17:25
th1aI thought that was part of the reason we switched to "skills," but whatever.  I don't want to launch a thread on that.17:25
aelknerok, this is weird, in the current gradebook, the user can add worksheets and activities17:26
aelknerto their hearts content17:26
yvlyes17:26
yvlsame happens with "projects"17:26
aelknerbut they aren't concerned with global reporting as we are in cando17:26
aelknerin old cando, the gradebook graded things that were globally linked17:26
aelknerwhat you're talking about is having a kind of worksheet with activities that act alone17:27
aelknercan't be reported on because they aren't linked to a global skill17:27
yvlyou are right about that17:27
yvlcan't be reported on17:27
yvlbut we are not doing the reports17:27
yvlwell, at least not now17:28
aelkneri thought the point of cando was that all teachers are grading the same things17:28
yvlthat's why17:28
yvlwe need only things that allow grading17:28
yvland yes, there is a global SkillSetContainer17:28
yvl(see skill.py)17:28
yvlI'm just not doing the part with the node creation, assigning to pathways, conforming to "document model" and so on17:29
aelknerso, may i ask a kind of summary question at this juncture?17:29
yvlor to be more precise17:29
aelknergo ahead17:29
yvlthat is done, but there is no way to input data17:29
yvlI am not doing TTW input today17:29
yvlbut I will do that in few days or so17:30
yvlmeanwhile, you *are* doing that with the importer17:30
yvlplease ask the question :)17:30
aelknerthe question was: unlike old cando, the user can use cando gradebook much like current17:30
aelknerthat is, create a column (activity) as they please17:31
yvlyes and no17:31
aelknerdoes not need to be linked to a skill if they don't want to17:31
yvlas discussed in spirint.17:31
yvllet's start from the beginning17:31
yvlthere will be two gradebooks17:31
yvlone will be called skills gradebook17:31
yvlthe second - projects gradebook17:31
yvlthe purpose of projects gradebook is for teachers to create freeform projects17:32
yvland grade them17:32
yvlsame way the normal gradebook is done17:32
replaceafillthe old skill drivers or assignments17:32
yvl(probably - me can't recall what "skill drivers" were :) )17:32
yvland the skills gradebook is assigned to courses17:33
replaceafillthat, custom sets of skills put together :)17:33
yvland is a global one17:33
yvlteachers cant change skills for a section17:33
yvlskills are for courses17:33
yvlskills are stored globally17:33
yvland then there is the "document"17:34
yvlone, or more in reality17:34
yvlhierarchical trees17:35
yvlthat describe where skill sets fit in some system17:35
yvlfor example17:35
yvlhow skills fit in INDUSTRY vs EDUCATION mentioned by David17:36
* yvl done17:36
aelknerlevel trees are the "document" you refer to, correct?17:37
yvldid I answer some questions aelkner, or was I just  blabbering :)17:37
yvlyes17:37
aelknernot blabbering, everything you can say is helpful17:37
* th1a figures each hour of conversation here saves a day of development time.17:37
yvl:D17:37
aelknerright17:38
th1aI think one point is that the new CanDo will *allow* teachers to do things which won't necessarily be automatically included in school-level reports.17:39
th1aMaking up their own skills, etc.17:39
th1aBut that is ok.17:39
replaceafillhhmm?17:40
th1aOr at least the model will allow it.17:40
replaceafilli thought teachers were going to "select" existing skills...17:40
replaceafillto use in their own projects17:40
th1aLet's just say the model will allow it.17:40
aelknerreplaceafill, you and i are on the same page, old cando17:40
aelknerthat's why i have been speaking of this dependency, because the user has expected it17:40
aelknerhowever17:41
th1aThere could be skills in the system that aren't really anchored to the document model and thus could be scored but probably not caught by the reports.17:41
aelknerjelkner has often wanted to create skills that virginia did not, so...17:41
th1aDoes that make sense, yvl?17:42
yvlif I got you right, yes17:42
th1aReporting will be dependent on the overall structure.17:43
th1aScoring could potentially just be done by creating skills and adding them to projects.17:44
yvlyes17:44
aelknerthe jelkner type user will be happy to be free from the global tree17:44
th1aThose skills wouldn't show up in reports based on the document model, which is what people would expect, but they can be scored and used within the section.17:44
yvladmins can also create a second model17:44
yvllike17:44
th1ay17:44
yvlEDUCATION vs INDUSTRY17:45
yvland assign whatever skills to whatever :)17:45
th1aAny other questions aelkner?17:45
aelknerthis was good, i'd say move on for now, i have groking to do on the subject anyway17:45
aelkneryvl, it's interesting how you have been thinking about it17:46
aelknerprobably as a result of working on the gradebook with replaceafill first17:47
aelkneri'm just coming at it from a top down model point of view17:47
aelknerand global comp come first17:47
aelknerglobal skills now17:47
aelkneranyway, we can move on17:48
th1aI'd say it is more that once you need to have a flexible document structure, it is easier to just not be dependent on that at all.17:48
yvlyes17:48
aelkneri can see how that is helping us, yes17:48
th1aCreating a model that is flexible and required (has meaningful validation, etc) is harder.17:48
th1aAnd gains you little if anything.17:49
aelknerwell put, that's the goal17:49
aelknerxml docs are like that17:49
aelkneryou can create any type you want, but you could also validate against a schema17:49
yvlallright then... I'd like to leave in some 10 minutes if possible17:49
th1aok yvl.17:50
th1areplaceafill?17:50
aelknerone sec17:50
aelknerbefore we letyvl go17:50
aelknersince i haven't groked the whole new model as we have been discussing, i'm not likely to import aything today17:50
aelknerhowever, i could import levels17:51
aelknerthey are the root of the model and dependent on nothing17:51
aelknerthey form a tree17:51
aelknerbut, as you just said, and as i see in the code, there can be more than one tree17:51
aelkneri could create a flat table17:52
yvlyes17:52
yvlbasically you need to look it like this:17:52
aelknerfirst column is the name of the tree, i guess17:52
yvl[level] [parents]17:52
aelknerah, flatter still17:52
yvl[cluster] []17:52
aelknerlevel id, title, parents17:52
yvl[pathway] [cluster]17:52
yvl[occupation] [cluster]17:52
yvloh, and they're called "layers" in the code :D17:53
yvland have no id's per se17:53
aelkneroops :)17:53
yvlso you can just use titles17:53
aelknerlayers have an id in the layers container for the year17:54
aelknerbut they have a title as well17:54
yvland as you may notice, usually they will look like linked-lists rather than trees17:54
aelknercapitalized, likely17:54
aelkneryes, it's not a single rooted tree as in old cando, it's a directional graph17:54
yvlcluster -> pathway -> occupation -> course17:54
aelknerno cycles allowed, as i have seen17:55
yvlyes17:55
aelknerso, restating, we need a three column sheet17:55
aelknerlevel id (the key), title, parents list of keys for parents17:55
aelkneri would need to do two passes17:56
aelknersorry, saying level instead of layer17:56
aelknerwhen things are close, i switch them17:56
aelknerthe parents could be comma delimited list, but perhaps better would be:17:57
aelknerone cell for each parent, but that would mean we couldn't decide to add a new column after parents17:57
yvlbtw, I don't understand why you need level id, and why you need two passes17:58
aelknerhey, i got you saying level17:58
yvl:D17:58
aelknerto answer your question, the id is how to uniquely identify the layer, like with a person username17:59
yvlwhy not title17:59
yvlwell nevermind18:00
yvlok, I really would like to run18:00
aelknerthe id and title may be different, you allow for that in the object18:00
th1aOK, we should let yvl go home.18:00
th1aThanks yvl!18:00
yvlthanks guys18:00
th1aCan you do this tomorrow, same time?18:00
yvlwee you tomorrow!18:00
yvlsee :D18:00
yvlmy God18:00
aelknercya then18:00
yvlsee you tomorrow :)18:00
replaceafillbye yvl18:01
aelkneryes, and please don't pee on us :)18:01
th1aOK, maybe we should give menesis a chance...18:02
th1aAny news menesis?18:02
menesisI did not work on cando :)18:02
menesisok18:02
menesisI made some progress on philippines project18:03
menesisinstalled for them and saw the initial demo18:03
menesison evenings also prepared the release18:04
menesisfixed a few smallbugs18:04
menesisadded a link to the student in popup from both gradebook and journal18:04
menesishttps://bugs.launchpad.net/schooltool.lyceum.journal/+bug/66124318:05
menesismerged translations, will do 2.1.0 releases/packages tonight18:05
th1aOK.  Great.18:06
th1aShould we just push it to precise now and then really release it on the Precise release date to the other versions?18:07
th1aIf you know what I mean?18:07
menesisis there a point to wait?18:07
th1aWe can have a coherent announcement on a predictable date.18:08
menesisthat date can be a few days earlier than precise ;)18:09
th1aWell, I'm not ready to do it today.18:09
menesisI can upload to ppa later18:10
th1aThat's my point.18:10
menesisit takes some effort18:10
menesiswill not be today anyway18:10
menesisbut18:10
menesisI will be on vacation next week18:10
menesiswithout internet18:11
* th1a would appreciate it if his release manager would not schedule his vacations for release dates.18:12
th1aSince we only have two a year at the same time every year.18:12
menesisthe plan was to make the release and then go on vacation18:13
menesisrelease candidate is tomorrow, not next week18:13
th1aOK.18:14
th1a...18:14
menesiswith the Philippines project with tight schedule18:15
menesisthis turned out badly18:15
th1aSo now we're looking at the dreaded "release on Friday and go on vacation for a week" scenario.18:15
th1aMaybe just push to precise now and wait for the rest.18:16
th1aUntil you get back.18:16
menesiswell, sorry, should have done the release last week18:16
th1aNobody is going to break an existing instance upgrading to precise (probably).18:16
th1aThe Philippines thing made things more complicated, I know.18:17
th1aIt is well worth it though.18:17
menesistrue18:17
th1aJust push it to Precise and hold off on the rest.18:17
menesisok...18:18
th1aThat way we have no unexpected surprises to deployed instances.18:19
th1aAnd I don't have to send yvl driving into the wilderness to find you.18:20
menesisI don't see how waiting longer will reduce unexpected surprises18:20
th1aWell... we'll have you here to push fixes.  And I'll be using the Precise version.18:20
menesispeople upgrading immediately after release and reporting bugs?18:21
th1aYes.18:21
menesisbut there are many unsolved bugs, including exceptions, as it is18:22
th1aYes, but if people suddenly can't do something that they used to be able to we have to be able to push fixes immedately.18:23
th1aLook, I'm perfectly fine with pushing the changes to precise now, announcing the release right on the precise release date, and then pushing to our PPA's a week later.18:24
menesisunderstood18:24
th1aOK.18:25
menesisi will be back on 28th18:25
th1aOK.  Sounds good.18:26
th1aAnything else, menesis?18:27
menesisno18:27
th1aOK.  Thanks.18:27
th1aEnjoy your vacation.  ;-)18:27
th1areplaceafill?18:27
menesishope so :)18:27
replaceafillok18:27
replaceafillth1a, i made the change you suggested to the third-nav, about deactivating the arrows18:28
replaceafillshowed it to yvl and aelkner yesterday18:28
replaceafilland they gave me more ideas :)18:28
th1aI saw.18:28
replaceafilli think i can do it, but i'm focusing on other (more important) stuff now18:29
replaceafilllike autosave18:29
replaceafilland the ajax tabs18:29
th1aThat's what I was going to suggest.18:29
replaceafillyes18:29
replaceafilli did a little test on autosave and it worked18:30
replaceafillbut i'd like to finish the tabs first18:30
replaceafillso i'm in the middle of that one now18:30
replaceafillhope to have something to show tomorrow18:30
replaceafillor friday for sure18:30
th1aOK.18:31
* replaceafill done18:31
th1aThanks replaceafill.18:31
th1aOne more thing aelkner.18:31
aelkneryes?18:31
th1aI need you to take a look at that contacts import bug from Australia.18:31
aelkneri looked at it and am prepared to discuss it18:32
th1aAre we creating unlinked self-contacts automatically for some reason?18:32
th1aGo ahead.18:32
aelknerok, our code has an adpater IContact(IBasicPerson) which creates a bound contact18:33
aelkneri guess we could call that the self contact18:33
aelknerbut the PersonImporter does not envoke IContact(person)18:33
aelknerif, however, the user in question navigates to the link in flourish 'John Doe as Contact18:34
aelknerthat would cause the adapter to get called, which, in turn, would create the bound contact18:34
aelknerso checking on the existence of the contact actually creates it :)18:35
aelknerkind of like the uncertainty principle of the observer affecting the observed18:36
aelknerbut as for the part of the report that says they see the First and Last name in the contact18:36
th1aCrap, I don't have a running 2.0 on this laptop.18:36
aelkneri don't understand that18:36
aelkneris this flourish, they are using18:36
th1aPresumably, but we should ask.18:36
th1aSo you don't see any reason an UNLINKED self contact would be created on import.18:37
th1aThat's what they're describing as far as I can tell18:37
aelknerif the Contact Persons and Contact Relationships sheets are empty as they suggest, not IContact call is made18:37
aelknerthat i can say for sure18:38
aelknerbtw, an unlined sel contact. how would one even know such a thing exists?18:39
th1aListed under contacts, I presume.18:39
aelknerwe don't list self contacts under contacts18:39
aelkneryou have to click the Manage Contacts link within the accordion18:39
aelknerthen there is the 'John Doe as self' link18:40
th1aOK, so then I have no idea.18:40
th1aOK, follow-up question time then.18:40
th1aAll right, thanks aelkner.18:40
aelknerme, neither18:40
replaceafillaelkner, they maybe went to /contacts18:40
replaceafilland saw the imported persons there18:40
replaceafilland that's why they're confused18:40
th1aRight.18:40
replaceafillthey don't want the persons there18:41
aelknerwe should have them send us a screenshot18:41
replaceafillafaict18:41
th1aCan you send me a link to a running schooltool, replaceafill?18:41
replaceafillhttp://69.164.203.135:6662/contacts18:41
replaceafillsample data18:41
replaceafillhttp://69.164.203.135:6662/persons/student011/contact18:42
replaceafilli think that's what they mean18:42
replaceafill"just first name and last name"18:42
replaceafilland they only want to see "real contacts" there18:42
replaceafilli mean in /contacts18:42
aelknerthat could be it18:43
th1aOK.  I should have looked at that first.18:43
replaceafillD:18:43
replaceafill:D18:43
aelknera ui change request18:43
aelknergood thinking replaceafill18:43
replaceafillmaybe a checkbox or something to filter "bound contacts"...18:43
aelkner'personal contacts' would be perhaps more user friendly18:44
aelknerthe only other mention of them is the link which says 'User as contact'18:44
th1aWell, that's exactly what they described.  Blank contacts for users.18:45
th1aCreated by default -- is that only done by the importer?18:45
aelknerasked and answered, your honor :)18:45
th1aWhy are those there at all?18:46
th1aWhere do they come from?18:46
aelknerthe code has to call IConact(person), the user has to do something to make that happen18:46
aelknervisiting the 'User as contact' link is the only way i know of18:46
th1aI don't think that's what we're looking at.18:47
replaceafillaelkner, not really18:47
th1aUnless someone did that on replaceafill's instance.18:47
replaceafillaelkner, create a person using the ui18:47
replaceafillthen go to /contacts18:47
replaceafillyou'll see the person there18:47
aelknerwell, perhaps creating the person fires off a subscriber18:47
replaceafillautovivify_person_contact18:48
replaceafill:)18:48
th1aOh, it even happens when you just create them through the UI.18:48
replaceafillyep18:48
th1aAh.18:48
aelknerah, no18:48
th1aSo, I guess the question is if there is a good reason for that.18:48
aelknerit's the contacts list18:49
aelknerthat, why looking for it, creates it18:49
aelknermaybe :)18:49
aelknersomeone calls IConact(person), that much has to be the case18:49
replaceafillaelkner, you mean when we call /contacts, the cocntact gets created?18:49
th1aThis is peculiar.18:50
aelknersorry, i missed your autovivify_person_contact comment while i was groking, typing18:50
aelknerreplaceafill, what file is that in?18:50
replaceafillaelkner, :)18:50
th1aIf you go to the person, there isn't a self contact.  But if you go to /contacts, there is a blank self record.18:50
replaceafillschooltool.contact.basicperson.PersonAddedSubscriber18:50
replaceafilllol18:50
replaceafillit's called:18:50
replaceafillPersonAddedSubsciber18:51
replaceafill:D18:51
aelkneryes, that's it18:51
th1aThis seems to have more to do with the /contacts view itself.18:52
aelknerth1a, yes, sorry for the confusion18:52
th1aIt is just confusing.  ;-)18:52
aelknerwhen a person is created, no additional code is required in a view class to make the contact be created18:52
aelknerit happens due to the person added subscriber we just mentioned18:53
th1aWhy doesn't this show up in the contacts section of the person view?18:53
aelknerso that's a model feature that we are bound to at this point18:53
aelknerit isn't a contact18:53
replaceafillth1a, they are two different type of objects18:53
th1aThen why is it in /contacts?18:53
replaceafillthe Contacts accordion lists only one type18:54
replaceafillnot the bound one18:54
aelknerit is a contact object18:54
aelknerbut, in the ui, we don't list it18:54
replaceafillbecause /contacts lists both types18:54
th1aSo what if we just make /contacts only show one type?18:54
aelknerreplaceafill had suggested a checkbox, but we could just eliminate them unconditionally18:55
replaceafill-118:55
th1aWhat good are they?18:55
replaceafillbut that's my 0.02 :)18:55
aelknerthe user needs an email, too18:55
aelknernot just the email of their parents, etc.18:55
aelknerany contact info which is needed for parents is also needed for the student or any teacher for that matter18:56
aelknerwe just have a confusing way of getting to the info in the ui18:56
th1aOK.18:56
aelknerwe could show the self contact in the contacts accordion18:57
th1aWell, now it seems to me that I can't see the self contact data from the person at all.18:57
aelknerand stop asking them to hit Manage Contact -> 'User as contact'18:57
th1aSo THAT'S a bug.18:57
menesisAdd > User as Contact18:57
menesisin the sidebar18:57
th1aI would say that ideally the self contacts wouldn't show up under /contacts if they had no data.18:58
th1aBut self contacts MUST show up from the person view (if they have data).18:58
aelknermay i recommend something?18:58
th1aSure.18:58
aelknerthe contacts accordion, it is the obvious place for the user to go, so making the user go to18:59
th1aActually, I don't know why the self contact exists before doing "(Person) as Contact."18:59
aelknerManage Contacts in order to see the self contact is the problem18:59
aelknereven if there is no info, i'd recommend just adding a line at the top19:00
th1aYes the self contact MUST be in the accordion.19:00
replaceafilli'd add a new accordion "Contact Information", for bound contact19:00
replaceafilland leave the "Contacts" accordion as it is19:00
aelknereven if empty, the user's name could appear with pencil19:00
th1aIn many, many, many cases there is no self contact information.19:00
aelknerno email, for instance19:01
th1aEssentially every student under the age of 12.19:01
aelknerstill, a single line with student name and pencil at the top of the accordion wouldn't be hostile imo19:01
th1aI don't see it as necessary.19:01
th1aI just don't know why we are automatically creating this blank object for every person.19:02
th1aWe should just create it as needed.19:02
th1aAnd treat it as a regular contact under contacts.19:02
aelknerlet's table that question for tomorrow when yvl can weigh in19:02
aelknerhe may have had his reasons for doing it that way19:02
th1aI think he's responsible for autovivifying.19:02
th1aYes, this isn't a super-quick fix.19:03
replaceafillth1a, he is19:03
aelknerthat's what i'm saying, so he needs to weigh in19:03
th1aOK. In that case...19:03
* th1a drops the bag of gravel.19:03
replaceafillhttp://bazaar.launchpad.net/~schooltool-owners/schooltool/flourish/revision/253019:04
replaceafill:)19:04
replaceafilllong time ago19:04
aelknerhow did you find that?19:04
aelknerwhat bzr command did you use?19:04
replaceafillbzr annotate19:04
replaceafilloops19:04
replaceafillhttp://bazaar.launchpad.net/~schooltool-owners/schooltool/flourish/revision/253119:05
replaceafill:D19:05
th1aI'll be in the meeting for part of the time tomorrow, but then I have to Skype with Helen from the Shuttleworth Foundation.19:05
*** menesis has quit IRC21:32
*** paulproteus has quit IRC21:48
*** paulproteus has joined #schooltool21:52
*** menesis has joined #schooltool23:27

Generated by irclog2html.py 2.15.1 by Marius Gedminas - find it at mg.pov.lt!