2008-04-08T00:18:59 *** dbs has quit IRC 2008-04-08T00:26:04 *** greg-g has quit IRC 2008-04-08T02:15:58 *** Mark__T has joined #openils-evergreen 2008-04-08T03:30:26 *** denials has joined #OpenILS-Evergreen 2008-04-08T03:36:31 *** denials_ has quit IRC 2008-04-08T04:53:42 *** ibbo has joined #OpenILS-Evergreen 2008-04-08T07:54:12 *** phase_bb has quit IRC 2008-04-08T09:04:00 *** gmcharlt has joined #OpenILS-Evergreen 2008-04-08T09:29:21 *** dbs has joined #OpenILS-Evergreen 2008-04-08T09:29:54 *** ibbo has left #OpenILS-Evergreen 2008-04-08T09:30:56 *** ibbo has joined #OpenILS-Evergreen 2008-04-08T09:32:52 not sure if this one has made the rounds: http://archive.dojotoolkit.org/nightly/dojotoolkit/dijit/themes/themeTester.html 2008-04-08T09:35:23 ARGH. For the 4th time, KDE/Kubuntu has crashed and wiped stuff from my home directory. 2008-04-08T09:35:41 I'm getting really, really sick of writing .gvimrc files. 2008-04-08T09:37:03 berick: cool 2008-04-08T09:40:45 dbs: my emacs works just the same when .gvimrc gets wiped out. ;) 2008-04-08T09:40:57 dbs: wth? kde's deleting files? 2008-04-08T09:41:03 mjgiarlo: I hate you a little bit now 2008-04-08T09:41:05 *** rsinger has joined #OpenILS-Evergreen 2008-04-08T09:42:02 berick: yeah, I don't know exactly what's to blame. ever since swapping in a new hard drive and installing kubuntu gutsy in january, this has happened 2008-04-08T09:42:18 worst time was when it happened 10 minutes before the couchdb presentation 2008-04-08T09:42:49 oh lord 2008-04-08T09:43:23 it's almost like ext3 is rolling back to some pristine state. it's not a good feeling 2008-04-08T09:43:48 where pristine equals total destruction 2008-04-08T09:43:54 btw - welcome, mjgiarlo! and mjgiarlo-- :) 2008-04-08T09:44:01 hi, mjgiarlo 2008-04-08T09:44:12 * berick wonders why the decrements 2008-04-08T09:44:50 berick: no, it's weird - it wipes my ~/.* and ~/bin/*, but leaves stuff like ~/Documents - basically, anything I copied from the old hard drive to the new 2008-04-08T09:45:06 berick: for mocking me about emacs vs. vim 2008-04-08T09:45:22 and hey - it's probably the only time mjgiarlo will be in negative karma territory 2008-04-08T09:45:25 @karma 2008-04-08T09:45:25 dbs: Highest karma: "dbs" (25), "miker_" (8), and "djfiander" (6). Lowest karma: "rewriting_config_files_on_exit" (-1), "bah... dbs" (-1), and "drwxr-xr-x and -rw-r--r" (-1). You (dbs) are ranked 1 out of 63. 2008-04-08T09:45:39 @karma mjgiarlo 2008-04-08T09:45:39 dbs: mjgiarlo has neutral karma. 2008-04-08T09:46:57 dbs: strange.. that almost sounds like a kde-level snapshot or something 2008-04-08T09:48:29 howdy, folks. :) 2008-04-08T09:49:16 * mjgiarlo insults everyone's children to ensure he stays in the red. 2008-04-08T09:49:48 heh 2008-04-08T09:50:02 * berick is immune, having only animals thus far 2008-04-08T09:50:43 berick: .. but enough about your kids! 2008-04-08T09:50:52 * mjgiarlo eases back into lurk mode 2008-04-08T09:50:55 -= THIS MESSAGE NOT LOGGED =- 2008-04-08T10:03:10 *** rsinger_ has joined #OpenILS-Evergreen 2008-04-08T10:06:49 *** greg-g has joined #openils-evergreen 2008-04-08T10:09:56 *** rsinger_ has quit IRC 2008-04-08T10:13:42 phasefx*: I'm going to go out on a limb here and suspect that the error for copy_buckets_sel_add in copy_buckets.js show be "Addition likely failed", not "Deletion likely failed." 2008-04-08T10:13:55 (around line 308) 2008-04-08T10:17:36 *** Mark__T has left #openils-evergreen 2008-04-08T10:22:12 *** rsinger has quit IRC 2008-04-08T10:24:47 so, i'm thinking about having ILS install the JS files into /javascript/, just like the opensrf JS files (with requisite openils/opensrf dir prefixes). then we can just copy/link into place wherever needed 2008-04-08T10:25:23 instead of installing them explicitly into /opac/web/common/... 2008-04-08T10:26:09 berick: why's that? 2008-04-08T10:26:52 the staff client needs some of the JS, as does the opac, and potentially other things.. seems sane to put the JS libs in a common lib dir and not the /opac/.. sub dir 2008-04-08T10:26:58 I mean, I was thinking the oposite, actually. install everything under web/js/ so that the html/xml points to the actual files 2008-04-08T10:27:08 oh, of cours 2008-04-08T10:27:47 I was saying that everything should point to /js/... instead of having a tangle of symlinks 2008-04-08T10:28:25 put the JS in one place and have the stuff that needs it point to it, instead of copying/linking into a bunch of places 2008-04-08T10:28:32 yeah, i'd prefer not to have a tangle of symlinks.. so, same thing, just plop it into the web root up front 2008-04-08T10:28:41 right 2008-04-08T10:28:42 ok 2008-04-08T10:28:50 we agree right past each other 2008-04-08T10:29:48 eeevil: was the intention to put dojo in the ILS repo? 2008-04-08T10:30:00 I don't think so 2008-04-08T10:30:06 k 2008-04-08T10:30:33 -= THIS MESSAGE NOT LOGGED =- 2008-04-08T10:30:43 it makes sense to me to grab the version we develop against and put the official release tarball inside /our/ tarball 2008-04-08T10:30:52 so, i'm going to create Open-ILS/src/javascript/openils/ as the destination for all the ILS javascript files? 2008-04-08T10:31:09 or, rather, a slimmed down version of the official release tarball 2008-04-08T10:31:32 avec the locales that we're supporting 2008-04-08T10:31:32 that uses their shrinker and "layers" and stuff 2008-04-08T10:31:42 dbs: eh? 2008-04-08T10:31:43 aye 2008-04-08T10:32:14 I mean, we don't need to install, or require some one to install, a 16M tarball of js ;) 2008-04-08T10:32:23 but, keeping it in our repo is asking for trouble 2008-04-08T10:32:35 see also: django multi-db ;) 2008-04-08T10:32:37 eeevil: dojo doesn't come with fr-CA locale support out of the box, so assuming we use it for number / date formatting, we'll need to generate that locale (plus any other nonstandard ones) 2008-04-08T10:32:54 to match the locales that people have contrib'd translations for 2008-04-08T10:33:25 dbs: righto ... well, I wonder if fr-FR is close enough for our purposes? we'll be generating string bundles for dojo anyway 2008-04-08T10:33:39 for 1.4, we're probably looking at en-US, en-CA, fr-CA, armenian, and chinese - less than the out-of-the box number 2008-04-08T10:33:48 no, fr-FR is not good enough. sorry. 2008-04-08T10:33:57 for number formating? 2008-04-08T10:34:08 fr-CA is that different? ... meh 2008-04-08T10:34:26 lemme check - I seem to recall differences, yeah. 2008-04-08T10:34:30 well, in any case, it shouldn't be a big deal ... number/date formatting should be simple enough 2008-04-08T10:34:34 it's really not a big deal 2008-04-08T10:34:46 yeah - trivial size difference 2008-04-08T10:35:11 and strings will be under our own dojo-ized area 2008-04-08T10:36:09 eeevil: cultural sensitivity training - the right answer is never "xx-YY is close enough for our purposes" :) 2008-04-08T10:36:16 js/lang-pack/strings/en-US/whatever.js 2008-04-08T10:36:35 dbs: oh, I was actually going to propose that we just copy fr-FR.js to fr-CA.js ;) 2008-04-08T10:37:03 I wouldn't dare suggest that canucks lower themselves to actually having fr-FR in their URLs ;) 2008-04-08T10:37:49 eeevil: have you created much JS org-mangling code in the dojo-admin branch? 2008-04-08T10:37:54 my point was more that for formatting purposes, fr-* may be the same and what's there could be leveraged ... but I have no idea 2008-04-08T10:38:06 i'm thinking of dojo-izing the org_utils stuff and putting into the right namespace, etc. 2008-04-08T10:38:07 berick: to what purpose? 2008-04-08T10:38:52 basically, the kind of stuff in org_utils.. mostly dealing with the global org tree 2008-04-08T10:39:01 I mean, aou() can generate a tree-ish dojo data store from the list-o-orgs 2008-04-08T10:39:03 finding orgs, getting depths, finding descendants, etc 2008-04-08T10:39:26 I have not, but I can/will 2008-04-08T10:40:05 it may be more expedient for me to do it at this point... 2008-04-08T10:40:17 ok, that would be great 2008-04-08T10:41:14 something in trunk (i guess in open-ils/src/javascript/openils/...) would be ideal.. 2008-04-08T10:41:21 i'll merge to the acq branch 2008-04-08T10:41:53 eeevil: one of the subtle differences is in negative numeric currency formatting 2008-04-08T10:44:32 brb 2008-04-08T10:44:33 and no, I wasn't worried about fr-FR vs. fr-CA in URLs, it really is a concern about respecting formatting differences 2008-04-08T10:45:16 CLDR is there as an authoritative source for this kind of info, and it's really cheap to generate an additional set of locale formatting logic for dojo from CLDR, so why not? 2008-04-08T10:45:21 dbs: I'm just picking at you ... sorry 2008-04-08T10:47:30 eeevil: I should probably write up that part of the whole release process too 2008-04-08T11:00:17 berick: where's the constants file with the method name? 2008-04-08T11:00:23 for the js I mean 2008-04-08T11:01:16 config.js 2008-04-08T11:02:01 bearing in mind, of course, the RemoteRequest will be going away.. 2008-04-08T11:02:11 I'm not going to pull all of that in, but I need some of it 2008-04-08T11:02:23 of course :) ... changing to OpenSRF :) 2008-04-08T11:02:34 yay 2008-04-08T11:03:12 berick: is SHOW_MR_DEFAULT the only thing that's needed to make metarecords "work" ? 2008-04-08T11:03:31 eeevil: should be 2008-04-08T11:03:37 hasn't been used in a while, mind you 2008-04-08T11:03:39 like, if you have a metarecord result list, and click on a sidebar link, it does a metarecord search? 2008-04-08T11:03:45 right 2008-04-08T11:04:17 (IMO, metarecord-ness should be sticky in any case, but that's neither here nor there, I guess) 2008-04-08T11:05:46 berick: I'm only pulling over the methods, eh? not any of the params or homegrown event stuff (which could be retooled as dojo pub-sub) 2008-04-08T11:06:42 eeevil: yeah, that sounds good 2008-04-08T11:10:58 *** jmellis has joined #openils-evergreen 2008-04-08T11:40:18 dijit++ 2008-04-08T11:50:45 I guess accessibility is provided by either the old config scripts, or by sql 2008-04-08T11:51:06 eh? 2008-04-08T11:52:09 dojo doesn't degrade too well for text browsers, so that's out; maybe JAWS can deal with it (?) 2008-04-08T11:53:35 *** rsinger has joined #OpenILS-Evergreen 2008-04-08T11:53:37 i imagine there will always be a text-only opac 2008-04-08T11:54:30 berick: right, but for ILS administrators there has to be an interface that offers the same capabilities (isn't that the law in the States?) 2008-04-08T11:55:26 the old version of the dojo book had a section on accessibility (http://dojotoolkit.org/book/dojo-book-0-4/part-8-internationalization-and-accessiblity/accessibility-0) 2008-04-08T11:55:33 but nothing in the 1.0 version. curious. 2008-04-08T11:56:42 dbs: the law (and IANAL) as I understand it is that the software has to be accessible to end users of the service, if it is a gov't offered service (and that's a federal gov't law, I'm sure it varies by state) ... I don't think configuration interfaces fall into that category ... but again, IANAL 2008-04-08T11:59:12 I'm not trying to derail the dojo train, just trying to keep potential strategies in mind for addressing those reqs in the future 2008-04-08T11:59:27 sure 2008-04-08T12:02:22 Section 508 might make it impossible for ESI to sell Evergreen to a federal government agency without such a strategy, for example 2008-04-08T12:02:50 * berick prepares the chloroform 2008-04-08T12:02:52 "end user" typically includes "person who needs to admin the software" 2008-04-08T12:02:53 (sic) 2008-04-08T12:03:01 * dbs breathes deeply 2008-04-08T12:03:34 (for what it's worth, the ultimate fallback strategy for DB2 was that the command line could be used to issue administration commands) 2008-04-08T12:09:38 dbs: if it's good enough for IBM, it's good enough for us ;) 2008-04-08T12:11:53 eeevil: Heh. Yeah, but I pity the person trying to do acq/ser via SQL. 2008-04-08T12:11:57 is whistling into a modem considered 508 compliant? :) 2008-04-08T12:11:59 I didn't mean that to be as snarky as it may have sounded... 2008-04-08T12:12:50 it didn't sound snarky to me 2008-04-08T12:12:56 good 2008-04-08T12:14:07 Might be a good project to assign to a co-op student, actually - create an alternative, basic HTML interface based on the dojo version. 2008-04-08T12:14:42 Preferably through some crazy "parse dojo code and auto-generate a basic HTML interface" approach. 2008-04-08T12:16:35 UI opinions.. 1. where should the 'delete' option go. 2. should clicking on a row take you to a new funding-source detail page (printable, etc.) or open a sub-row with the detials? http://acq.open-ils.org:5000/oils/acq/funding_source/list 2008-04-08T12:18:29 berick: an accordion pane might be a good choice for the left nav bar ... on for each of picklist, funds, po 2008-04-08T12:20:38 eeevil: so, click on a funding source, accordian pane opens up to show the details? 2008-04-08T12:20:54 no, sorry ... in the nav bar on the left 2008-04-08T12:23:58 berick: I'd like to see the details in a sub row, and then that might be the place to offer editing / deleting / "print view" options 2008-04-08T12:25:09 dbs: sounds do-able. 2008-04-08T12:25:14 I'd like to be able to select a row, double click to edit, see details in a new grid below (maybe?), and "delete selected" 2008-04-08T12:25:27 gives you the ability to flip back and forth quickly between objects and localizes the options for an object without having to force "right-click and pray" behaviour 2008-04-08T12:25:40 eeevil: ooh, i like those too 2008-04-08T12:26:39 edi name inline, edit owner inline as a dropdown (see the group perm editor "depth" as an example) ... maybe chang curency type too 2008-04-08T12:26:47 s/edi/edit/ 2008-04-08T12:27:12 cool, multiselect is built into the grids... 2008-04-08T12:27:18 yeah 2008-04-08T12:28:03 berick: grid tip #82: remove the width setting on fields that don't need to stretch (like ID columns and currenct type columns) 2008-04-08T12:28:06 I suspect the major use case is going to be read operations, so optimizing against accidental edits or deletes would be good 2008-04-08T12:28:31 (another reason for building the structure on a per grid basis instead of magically ;) ) 2008-04-08T12:28:33 (for funding sources and funds, at least) 2008-04-08T12:29:10 dbs: well, that's why you don't save automatically, you provide a "save changes" button, and an onUnload handler to offer saving :) 2008-04-08T12:29:57 eeevil: fair enough 2008-04-08T12:31:22 usability testing will probably render most of our opinions at this point moot anyways 2008-04-08T12:31:33 *** rsinger has quit IRC 2008-04-08T12:59:01 berick: I like your popup dialog thing for new funding source ... I'll have to steal that 2008-04-08T12:59:51 eeevil: yeah, that was the source of my dijit++ .. easy to set up 2008-04-08T13:39:03 *** ibbo has quit IRC 2008-04-08T13:50:14 *** Karen_ has joined #OpenILS-Evergreen 2008-04-08T13:53:03 Nice. the commit list is labelling my commits SPAM now, eh? 2008-04-08T13:55:34 dbs: we didn't know how to tell you to your face... 2008-04-08T13:57:13 If I was replacing "Submit" with "&you.can.have.a.huge.rocket.in.your.pocket;" then I would understand 2008-04-08T13:57:39 'Submit' is dirty in the US 2008-04-08T14:01:14 whoa, i think i might see a glimmer of sun outside 2008-04-08T14:17:16 dbs: want us to go without you? 2008-04-08T14:22:47 phasefx: I'm a lost cause 2008-04-08T15:08:58 dbs: sorry man :) 2008-04-08T15:09:09 but smile, you're being televised :) 2008-04-08T15:12:50 *** phase_bb has joined #openils-evergreen 2008-04-08T15:14:22 *** rsinger has joined #OpenILS-Evergreen 2008-04-08T15:33:56 *** rsinger_ has joined #OpenILS-Evergreen 2008-04-08T15:44:56 woohoo, got dblclick row expansion working 2008-04-08T15:48:15 hm, but dbl-click to see details will conflict with dbl-click to 'edit this cell' 2008-04-08T15:48:30 an expandy icon may be in order 2008-04-08T15:50:18 *** rsinger has quit IRC 2008-04-08T15:50:26 *** rsinger_ is now known as rsinger 2008-04-08T15:53:40 *** rsinger has quit IRC 2008-04-08T16:25:42 phasefx_: so could you see me mouthing profanity as I tried to figure out why vmware xp wasn't giving me a network connection? 2008-04-08T17:03:04 *** phase_bb2 has joined #openils-evergreen 2008-04-08T17:11:31 dbs pasted "miker_: the FETCH_NON_CAT_TYPES line looks suspicious in your latest commit" at http://paste.lisp.org/display/58847 2008-04-08T17:19:07 *** phase_bb has quit IRC 2008-04-08T17:21:24 *** Karen_ has left #OpenILS-Evergreen 2008-04-08T18:52:09 dbs: so it does! 2008-04-08T18:53:54 dbs: updated 2008-04-08T18:53:56 thanks 2008-04-08T18:54:01 biab 2008-04-08T19:02:33 yay commit lists 2008-04-08T20:24:14 *** gmcharlt has quit IRC 2008-04-08T20:33:51 *** djfiander has joined #OpenILS-Evergreen 2008-04-08T20:45:43 OMG. I have data in my grid 2008-04-08T20:45:53 half of it is stuff I made up, but still. 2008-04-08T20:46:48 hey djfiander and berick ... I'll be sending an email soon re dojo and new apis for store data and whatnot ... just fyi 2008-04-08T20:47:08 because you need to break it once I get it working? 2008-04-08T20:48:08 *** sarabee has quit IRC 2008-04-08T20:55:45 *** phase_bb2 has quit IRC 2008-04-08T20:56:15 djfiander: ha 2008-04-08T21:04:35 *** sarabee has joined #openils-evergreen 2008-04-08T21:06:29 * dbs feels his blood pressure rise a bit in the middle of copy_editor.js 2008-04-08T21:07:28 got myself a JS object with property names like "Owning Library : Call Number" which appear to be used as both identifiers for other logic and for display purposes. 2008-04-08T21:07:31 * dbs cries 2008-04-08T21:07:48 copy_editor.js needs a copy editor? ;) 2008-04-08T21:08:00 sorry. I shouldn't make light of the trials of others 2008-04-08T21:08:21 guess I'll have to add a display_name property for each of these objects and try to re-jig the code to use that 2008-04-08T21:08:35 dbs: or you could just get phasefx to do it 2008-04-08T21:09:00 djfiander: heh, it's okay 2008-04-08T21:10:44 I know ;) 2008-04-08T21:17:00 * berick restarts services on acq.. 2008-04-08T21:39:22 fark. 2008-04-08T21:39:42 it was working. Now I get *blink* data's there *blink* now it's not. 2008-04-08T21:39:49 berick-- 2008-04-08T21:40:32 ok, that's bent 2008-04-08T21:40:54 I put the alert() back in, and now it works. Apparently we need to add the data to the grid _slowly_ 2008-04-08T21:41:17 djfiander: that's the opposite of my experience 2008-04-08T21:41:18 berick++ # since it seems it wasn't his fault 2008-04-08T21:41:21 heh 2008-04-08T21:41:36 firefox, in particular, is very finicky with grid rendering 2008-04-08T21:41:50 berick: it seems so 2008-04-08T21:42:39 my hack is: create the grid, do stuff, load the data store, do grid.setModel(), then grid.update() 2008-04-08T21:43:34 for whatever reason, setting the model, then loading the data choppily (aka via xrequest) means it won't render 2008-04-08T21:43:52 i've been round and round with it 2008-04-08T21:44:14 berick: I just copied your Fund.js and s/Fund/Picklist/g 2008-04-08T21:44:47 ok 2008-04-08T21:44:59 should work ;) 2008-04-08T21:45:29 you guys are having strange problems ... I'm not seeing any of that 2008-04-08T21:45:35 and it does, as long I pop up an alert right before every Grid.store.newItem 2008-04-08T21:45:55 djfiander: you mean grid.model.store.newitem 2008-04-08T21:45:57 right? 2008-04-08T21:46:08 right. 2008-04-08T21:46:23 djfiander: freaky... putting in alerts always breaks things for me 2008-04-08T21:46:33 also, how about just creating the store completely, then wrapping it in a model, then wrapping that in a grid/tree/whatever 2008-04-08T21:46:41 that works every time for me 2008-04-08T21:47:07 so, anyway, instead of an email I just spew here a bit 2008-04-08T21:47:10 miker_: yeah, that's generally the way i'm heading... 2008-04-08T21:47:33 but it kills me that i can't, for example, create a new funding source and just add it to my existing grid 2008-04-08T21:48:03 i can probably just destroy/rebuild the grid, though 2008-04-08T21:48:25 berick: I think there's some caching thing going on there. I remember seeing something in the commentaries in the Dojo book 2008-04-08T21:48:38 I mean, "book of dojo" on the dojo site 2008-04-08T21:48:39 I'm trying to understand why you guys (well, Bill. I haven't looked at djfiander's code) are mangling the data in a store, especially by shoving "fleshed" stuff in ... it seems to me that that tactic is going to make inline object editing rather difficult 2008-04-08T21:49:01 berick: why can't you create a new funding source and add it to a store? 2008-04-08T21:49:16 miker_: i can, but FF won't render the new grid fow 2008-04-08T21:49:16 it works all day long in the admin interface 2008-04-08T21:49:18 s/fow/row/ 2008-04-08T21:49:38 after the grid is created and rendered? 2008-04-08T21:49:48 sure it will. you have to tell the model that it needs to scan for new data, and you need to tell the grid that the model is updated 2008-04-08T21:49:58 of course after the grid is rendered! 2008-04-08T21:50:00 damn I wish firebug was better and flagging javacript syntax errors 2008-04-08T21:50:09 dude, did you look at any of the admin code? 2008-04-08T21:50:16 miker_: nowyou understand my frustration 2008-04-08T21:50:28 djfiander: jslint can help 2008-04-08T21:50:28 berick: I don't, though, because it works 2008-04-08T21:50:40 berick: every. single. time. 2008-04-08T21:51:07 miker_: yeah. i saw model.refresh() and grid.refresh()'s. from what i've seen, models don't have a refresh function 2008-04-08T21:51:19 um... wha? 2008-04-08T21:51:22 sure they do 2008-04-08T21:51:37 if you're using the dojoData model thingy 2008-04-08T21:51:45 i'm not 2008-04-08T21:51:50 ???? 2008-04-08T21:51:52 djfiander: problem with jslint is that it's so picky, it dies if you have a trailing comma in, say, a list of items - so you have to be very iterative 2008-04-08T21:51:53 ok 2008-04-08T21:51:55 you have a store 2008-04-08T21:52:03 and you wrap it in ... what? 2008-04-08T21:52:25 i build a store, a model, and a grid. 2008-04-08T21:52:47 berick: and what dojo class do you use for the model 2008-04-08T21:53:23 dojox.grid.data.DojoData 2008-04-08T21:53:34 [2008-04-08 21:56] if you're using the dojoData model thingy 2008-04-08T21:53:47 DojoData 2008-04-08T21:54:14 miker_: i thought you were talking about fieldmapper.dojoData 2008-04-08T21:54:18 no 2008-04-08T21:56:48 well, all I can suggest is to do it in markup instead of all in code 2008-04-08T21:56:50 * dbs throws http://dojotoolkit.org/forum/dojox-dojox/dojox-grid-support/update-grid-again in there for fun 2008-04-08T21:57:09 because that's the only difference I can see, and it consistently works for me 2008-04-08T22:00:01 dbs: swapping out the store behind the grid is a bit different than adding an item ... but it's a data point 2008-04-08T22:01:16 oh, and that fellow's problem was that he was giving FileItemReadStore a JSON string instead of a JS object ;) 2008-04-08T22:01:20 so ... 2008-04-08T22:02:34 miker_: I thought the last response in the thread was probably the most useful, but I know from bananas 2008-04-08T22:02:34 dbs: that's what I meant 2008-04-08T22:05:21 ok folks ... I got nuthin other than "try using markup, it hasn't let me down" 2008-04-08T22:06:25 and I guess until you figure out what the basic "grids hate me" problem is, it doesn't really matter how you feed data in ... so I'll come back to that later 2008-04-08T22:07:01 well, that's a good thing to tackle.. 2008-04-08T22:07:17 which 2008-04-08T22:07:26 the 'what you feed it' issue. 2008-04-08T22:07:46 i'm taking fleshed objects, pulling out the bits i want to shove in the store, and shoving them in 2008-04-08T22:07:58 right 2008-04-08T22:08:06 arg ... brb 2008-04-08T22:08:12 carp 2008-04-08T22:08:22 * djfiander adds "flesh_attrs: 1" to a call 2008-04-08T22:09:45 ok 2008-04-08T22:09:46 so 2008-04-08T22:10:46 my concern with that method is that it makes everything /after/ display harder, including using the pile-o-stuff for anything but the specific widget you have in front of you right now 2008-04-08T22:11:36 so, in the funding source list you want to display, say, the owner by name 2008-04-08T22:11:43 so you flesh the owner 2008-04-08T22:13:16 but now you've got a complex object that you can't just toss into a store easily, and if you decided down the road that you want to see, say, the shortname instead (vice versa, I know) then you have to write another method to tear your fleshed object apart 2008-04-08T22:13:18 but 2008-04-08T22:14:02 if you instead use 2 stores of the base objects, funding source and org unit, then you can layer widgets on top of both as needed 2008-04-08T22:14:09 *** bradl_ has joined #openils-evergreen 2008-04-08T22:14:11 *** phasefx__ has joined #openils-evergreen 2008-04-08T22:15:02 so, for the grid, you'd add a get property to the owner cell definition which would fetch the desired field from the appropriate item in the org unit store 2008-04-08T22:15:36 and you could toss the org unit store directly at a combobox to get a dropdown editor for that field 2008-04-08T22:17:15 IOW, at the expense of telling the grid how to grab the displayable value (by adding a get function for the cell definition) you have a more flexible setup that's actually easier to put together and takes simpler code to implement 2008-04-08T22:19:00 so ... there it is ... "small pieces, loosly joined" or "the simplest thing that could possibly work, and no simpler" ... or (for the pythonistas in the room) DRY ;) 2008-04-08T22:20:05 or, I could be crazy and the overhead of grabbing 2 datasets is so onerous as to make the interface completely unusable ... but I don't think so ;) 2008-04-08T22:20:11 @monologue 2008-04-08T22:20:11 miker_: Your current monologue is at least 14 lines long. 2008-04-08T22:20:14 he 2008-04-08T22:20:36 miker_: sorting is done in the store, yeah? 2008-04-08T22:20:41 dbs: model 2008-04-08T22:20:44 for a grid 2008-04-08T22:20:56 dragging the conversation back to me... 2008-04-08T22:21:05 djfiander: yesir 2008-04-08T22:21:29 I've got a jub, and I need some attributes, in python I used the find_lineitem_attr class method 2008-04-08T22:21:47 unfortunately, that method doesn't seem to work in js. 2008-04-08T22:22:03 and not because it's written in python :P 2008-04-08T22:22:29 miker_: i like the approach. i'm just looking at some of the existing code to see if anything doesn't seem like it would be gracefully handled (for the sake of discussion) 2008-04-08T22:22:30 djfiander: I'm sure that's a magical method in the vein of the cstore editor ... in which case there is a real opensrf call underneith 2008-04-08T22:23:03 miker: that's the "flesh_attrs" that I added. when I fetch the jub, it comes back with the attrs. 2008-04-08T22:23:34 when I alert() the jub, I can see the attrs., but the fm magic isn't working it looks like 2008-04-08T22:23:57 djfiander pasted "Borked find_attr" at http://paste.lisp.org/display/58855 2008-04-08T22:24:10 fwiw, has_many relationships aren't really a problem ... it's the has_a (filling an idetifier field with the underlying object) that is "mean" 2008-04-08T22:24:33 djfiander: attr_name() 2008-04-08T22:25:24 *** bradl has quit IRC 2008-04-08T22:25:26 *** phasefx_ has quit IRC 2008-04-08T22:26:00 berick: I'm not following "looking at some of the existing code to see if anything doesn't seem like it would be gracefully handled" 2008-04-08T22:26:51 berick: "attr.attr_type is not a function" 2008-04-08T22:27:50 djfiander: oh.. i don't thing JS for loops work like that (sounds strange, i know). for(var i in li.attributes()){ var attr = li.attributes()[i]; ... } 2008-04-08T22:28:10 *** phasefx__ is now known as phasefx_ 2008-04-08T22:28:28 ah 2008-04-08T22:28:31 djfiander: attr in that loop is the index 2008-04-08T22:28:31 bugger 2008-04-08T22:30:12 * djfiander puts the alert back in so he can see his grid 2008-04-08T22:30:40 I have dojo loading the OpenSRF js lib 2008-04-08T22:30:43 and that's it. I have real data in my magic blinking gird 2008-04-08T22:30:57 s/ir/ri 2008-04-08T22:31:32 let's see how we can make a language amazingly dynamic, except in one irritating little way 2008-04-08T22:33:06 djfiander: haha.. exactly 2008-04-08T22:33:54 miker_: so, i'm fleshing a user on a picklist. i go ahead and flesh it from the ML, then un-flesh it on the client side? just curious how you see all the pieces fit together 2008-04-08T22:34:26 phasefx_: am I reading the code in copy_editor.js starting around line 675 right - those keys (like "Owning Library : Call Number") are used for retrieval & for display? 2008-04-08T22:34:29 berick: what do you mean you're fleshing a user on a picklist 2008-04-08T22:35:24 miker_: retrieving the picklist from the ML, an option is to flesh the owner() field (as an example) 2008-04-08T22:35:46 and, no, don't flesh any has_a rels in the ML. that's what I'm saying. get a list of "bare" objects. 2008-04-08T22:36:09 berick: I think he means, "fetch the picklist raw", then fetch the list owner id map and do the mapping in the client for display 2008-04-08T22:36:24 that's a conern, though.. making more xreq calls 2008-04-08T22:36:35 is it really a concern 2008-04-08T22:36:42 ok, let's take your example 2008-04-08T22:36:43 according to phasefx_, it is 2008-04-08T22:37:04 you're not going to be chaning the owner via the grid, more than likely, right? 2008-04-08T22:37:14 probably not 2008-04-08T22:37:29 and it would be silly to "get a list of users" ... 2008-04-08T22:37:42 and provider lists and location code lists will be shorter... 2008-04-08T22:37:57 so, in that case, packaging the user with the picklist is just a display thing 2008-04-08T22:38:02 anyway. must go remind spousal unit what I look like. 2008-04-08T22:38:08 djfiander: right, for those, get the relevent ones 2008-04-08T22:38:15 djfiander: latorz 2008-04-08T22:38:32 problem is with marc attribs: price and title are buried and need to be pulled up 2008-04-08T22:38:39 *** djfiander has quit IRC 2008-04-08T22:38:48 miker_: don't get me wrong, i would love to not need ML fleshing 2008-04-08T22:39:07 it complicates things unnecessarily in a lot of cases 2008-04-08T22:39:19 dbs: yeah, boo on me. organic code :-/ 2008-04-08T22:40:35 other that phasefx's claim that XHR is Considered Harmful, do we know that to be true in these cases, and especially with the translator 2008-04-08T22:40:44 phasefx_: well, we can refactor it - maybe replace the keys with something more abstract, then add a display attribute that pulls from the message catalog? 2008-04-08T22:40:57 dbs: yeah, that's sane 2008-04-08T22:41:02 seriously. have we tried "fetche the picklists. ok, they clicked on a picklist, fetch the attrs" 2008-04-08T22:41:09 miker_: or as another example, fleshing lineitem attributes and details... that's 1 client call that could be a lot of calls without fleshing. 2008-04-08T22:41:28 miker_: well, that is another way to approach it 2008-04-08T22:41:30 why would it be "a lot" ... it would be 3 2008-04-08T22:41:33 btw, I don't know what you guys are talking about with XHR :) 2008-04-08T22:41:42 miker_: if you have 200 lineitems on a picklist? 2008-04-08T22:42:06 sure 2008-04-08T22:42:10 phasefx_: are you not trying to trim down the number of staff client requests? 2008-04-08T22:42:21 those are all xhr 2008-04-08T22:42:23 berick: ah, yes indeed 2008-04-08T22:42:32 but hold on, because you're stretching my argument beyond what I said before 2008-04-08T22:42:39 but sadly, some of those are redundant calls 2008-04-08T22:42:45 miker_: no, i'm just trying to clarify 2008-04-08T22:42:45 that don't get cached, because they're POST 2008-04-08T22:43:21 but in a poor network environment, every call gets hit with latency issues and SSL overhead 2008-04-08T22:43:23 my point is that it causes a problem to flesh, say, the currency_type on a funding source -- that's a has_a rel 2008-04-08T22:43:34 phasefx_: next problem with copy_editor.js is the eval'ed render / input attributes are kind of evil... 2008-04-08T22:43:59 miker_: ok, yeah, that's a good point.. fleshing lineitem attributes doesn't fall into that category 2008-04-08T22:44:09 however(!) packaging has_many rels for transport, and then splitting them on receipt, is entirely sane 2008-04-08T22:44:34 re: latency - are you looking to consolidate calls with beefier ML that does more server-side logic? 2008-04-08T22:44:36 dbs: hrmm, I moved from eval to functions with list columns.. could do the same here 2008-04-08T22:44:44 I guess my point is, don't fill a store with data that you can't turn back into the original object 2008-04-08T22:44:45 there! 2008-04-08T22:44:56 I finally said the right thing 2008-04-08T22:45:54 s/POST/POST and\/or SSL/ 2008-04-08T22:46:01 so, you put the name from the owner (which is an aou, not an au, so it's a list you can fetch, jess, sayin') into the store, the store is usless for editing the owner 2008-04-08T22:46:37 but if you leave the id of the owner, and just tell the grid how to render the owner name, then the store is useful as an editing tool 2008-04-08T22:46:54 does that make sense 2008-04-08T22:47:00 oh yeah, definitely 2008-04-08T22:48:04 and, as an adjunct to that, don't assume that X or Y will never be editable 2008-04-08T22:48:11 dbs: we're going to have add yet more fields to those definitions though.. it appears I'm not only eval'ing code, but parsing it for certain keywords. phasefx-- 2008-04-08T22:49:23 well, parsing it for something :-/ 2008-04-08T22:49:46 geez 2008-04-08T22:50:11 I'm glad this file has comments at least :D 2008-04-08T22:51:41 phasefx_: yeah, you can see why I backed away from this, eh? 2008-04-08T22:55:06 dbs: if we could use expressions for hash keys in javascript we could just i18n-ize and punt on refactoring :-/ 2008-04-08T22:55:26 phasefx_: believe me, I thought about that :) 2008-04-08T22:55:26 dbs: yeah, leave this one to me and I'll pound on it this weekend 2008-04-08T22:55:38 phasefx_++ 2008-04-08T22:56:10 (and I bear you no ill will - you did what needed to be done to get the thing working in the first place!) 2008-04-08T22:56:21 I live I learn 2008-04-08T22:56:50 if I could do it all over I'd have a buddy coder :) 2008-04-08T22:59:04 heh. I can be your dumbass buddy 2008-04-08T22:59:21 Murph wants in too 2008-04-08T23:01:37 sleep. night folks 2008-04-08T23:09:33 gnite 2008-04-08T23:11:13 well, http://open-ils.org/dokuwiki/doku.php?id=evergreen-admin:customizations:i18n:staff_client_progress is looking better than it used to a few days ago 2008-04-08T23:11:27 I think I'm going to grab a drink, some old buffy comics, and call it a night 2008-04-08T23:16:05 *** dbs has quit IRC