fluid-work IRC Logs-2012-06-18
[10:30:51 CDT(-0500)] <logiclord_> yura1 : can we discuss about epub reader ?
[10:31:16 CDT(-0500)] <yura1> logiclord_: give me 10 minutes, thanks
[10:31:22 CDT(-0500)] <logiclord_> okay
[10:42:34 CDT(-0500)] <yura1> hey logiclord_
[10:49:36 CDT(-0500)] <logiclord_> Hi Yura
[10:49:56 CDT(-0500)] <yura1> hi, logiclord_, you had questions your wanted to discuss ?
[10:50:28 CDT(-0500)] <logiclord_> yura1: yes there are 2 major issue that I described in email
[10:52:03 CDT(-0500)] <yura1> logiclord_: right, so for the first one, i m not sure i understand the problem, could you elaborate ?
[10:52:04 CDT(-0500)] <logiclord_> I am converting images into data URI form for very chapter and height of unloaded image is not available (i.e. set as 0) but sometimes browsers tend to use cached images and .load handler is not triggered. I have tried to find my way by checking through the height and it works in all browser except Firefox. I need height of image so as to adjust it according to my preference of book size
[10:52:04 CDT(-0500)] <logiclord_> and divide chapters into pages. Is there any way I can detect whether images are loaded in the browser or not ?
[10:52:31 CDT(-0500)] <yura1> logiclord_: i dont think there's a way
[10:53:01 CDT(-0500)] <logiclord_> yura1: basically the issue is for data uri images browsers can't give us height/width not even with jquery until image is loaded
[10:53:15 CDT(-0500)] <logiclord_> so I placed a load event on last image
[10:53:35 CDT(-0500)] <yura1> logiclord_: why do you need the height and width ? to scale it somehow ?
[10:54:00 CDT(-0500)] <logiclord_> yura1 : yes I will be giving maxHeight and maxWidth for images as option
[10:54:22 CDT(-0500)] <logiclord_> because many images are around 800px to 1000px
[10:54:25 CDT(-0500)] <yura1> logiclord_: i think this can be done with just css ?
[10:55:14 CDT(-0500)] <logiclord_> yura1: yes it can be but I tried to scale height and width propotionally.. I am using css only in onload event handler
[10:55:25 CDT(-0500)] <logiclord_> jquery .height and .width methods
[10:55:46 CDT(-0500)] <logiclord_> but I am not able to read through them untill on load
[10:56:07 CDT(-0500)] <logiclord_> I tried a hack by checking for height = 0 and it works in all browser except firefox
[10:56:13 CDT(-0500)] <yura1> logiclord_: sorry i meant actually having a css file for your reader with set rules for images within the book
[10:56:44 CDT(-0500)] <yura1> logiclord_: also , i was trying to load the reader in the browser , do I just open index.html ?
[10:56:58 CDT(-0500)] <yura1> if so , i get an error - jQuery not defined
[10:57:04 CDT(-0500)] <logiclord_> yura1 : use a localhost
[10:57:14 CDT(-0500)] <logiclord_> I am using jquery hosted at google
[10:57:19 CDT(-0500)] <yura1> logiclord_: oh ok
[10:57:39 CDT(-0500)] <logiclord_> yura1: I am importing css stylesheets of each chapter as well in a div
[11:00:33 CDT(-0500)] <logiclord_> yura1: You can change ebook by editing line 6 in js/temp.js
[11:00:33 CDT(-0500)] <logiclord_> var zipFileName = 'epubs/carroll-alice-in-wonderland-illustrations.epub';
[11:02:33 CDT(-0500)] <logiclord_> up arrow for prev chapter, down arrow for next chapter, left-right for prev-nect page
[11:02:37 CDT(-0500)] <logiclord_> *next
[11:04:32 CDT(-0500)] <yura1> logiclord_: is there a reason you are using raw XMLHttpRequest instead of jQuery, since you already include it ?
[11:05:31 CDT(-0500)] <logiclord_> yura1: I read somewhere about jQuery.get being corrupt for zip file
[11:05:55 CDT(-0500)] <jhung> Justin_o: The package made it to Ibadan. Benedict got it this morning.
[11:06:08 CDT(-0500)] <Justin_o> jhung: excellent
[11:06:22 CDT(-0500)] <Justin_o> jhung: everything inside okay?
[11:06:25 CDT(-0500)] <logiclord_> yura : following reader was facing this problem
[11:06:26 CDT(-0500)] <logiclord_> http://badassjs.com/post/704695450/booktorious-a-client-side-epub-reader-in-javascript
[11:06:29 CDT(-0500)] <jhung> Next time we'll DHL ourselves to Nigeria. Faster than taking regular airlines.
[11:06:54 CDT(-0500)] <logiclord_> they tried to encode entire zip to base64
[11:06:58 CDT(-0500)] <jhung> justin_o: Benedict didn't say otherwise. I'll forward you his email.
[11:07:00 CDT(-0500)] <logiclord_> and decode in js
[11:07:50 CDT(-0500)] <Justin_o> jhung: thanks.. i just checked the tracking.. the other one has left lagos but i guess it will take a bit longer to fly it to kano
[11:07:53 CDT(-0500)] <yura> logiclord_: right but how recent is this? surely, there were a lot of jquery releases after that ? you should probably try and see if it works now
[11:08:26 CDT(-0500)] <logiclord_> yura: Okay I will do some research and replace if it works
[11:08:56 CDT(-0500)] <yura> logiclord_: so regarding the images
[11:09:21 CDT(-0500)] <yura> i think what you are trying to do is to set max height and width for book images regarding of the css that they might have , right ?
[11:09:32 CDT(-0500)] <logiclord_> yura: yes
[11:09:41 CDT(-0500)] <logiclord_> due to 2 main reasons
[11:09:58 CDT(-0500)] <logiclord_> 1 to avoid image extending out of page length
[11:10:18 CDT(-0500)] <logiclord_> 2 fit in the reading div
[11:10:28 CDT(-0500)] <yura> logiclord_: so i think you would want to try creating your own css file (for your epub reader) , like a master one. It will have those rules for internal images defined, do you think it would work >
[11:10:30 CDT(-0500)] <yura> ?
[11:11:37 CDT(-0500)] <logiclord_> yura : no I doubt.. because I tried to add css rules in current css files
[11:12:29 CDT(-0500)] <logiclord_> yura .. It might be due to the fact that chapter stylesheet interfere with css file
[11:12:48 CDT(-0500)] <yura> hmm, right, it gets loaded after the main one right ?
[11:12:59 CDT(-0500)] <logiclord_> yes
[11:13:12 CDT(-0500)] <logiclord_> yura : even with stylesheet how will I maintain aspect ratio of images ?
[11:14:45 CDT(-0500)] <yura> logiclord_: i think it is possible let me see if i can find some reasources
[11:15:14 CDT(-0500)] <yura> http://www.briangrinstead.com/blog/keep-aspect-ratio-with-html-and-css
[11:15:41 CDT(-0500)] <yura> http://stackoverflow.com/questions/757782/how-to-preserve-aspect-ratio-when-scaling-image-using-one-css-dimension-in-ie6
[11:16:23 CDT(-0500)] <yura> i think you can do it with some smart css, i remember i could do it for websites on iphone a couple of years ago
[11:17:24 CDT(-0500)] <Justin_o> jhung: i'm going to test out the install script update in Decapod 10.04 now too..
[11:18:52 CDT(-0500)] <logiclord_> yura : Yes it seems to work.. If it works instantly (i.e. no onload lag) then 1st issue will be solved
[11:19:01 CDT(-0500)] <logiclord_> I will try out and update about that
[11:19:20 CDT(-0500)] <logiclord_> yura: about 2nd point in email ?
[11:19:52 CDT(-0500)] <jhung> ok justin_o
[11:20:35 CDT(-0500)] <yura> logiclord_: right so once you structure your code into components, you will probably have the events belonging to some of them which means that the event handlers should probably be the public methods of those components
[11:22:25 CDT(-0500)] <logiclord_> yura: even event handlers of internal dom elements ?
[11:24:02 CDT(-0500)] <yura> logiclord_: oh that, so the idea is to have as much configurable as possible. So when you attach a listener for an event, there should be an option to override it. Which means it should be configurable through component options. So yes i think it makes sense to have them internalized to the components that own the DOM
[11:27:00 CDT(-0500)] <logiclord_> yura : I thought each component will be provided with a selector and using dom binder it can update its part of scope
[11:27:09 CDT(-0500)] <logiclord_> e.g. bookmark
[11:27:48 CDT(-0500)] <yura> logiclord_: not sure i understand
[11:28:35 CDT(-0500)] <logiclord_> yura: each component dealing with a UI related element suppose bookmark
[11:28:48 CDT(-0500)] <logiclord_> will be passed a selector of bookmark container
[11:28:50 CDT(-0500)] <anastasiac> michelled, I have a fix for the 'skip tags' link in a branch, ready for review: https://github.com/acheetham/OER-Commons/tree/604-skip-tags
[11:29:14 CDT(-0500)] <michelled> thx anastasiac
[11:29:18 CDT(-0500)] <logiclord_> yura: and it can then update bookmarks in it using other components like navigator
[11:30:57 CDT(-0500)] <yura> logiclord_: well right, so if you want to attach event handlers to its internal dom elements you should do it within the component, and probably have it as a method of the component, not an anonymous function
[11:31:21 CDT(-0500)] <logiclord_> yura: got it
[11:31:51 CDT(-0500)] <logiclord_> one last thing ... I was browsing through the documentation and many APIs are in sneak peak state
[11:31:55 CDT(-0500)] <logiclord_> should I use them ?
[11:32:16 CDT(-0500)] <yura> logiclord_: once you start converting things into components, ill try to add as many comments as i can.
[11:32:21 CDT(-0500)] <yura> logiclord_: yes definitely
[11:33:01 CDT(-0500)] <logiclord_> yura: actually I read somehere "sneak peak status. APIs may change which may break the code" :-/
[11:33:21 CDT(-0500)] <yura> logiclord_: one more tip, for the latest most update examples of how things can be used, also check out the framework tests, they seem to have the most up to date examples.
[11:33:35 CDT(-0500)] <yura> logiclord_: yes, i dont think it will happen soon, or be that dramatic
[11:33:58 CDT(-0500)] <logiclord_> yura : could you point me to the url ?
[11:34:02 CDT(-0500)] <yura> sure
[11:34:42 CDT(-0500)] <yura> so here are examples of how to use some of the inversion of control features - https://github.com/fluid-project/infusion/blob/master/src/webapp/tests/framework-tests/core/js/FluidIoCTests.js
[11:36:14 CDT(-0500)] <logiclord_> yura: I might take a off tomorrow.. but I will complete milestone one working weekend if required
[11:36:56 CDT(-0500)] <yura> logiclord_: let me know if you want me to look at particular things in the code
[11:38:05 CDT(-0500)] <logiclord_> yura: did you noticed that in current version of epub reader.. when you press previous page button (being at first page of a chapter)
[11:38:18 CDT(-0500)] <logiclord_> you will go to first page of previosu chapter
[11:38:48 CDT(-0500)] <yura> logiclord_: oh interseting
[11:38:57 CDT(-0500)] <logiclord_> I was not able to figre out .. how to calculate last page directly
[11:39:13 CDT(-0500)] <logiclord_> within the chapter it works fine
[11:40:10 CDT(-0500)] <yura> logiclord_: hmm
[11:41:18 CDT(-0500)] <logiclord_> yura: thanks for time
[11:42:38 CDT(-0500)] <yura> logiclord_: ya we ll get to it , i think, also , you can think of issues like that in terms of tests too , see if you can start writing any already for cases like that
[11:43:22 CDT(-0500)] <logiclord_> yura: I will keep a note of such issues
[11:43:29 CDT(-0500)] <yura> logiclord_: cool
[12:03:00 CDT(-0500)] <anastasiac> michelled, I've got a fix for 605 in a branch, ready for review: https://github.com/acheetham/OER-Commons/tree/605-view-item-link
[12:03:11 CDT(-0500)] <michelled> thx anastasiac
[12:30:34 CDT(-0500)] <michelled> anastasiac: I noticed that you modified the materials index and the front page to add the skip over tags link. I searched the repo and it looks like you should also modify the 'green' and green-browse pages. maybe also the item-tags-portlet page. I haven't actually tried to view any of those, so you'll probably want to figure out whether they are even used at this point
[12:31:28 CDT(-0500)] <anastasiac> michelled, yes, I noticed those, but couldn't figure out where they were being used. I'll check again, and maybe modify them anyway (and just assume they'll work the same)
[12:32:20 CDT(-0500)] <michelled> anastasiac: I think if they aren't used we shouldn't fix them - ask Andrey on the ticket whether or not they are used
[12:32:37 CDT(-0500)] <michelled> we can suggest refactoring or removing them if they aren't
[12:35:20 CDT(-0500)] <michelled> anastasiac: I just looked at your 605 branch. I totally agree that the item names in each search result wouldn't be an h1 but I'm wondering if they would still be a heading
[12:36:03 CDT(-0500)] <anastasiac> michelled, the main reason I remove the heading was because I think that contributes to part of the confusion for screen reader users
[12:36:27 CDT(-0500)] <anastasiac> the screen reader appends "heading level 2" to the link text
[12:36:30 CDT(-0500)] <anastasiac> for both links
[12:38:00 CDT(-0500)] <michelled> I suppose the second link may not semantically be a heading. do you agree with me that the title of the resource is semantically a heading?
[12:39:28 CDT(-0500)] <anastasiac> michelled, I'm not entirely sure about that one. I might be convinced, but I'm not sure. Right now, everything on the page is h1, which kind of makes it meaningless
[12:40:17 CDT(-0500)] <michelled> are you suggesting we address it when we deal with FLOE-29?
[12:51:44 CDT(-0500)] <asteig> Morning Justin_o, jhung.
[12:52:12 CDT(-0500)] <Justin_o> asteig: hello.. how are things going?
[12:53:13 CDT(-0500)] <asteig> Justin_o: Good, still on track. Should be making a commit shortly.
[12:53:25 CDT(-0500)] <asteig> Justin_o: Finished the UI and started working on collecting the data.
[12:53:40 CDT(-0500)] <asteig> Justin_o: UI meaning the markup, not all the JS.
[12:55:39 CDT(-0500)] <Justin_o> asteig: cool.. and that will all be in your coming commit?
[12:55:54 CDT(-0500)] <asteig> Justin_o: Yep.
[12:56:05 CDT(-0500)] <asteig> Justin_o: Just want to give it a look over and clean it up a tad first.
[12:56:44 CDT(-0500)] <jhung> asteig, excellent! Looking forward in seeing it.
[12:57:39 CDT(-0500)] <Justin_o> asteig: great thanks.. oh a couple things about the fluid studios post before i forget.. can you make sure to update it with your progress and also maybe change the name to include more info about the project.. we have a few more gsoc projects going on here and I think others will start posting there as well.. so even just including html5 image editor or something like that in the title would be good
[12:58:12 CDT(-0500)] <asteig> Justin_o: Yeah, definitely. I'll log in and do that right now.
[12:59:46 CDT(-0500)] <Justin_o> asteig: thanks for that
[13:17:29 CDT(-0500)] <Justin_o> asteig: do you have any questions for jhung and I?
[13:20:35 CDT(-0500)] <asteig> Justin_o: Nope, I think I'm good for the moment.
[13:21:22 CDT(-0500)] <Justin_o> asteig: great..glad things are moving along well
[13:31:59 CDT(-0500)] <jhung> asteig: sorry asteig, I have contractors vying for my attention at the moment.
[13:32:33 CDT(-0500)] <jhung> asteig: let us know when the code is up so we can take a look. But progress looks good.
[13:34:10 CDT(-0500)] <asteig> jhung: Will do. I'll send you an email.
[14:29:30 CDT(-0500)] <Justin_o> jhung: did we decide how we want to return the tiff export to users? zip?
[14:43:18 CDT(-0500)] <jhung> Yeah. Zip.
[14:43:33 CDT(-0500)] <jhung> Puts into question space concerns though. Tiffs can get really big justin_o.
[14:43:50 CDT(-0500)] <Justin_o> jhung: hmm.. true
[14:43:57 CDT(-0500)] <jhung> Perhaps we should think of a strategy for estimating space?
[14:44:16 CDT(-0500)] <Justin_o> lets say 70MB a page.. and 1000 page book..
[14:44:20 CDT(-0500)] <Justin_o> that'd be pretty huge
[14:44:47 CDT(-0500)] <jhung> justin_o: yup.
[14:44:53 CDT(-0500)] <Justin_o> jhung: i guess.. not sure yet how to calculate it.. but we can look into it
[14:45:19 CDT(-0500)] <Justin_o> in terms of what the UI has access to though.. it may just be a guess
[14:46:01 CDT(-0500)] <jhung> justin_o: The problem is, in creating the archive, we essentially double the amount of disk space consumption. So maybe we can return a link to the directory? But the directory isn't stable, so they'll need to move the files out before refreshing the browser...
[14:46:33 CDT(-0500)] <Justin_o> jhung:
[14:46:40 CDT(-0500)] <Justin_o> hopefully not double
[14:47:08 CDT(-0500)] <Justin_o> jhung: but point taken.. and considering these things are already there in some other format on the machine there will be at least 3 copies and two of them in tiff format
[14:48:02 CDT(-0500)] <colinclark> I guess the problem is that, by nature of being a client-driven application, we have a kind of abstraction over the file system? The user can't really tell us where they want us to drop of their files to, in terms of the local file system?
[14:48:16 CDT(-0500)] <Justin_o> jhung: if we were to give them a link to the directory that would start to betray the possible client server separation
[14:48:27 CDT(-0500)] <Justin_o> meaning it would require you to be on the same machine
[14:48:39 CDT(-0500)] <colinclark> So the only user-tangible option-especially with the potential of client/server separation-is to pack them up a zip file and deliver it back via the browser?
[14:48:47 CDT(-0500)] <colinclark> Am I right, Justin_o?
[14:48:54 CDT(-0500)] <Justin_o> colinclark: yep.. that's what i was thinking
[14:49:07 CDT(-0500)] <colinclark> And remind me again...
[14:49:27 CDT(-0500)] <colinclark> the new Web File System API provides a sandboxed space on the file system?
[14:49:35 CDT(-0500)] <colinclark> in other words, it's opaque to the user
[14:49:38 CDT(-0500)] <colinclark> is that correct?
[14:50:24 CDT(-0500)] <Justin_o> colinclark: as far as i know yes...
[14:50:29 CDT(-0500)] <colinclark> yeah
[14:50:49 CDT(-0500)] <colinclark> I can't think of any way around this, off the top of my head
[14:50:58 CDT(-0500)] <colinclark> we might just have to fall back on "storage is cheap"
[14:51:07 CDT(-0500)] <colinclark> even though it's still not as cheap as it used to be
[14:53:13 CDT(-0500)] <Justin_o> colinclark: yep.. not sure what we could do..
[14:54:42 CDT(-0500)] <colinclark> I guess at some point after you've bundled up the images a zip and sent it off to the client, you can safely delete one or the other?
[14:54:47 CDT(-0500)] <colinclark> either the zip file or the original files?
[14:55:17 CDT(-0500)] <colinclark> It sounds like we're going to have, realistically, potentially four copies of the book on the hard drive at some point in the workflow
[14:55:35 CDT(-0500)] <colinclark> 1. The original images, say, scanned on a scanner or imported from another program
[14:56:08 CDT(-0500)] <colinclark> 2. The "Book" in terms of the data structure and persistence associated with each image once it's been imported into Decapod
[14:56:22 CDT(-0500)] <colinclark> 3. The images in a zip file, after it's been sent to the user
[14:56:28 CDT(-0500)] <colinclark> 4. The unzipped images
[14:56:50 CDT(-0500)] <colinclark> Justin_o: Am I correct?
[15:01:01 CDT(-0500)] <Justin_o> colinclark: potentially more.. so there are the convert un zipped images too
[15:01:13 CDT(-0500)] <Justin_o> converted, unzipped
[15:04:16 CDT(-0500)] <Justin_o> colinclark, jhung: have to run now.. maybe we can pick this conversation up again later
[15:04:27 CDT(-0500)] <colinclark> yup, see you
[15:59:13 CDT(-0500)] <travis_84> hello Bosmon, michelled, and colinclark
[16:06:16 CDT(-0500)] <travis_84> just a quick update. I have basic "getUserMedia" feature detection, and working 'video' playback in opera accessing the camera.
[16:07:45 CDT(-0500)] <travis_84> Audio is still unsupported so I am working on a fallback so I can continue
[16:12:41 CDT(-0500)] <Bosmon> Hey there travis_84
[16:12:43 CDT(-0500)] <Bosmon> Great stuff
[16:13:07 CDT(-0500)] <Bosmon> Glad you've got to pounding the keyboard
[16:15:22 CDT(-0500)] <travis_84> thanks, Chrome is making a fuss. being vanilla to the this depth of a JS project is slowing me down a little ; )
[16:15:36 CDT(-0500)] <Bosmon> What kind of fuss?
[16:17:00 CDT(-0500)] <travis_84> throwing an error
[16:17:07 CDT(-0500)] <travis_84> "Uncaught Error: TYPE_MISMATCH_ERR: DOM Exception 17 "
[16:17:12 CDT(-0500)] <Bosmon> Oh yes, those
[16:17:15 CDT(-0500)] <Bosmon> Always nasty
[16:17:23 CDT(-0500)] <Bosmon> You can probably only locate it by bisection
[16:17:30 CDT(-0500)] <Bosmon> Unless you've already figured out which statement causes the error?
[16:18:31 CDT(-0500)] <travis_84> dev tools is saying "navigator.getUserMedia('video', successCallback, errorCallback);
[16:20:16 CDT(-0500)] <Bosmon> Ok
[16:20:20 CDT(-0500)] <Bosmon> The nasty part is taken care of then
[16:21:18 CDT(-0500)] <travis_84> which is I think chrome doesn't like the 'video' being called as an object
[16:21:28 CDT(-0500)] <Bosmon> Looks like this API is incredibly unstable still
[16:21:34 CDT(-0500)] <Bosmon> http://stackoverflow.com/questions/5845306/how-do-i-access-navigator-getusermedia
[16:21:37 CDT(-0500)] <Bosmon> Don't worry too much about it
[16:21:48 CDT(-0500)] <Bosmon> Much more important to get anything at all working now, even if it is just in one browser
[16:23:11 CDT(-0500)] <travis_84> ya, soon though
[16:24:24 CDT(-0500)] <Bosmon> It would be helpful for us at least, in the longer term, if you thought about packaging your work as Fluid components if you can
[16:24:30 CDT(-0500)] <Bosmon> Since this should increase their reuse value
[16:24:56 CDT(-0500)] <Bosmon> I guess you are not yet looking at the UI implementation part