Tuesday, 2009-06-16

*** tpb has joined #melange00:00
*** r0bby has quit IRC01:50
*** solydzajs has quit IRC03:01
*** solydzajs has joined #melange03:21
*** ChanServ sets mode: +o solydzajs03:21
jamtoday1ajaksu: just pushed new changeset to github03:24
*** Merio has joined #melange03:34
*** solydzajs has quit IRC04:55
*** dhans has joined #melange05:05
Meriodhans: heya! :)05:07
dhansMerio: Hey!05:08
dhansMerio: I am reading your changes in wiki:)05:09
Meriodhans: ok let me know when you're finished :)05:10
dhansMerio: actually I just did finish:)05:11
MerioOh great, so, have some thoughts on it?05:12
dhansI am thinking about it... or just trying to imagine how it is supposed to work...05:14
MerioSo, until "jLinq", we thought about collecting ready-to-serve JSONs to the client05:15
dhansyes, I remember05:15
MerioSo we collect data already ... ready, say "students per age" by a specific range of ages05:15
*** MatthewWilkes has joined #melange05:16
MerioIn that way05:16
dhansso for those stats which have let's say some ranges, we will send 'raw json' so as user will be able to execute queries on it?05:17
MerioWe only need to pass the dicts (IIRC) to gviz and serve it to Visualization... and the stat is ready05:17
MerioExactly05:17
MerioSo we might want to do your first students per age (don't know if it has changed), so just send "0" years: "0" students, "18" years: "200" students... and so on05:18
MerioThis is obviously something that changes things, but it's more a JS change than a Python one05:19
MerioBut we can go into more depth then05:19
MerioSo the user might want to save the chart05:20
dhansso this ""0" years: "0" students, "18" years: "200" students." is the format of 'half-cooked' json you talked about?05:20
Merioyep05:21
MerioIn that way, we need to have a JS Object and a Python one to remember which data is the source, which chart (piechart, table, barchart), the destination data (say, the steps of jLinq queries) and the options of the chart (3d, not 3d, eventually colors and so on)05:21
dhansof and if I understand correctly, for each stat we will send only one json: either created by gviz or half cooked one?05:22
Merioyes05:23
MerioBut there is another one to be fair :)05:23
MerioThe problem is: we need to connect the object in Python (say, chart.py) with the source data05:23
MerioBut the host might want to save and let be public a chart which starts from data that a final user should not read05:24
MerioSo it's not good to save the original JSON and serve it blindly05:24
MerioSo we thought with James to let an host (which is the poweruser) save only a part of the original JSON with the original data... so when a common user watch for the chart, than there is no way to see the original JSON with the sensitive data05:25
dhansok I understand, but I don't know exactly what kind of 'sensitive' data you have in mind...:)05:26
MerioWell for example locations, we mi05:27
Meriowe might want to show that there are 2 GSoC students in Rome, but we don't want to connect the students to their personal data05:27
MerioJust an example05:27
dhansok, I get it. I just thought that we will remove any (for example) personal data while collecting the stats, so that the final_json does not have it05:29
MerioBasically everything that it's not "sensitive" if shown by number of students/mentors but can be sensitive if shown person by person05:29
MerioThis can be true perhaps even throughout GSoC, we might not have the time to accomplish all the flexibility, but say you want a graph with "students per age per degree" or something05:31
MerioIn that way (I think) you can't aggregate data, you have to give a JSON with a big list for every student, with their age and degree05:32
MerioYou can avoid displaying names and such things, but it's going more granular05:33
dhansdo I understand this stat correctly? it would show that there is for example 200 students that are masters and have 23 years?05:33
Merioyes, something like dividing the students in ranges: "18-25"-"25-30"-">30" and for each range you want their degrees05:34
MerioThis can be easily divided in three charts05:35
MerioBut also can be shown in a table with different intensity of colors for each cell05:35
Merio(if for example you want it also divided by country)05:36
dhanshmm ok, i think I am starting to get it05:36
MerioI mean, there are lots of possibilities with this kind of design, and it's very difficult to think of everything beforehand05:36
MerioBut even if for more complex stats we will need in a future to redesign something, still we should implement the basic concepts05:37
dhansyes05:37
MerioAnother thing that we should think beforehand (and here I ask you how we can achieve this, as I'm going this week to dig further into Python but I don't have an idea now ^__^)05:38
Meriois the possibility to have every saved chart with its link_id and its ACL, so we can ask for them in the dashboard as well as in a (for example) iframe into documents05:39
MerioWe thought with James it should be enough to inherit from document.py (for the moment, I don't know where the actual access rights discussion will go)05:41
MerioBut I have no real idea on how this is gonna work for the moment, so I ask you if it's ok :)05:41
Meriothat link_id should retrieve the data from chart.py and also have the JavaScript loaded in it05:42
dhansok, so for a given user you want to get charts that he saved for himself and he has access for?05:42
Meriowell also if the user is the host then the user can save the "computed" JSON and let the chart.py be public05:44
dhansI am not sure in 100%, but I think it is possible what you say05:44
MerioBasically each user in Melange will have a list of available charts, saved for example by other users. So we might want to have a link_id dependent on users and name of the chart or something like that05:45
dhansIIRC only program admins are able to save stats? or something chanegd?05:46
MerioApart from the saved charts, the user has also a list of "full-cooked" (or "full-baked" don't know which is correct :P) and "half-baked" JSONs (which are "pool of data" to the user) to play with05:46
MerioI think that the users should have less flexibility on how they can play with the data,  but still it would be great if they can play in someway05:47
MerioThe classical "students per age", for example, it's fine for them to play with the ranges05:47
dhansby play with data you mean 'collect' or change for example ranges?05:48
MerioYou want the students divided age per age? or do you want them shown by ranges? which ranges? which colors? slices of the piechart under 1% should be displayed? and so on05:48
MerioNo, collect queries should be raised only by hosts/developers I think05:49
dhansyes I agree05:49
dhanswith your last 2 messages:)05:49
Merioeheh :)05:49
MerioOk, so... there is much work to be accomplished05:50
MerioBut we're two, so we should go for teamplay and be clever in what we do, when we do and how we do05:51
dhansexactly05:51
MerioThat means for example, put IRC in autorun in your own computer ;)05:51
dhansI promise I will:)05:52
Merio^__^05:52
MerioIn that way we can chat everytime we want about the project and what we're doing05:52
MerioI would propose to have a daily irc meeting planned05:53
dhansgood idea05:53
MerioJust in case we don't have much to say during the day, but still we're able to get in sync05:53
MerioFor me the best hour range for a planned daily meeting is 15-19 (not 20 as we might overlap with Melange conference calls)05:54
MerioWhat about you?05:54
dhansso in my timezone it's 16-20...:P05:55
Merioyes, sorry, you're right ^_^05:55
dhansok, it's also ok05:55
MerioI think 15 mine/16 yours should be fine, as we're in the middle of the day05:56
dhansyes05:56
MerioTwo other questions:05:57
Merio1) what about you in Saturdays and Sundays? Just to know.05:57
Merio2) More practical, I think our best next step. What can we do to setup the demo instance?05:58
dhans1) if I am in Warsaw, it's ok. Sometimes I am leaving, but unfortunately it does not happen often lately05:58
dhans2) I have to read mails about the demo instance, because I think I got lost with this 'demo instance' idea06:00
MerioOk it's not a problem, I'll probably need a day sometime just to not to break with my girlfriend ;) :D06:00
dhans:)06:00
MerioWe have a demo instance up on http://dhansmelange.appspot.com/06:01
tpbTitle: Home Page (at dhansmelange.appspot.com)06:01
MerioWe need to have it working even for non developers to view our work anytime06:01
dhansah, ok06:02
MerioSo we might want to work today to have it working. It would also be great to start joining JS and Python stuff, at least to show a simple stat06:02
MerioIn that way, it will be also easier for me to start doing Python related stuff06:02
Meriobut it's a personal concern :P06:02
dhansin the final version, if I understand correctly, there will be a dashboard page with some kind of widgets where each widget will represent a stat, ok?06:04
Merioyes, but each stat will be retrieved by a link_id or something, so we can put it in a dashboard widget and embed it in a document as well06:05
MerioI think we need for first to start joining Python and JS to have a demo, then we go on improving it a bit, it would be great to think about the UI as well06:06
dhansok, but I am asking about something else:)06:06
MerioSo we have a clear idea on what the user can do and how the user will do those things. It would help designing the rest of the module06:06
Meriooh sorry :)06:06
dhansand this dashboard page will retrieve its data from chart.py, won't it?06:06
Meriobasically yes, this was the thought06:06
MerioBut feel free to object if there is something wrong with it obviously :)06:07
MerioAlso there will be some communication with statistic.py to retrieve the JSON if there is nothing saved in my dashboard06:08
dhansok so now, you are right it's better to just join python and JS code to have at least some simple stats shown06:08
MerioBasically chart.py is where we will save the user specific statistic (think of it like a sort of wiki collection)06:08
Merioand statistic.py is where all the data is collected (or saved by the host) and where they will be retrieved anytime06:09
MerioYes, forgetting for the moment about chart.py06:09
MerioJust use for example gviz to send the JSON and having a simple simple JS to show a simple graph06:09
dhansok, so now for each statistic you need a 'half-cooked' json or gviz object...06:10
MerioIt's more Python stuff than JS, so we might want to work together on it in Python06:10
dhansyes06:10
MerioYes or a "saved-by-the-host" json06:10
MerioI think gviz is fine as it's simpler now06:11
dhansI already added one function that creates a simple DataTable object...06:12
dhansit's getDataTableSample. I just wanted to make sure that this gviz works:)06:13
Merioeheh you've done right :)06:13
Meriois it actually working? :P06:13
dhansyes. I even displayed a simple table:)06:14
Merioyou rock ^_^06:14
dhans:)06:14
Meriook so, just give me 10 minutes, I need to do some stuff one moment... in the meantime I'll pull your edits and we will go for it :)06:16
dhansok06:17
dhansI'll go to eat some breakfast:P06:17
Merioare you available all day or you've to go away, say, in the afternoon or something?06:17
MerioYes, please do, it's important to do work, but to keep us breathing is needed as well :D06:18
Meriobbs :)06:19
dhansI need to leave in about an hour... I am purchasing a new laptop today and have to go to a bank. But I should be back at about 3 PM (your time)06:19
Meriothat's perfectly fine, if you want we can just start this afternoon, I'll be reading some Python guides to refresh my (little) knowledge in the meantime :)06:20
Meriodhans: I forgot to mention: Lennie told me about the task API, which is going to be released for the Google App Engine, it would mean changing Jobs, so you might need to be aware of it too06:31
dhansok I am back06:32
dhansjobs is just something that let us schedule some task in certain time intervals, so now we are not using jobs, but collecting stats manually in batches (by a dev or program admin) by clicking collect06:34
dhansthe problem is that the jobs have the same limitations as regular requests so they are not very helpful, but I will try to find something about the task api or will ask Lennie06:36
dhansthanks for info btw:)06:36
Meriodhans: ok :) So.. meeting at 16(your time), just ping me whenever you're ready, I'll be here :)06:43
dhansok06:43
*** jamtoday1 has quit IRC07:43
*** Merio has quit IRC08:06
*** Merio has joined #melange08:16
*** arun_ has joined #melange08:24
*** arun has quit IRC08:25
*** mithro has quit IRC08:35
*** arun_ is now known as arun08:53
*** florinciu has quit IRC09:39
Meriodhans: ping10:21
*** jamtoday has quit IRC10:53
dhansMerio: pong :)11:25
Meriodhans: wb ^__^11:25
MerioAll ok for the laptop?11:25
dhansMerio: I think so... :)11:26
Meriowonderful then :)11:26
MerioI was hitting my head on the wall to let dynamic loading working for google APIs11:26
dhansand I have some problems with shipping company and it resulted in a situation that I had to meet with the delivery guy in the city, so that's why I am late ;-/11:28
dhansI'm sorry :)11:28
MerioNo problems :)11:29
MerioSo, in this very moment I'm trying to solve this problem, is there something difficult on pushing a working demo (only about your work for the moment) in the demo instance?11:30
dhanswhat do you mean by 'working demo'?11:31
Meriosomething that can be visible in our demo instance even if you aren't a developer11:32
MerioSo, let's say, James Crook or LH can use their google account simply to enter our demo instance and clicking into the proper link in the sidebar just show, for example, a simple visualization (as you already have)11:34
dhansyes, I get it...11:34
dhansso the simplest way, to make it visible for everyone is to just change access11:35
Meriothis way is also easier for us to work on it in the meantime11:35
Meriodhans: can you work on it while I'm solving this problem? I mean I can join the effort if helps :)11:41
dhansok I just changed those rights and will push it to the demo instance11:45
Meriogreat man!11:45
dhansok committed and pushed on our instance11:55
Meriodhans: great ^__^ it's cool! I think that "visualize" link is somewhat broken, is it so?11:59
dhansyes, indeed :-)11:59
dhansit worked for like a very little amount of time ;-)12:00
Merioeheheh ;) is it fixable in the demo instance or we need to work on the backend before using it?12:00
MerioI mean it's only a broken link or there is nothing ready? Just to know what to do to help ^_^12:01
dhansit was not flexible. actually no matter which 'visualize' button I'd have pressed, it'd show you visualization for students per degree :)12:02
Merioeheh ok ^__^12:02
Meriodhans: need a 10 minute break now, I'm looking at the screen 3 hours without breaks :) So, is there a way I can help to fix that, or are you going to work on it now and I'll join after?12:04
MerioJust because I would like to have a demo instance working this afternoon so I can join my JS code and see what's going on :)12:04
dhanswhat we need is to have, for each stat that we want to visualize, a function that returns a DataTable object for this stat12:05
dhansbecause I prepared only one simple function that returns DataTable for students per degree12:06
Meriook so I can join in and help developing that12:07
dhansok, but feel free to have a break :)12:07
Meriosomething odd happens here... it's funny :) I've done nothing and now it's working... hmmmm!12:07
dhansheh :)12:08
dhansand please just tell me which parts of your JS code you want to join in our demo instance?12:09
Meriook so just wait for me 10 minutes, I'm going to revert some changes and then I'm going to help you on the visualizations :)12:09
Meriobbs12:09
dhansok, now visualize works again, but be prepared, this is certainly not what we want :-P12:14
Meriodhans: back :)12:19
*** thrain42 has joined #melange12:19
*** ChanServ sets mode: +v thrain4212:19
Meriodhans: ok, so basically now we have always the same table/JSON returned for every statistics, but the statistics are collected well, is it true?12:21
dhansI think so12:21
dhansand the function that actually draws the table is defined in base.html (drawTable) and has nothing in common with the JS code rules that you proposed :)12:25
Meriodhans: no problems, I can do it :)12:26
Meriook I've pushed another change, what I need to do to push it in the live instance? Is it enough to follow "deploying to google app engine" thing in the gettingstarted wiki page?12:28
Meriodhans: just to be sure I'm not doing something odd :)12:28
dhanslet me see it12:28
Meriook, I've pushed some changes and merged with your changes12:29
MerioNow I would like to push it in the live instance and I don't want to break things :)12:29
dhansso can you make another simple change :), because I did not push my last update that made visualize worked :P12:30
*** Erant has quit IRC12:31
dhansyou should have something like:         (r'^%(url_name)s/(?P<access_type>visualize_stats)/%(scope)s$', in line 96 in views/models/statistic.py so please change scope for key_fields12:31
dhansand about deploying to google app engine - yes, thirdparty/google_appengine/appcfg.py update build is enough12:32
*** Erant has joined #melange12:33
MerioPush it in the repository then :)12:33
MerioI'm committing a little change12:33
Meriodhans: committed12:34
*** durin42 has quit IRC12:34
dhansbut I started to rewrite this some other functions and I bet that if I push now, visualization won't work again :P12:34
Merioeheh ok, I'll work on something else in the meantime12:34
Meriodhans: I think it's better if you commit stuff more granularly, I see from Melange's commit log that it's that the way to go12:35
*** solydzajs has joined #melange12:35
Merio(but we can just ask during the conference call ;))12:35
Merio(or we can just ask solydzajs now :P)12:36
*** penyaskito has joined #melange12:36
dhansI agree, but just forgot and started to do something new12:40
Meriook :) Just ping me when you're done :)12:41
*** r0bby has joined #melange12:45
dhansMerio: ok, committed, merged and pushed:)12:47
Meriodhans: great :)12:47
Meriodo you already sent the stuff into the live instance? I would like to try ^__^12:48
dhansso I can say no:)12:48
dhansI mean 'no I have not' :)12:48
Merioehhe ok :)12:48
Merioso I'm trying12:48
*** ChanServ sets mode: +o solydzajs12:49
solydzajsyo what's up ?12:49
solydzajsMerio: ?12:49
dhanssolydzajs: hello paweł :)12:50
Meriosolydzajs: we're doing our IRC meeting ... so we're pushing a working demo into the live instance and going to start joining our code12:50
*** r0bby has quit IRC12:51
*** r0bby has joined #melange12:51
solydzajsMerio: ok sounds good12:51
solydzajsMerio: tty some more during conference call12:51
solydzajsMerio: I probably gonna take a nap, still jetlagged a little bit12:51
Meriosolydzajs: ok great :)12:51
Meriodhans: I have to run build.sh first?12:51
dhansMerio: you should12:52
Meriosolydzajs: ok, sleep tight so ^__^ ttyl :)12:52
Meriodhans: it's giving me this => google/appengine/ext/remote_api/remote_api_stub.py:232: SyntaxWarning: assertion is always true, perhaps remove parentheses?12:53
Merio  assert (txdata.thread_id == thread.get_ident(),12:53
Meriodhans: is it normal or need I to change something to work with python 2.5 instead of 2.6?12:54
dhansI am working with 2.5, but I also get a lot of errors/ warnings while executing build.sh12:55
*** r0bby has quit IRC12:56
*** r0bby has joined #melange12:56
Meriodhans: it says I don't have permissions :P12:57
dhansto upload?12:57
Merioyep12:57
MerioYou do not have permission to modify this app (app_id=u'statistic').12:57
dhansstrange12:58
Meriolet me see, perhaps I mistyped something12:58
dhanshmm12:58
dhanswhat about your app.yaml file?12:59
Merioit has application: statistic12:59
dhansplease try to change it to dhansmelange12:59
Merioneed I to change the name?12:59
MerioOh crap :P12:59
Merioeheheh it's working now, shame on me :P13:00
dhansI know this name is a little bit selfish, but when I created this instance I didn't know someone else would work on it :P13:01
Meriodhans: I know you're going to change all my commits to your name! :P13:02
dhans:P13:02
Merioeheh ok, so let's see what's happening then ^__^13:02
Meriook it's working, but it's giving me 500 server errors when visualizing. Is it a known problem or something happened with my build?13:04
dhansnope13:04
dhansI was just explaining13:04
Merioah ok perfect then13:05
dhansbut try for Students Per Degree :)13:05
Merioyep tried... it's working :)13:05
dhansok, so now it works like this: when you click 'visualize', the function visualizeSample is called and and it calls logic.getDataTableObject13:05
* Merio going to the source code :)13:05
dhansthis function calls function getDataTable + statistic.id13:06
dhansbut, for now, we have only getDataTableStudentsPerDegree13:06
Meriook great13:07
Meriogot it13:07
Merioit's not possible for us to have those initializations in the statistic.py data model instead of defining a function for every single statistic?13:08
MerioOtherwise I think it's not flexible enough for the other types of stats13:09
dhansso, got lost, by initializations you mean?13:10
MerioI mean:     description = {"degree": ("string", "Degree"),13:11
Merio                 "number": ("number", "Number")}13:11
Merioif we've that description inside statistic.py, then we just need to retrieve it for every stat and just have a single function for all13:12
dhansok, so that's what I thought:)13:12
Merioeheh perfect then :)13:12
Meriosomething like this13:12
Meriodescription = simplejson.loads(statistic.json_description)13:13
Merioand then changing the iteration to13:13
dhansit's a good idea13:13
dhansI was not sure if one generic function would be enough for creating data tables, but maybe it is13:14
Meriofor key in json_string.keys():13:14
Merio  for key_desc in description.keys():13:14
Merio    <<build the data >>13:14
Merio  data.append(data_built);13:14
dhansok13:15
MerioI can try to do something like that, so I can just start up with a little bit of Python, but I don't know if it would mean stopping you at the moment13:15
dhansno13:15
Merio"no"... meaning? :p13:16
dhansno, it would not stop me :)13:16
Merionothing could stop you! ;) eheh I mean it's going to be a great change (also for the model and the data collection), just wanted to be sure it's all ok :)13:17
Meriodhans: what do you do to test the data? Is seed_db enough?13:18
*** durin42 has joined #melange13:18
*** ChanServ sets mode: +v durin4213:18
dhansto be honest, I have not used it:)13:19
Merioso just did all stuff manually?13:19
dhansI have always created one program, added a few (let's say 5) students and it was quite ok:)13:20
Merio(I'm going to change the wiki page in the meantime and sending a mail in the dev list about the live demo instance)13:20
MerioI think it could be an opportunity to enhance seed_db, I'll see what to do about it13:21
*** penyaskito has quit IRC13:24
dhansjust one question about google visualization api: the DataTable object is a generic type of object and when we have it, we can create all types of visualizations?13:24
*** penyaskito has joined #melange13:24
Merioyes, that kind of abstraction is what I'm doing in the JS layer13:25
dhansbecause I am just a little bit concerned if one generic function that generates DataTable will be sufficient for some more sophisticated stats13:28
dhanslike for StudentsPerDegreePerAge that you mentioned13:28
*** thrain42 has quit IRC13:29
Merio(wiki page updated and mail sent ^__^)13:30
dhansthanks13:30
MerioWell, perhaps it's not going to be sufficient13:30
MerioWell.. it's not sufficient at all, because the "half-baked" JSONs are not covered at all13:31
dhansyes, I know, I am just talking about data_tables13:31
MerioBut it's sufficient for the basic data to work, then we will do another function for the other stuff13:31
MerioAnd if we're lucky enough to achieve more sophisticated stats during the GSoC we'll see how to generalize that function. I think it's not good aiming too far away, just get basics done with a reasonable amount of flexibility and an eye to the future13:32
dhansit sound good...13:32
dhans*sounds13:32
Merio^_^13:32
MerioOk so I'll try to get my first hands on Python ^__^ What will you do in the meantime? (just to be in sync, it's perfectly fine to say nothing :P)13:33
dhansI have to leave for a while:-)13:33
dhansso will be back in like 25 minutes13:34
Meriothat's ok, see you later during conference call then :)13:34
Meriono probs c ya :)13:34
*** MatthewWilkes has quit IRC13:35
*** dhaun has joined #melange13:43
*** jamtoday has joined #melange14:12
*** jamtoday has quit IRC14:15
Meriodhans: ping14:17
*** jamtoday has joined #melange14:18
Merio/who freenode/staff/*14:32
MerioHmm14:32
Merio:P14:32
*** jamtoday has quit IRC14:32
*** Merio has quit IRC14:42
*** Merio has joined #melange14:42
*** Lennie has joined #melange14:50
*** ChanServ sets mode: +o Lennie14:50
*** Merio was kicked by Lennie (Rejoin :D)14:52
*** Merio has joined #melange14:52
*** ChanServ sets mode: +v Merio14:52
*** florinciu has joined #melange14:58
solydzajsdhans: ping15:02
Lennieajaksu15:07
Lennieping15:07
ajaksuLennie: pong15:07
Lennieskype!15:07
Lennieif you can15:07
ajaksuI need about 3 minutes, installing skype on a windows laptop :)15:08
* ajaksu keeps getting the mice mixed :)15:08
*** jamtoday has joined #melange15:16
ajaksujamtoday: not in the call?15:18
*** penyaskito has quit IRC15:37
Lennieajaksu, thanks for joining in :D15:37
Lennieunfortunetly we discussed most of the important stuff yesterday15:37
Lenniebbs15:37
*** Lennie is now known as Lennie|Food15:37
*** Lennie|Food is now known as Lennie|Food|Gone15:37
*** Lennie|Food|Gone is now known as Lennie|Gone15:38
*** Lennie|Gone is now known as Lennie15:48
ajaksugot a long phone call right after the conference call ended, so after a long while: thanks for not laughing out loud everytime I tried to speak English :D16:13
*** jamtoday has quit IRC16:20
Lennieoh hell no :D16:22
Lennieajaksu, you should join next week when madhusudan is there16:22
Lennieindian accents are the best :D16:22
LennieI'm dutch so I suck as well :)16:23
ajaksuI couldn't have discussed and understood as much in a call as I did yesterday here on IRC :)16:23
Lenniehehe16:28
*** penyaskito has joined #melange16:48
*** N4L|Lennie has joined #melange16:54
*** Lennie has quit IRC16:55
ErantN4L?17:16
*** dhaun has quit IRC17:17
*** ajuonline has joined #melange17:36
ajuonlineseen Lennie17:36
ajuonline:P17:36
* ajuonline whacks r0bby 17:36
*** ChanServ sets mode: +o N4L|Lennie17:37
*** N4L|Lennie is now known as Lennie17:37
LennieNuubs4Life17:37
ajuonlinelol17:37
LennieLennie was taken when the internet came back ^^17:37
ajuonlinewhat happened to the new TBBT Episodes?17:37
ajuonlineS02 over?17:37
ajuonline..dont see the Heroes ones as well :/17:38
Lennieyes17:38
Lennieit's summer break17:38
Lennieback in winter :)17:38
Lennies2e23 was the last one17:39
ajuonlineoh dear :/17:39
ajuonlinehow long? in months?17:39
Lennieno clue17:40
Lennielemme check17:40
Lennieseptember17:41
Lenniesao17:44
Lennieso17:44
Lenniehow are you?17:44
Lennieajaksu17:44
Lennieajuonline *17:44
Lenniehow's your GSoC going?17:44
ajuonlineah not started :/17:44
ajuonlinei have college issues.17:44
ajuonlineshould get done with them this week17:45
Lenniethat sucks :(17:45
ajuonlineyeah my mentor tells me he will fail me :/17:45
LennieI can't blame him17:46
ajuonlinebbut thats okay :) cant help it. i need to graduate first.17:46
Lenniesince you havent started yet17:46
ajuonlinei know17:47
*** jamtoday has joined #melange17:54
Lennieajuonline, nn :)18:10
*** Lennie has quit IRC18:11
jamtodayajaksu: the reason for the surveys not restoring after a failed POST is the JS has been commented out18:28
jamtodayI was using a hidden field hack18:28
ajaksujamtoday: yup, I mentioned that in the issue18:28
jamtodaywere you planning on using a different method?18:28
jamtodayajaksu: good thinking on testing in other browsers18:30
jamtodayajaksu: I tested everything on all the browsers but never surveys18:30
jamtodayI moved some logic to the surveys logic module, and just now fixed some strange behavior for empty surveys18:32
ajaksujamtoday: aha, got it: I got rid of EditSurvey and didn't investigate what should be stored in that hidden charfield instead...18:32
jamtodaythe field is called survey_html and it's just a jQuery.html() dump18:33
ajaksuoops, then I commented one thing in JS and another one in python (survey_content)18:33
jamtodaythat's what it looks like...not hard to fix18:34
jamtodayWhat do you think about eliminating the link_id field for survey questions18:34
ajaksuyou can revert it if it doesn't take too much time, otherwise I'm finishing a security fix for another project and will start melange hacking in about one hour :)18:35
jamtodaynot eliminating the property, just the field. I think it can safely be auto-generated18:35
jamtodayok thats fine18:35
ajaksuIt's OK to get rid of it, we might also want to use the question instead of the link_id-like identifier for CSV and result lists18:36
ajaksuOr make the question actually a Name or Title, with textual question living inside the widget?18:37
*** jamtoday has quit IRC18:41
*** jamtoday has joined #melange18:46
*** Merio has quit IRC18:55
*** florinciu has quit IRC19:05
jamtodayajaksu: new commit - field deletion bug fixed, css adjusted...selection fields aren't saving19:27
jamtodayand some useful new additions to seed_db19:28
ajaksujamtoday: let me try to fix the selection fields :)19:28
ajaksujamtoday: my guess is that it's the content-saving JS, testing...19:33
jamtodayyou're right it's in the form submit function19:40
jamtodayor the form submit function is far too specific19:40
jamtodaywe want to make sure these bugs don't keep re-emerging...i can fix this one19:40
ajaksuI actually wasn't able to reproduce it... let me check the merge19:44
jamtodayfigured it out19:47
jamtodayit's only when you don't submit an option19:47
jamtodayThat's actually the behavior we want, but I'll add a prompt if the survey contains selection fields with no options19:47
jamtodayalso thinking that jquerytools would probably be a more efficient choice...it's about a third of the size for dialogs19:48
jamtodaybut anyways, jQuery UI is fine19:48
jamtodayI fixed some issues with the delete option and sortable not working for selection options20:00
ajaksujamtoday: div #survey_widget input {width:320px;} makes checkboxes look weird in Opera -> http://github.com/ajaksu/Melange/commit/c03cb00f885ec6e341d61754ce428c70e2a8d7f720:01
tpb<http://ln-s.net/3Kph> (at github.com)20:01
*** dhans has quit IRC20:04
jamtodayi was just editing css as well20:12
jamtodayconflicted merge20:12
jamtoday....i'll fix this in a moment...after you can merge upstream with me20:13
ajaksuok, I'm working on the deadline as interval now :)20:13
jamtodaymerged and pushed20:22
ajaksupushed the deadline as interval feature: we now have an 'opening' attribute that is the starting of the period in  which a survey can be taken20:42
*** jamtoday has quit IRC20:52
*** jamtoday has joined #melange20:59
*** jamtoday has left #melange20:59
*** mithro has joined #melange21:15
*** ChanServ sets mode: +v mithro21:15

Generated by irclog2html.py 2.17.2 by Marius Gedminas - find it at https://mg.pov.lt/irclog2html/!