IRC log of #schooltool for Tuesday, 2011-07-05

*** alga has quit IRC00:04
*** ignas has quit IRC03:59
*** aks has joined #schooltool06:11
*** aks has joined #schooltool06:11
*** alga has joined #schooltool11:21
*** alga has quit IRC11:26
*** ignas has joined #schooltool13:16
*** ignas_ has joined #schooltool13:27
*** aks has quit IRC14:24
*** replaceafill has joined #schooltool16:10
*** th1a has joined #schooltool16:23
th1ahi yvl, aelkner.16:30
th1areplaceafill is sick.16:30
yvlmorning guys16:30
replaceafillgood morning/afternoon16:31
yvloh :/16:31
yvlget well, replaceafill16:31
aelknermorning16:31
replaceafillty16:31
th1areplaceafill started working on /resources.16:31
replaceafillnothing to show yet, will continue tomorrow16:33
th1aNo problem.16:33
th1aMy reflections over the holiday weekend were primarily:16:34
th1a1) I'm excited about and proud of the changes we're making.16:34
th1a2) We need to increase the pace, and the thing to cut is unnecessary pop-ups (going forward).16:36
th1aNot that I don't like them.16:36
th1aSo:16:36
th1aa) make sure and warn me early and often about the kind of modals that we still can't do easily;16:36
th1ab) remind me to only use them where they really help.16:37
th1aOK?16:37
yvlagreed16:37
yvland ditto on the excitement16:37
th1aSo... aelkner, what were we stuck on last Friday that you wanted to talk to yvl about?16:38
aelknerit had to do with the field validators and the error snippets that are assosciated16:39
aelknerfor instance, PythonIdentifier is the field type for demo field ids16:40
th1aThat and the long fieldset legend conversation?16:40
aelknerright16:40
aelknerwhich one first?16:40
aelknerok, the id field16:41
aelknerso if you put more than one work in that field, you get a very techie (not user-friendly) error message16:42
aelknersee: http://69.164.203.135:36660/demographics/addText.html16:42
aelknerif you fill in required fields, but have two workds for the id16:42
aelknerit says: Raised if the Validation process fails16:42
aelknernot very clear for the user16:43
aelknernow the error snippet that comes out (i found digging around in zope eggs)16:43
yvlsince it's z3c.form, we'll just override the message16:43
yvldon't remember how to do that off hand16:44
yvlwe can look at that after the meeting16:44
aelknerthe snippets are registered in z3c/form/configure.zcml16:44
aelkneryeah, ok16:45
aelknerthe other discussion regards the legend in forms16:45
aelknerwe have a form macro which we should be using almost religously16:45
aelknerbecause it allows us to define the way the forms work merely using python and zcml16:46
yvlyes16:46
aelknerthe macro has things like title, subtitle for the dark and light grey headings at the top16:46
aelknerlabel is for an <h3> at the top of the content area16:46
aelknerfields are rendered in the first fieldset16:47
aelknerand the groups (views registered against the view) are rendered as one fieldset per group16:47
aelknerthe group title goes in the group's fieldset16:48
aelknerlegend16:48
aelknerbut groups is a special case for more complex forms16:48
aelknerand we didn't have anything defined for the lgend for the first fieldset16:48
aelknerthe one that 90% of the forms will only be using16:48
aelknerso i added a legend element that uses view/legend|nothing16:49
aelkneri didn't add a legend=None to flourish.page.Page16:49
aelknerbecause I thought yvl should look this over before we go changing the base classes16:49
yvlok16:49
aelknerbut since the pt uses |nothing16:49
aelknerit works for any view that defines legend, which i did for the demo field add/edit views16:50
aelknerso we have title, subtitle, label and legend for the standard forms16:50
aelknerand groups for more complex ones16:51
aelknersound right?16:51
* yvl does not like that for normal forms label is label, legend is legend, but for "groups" label is legend16:53
replaceafill+116:53
aelknerwe could change the group label to legend16:53
* yvl would prefer consistency here16:53
yvlyes please16:53
aelkner+1 here as well16:53
aelkneri think it is so because16:53
yvlother than that, I'm good with the change16:53
th1aOK, we'll use the weird HTML name.16:54
aelknerthe group view was considered renderable as a standalone view16:54
aelkner\so label would matter then16:54
yvlwe can change names to whatever we want at this point16:54
yvljust keep them consistent16:54
aelknerbut we din'e need to think of the groups as standalone views, so...16:54
aelknerdon't need16:55
aelkneranyway, i don't know what vew even uses groups16:55
yvlthen again, that is not an argument for having two different behaviours16:55
aelknerperson add/edit views should use groups, but they don't16:55
yvland call them subforms, yes16:56
aelknerthey have their own custom pt using fieldsets as the attibute16:56
yvlyes16:56
aelknerand creates the fieldsets manually rather than views registered on views16:56
aelknerwe don't need to change that right now, but in the future16:56
yvlsure16:56
aelknerif we want that kind of view, we should take advantage of the macro16:56
yvl+116:57
yvland base classes and decent subforms at some point16:57
yvlbut it may happen after this release though16:57
aelknerdoes anyone know of a view that uses groups?16:57
aelkneri'm just curious to see if that part of the macro is as yet unused16:59
th1aThe person add forms do.16:59
yvlI don't think so16:59
th1aIt is not an oddball case -- we'll be using more grouping for clarity.16:59
yvlthey reimplement that behaviour16:59
yvlright16:59
aelknerno, i was saying before that is done custom16:59
th1aRight..16:59
yvlI don't think that there are any views left that use groups16:59
yvlmaybe something I forgot17:00
aelknerok, i think the same is true17:00
yvlin any case, we should definitely implement API that makes using subforms (groups) easy17:00
yvlat some point17:00
aelknerso we can change the macro to use group/legend instead of group/label right now17:00
yvlth1a made a good point - not an oddball case17:00
yvldefinitely17:00
aelknerso yvl, should be put legend=None in flourish.page.Page right now?17:01
aelkneri mean, for clarity to the developers17:01
yvlwell... nah17:01
aelkneractually, we could use a base class for forms17:02
yvlI would prefer putting them into flourish.form.Form when we have those17:02
yvlright ;)17:02
aelkner:)17:02
yvlthen again, I can make one tomorrow17:02
yvldoh17:02
yvlor today, if I'm a good boy ;)17:02
aelknerand we should start after that being good about using Form as base class for forms17:02
yvlaelkner, so I'll take care of this part17:02
aelknerand PAge for all other pages17:02
yvlright17:03
aelkneryvl, cool17:03
aelknerso we can discuss the validation error after the meeting17:03
aelknerth1a, i also loaded the changes to the forms (interface changes) into my instance17:03
yvlright17:03
aelknerso after i'm done discussing things with yvl, we could go over the forms and make any adjustments17:04
th1aaelkner:  You haven't started resource attributes, right?17:04
aelknernot yet17:04
th1aOK.17:04
th1aSo you know what you're doing next.17:04
th1aI'll take a look at the forms.17:04
th1ayvl: Are we wizardy yet?17:04
aelkneri could do /resource_demographics17:04
yvlth1a, yes, merged today17:05
th1aaelkner:  Yes, that's what I'm saying.17:05
yvlit's somewhat quirky17:05
yvldoes not reload the parent page after new timetable is created17:05
th1areplaceafill:  Can you update the demo instance?17:05
yvland glitches every time you press a button17:05
replaceafillth1a k17:06
yvl(you'll need to enter schooltool/2010/timetables link manually)17:06
th1aOK.17:06
yvlthe glitches are because the dialog is "suspended" in a dumbest way possible17:06
yvlby erasing it's contents17:06
yvlwe'll do something better later, but it's a central place, so - one change17:06
yvlwhat else...17:06
yvlthere are more plumbing problems, like session expiring / user log-out while in that page17:07
yvltracebacks also are not handled properly - they kind of disappear17:07
yvlbut that's normal ui plumbing we'll need to do17:07
*** ignas has quit IRC17:08
replaceafillyvl is the new trunk designed to work with flourish.lyceum.journal?17:08
*** ignas_ has quit IRC17:08
yvlI put delete images in the container view, they're probably not ok there17:08
* th1a is waiting to see it...17:08
replaceafillim getting an error17:08
yvlreplaceafill,17:08
yvlno17:08
replaceafillZopeXMLConfigurationError: File "/home/replaceafill/sandboxes/st-flourish/flourish.journal/src/schooltool/lyceum/journal/configure.zcml", line 9.217:08
replaceafill    ImportError: cannot import name ITimetableCalendarEvent17:08
* yvl forgot to port17:08
replaceafillah ok17:08
yvlsorry17:08
yvlI'll fix that after the meeting or tomorrow17:08
yvldevelopers might be interested in two things:17:09
yvlflourish/browser/templates/f_ttwizard_choice.pt17:09
replaceafillhhmm yvl same thing on the egg (sorry to interrupt)17:09
yvlonclick="ST.dialogs.submit(this, this)"17:09
replaceafillZopeXMLConfigurationError: File "/home/replaceafill/sandboxes/st-flourish/eggs/schooltool.lyceum.journal-0.8.0dev_r256-py2.6.egg/schooltool/lyceum/journal/configure.zcml", line 9.217:09
replaceafill    ImportError: cannot import name ITimetableCalendarEvent17:09
yvlreplaceafill, it won't work with journal17:10
replaceafillah!17:10
yvlsorry17:10
replaceafillsorry17:10
yvlanother thing of interest17:10
replaceafillth1a updated17:10
yvltimetable.browser.app.FlourishTimetableContainerView17:11
yvlImageInputColumn17:11
yvlprobably I duplicated replaceafill's work accidentaly17:11
replaceafills/duplicated/improved :P17:11
yvlin any case, that is in schooltool.table.table package now17:11
replaceafills/accidentally/on purpose17:11
yvl:D17:11
* yvl is not *that* evil17:11
replaceafillnice job with the image column!17:12
th1aHm... can I create a year?17:12
yvlno17:12
yvlwe did not implement that ;)17:12
th1aRight.17:13
th1aProbably that should be next.  ;-)17:13
th1areplaceafill:  Can I have a year?17:13
th1aIsn't there a way to access different skins via the URL?17:13
replaceafillth1a we do17:13
replaceafillhttp://69.164.203.135:6660/schoolyears/201117:13
th1aCool.17:14
replaceafillthe index view doesnt work of course :)17:14
yvloh... http://69.164.203.135:6660/schoolyears/2011/timetables17:14
yvljust created a timetable :)17:15
th1aSo... if I change the title and then go back it doesn't remember the new title?17:15
yvlno, at the moment17:16
yvlwhich is probably wrong17:16
th1aI'17:16
yvlthis was actually the simplest implementation17:16
th1aI'm a little anti-cancel button here.17:16
th1ayvl:  Sure.17:16
yvltrue, it does look a bit out of place17:17
yvlfrankly, I just wanted to test the cancel button there :)17:18
yvlbecause we may need that in some dialogs17:18
th1aYes.17:18
yvlwe could keep it in first step only17:18
yvlor completely remove it17:18
th1aOK.17:18
replaceafillnice, validation on the dialogs!17:18
th1aIt is a good start.17:18
yvlright17:19
aelknerth1a, merged yvl's timetable changes and loaded into my instance17:19
th1aI'll give you more feedback in an email.17:19
yvlthanks, th1a17:19
th1aI need to revisit these individual forms.17:19
th1aWhich were rushed in the original implementation.17:19
th1aAs I'm sure you've noticed.17:20
yvltime is always a precious commodity ;)17:20
yvlth1a, is there something you'd like me to work on?17:21
* yvl probably want's to do a little plumbing, or at least look at that and maybe postpone it17:22
yvlalso - timetable views themselves17:22
th1aRight this minute or tomorrow?17:22
aelkneryvl, you are done with timetable mostly?17:22
yvltomorrow17:22
yvlaelkner, no - just the modal wizard17:22
th1aI'll give you feedback for tomorrow on more timetable bits.17:22
yvlsure17:22
yvlthanks!17:22
aelknerhow about the modal plumbing we talked about last week?17:23
yvlwell, it kind of features it ;)17:23
aelknerwell, that's great17:23
yvlthe plumbing is the simplest solution that worked for me17:23
th1aWho needs to do what regarding the fieldset legends (an issue I can't quite force myself to understand)?17:23
* yvl is trying hard not to get too deep into stuff17:23
aelkneris it independent from the timetable logic?17:23
th1aWe really can't plunge into plumbing now.17:24
yvlprecisely, th1a17:24
* yvl just wanted to show that he's aware of that :)17:24
yvlaelkner, yes17:24
aelkneri'm ok with tabling the discussion, i just wanted to make a note of the task yet to be done17:24
yvlbasically, if you do the onclick="" thing for a form inside a modal dialog17:24
yvlit should be good enough17:25
aelknerby onclik="" you mean the document.ready js we've been using?17:25
yvlno17:25
aelknerth1a, i realize you are leaning away from modals, but we will still end up with more than one17:26
yvlplease look at timetable/browser/templates/f_ttwizard_*.pt17:26
aelknerso plumbing will mater at some point17:26
aelkneryvl, after the meeting?17:26
yvlsure17:26
th1aOK aelkner & replaceafill, get me your invoices.17:27
th1aThanks guys.17:27
* th1a drops the bag of gravel.17:27
yvlthanks guys17:27
yvland thanks th1a!17:27
th1aLet the after-meeting begin!17:27
aelkner:)17:28
yvl:)17:28
yvl... after these commercials ...17:28
aelknerth1a, i'll send invoice after that17:28
* yvl takes a 5 minute break17:28
aelkneryvl, puff away17:28
yvl:P17:28
aelkner:)17:28
* yvl back, aelkner 17:33
yvlso, what would you like to discuss first?17:34
aelknerum17:35
aelknerlet's pop the stack17:35
aelknerlet's get the modal discussion out of the way17:35
yvlok17:35
aelkneri haven't had time to pur over your timtable stuff17:35
yvlright, it's quite fresh17:36
aelknerbut i was just wondering about the plans for keeping modal view/link17:36
aelknergeneration simple to do17:36
* yvl has plans for that too, but tabled for now17:36
yvlfirst, let's look at timetable/browser/templates/f_ttwizard_choice.pt17:36
aelknerok, looking...17:37
yvlthe interesting parts are onclick=""17:37
aelkneryeah, i'll say they are interesting :)17:38
yvlfor ST.dialogs.submit()17:38
yvlfirst argument is the "form selector"17:38
yvlbasically an element from which I use jQuery to find the closest form17:38
yvlsince buttons are inside the form, that works17:38
aelknermakes sense17:38
yvlthen it searches the closest jQuery dialog17:39
yvlthe second parameter is optional17:39
yvlit is the selector of the buttton clicked17:39
yvlagain, that's the same button17:39
yvlif you ommit the button, it will not get into the POST request, and you won't see what's been clicked from Zope17:40
yvljust so you know - you can control "other" forms simply by passing custom selectors instead of "this"17:41
yvlwe probably won't need that, but this might be an useful side-effect17:41
yvlST.dialogs.close(this) works in the same way17:41
yvlfinds closest dialog to "this" (button) and closes it17:41
yvlI didn't try - but we can also add those on-clicks to z3c.form forms17:42
yvlbut we'll need to do that quite explicitly17:42
yvlIIRC that would be getting the buttons, the same way we do when we want to addClass to the buttons17:42
yvland setting buttons['cancel'].onclick="ST.dialogs.close(this)"17:43
aelkneri was about to go there17:43
aelknerbut you beat me to it :)17:43
aelknerif we have the general enough  case17:43
aelknerthen python is all we need17:43
aelknerand base class can handle most cases17:44
yvlyes17:44
aelknerhow soon can we have that?17:44
yvlI should probably work on that today before I leave17:44
yvlbut no promises ;)17:44
yvllatest - tomorrow morning17:44
aelknersounds great17:44
yvlbut probably today17:45
yvl:)17:45
aelkneri will defer pouring over your changes till then17:45
aelknersave me time doing it twice17:45
yvlok17:45
aelkneranyway, i only brought this stuff up because you were asking for something to do :)17:45
yvl:)))17:46
aelknerok, we can pop the stack again17:46
yvlok17:46
yvlerrors17:46
aelknerz3c/form/configure.zcml17:46
yvl  >>> NegativeAgeMessage = error.ErrorViewMessage(17:47
yvl  ...     u'A negative age is not sensible.',17:47
yvl  ...     error=TooSmall, field=IPerson['age'])17:47
yvl  >>> zope.component.provideAdapter(NegativeAgeMessage, name='message')17:47
aelknerwhat file is this from?17:47
yvlthat's an example from z3c/form/error.txt17:47
aelknerok, looking...17:47
yvlyou beat me to it this time ;)17:47
aelkneryeah, but i didn't have the sense to reach as far as error.txt!17:48
replaceafillaelkner do you need to customize the error message for a single field in the form?17:49
yvlyou don't necessarily need to customize for the field17:49
aelknerreplaceafill, yes, a PythonIdentifier field17:49
yvlsimply error=ThatErrorType would probably do17:49
aelkneryvl, where?17:49
aelknerin the interface?17:50
th1aThe error message should address the specific field.  Ideally.17:50
yvlwe can do that17:50
yvlaelkner, error.ErrorViewMessage takes these parameters:17:50
yvl('error', 'request', 'widget', 'field', 'form', 'content')17:50
aelknerth1a, true, but also general cases can be expanded for tings like float fields or something17:50
yvlwhere content is context I guess17:50
aelkneror any custom type of field we want17:51
* th1a tells himself YAGNI.17:51
aelkneryvl, where do you put the call then?17:51
yvlin something.py:17:51
aelknerth1a, solving your need and providing plumbing is the same cost17:52
aelkneri mean, the field on the form is the issue17:52
yvlMyErrorMessage = z3c.form.error.ErrorViewMessage(_('The new message'), error=TheErrorClass, field=TheField)17:52
yvlthen in zcml:17:52
aelknerbut we aren't going to have to specify (redundantly) the error types everywhere17:52
yvl<adapter ".something.MyErrorMessage" name="message" />17:52
aelkneryvl where My...=?17:53
yvleh?17:53
aelknerplease be specific so my feeble brain can follow17:53
aelkner MyErrorMessage =17:53
aelknerinterface.py?17:53
yvllook at17:53
yvlterm/browser/term.py17:53
yvlor better yet...17:54
yvlwell, term.py is ok17:54
yvlwe use WidgetsValidatorDiscriminators(...) there17:55
yvlso in the same way17:55
yvljust put:17:55
aelkneri was looking for this kind of thing...17:55
yvlWrongIDErrorMessage = error.ErrorViewMessage(...)17:55
yvland then the adapter in configure.zcml17:55
aelknersee, that's what i'm talking about! :)17:56
yvlah, found it!17:56
yvlskin/widgets.py17:56
yvlFckeditor_editform_config = ComputedWidgetAttribute(17:56
yvlbasically - the same thing17:56
aelknerum, i don't like that one so much17:57
aelkneri mean, it's confusing17:57
aelknerthe other one at least had a comprehensible argument list17:58
yvlok17:58
yvlif you want to know the actual argument list17:58
yvlyou need to look at17:58
yvlz3c/form/error.py17:58
aelknerno, i understand that part from looking myself17:59
yvldiscriminators= show the valid arguments17:59
* replaceafill goes back to bed, see you tomorrow gentlemen17:59
aelknerand also, you mentioned it above17:59
aelknerreplaceafill, feel better!17:59
replaceafillthanks aelkner17:59
*** replaceafill has quit IRC17:59
yvlright, aelkner17:59
aelkneri was just saying we need the right set of base classes to make this look more like term.py18:00
aelknerand less like the cheditor example18:00
* yvl agrees18:00
yvlprobably something like18:00
yvlErrorViewMessage(_('This is not a valid ID'),18:01
yvlerror=IDontRemeberTheClass,18:01
yvlfield=IPythonIdentifier,18:01
yvlrequest=IFlourishLayer)18:01
* yvl probably named the classes wrong18:01
yvlbut you probably get the idea18:01
aelkneri do18:02
aelknerthat and the zcml <adapter> thing, and done, right?18:02
yvlyes18:02
aelkneri'll try that out today and we can  talk about it tomorrow18:02
yvlfck widget thing also does that at the end of skin/configure.zcml18:02
aelknerso really, no base class needs to be created18:02
aelknerjust the one python call and the zcml18:03
yvljust uses the name "config", and you need to use "message" since that's what you want to change18:03
yvlyes, aelkner18:03
aelknerok, understood then18:03
yvlit's quite flexible, but somewhat not easy on the eye18:03
aelknerand ckconfig is special case anyway18:03
aelkneryes, that is true18:03
aelknereasier to find examples always makes these things easier to deal with18:04
yvltrue :)18:04
aelknerat some point i'm going to write a developers doc, and you can fill in the parts i get wrong18:04
aelknerbut my doc is definitely going to point quickly (and omni-presently) to examples18:04
yvl+118:05
aelknersoon, but ot yet though18:05
aelknernot18:05
yvljust it would be a little bit nicer if the examples were in the doc itself18:05
yvlcode tend's to move around18:05
yvlit would be sad to see it out of date :|18:05
aelknerit's a good point, but really one could look at it as being a doc that enforces a discipline18:06
aelkneron developers in addition to aiding them18:06
aelknerand the responsibility could then be high on keeping it in sync with code18:06
aelknerbut we can talk about that later18:07
yvlsure18:07
yvlallright then...18:07
aelkneri think we are done then18:07
yvlmaybe I can go home, and do the base form class later?18:07
yvli.e. tomorrow?18:07
aelknerright18:07
yvlif it's not pressing18:07
aelknerwe can discuss what you've done then18:08
aelknerat the meeting18:08
yvlcool18:08
aelknerok, i'll let you go18:08
yvlthanks18:08
yvlgood luck!18:08
aelknerhave a good one18:08
yvlsee you soon :)18:08
yvlthanks18:08
aelknercya18:08
aelknerand thanks for your insights18:08
th1aaelkner:  We might want to wait for replaceafill to tell you how to do this, but I'd like to use the jquery-ui checkbox icon instead of the "x" in your demographics table.18:11
th1aSee http://jqueryui.com/themeroller/18:11
th1aaelkner:  Switch "Limit keys" in various add/edit forms to "Limit to group(s)"18:12
aelknerth1a, invoice sent18:13
aelknerth1a, if we already use the checkbox icon somewhere18:14
th1aaelkner:  Change "Reorder fields" in the sidebar to "Reorder or Delete Fields"18:14
aelkneri probably can figure out how to do it18:14
th1aLet's just ask replaceafill tomorrow.18:15
aelknerok18:15
th1aHe uses one of them somewhere.18:15
aelknerany other changes?18:15
aelkneri can ping you when i've made them all18:15
th1aI guess we're capitalizing the sidebar links like titles.18:15
th1aSo keep that consistent.18:15
aelknercan you let me know when you go on lunch break so that i choose the same time to break?18:16
th1aOK.18:16
aelknerok, no sentence caps for sidebar18:16
th1aaelkner:  Take out the hint for "Required" on these forms.18:16
aelknerjust for labels, right?18:16
th1aHm?18:17
aelknersentence caps for form labels18:17
th1aYes.18:17
aelkneri mean, we don't even use the form label for demo field add/edit18:17
aelknerbut i was just trying to establish that18:17
aelknerok18:17
th1aI have no idea what you're talking about, but is probably fine.18:17
aelkner:)18:18
aelkneri tend to file things into general slots, so you think of certain parts of the page with the same terms as me18:18
th1aOK, I see.18:18
aelkneri mean, i hope to18:18
th1aI just thought you were responding to me but you were continuing your thought.18:18
aelkneryeah, that's ok18:18
aelknerbasically, as you saw, we are mapping out parts of the pages with view attributes18:19
aelknerit is important for us to be able to drive stuff with python18:19
th1aOh... we need a hint for "list of values"18:19
aelknerso i figure, since we already need to do that18:19
th1aCan that be higher in the Selection List form?18:20
aelkneri would have you communicate what you want us to do using the same attribute names18:20
aelknertitle (dark grey) subtitle (light grey), label (h3), legend (first fieldset legend)18:21
aelknerso if you can use those terms, you can communicate the changes speedily to us18:22
aelknerappropos, i was going to ask you to go over those things on the demo field add/edit views18:22
aelkneri chose the best title/subtitle i could think of for add/edit18:23
aelknerbut you might have a better idea in mind18:23
th1aNot really.18:23
th1aCan we move "list of values" higher in the selection list field form?18:23
aelknerand have Limit to group(s) at the bottom, right?18:25
th1aYes.18:26
th1aJust move it above required.18:26
aelkneri'm curious about our plans18:27
aelknerif you don't mind me asking about things like old skin tests and all that18:27
aelkneri don't know if changing the order of the interface will break existing tests18:28
aelkneri probably should if those tests were thorough enough :)18:28
th1aWe'll have to clean up later.18:28
aelknerok, we'll have a period of time devoted to just that, right?18:28
th1aYes.18:28
aelknerok, never mind then18:28
aelkneri'll change the order now18:29
th1aYes... now is not the slow down and clean up point.18:30
th1aThat'll be in about six weeks.18:30
th1aMake List of values: "Selection list"18:32
th1aHint: "Enter the valid values for the field below.  One value per line.  These values will be displayed as a menu in forms."18:33
th1aaelkner, Did I mention capitalize "Yes" and "No" under "Required?"18:34
th1aOh, and I guess we need a "Done" link here to go back to Manage.18:35
th1aIn /demographics.18:35
th1aThat may end up being changed, but lets put it there for now.18:36
th1aI think that's it.18:36
aelknerDone link here, where would that be?18:37
th1aIn /demographics.18:37
aelknerback to School, you mean?18:38
aelknerand that tab doesn't work yet, btw18:38
aelkneroh, Applicatiopn works18:38
aelknersorry, school works too18:38
th1aUh... yeah, do /settings18:38
aelknerthat's new18:38
aelkneryvl must have fixed those views18:38
aelknerok, so i'll go to settings18:38
th1aWhere is goes is not so much an issue as having it there.18:38
aelkneri'll put it at the end like in reorder/delete view18:39
th1aYes.18:40
aelknerth1a, everything loaded into my instance except yes/no change18:46
aelknerthat will probably be a bit trickier18:46
aelkneri bet we use standard zope widget for that18:47
th1aMeh.18:47
th1aWell, check quickly if you can.18:47
aelknerok18:47
aelknerin the meantime, check my work against what you were asking for18:47
aelknerth1a, we have no yes/no widget in our own source, so it's definitely a zope rendering18:51
aelknercould we wait until tomorrow to discuss with yvl?18:51
th1aMeh.  Can we just, like, subclass it and fix that or something?18:51
aelknerthat's the whole point of these plumbing discussions, so we arrive a point where we18:52
aelknercan do just that, subclass something and override18:52
aelknerbut i don't now of any plumbing for that right now18:52
aelknerknow of any18:53
aelknercan we table that until tomorrow?18:53
th1aSure.18:55
aelknerotherwise, any goofs by me in the forms?18:55
th1aI gave you new text for "List of values" and its hint.18:56
aelkneroops, sorry, let that slip18:56
th1aAlso, get rid of the hint for "Required" on all the add/edit forms.18:56
aelknerright18:56
aelknerth1a, changes loaded in instance19:00
* th1a is about ready for lunch.19:00
aelknercould you check one last time19:00
aelknerhopefully i won't make you repeat yourself yet again19:01
th1aOK, good.  Lunch!19:03
aelknerok19:03
th1aBasically, you can start the same process for resource attributes now.19:03
th1aMake sure they aren't called demographics anywhere in the interface!19:03
aelknerResource attribtues?19:04
aelknerResouce custom attrbtues?19:04
th1aJust attributes is fine.19:04
aelknerI mean for form title/subtitle19:04
aelknerbecause the appear prominantly at top19:04
aelknerwe have (Demographics)  (Change information for Ethnicity)19:05
aelknerfor instance19:05
aelknerSee the problem is this:19:06
aelknerconceptually the user is forced to think of two things19:06
aelkner1) the fact that there are demo fields (give me a sec here)19:06
aelkner2) the fact that these custom fields appear in the form for adding or editing a particular object19:07
aelknerso even calling the title Demographics as we have so far is not very clear19:07
aelknerthe actual filled in values for persons are the dmeographcis19:07
aelknerthe fields are the schema19:07
aelknerand i know you don't want to use that word for users!19:08
aelknerbut there has to be some way to define the difference for the user19:08
aelknerso that these links and form labels make sense19:08
aelknerform titles/subtitles i mean of course19:08
aelknerwell, and the label, too, if we want to include it (which we don't at the moment)19:09
aelknerso how about after lunch19:09
aelknerok, i'll assume th1a has already made that decision :)19:10
* th1a went to lunch.19:32
th1aI19:33
th1aam not super concerned about the use of demographics for people, although it is a little sloppy.19:33
th1aI just don't want the concept of "resource demographics" to appear at all in the interface.19:34
aelknerplease suggest what you do want when you suggest what you don't want so that I know what to do19:42
th1aResource attributes.19:42
th1aThat's what I want.19:42
aelknerfor title19:43
th1aResource attributes?19:43
aelknerright19:43
th1aYes.19:43
aelknersubtitle?19:43
aelknerNew Text Field as before, right19:43
aelknerChange information for Roofing19:43
aelknerfor a resource demo field, for instance19:44
aelknerthat's for editing, of course19:44
aelknerok,i'll assume that you are ok with that19:45
th1aWell, considering we just did exactly the same thing, I don't see what the problem is.19:45
th1aJust do the same thing.19:45
aelknerit is consistent that way19:45
aelknerthat can't be bad19:45
aelknerok, agreed19:45

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