--- Log opened Fri Sep 01 00:00:07 2006 00:07 < Wombert> wtf symfony 00:08 < ttj> Huh? 00:08 < Wombert> remember when I discovered the other day that they violate the LGPL? 00:08 -!- jake [n=jake@c-24-19-45-189.hsd1.wa.comcast.net] has quit ["Leaving"] 00:08 < Wombert> looks like that's not the end of the story 00:11 < Wombert> for instance, they use data from ICU without _any_ copyright notice 00:11 < Wombert> they copied the entire directory from prado 00:11 < Wombert> then deleted prado's license.txt which contains the ICU license 00:11 < Wombert> I ean 00:11 < Wombert> mean 00:11 < Wombert> how stupid can you possibly be 00:11 < Wombert> this is beginning to annoy me 00:12 < ttj> Heh. 00:15 -!- devosc [n=devosc@rrcs-24-172-199-238.central.biz.rr.com] has joined #agavi 01:03 -!- devosc [n=devosc@rrcs-24-172-199-238.central.biz.rr.com] has left #agavi [] 01:28 -!- benny`work [n=benny@p54AC3A4F.dip0.t-ipconnect.de] has quit ["unset($this);"] 01:48 -!- jake [n=jake@gg.internal.mixxer.com] has joined #agavi 03:22 -!- [1]eremit [n=eremit@p5490B447.dip.t-dialin.net] has joined #agavi 03:41 -!- eremit [n=eremit@p5490F4B8.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 03:41 -!- [1]eremit is now known as eremit 03:42 -!- Wombert_ [n=Wombert@dslb-088-064-002-219.pools.arcor-ip.net] has joined #agavi 03:55 -!- Wombert [n=Wombert@dslb-088-064-000-206.pools.arcor-ip.net] has quit [Read error: 110 (Connection timed out)] 04:06 -!- Wombert_ is now known as Wombert 04:44 < Wombert> omg 04:44 < Wombert> :< 04:55 -!- jake [n=jake@gg.internal.mixxer.com] has quit ["Leaving"] 06:29 -!- impl [n=impl@httpcraft/php/nforbes] has quit ["Leaving"] 06:42 < CIA-6> david * r1031 /trunk/ (2 files in 2 dirs): lighttpd test case and fix for urlencoded path info to index.php 07:00 < CIA-6> david * r1032 /trunk/ (4 files in 2 dirs): apache test cases and fix for urlencoded path info to index.php 07:10 -!- jake [n=jake@c-24-19-45-189.hsd1.wa.comcast.net] has joined #agavi 07:10 < Wombert> morning jake 07:10 < Wombert> or whatever it is at your place 07:10 < jake> heh, evening :) 07:10 < Wombert> yeah :> 07:10 < Wombert> I'm still up 07:10 < Wombert> fiddling with web servers 07:10 < jake> ahh, and how's the progress going with Agavi? 07:11 < Wombert> test, test, test, fix routing, test, test, test, write unit test, repeat 07:11 < Wombert> well 07:11 < Wombert> dominik is almost literally on fire with the i18n 07:11 < Wombert> it will be awesome 07:11 < jake> excellent, I'm really looking forward to doing some playing 07:11 < Wombert> we're "stealing" data from ICU (you know that?) so we should be covered for all circumstances 07:11 < jake> icu? 07:11 < Wombert> and I'm testing and testing and testing different web server configurations 07:11 < jake> nevermind :) 07:11 < Wombert> International Components for Unicode 07:11 < Wombert> from IBM 07:12 < jake> yep 07:12 < Wombert> they have aaaaaaall the data 07:12 < Wombert> seems like the data from unicode.org is even more up-to-date tho 07:12 < Wombert> we'll see 07:13 < Wombert> when I'm finished here we'll be guaranteed to work, including documentation and rewrite examples, on apache1, apache2, as module and cgi, IIS as ISAPI and CGI, both with and without ISAPI_Rewrite, lighttpd with and without rewrite 07:13 < Wombert> next is zeus and lightspeed web servers 07:14 < jake> Why would there be issues depending on platform? If PHP works, wouldnt' agavi? 07:14 < jake> I've been out of the loop, so sorry about the catchup questions 07:14 < Wombert> yes, but not the routing if you have rewrites in place that remove index.php 07:14 < Wombert> no problem 07:14 < Wombert> and then there are very specific issues 07:15 < Wombert> for instance, on IIS with CGI, all info gets urldecode()d, and you don't have REQUEST_URI 07:15 < Wombert> so there's a bit of haxx0ring required 07:15 < Wombert> the thing is 07:16 < jake> ahh, interesting 07:16 < Wombert> so far I haven't faced any real trouble 07:16 < jake> that's a good thing :) 07:16 < Wombert> besides IIS/CGI which was a pain to even get up and running 07:16 < Wombert> but 07:16 < Wombert> I'm setting up test cases for all envs and with all configurations 07:16 < Wombert> so we'll know if we break something 07:17 < jake> goood, good 07:17 < jake> Sean Kerr is in town interviewing with my company, if we get him hired hopefully he'll have time to get back into mojavi/agavi development 07:18 < Wombert> yeah I talked to him the other day 07:18 < Wombert> glad to hear that 07:18 < Wombert> I already suspected something like that ;) 07:19 < Wombert> I'd be very, very glad to have him aboard 07:19 < Wombert> it'd probably be a good idea to get him involved with agavi vs having him go back to square one with mojavi, but that's entirely up to him/you 07:20 < Wombert> oooh my coffee 07:20 < Wombert> excellent 07:20 < Wombert> brb 07:20 < jake> yeah, for sure. I thought that plan had been that once agavi got to 1.0, it would become mojavi 4? 07:21 < jake> Although that's based on rumor, I'm not exactly sure what transpired between agavi/mojavi prior to me showing up 07:23 < Wombert> well there was the plan that after agavi 1.0, we'd switch over to the mojavi team 07:23 < Wombert> but 07:23 < Wombert> I don't see that happening 07:23 < Wombert> a) I love agavi too much by now 07:23 < Wombert> b) I and everone else have invested way way way too much time to abandon it 07:23 < Wombert> c) mojavi is dead now 07:26 < jake> I'm not sure how it's abandoning it, it seems to just be a name, but I have no investment either way 07:26 < jake> mojavi has about twice as much press as agavi, but I'm not sure how recent it is 07:31 < shoan> i don't think mojavi had much press post sean kerr leaving it 07:32 < Wombert> yeah, jake, I've thought about that, too 07:32 < Wombert> however, agavi 1.0 would have to be mojavi 5.0 then... 07:33 < jake> Sure. I don't see much difference either way, I'm sure my company would put support behind a Mojavi 5 or an Agavi 1 (in terms of people, servers, etc) 07:33 < Wombert> great to hear that 07:35 < Wombert> jake: so if I understood that right, you want Sean, but he still needs to be convinced? ;) 07:35 < Wombert> good luck with that, I'm sure you'll get to hire him. at least you are a very skilled guy, and I guess that's the case for the rest of you folks too, so he'll _want_ to work there ;) 07:36 < jake> I don't think so, Sean would come on board in a heart beat. He has to get through the interview process, which is daunting :) 07:36 < Wombert> ah 07:36 < Wombert> oh 07:36 < Wombert> hm 07:36 < jake> heh, we've only had 3 people get through out of several hundred candidates 07:36 < Wombert> you changed names from 3gupload to mixxer, right? 07:36 < jake> yeah 07:36 < Wombert> I must say I don't like the new logo 07:37 < jake> haha. Well, I'm not the creative director but I'll let him know :) 07:37 < Wombert> I know they are the bad guys, but jamster have a good one IMO 07:37 < Wombert> hehe ;) 07:37 < Wombert> good news 07:37 < Wombert> i18n number formatting complete 07:37 < Wombert> dominik now working on date formatting 07:38 < Wombert> sticking close to what ICU do on their code... 07:38 < Wombert> and unlike the morons over at #symfony, we'll even include copyrigh notices and license.txt files... 07:38 < jake> sweet. So dominik is whooping ass on il8n huh? 07:39 < Wombert> you wouldn't believe that... they copied the entire directory with locale information from prado, and then REMOVED(!) the license.txt with the ICU license in it... unbelievable 07:39 < Wombert> yeah 07:39 < jake> er, i18n I suppose 07:39 < Wombert> I'll usually dispatch the difficult or boring stuff to him ;) 07:39 < jake> haha, nice 07:40 < Wombert> he did the routing (awesome work as shoan and others including me may attest), some good parts of validation and... well yeah 07:40 < Wombert> all the stuff that needs the appropriate brain ;) 07:43 < shoan> yeah...the routing rocks 07:43 < shoan> :) 07:49 < shoan> what is mixxer btw? 07:49 < Wombert> do you know jamster? 07:49 < Wombert> mmmmh 07:49 < shoan> nope 07:49 < Wombert> these are services 07:49 < Wombert> where you download ringtones for your mobile phone 07:49 < Wombert> or games 07:49 < Wombert> or screensavers 07:50 < shoan> ah ok 07:50 < Wombert> here in germany, they all have a bad reputation because often you download a ringtone, and then you get an expensive subscription with monthly fees 07:50 < Wombert> many kids etc don't notice that and have to pay loads of money 07:50 < Wombert> and the ads on tv man I swear they so get on your nerves 07:50 < shoan> i wasn't even sure there was a huge market for those things 07:50 < jake> We're completely changing our business model 07:51 < shoan> jake: you work at mixxer? 07:51 < Wombert> jake described 3gupload (now mixxer) as "we just don't have the questionable billing methods" when I mentioned I know jamba/jamster who do the same thing 07:51 < jake> yeah 07:51 < jake> We're basically only selling stuff as an add-on, starting about mid september 07:51 < Wombert> change business model? in what direction 07:51 < jake> I'll let you know in mid September, but the new stuff fucking rocks 07:51 < Wombert> how's that different from now 07:51 < jake> Well, right now we make all our revenue through sales 07:52 < jake> Starting soon, we'll not worry about sales and focus on other revenue streams derived from a new product 07:52 < Wombert> sounds like you'll become a carrier or a reseller 07:52 < jake> The new product is what I've been working on for the past few months 07:52 < jake> neither 07:52 < Wombert> hmmh 07:52 < jake> heh, you'll be the first to know come mid September 07:53 < Wombert> okay :) 07:53 < Wombert> that's only two weeks away 07:53 < jake> yep 07:53 < jake> We're launching on 9/14 07:53 < Wombert> on schedule? 07:53 < jake> yep 07:53 < Wombert> oh 07:53 < Wombert> schweet 07:53 < jake> And I'm just now writing an email saying, "I'm done" 07:53 < Wombert> oO 07:53 < jake> I just finished the last line of code 07:53 < Wombert> hey that's great 07:53 < Wombert> so now it's testing time 07:54 < jake> yep 07:54 < jake> We're doing 7 days of dev testing, then 7 days of company wide testing 08:02 < Wombert> shoan: the market is... huge to say the least 08:03 < Wombert> and my guess is that while europe is fairly saturated already (at least the german market), there's enormous growth potential in the united states 08:03 < Wombert> short messages are pretty uncommon there unlike for example here in germany 08:07 < Wombert> I tamed the Shrew (IIS+CGI) 08:07 < Wombert> hooray! 08:07 < jake> haha. Where did you even get an IIS server? 08:07 < Wombert> I installed it 08:07 < Wombert> or 08:07 < Wombert> well 08:07 < Wombert> I still have a windows box here ;) 08:08 < Wombert> Windows XP Pro 08:08 < Wombert> and you get IIS with it 08:08 < jake> wow 08:08 < Wombert> and then I installed PHP via ISAPI, then via CGI, then added ISAPI_Rewrite etc etc 08:08 < Wombert> also installed lighttpd, Zeus and Lightspeed are next 08:09 < Wombert> it's a bit of work but I guess it'll be a good thing if we can say "yes, it works with "... "no, there are no known issues".... "yes, it really works"... "yes we tested it" 08:09 < Wombert> for instance, I get _twice_ the performance with lighttpd+5.1.5 vs apache1.3+5.0.4 08:10 < Wombert> so it might well be another point in favor of agavi if someone has to decide what framework to use 08:10 < jake> that's interesting 08:10 < Wombert> "yeah we have apache and it works, but we can easily switch to lighty if we get slashdotted one day" 08:11 < jake> heh 08:11 < Wombert> we have database session support, perfect for clusters... so... on our way towards becoming a solid enterprise framework ;) 08:12 < Wombert> who knows, maybe one day you'll stop prototyping apps in php and porting them to java later, because agavi is good enough ;) 08:12 < jake> actually we haven't moved anything to java as of yet :) 08:12 < jake> We haven't had time, everything has pretty much worked well enough 08:12 < Wombert> that's good news 08:12 < Wombert> I guess it would work even better with 0.11 08:13 < Wombert> speaking of which 08:13 < Wombert> I'll need you to have a look at it and decide if anything is missing for your use cases when 0.11beta1 is out 08:13 < Wombert> so we can get changes in before we freeze 08:19 < Wombert> mmmh 08:19 < Wombert> granny smith for teh win 08:20 < v-dogg> huomenta 08:21 < Wombert> morning 08:21 < v-dogg> what's happening 08:21 < Wombert> uuuh 08:21 < v-dogg> heh, go symfony, go! :D 08:21 < Wombert> haha :> 08:21 < Wombert> reading teh logs, eh 08:22 < v-dogg> yeah, browsing quickly 08:23 < v-dogg> did they reply anything to you? 08:24 < v-dogg> or did you send them some note about those licenses? 08:24 < Wombert> nah 08:24 < Wombert> I'll have to talk to fabien about this 08:24 < Wombert> didn't have the time yet 08:25 < Wombert> couldn't care less, either... why not wait until someone sues them over it, harhar 08:25 < Wombert> j/k 08:26 < v-dogg> I browsed thru Zend_Pdf's code last night 08:26 < jake> the Zend_ code is horrible 08:26 < v-dogg> it has some nice features.. but the code... 08:26 < v-dogg> zillionkiljonfillion require_once on every file 08:27 < Wombert> yeah 08:27 < Wombert> what did you expect 08:27 < Wombert> they bombed the UN 08:27 < Wombert> harhar 08:27 < v-dogg> well... :) 08:27 * Wombert falls over 08:27 < v-dogg> something better :) 08:27 < v-dogg> I hacked R&OS pdf class last night 08:28 < Wombert> it's... .mmmh 08:28 < Wombert> I'm not sure if I like it 08:28 < v-dogg> made it php5 strict compatible and added a utf-filter 08:28 < v-dogg> I don't know if I like it either but so far it's the best I've found 08:29 < Wombert> i18n + date stuff... what do you guys need? 08:29 < v-dogg> coffee 08:29 < v-dogg> international coffee 08:29 < v-dogg> and date-- 08:29 < v-dogg> time is running out :) 08:43 < eremit> morning 08:43 < Wombert> hi eremit 08:45 < eremit> [07:26] i18n + date stuff... what do you guys need? << i18n 08:45 < Wombert> ? 08:45 < Wombert> no I mean... 08:45 < Wombert> date stuff in i18n 08:45 < eremit> ah i got your quest wrong :P 08:45 < Wombert> you know... formatting dates 08:45 < Wombert> localized month names 08:45 < Wombert> all that 08:45 < eremit> eegs ... yes ... 08:45 < Wombert> do you need, for instance, milliseconds 08:45 < Wombert> or 08:45 < Wombert> dates pre 1970 08:45 < Wombert> etc etc etc 08:46 < eremit> dates pre 1970 yes ... definately 08:46 < Wombert> the issue is that formatting numbers, translating text, currency stuff etc is easy to do 08:46 < eremit> miliseconds ... uhm i only need them for ugly style benchmarking 08:46 < Wombert> date is a major pain 08:46 < Wombert> and there are no good libraries 08:46 < Wombert> and we can't rely on php's stuff 08:47 < eremit> how have the other frameworks solved it ? 08:49 < Wombert> they use unix timestamp... 08:49 < Wombert> and php's stuff, apparently 08:49 < Wombert> that won't work, tho, if the locale is not installed etc etc etc etc 08:50 < eremit> hmm 08:51 < v-dogg> dates are tricky if you need month/day names 08:51 < Wombert> yeah 08:51 < Wombert> and +1day 08:52 < Wombert> and stuff like that 08:53 < eremit> wombert have you taken a look into the solution prado uses ? ... afaik several frameworks have borrowed their code ... 08:53 < eremit> http://trac.pradosoft.com/browser/trunk/framework/I18N 08:53 < Wombert> yeah 08:53 < Wombert> symfony stole the code... without copying the license.txt files 08:53 < Wombert> we're looking at it since the beginning 08:53 < eremit> yepp ... 08:53 < Wombert> it seems to be modeled after ICU 08:53 < Wombert> which we're using as the reference, too 08:53 < eremit> they are really p*ssed off ... 08:53 < Wombert> see the thing is 08:54 < Wombert> prado has the data from ICU 08:54 < Wombert> and they added a license.txt with the ICU license 08:54 < Wombert> symfony grabbed all the data from prado 08:54 < Wombert> but not the license.txt 08:54 < Wombert> same issue with the LGPL... symfony uses MIT, but they're actually not allowed to do that 08:55 < eremit> because of being originally a fork of mojavi ? 08:55 < Wombert> same thing with propel... nowhere do they clearly say that propel is not a symfony part, but an external library they bundle, which leads to some confusion, and doesn't do the propel creators justice 08:55 < Wombert> yes 08:55 < eremit> kick'em ... 08:55 < Wombert> it's based on mojavi, and mojavai is LGPL, and the LGPL requires derived work to be GPL or LGPL 08:56 < eremit> yep ... i thought they had some kind of license change contract to mojavi ... 08:56 < Wombert> maybe 08:57 < Wombert> not to my knowledge, but then, what do I know 08:57 < Wombert> if that was the case, they should include a note saying so tho 08:57 < eremit> omg ... they took the prado code, changed the filenames and left the bsd license header in the file ... what a mess 08:57 < Wombert> yeah 08:58 < Wombert> symfony is a loose collection of whatever they managed to copy from other frameworks 08:58 < Wombert> one of their today's problems ;) 08:58 < Wombert> no controlled evolution 08:58 < eremit> even greater having this license issues makes their fw useless to firms 09:00 < v-dogg> somebody should really give them a good old ass whipping :) 09:00 < v-dogg> no-one is that stupid :D 09:01 < Wombert> I was thinking about doing some blog posts that explain how great agavi is 09:01 < Wombert> then write an email to fabien on... like... saturday in the evening 09:01 < eremit> you are propel dev also ? ... 09:01 < eremit> and have contact to the mojavi devs ? 09:01 < Wombert> and if he doesn't reply until monday in the morning, bam, I hit the "publish" button on the "why symfony sucks" post ;) 09:02 < Wombert> but that wouldn't be fair 09:02 < Wombert> fabien is a nice guy 09:02 < Wombert> eremit: yeah I'm a propel lead dev 09:02 < Wombert> contract? mojavi? huh? 09:02 < eremit> contact 09:02 < Wombert> ah 09:02 < Wombert> xD 09:02 < eremit> :D 09:03 < Wombert> well feti was here uhm.. on tuesday or so 09:03 < eremit> because this is pretty ugly here: http://www.symfony-project.com/forum/index.php/m/769/?srch=license#msg_1009 09:03 < eremit> fork symfony and make it comercial 09:03 < eremit> uh ... 09:06 < v-dogg> hmph... 09:07 < v-dogg> is fabien just ignorant, blind or stupid? 09:07 < v-dogg> surely he knows that you can't just take whatever opensource code and re-license it? 09:07 < Wombert> well 09:07 < Wombert> at least he doesn't seem to care much 09:08 < Wombert> back then when that Rovert guy just copied code from agavi 09:08 < Wombert> and put it into symfony 09:08 < Wombert> and removed the copyright info 09:08 < eremit> oO 09:08 < Wombert> I asked him "when was the last time you read the LGPL anyway" 09:08 < Wombert> and he said "uuuh don't know some years ago or so" (iirc) 09:09 < eremit> ouch 09:09 < Wombert> obviously, it wasn't his fault, but still... 09:09 < splatch`> hello 09:09 < Wombert> and he was quick to apologize etc so... 09:09 < eremit> hrhr 09:09 < Wombert> I really like him, he's a good person 09:10 < Wombert> but still he shouldn't sacrifice "honesty" (you know what I mean) while trying to get attention, market share, buzz around symfony 09:10 < eremit> they will lose in long terms anyway ... 09:11 < splatch`> you speaking about..? 09:11 < Wombert> well I guess they will once it comes to their user's attention that they are using software which violates at least to licenses 09:12 < Wombert> most people won't care, but companies, at least the larger ones, have to 09:12 < Wombert> splatch`: symfony 09:12 < splatch`> aha 09:12 < eremit> every company even the smaller ones have to, at least after the problem got their attention ... 09:12 < Wombert> and they _must_ make that public, they can't just silently change it 09:12 < Wombert> at least in theory 09:13 < eremit> i'm sitting here in a small company and even i have to report about every line of 3rd party code ... 09:13 < splatch`> I like symfony 09:13 < eremit> their main problem is their grown complexity ... 09:13 < Wombert> splatch`: we don't ;) for example because they violate other licenses and don't care about intellectual property etc 09:14 < splatch`> but symfony are comfort and complex framrwork 09:15 < Wombert> yes 09:15 < splatch`> and he is better than all ror-clones like Cake, PHP in Trax etc 09:15 < Wombert> but they violate other licenses 09:16 < splatch`> does author going do to something with this problem? 09:16 < Wombert> I haven't had the chance to talk to fabien yet 09:16 < v-dogg> and, as far as I know, are getting more and more messy 09:16 < v-dogg> with their AddJavascript methods :D 09:16 < Wombert> he doesn't seem to be online very often these days 09:16 < Wombert> haha yeah 09:16 < Wombert> what did they introduce the other day? 09:16 < Wombert> aaaah yeah 09:17 < Wombert> ajax actions 09:17 < v-dogg> yeah :) 09:17 < Wombert> oooh man that's appalling 09:17 < eremit> s.t. like $myView->addAjaxRequestFunctionToHtml() ? 09:17 < Wombert> nah 09:17 < Wombert> in the actions ( I think) you use a method to set the document title 09:18 < Wombert> or add a javascript include 09:18 < Wombert> or a stylesheet 09:18 < splatch`> Wombert: why Agavi still have so many module files - like TestSuccessView with only one method - execute 09:18 < Wombert> then, in the template, you do or so 09:18 < Wombert> it's very, very uncool 09:18 < splatch`> that's terrible 09:18 < eremit> hmmm ... that really uncool .. :/ 09:19 < Wombert> splatch`: yeah that is something we might change in agavi 2.0 09:19 < Wombert> views can have execute() methods 09:19 < Wombert> or executeOutputtype() 09:19 < splatch`> Wombert: until? ;) 09:19 < Wombert> excuteHtml(), executeJson(), executePdf() etc 09:19 < Wombert> that's the idea behind it 09:19 < splatch`> Wombert: no, executeSuccess, executeInput will be better 09:20 < eremit> NO 09:20 < splatch`> yes 09:20 < splatch`> to output types 09:20 < splatch`> I can 09:20 < v-dogg> hmm.. what's the most efficient way to do result set scrolling (ie. showing search results 1-15, 16-30, 31-... ) 09:20 < splatch`> extend some view class 09:20 < splatch`> AbstractTestView 09:20 < Wombert> splatch`: nope 09:20 < splatch`> ? :( 09:20 < eremit> v-dogg: pardon ? 09:20 < Wombert> View::initialize() might define an output type 09:20 < Wombert> also, output types may fall back after View::execute 09:21 < Wombert> we've put quite some thought into this; right now, there is no other way 09:21 < v-dogg> eremit: showing parts of the result set (of a search) on a separate pages 09:21 < Wombert> eremit: you did notice handleFallback(), didn't you? 09:21 < Wombert> v-dogg: propel has a ProeplPager for that 09:21 < eremit> Wombert, yeah ... currently i'm refactoring here, and have to test the fallback stuff today :) 09:22 < eremit> v-dogg: i use offset in the query ... offset = (page-1)*pagesize 09:22 < eremit> propel has a pager? :/ 09:22 < v-dogg> sure, but can I cache some of the data, so that I don't have to query everything every time 09:22 < splatch`> eremit: yes, in util catalog 09:23 < splatch`> Wombert: how will be do ajax integration 09:23 < splatch`> Wombert: like output type? 09:23 < Wombert> splatch`: not needed 09:23 < Wombert> if an action should be able to return html fragments, xml, json or so in addition to a full page 09:23 < Wombert> you can use an output type for that 09:23 < Wombert> this makes it very good for gracefully degrading sites 09:24 < Wombert> e.g. the "details" button next to each product in the list links to /products/view/1623123 09:24 < Wombert> with javascript, you hook into the click and load that same url via xmlhttprequest 09:24 < Wombert> a header will tell agavi to use "json" instead of "html" as the output type 09:24 < Wombert> and that's all you need 09:24 < Wombert> same action, same view, just a new template andmaybe some stuff in View::executeJson() or so 09:24 < splatch`> Wombert: i heard about form validation with ajax... 09:25 < Wombert> we don't have that yet 09:25 < Wombert> but you could do it 09:25 < splatch`> i can try :) 09:25 < Wombert> for example, you could send back a list of fields and their error names 09:25 < Wombert> I think that should work 09:26 < Wombert> Time: 7.967233 09:26 < Wombert> OK (270 tests) 09:26 < Wombert> :) 09:27 < splatch`> Wombert: cool, i try do this on next week 09:27 < splatch`> *l'll 09:27 < splatch`> blah 09:27 < splatch`> I will 09:27 < Wombert> :> 09:28 < splatch`> why, why, why php framework doesn't have IDEs... ;( 09:29 < eremit> because a ide has nothing to do with the framework O o 09:30 < splatch`> eremit: your wrong 09:30 < splatch`> *you 09:30 < splatch`> eremit: you saw for example spring-ide? 09:30 < eremit> yes 09:31 < splatch`> this is really usefull tool 09:32 < eremit> i you write a framework which needs an ide to manage the config files, you should really really rethink your solution ...lol 09:32 < eremit> did i mention i don't like spring :P 09:33 < splatch`> eremit: you don't need use spring IDE 09:33 < splatch`> but this is usefull 09:33 < splatch`> and you can write faster 09:34 < eremit> i never said it's not usefull ... 09:34 < splatch`> spring is bad? this is dogma? ;) 09:34 < eremit> i dislike spring ... one reason is this ide ... 09:35 < splatch`> another reason is..? 09:35 < eremit> they have written a framework which is complex like hell ... and it's nearly impossible to get into it in a reasonable time ... 09:35 < eremit> the ide they wrote was a direct result of their complexity ... 09:36 < eremit> another point not only against spring, but against java and webapps in general is ... its pure hell for a system administrator to maintain a java installation ... 09:36 < splatch`> eremit: spring is not invasion framework 09:37 < splatch`> eremit: on first, use for example spring JDBC-templates 09:37 < splatch`> later spring-ioc 09:38 < eremit> i will never use it sorry ... 09:38 < eremit> i tried webdevelopment in java once ... and will never do again ... 09:38 < splatch`> eremit: I tired PHP 09:39 < splatch`> I have to back work 09:40 < splatch`> bye 09:40 < eremit> me too :( ... cya 09:55 -!- _horros is now known as horros 09:56 < horros> hi 09:57 < v-dogg> morn 09:57 < v-dogg> ah. it's time. 09:57 < v-dogg> for someone to tell me how to use action filters :) 09:58 < v-dogg> per action 09:59 < Wombert> you mean so a filter is only applied to a specific action? 09:59 < v-dogg> yep 09:59 < Wombert> check the action name inside the filter ;) 09:59 < Wombert> and use executeOnce 09:59 < v-dogg> :P 10:00 < v-dogg> but it's FPF... :) 10:00 < Wombert> you want to run it only for once action? 10:00 < Wombert> oO 10:00 < v-dogg> I need it do be run on read 10:00 < v-dogg> for this action 10:01 < Wombert> use populate 10:01 < Wombert> it will run then 10:01 < v-dogg> ah, of course 10:01 < Wombert> of course! 10:01 < Wombert> :) 10:01 < v-dogg> ta :) 10:01 < horros> gaah 10:01 < horros> need 10:01 < horros> coffee! 10:01 < Wombert> need 10:01 * horros blinks 10:01 < Wombert> sleep 10:02 < horros> Wombert: a shitload of people were drinking beer and yelling ourside our building last night :( 10:02 < Wombert> that's uncool 10:03 < horros> then they left, and I finally fell asleep. a while later they come back with a car, driving like they have a hole through their head, spewing gravel all over the yard 10:03 < horros> and start yelling some more 10:03 < horros> :( 10:03 < Wombert> wtf 10:03 < horros> I didn't really care to get a knife in my gut, so I didn't go outside and yell at them to stfu 10:07 < Wombert> yeah 10:07 < CIA-6> david * r1033 /trunk/ (9 files in 6 dirs): 10:07 < CIA-6> Added support, tests and documentation for Microsoft Internet Information Services with PHP running as CGI and as ISAPI, both with and without ISAPI_Rewrite installed but not active, and installed and active (rewriting). 10:07 < CIA-6> Also refactored the WebRequest a bit to determine all the stuff on initialize and make it more flexible, should now also be IPv6-ready. This is the basis for yet another WebRouting refactoring which I'll tackle now. 10:17 < CIA-6> david * r1034 /trunk/KNOWN_ISSUES: added KNOWN_ISSUES file with first known issue with IIS/CGI 10:21 < CIA-6> david * r1035 /trunk/KNOWN_ISSUES: updated known issues to better reflect the problem 10:28 < CIA-6> david * r1036 /trunk/src/routing/AgaviWebRouting.class.php: very minor style and phpdoc fixes to routing handlers 10:29 < v-dogg> hey... why isn't MyPropelDatabase::connect (extends AgaviPropelDatabase) never called? 10:30 < Wombert> what do you mean... never 10:30 < Wombert> i.e. when should it be called 10:30 < Wombert> by just using propel? 10:30 < v-dogg> yep 10:31 < Wombert> nah it doesn't work that way 10:31 < v-dogg> hmm... 10:31 < Wombert> PropelDatabase does two things 10:31 < Wombert> a) you can get a creole connection from it, using the propel conf file you have in databases.xml 10:31 < Wombert> b) tell PropelAutoload what to do 10:31 < Wombert> a) will re-use the connection or allow connection re-use 10:31 < Wombert> i.e. if propel already opened a connection 10:32 < Wombert> getConnection() will use the same 10:32 < Wombert> and vice versa 10:32 < Wombert> but PropelAutoload never uses getConnection() 10:32 < v-dogg> hmm... 10:32 < v-dogg> hmm... 10:32 < v-dogg> I need to set searc_path some where 10:33 < Wombert> ? 10:34 < v-dogg> postgres's schema search_path 10:34 < v-dogg> propel doesn't find my tables 10:35 < Wombert> oO 10:35 < Wombert> write to the mailing list maybe 10:36 < Wombert> but for now, you could use a filter or so 10:36 < Wombert> to use getConnection() 10:36 < eremit> can a view somehow decide not to render itself ? 10:36 < Wombert> and set the search path 10:36 < Wombert> eremit: yeah 10:36 < Wombert> don't set a template 10:36 < v-dogg> ok then. lets write a filter 10:36 < eremit> ah ... ok ... 10:36 < v-dogg> my first filter 10:36 < Wombert> v-dogg: maybe also in some initialize() method 10:36 < Wombert> v-dogg: global filter tho, mind ya 10:36 < Wombert> v-dogg: but 10:37 < Wombert> uuuh no wait 10:37 < Wombert> do it somewhere else 10:37 < Wombert> filter is too late... if the user grabs stuff fromt he db on init or so 10:37 < Wombert> I think the db connections are initialized 10:37 < Wombert> do it there 10:38 < eremit> proposal: add AgaviView::clearTemplate ... AgaviView::setTemplate(null); is ambigious ... 10:39 < Wombert> you could simply not set a template 10:40 < eremit> ... the view i'm extending from always adds a template per default ... 10:40 < eremit> so i have to remove it in this only special case 10:42 < v-dogg> crap.. initialize is not called either 10:43 < v-dogg> how is that possible.. 10:45 -!- shoan [n=shoan@59.92.140.196] has quit [] 10:46 < CIA-6> david * r1037 /trunk/src/routing/AgaviWebRouting.class.php: 'Everything is proceeding as I have foreseen.' (imagine an evil laugh here)... goodbye routing input handlers, one method to rule them all 10:49 < v-dogg> hmm.. it is called 10:50 < v-dogg> but why isn't the search path set... 10:55 < Wombert> you're calling parent::initialize() first? 10:55 < v-dogg> yep 10:56 < v-dogg> the search path IS set but for some reasone propel don't get it 10:56 < Wombert> propel 1.2.0rcsomething? 10:56 < v-dogg> hmm.. yes, I think 10:56 < Wombert> propel _should_ re-use the same connection 10:56 < Wombert> maybe propel is called and there for initialized before the database? 10:57 < v-dogg> might be 10:57 < Wombert> check that 10:57 < Wombert> could be the problem 10:57 < Wombert> I modified propel and creole to try everything to re-use the connection 10:57 < Wombert> maybe they changed it again but I doubt so 10:58 < Wombert> might be a bug or just a pgsql driver thing 11:12 < CIA-6> david * r1038 /trunk/src/routing/AgaviWebRouting.class.php: just to be sure, a condition for IIS+CGI 11:19 -!- _raidman|Away [n=raidman@85-18-14-41.fastres.net] has joined #agavi 11:31 -!- horros [n=mle@a81-197-149-150.elisa-laajakaista.fi] has left #agavi ["Leaving"] 11:37 -!- raidman|Away [n=raidman@85-18-14-41.fastres.net] has quit [Read error: 110 (Connection timed out)] 11:43 -!- horros [n=mle@a81-197-149-150.elisa-laajakaista.fi] has joined #agavi 11:59 -!- digitarald [n=Miranda@159.Red-83-55-63.dynamicIP.rima-tde.net] has joined #agavi 11:59 < digitarald> Bon día :) 12:01 -!- shoan [n=shoan@61.95.206.107] has joined #agavi 12:39 -!- digitarald| [n=Miranda@66.Red-83-55-76.dynamicIP.rima-tde.net] has joined #agavi 12:41 -!- digitarald [n=Miranda@159.Red-83-55-63.dynamicIP.rima-tde.net] has quit [Read error: 104 (Connection reset by peer)] 13:00 < digitarald|> anybody here for a renderer question? 13:02 < horros> http://absoludicrous.com/~toast/WTFH4X.jpg 14:04 -!- digitarald| [n=Miranda@66.Red-83-55-76.dynamicIP.rima-tde.net] has quit [Read error: 104 (Connection reset by peer)] 14:09 -!- digitarald [n=Miranda@66.Red-83-55-76.dynamicIP.rima-tde.net] has joined #agavi 14:24 -!- jake [n=jake@c-24-19-45-189.hsd1.wa.comcast.net] has quit ["Leaving"] 15:08 -!- shoan [n=shoan@61.95.206.107] has quit [Read error: 104 (Connection reset by peer)] 15:16 -!- shoan [n=shoan@61.95.206.107] has joined #agavi 17:38 -!- shoan [n=shoan@61.95.206.107] has quit [] 18:02 < Wombert> digitarald: yeah 18:02 < Wombert> you had a renderer question 18:04 < digitarald> too late ... resolved 18:04 < digitarald> but ty ;) 18:04 < Wombert> kk 18:05 < Wombert> attn everyone: symfony has permission to change the license from sean kerr 18:05 < Wombert> no issues there 18:07 < eremit> Oo 18:31 < digitarald> can i insert : in routing pattern? 18:32 < digitarald> like /user:myname 18:32 < digitarald> i cant insert : ... its ignored ... and i can't escape \: ... 19:28 -!- shoan [n=shoan@59.92.166.131] has joined #agavi 19:31 < Wombert> digitarald: seems to work for me 19:39 < digitarald> (:{username:[a-z]*})? 19:41 < Wombert> why a prefix 19:42 < digitarald> seperation 19:43 < digitarald> its just an example. wanted : as seperator ... just in this pattern 19:43 < Wombert> why don't you do /user:(username:[a-z]) 19:43 < digitarald> it was just an example 19:44 < Wombert> it works for me 19:44 < digitarald> this is the pattern ... and add is an optional free text: 19:44 < Wombert> 19:44 < Wombert> http://127.0.0.1/~dzuelke/_projects/agavi/trunk/samples/pub/products/buy-cheap:mad%20coding%20skills-at-agavi-dot-org/4815162342 19:44 < Wombert> Congratulations! 19:44 < Wombert> You just found the #1 place to buy mad coding skills at low prices! 19:44 < digitarald> pattern... /image/({source:[a-z]+}-)?(id:[0-9]+)(-{field:[a-z]+})?(/{add:.*})? 19:45 < digitarald> with : ... /image/({source:[a-z]+}-)?(id:[0-9]+)(-{field:[a-z]+})?(:{add:.*})? 19:49 < Wombert> k 19:49 < Wombert> fixing that 19:51 < digitarald> tried that out? 20:04 -!- benny`work [n=benny@p54AC387E.dip0.t-ipconnect.de] has joined #agavi 20:21 < digitarald> does anybody uses the AgaviIsuploadedValidator? 20:28 -!- digitarald [n=Miranda@66.Red-83-55-76.dynamicIP.rima-tde.net] has quit ["Miranda IM! Smaller, Faster, Easier. http://miranda-im.org"] 20:35 -!- Wombert [n=Wombert@dslb-088-064-002-219.pools.arcor-ip.net] has quit [] 20:59 -!- Wombert [n=Wombert@dslb-088-064-002-219.pools.arcor-ip.net] has joined #agavi 21:12 -!- digitarald [n=Miranda@62-43-0-206.user.ono.com] has joined #agavi 22:18 -!- impl [n=impl@httpcraft/php/nforbes] has joined #agavi 22:42 -!- benny`work is now known as benny`patchslut --- Day changed Sat Sep 02 2006 00:40 -!- digitarald| [n=Miranda@62-43-0-206.user.ono.com] has joined #agavi 00:51 -!- digitarald [n=Miranda@62-43-0-206.user.ono.com] has quit [Read error: 110 (Connection timed out)] 00:52 -!- _raidman|Away [n=raidman@85-18-14-41.fastres.net] has quit [Remote closed the connection] 00:52 -!- raidman|Away [n=raidman@85-18-14-41.fastres.net] has joined #agavi 01:17 -!- shoan [n=shoan@59.92.166.131] has quit [Read error: 113 (No route to host)] 01:21 -!- shoan [n=shoan@59.92.147.218] has joined #agavi 01:34 -!- shoan_ [n=shoan@59.92.145.57] has joined #agavi 01:42 -!- shoan [n=shoan@59.92.147.218] has quit [Read error: 110 (Connection timed out)] 02:17 -!- benny`patchslut [n=benny@p54AC387E.dip0.t-ipconnect.de] has quit ["unset($this);"] 03:22 -!- [1]eremit [n=eremit@p5490CBAC.dip.t-dialin.net] has joined #agavi 03:41 -!- eremit [n=eremit@p5490B447.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 03:41 -!- [1]eremit is now known as eremit 03:50 -!- Wombert [n=Wombert@dslb-088-064-002-219.pools.arcor-ip.net] has quit [Nick collision from services.] 03:50 -!- Wombert [n=Wombert@dslb-088-064-002-123.pools.arcor-ip.net] has joined #agavi 06:22 -!- Wombert [n=Wombert@dslb-088-064-002-123.pools.arcor-ip.net] has quit [] 08:11 -!- impl [n=impl@httpcraft/php/nforbes] has quit ["Leaving"] 08:53 -!- raidman [n=raidman@unaffiliated/raidman] has joined #agavi 08:56 < raidman> morning 09:07 < eremit> morning^^ 10:16 < horros> huomenta 10:19 < shoan_> morning :) 10:30 -!- Macca [i=brendanm@maccasoft.com.au] has quit [Remote closed the connection] 10:32 -!- Macca` [i=brendanm@maccasoft.com.au] has joined #agavi 11:20 -!- raidman|Away [n=raidman@85-18-14-41.fastres.net] has quit [Read error: 110 (Connection timed out)] 11:57 -!- raidman [n=raidman@unaffiliated/raidman] has quit [Read error: 110 (Connection timed out)] 12:02 -!- raidman [n=raidman@unaffiliated/raidman] has joined #agavi 12:55 -!- shoan [n=shoan@59.92.133.229] has joined #agavi 13:13 -!- shoan_ [n=shoan@59.92.145.57] has quit [Read error: 110 (Connection timed out)] 13:17 -!- shoan_ [n=shoan@59.92.155.238] has joined #agavi 13:34 -!- shoan [n=shoan@59.92.133.229] has quit [Read error: 110 (Connection timed out)] 14:39 -!- benny`work [n=benny@p54AC2A0B.dip0.t-ipconnect.de] has joined #agavi 15:25 -!- digitarald| [n=Miranda@62-43-0-206.user.ono.com] has quit ["Miranda IM! Smaller, Faster, Easier. http://miranda-im.org"] 15:26 -!- digitarald [n=Miranda@62-43-0-206.user.ono.com] has joined #agavi 15:26 < digitarald> Morning 15:28 < raidman> digitarald, morning 15:28 < raidman> evening :) 16:08 -!- toby_swe [n=Miranda@nl109-140-176.student.uu.se] has joined #agavi 16:18 -!- Wombert [n=Wombert@dslb-088-064-002-123.pools.arcor-ip.net] has joined #agavi 16:44 < digitarald> validator question: how can i use my own validators in my xmls? 16:47 < digitarald> Wombert? 17:15 < digitarald> Heeellooo? 17:15 < digitarald> anybody here? 17:20 < digitarald> isuploadedimagevalidator and uploadedfilevalidator are broken because if getData does return request value, not file parameter! 17:21 < digitarald> ok, only isuploadedimage is broken 21:39 -!- raidman [n=raidman@unaffiliated/raidman] has quit [Read error: 110 (Connection timed out)] 21:42 -!- impl [n=impl@httpcraft/php/nforbes] has joined #agavi --- Day changed Sun Sep 03 2006 00:22 -!- digitarald [n=Miranda@62-43-0-206.user.ono.com] has quit ["Miranda IM! Smaller, Faster, Easier. http://miranda-im.org"] 03:22 -!- [1]eremit [n=eremit@p5490EE34.dip.t-dialin.net] has joined #agavi 03:39 -!- eremit [n=eremit@p5490CBAC.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 03:39 -!- [1]eremit is now known as eremit 03:49 -!- Wombert [n=Wombert@dslb-088-064-002-123.pools.arcor-ip.net] has quit [Nick collision from services.] 03:50 -!- Wombert [n=Wombert@dslb-088-064-004-057.pools.arcor-ip.net] has joined #agavi 04:21 -!- benny`work [n=benny@p54AC2A0B.dip0.t-ipconnect.de] has quit [Read error: 110 (Connection timed out)] 08:27 -!- raidman [n=raidman@unaffiliated/raidman] has joined #agavi 09:25 -!- impl [n=impl@httpcraft/php/nforbes] has quit ["Leaving"] 09:42 < raidman> morning :) 10:35 -!- raidman [n=raidman@unaffiliated/raidman] has quit [Read error: 113 (No route to host)] 10:41 -!- raidman [n=raidman@unaffiliated/raidman] has joined #agavi 11:15 -!- Macca [i=brendanm@maccasoft.com.au] has joined #agavi 11:22 -!- raidman [n=raidman@unaffiliated/raidman] has quit ["Leaving"] 11:28 -!- Macca` [i=brendanm@maccasoft.com.au] has quit [Read error: 110 (Connection timed out)] 11:41 -!- raidman [n=raidman@unaffiliated/raidman] has joined #agavi 11:43 -!- shoan_ [n=shoan@59.92.155.238] has quit [] 12:04 -!- digitarald [n=Miranda@62-43-0-206.user.ono.com] has joined #agavi 16:20 -!- devosc [n=devosc@adsl-146-167-121.mem.bellsouth.net] has joined #agavi 16:26 -!- benny`work [n=benny@p54AC0982.dip0.t-ipconnect.de] has joined #agavi 16:31 -!- raidman [n=raidman@unaffiliated/raidman] has quit [Read error: 110 (Connection timed out)] 19:05 -!- impl [n=impl@httpcraft/php/nforbes] has joined #agavi 21:16 -!- devosc [n=devosc@adsl-146-167-121.mem.bellsouth.net] has left #agavi [] 21:28 -!- shoan [n=shoan@59.92.169.39] has joined #agavi 22:32 -!- shoan [n=shoan@59.92.169.39] has quit [] --- Day changed Mon Sep 04 2006 01:49 -!- benny`work [n=benny@p54AC0982.dip0.t-ipconnect.de] has quit ["unset($this);"] 02:39 -!- Wombert [n=Wombert@dslb-088-064-004-057.pools.arcor-ip.net] has quit [] 03:22 -!- [1]eremit [n=eremit@p5490DC54.dip.t-dialin.net] has joined #agavi 03:34 -!- pressureman [n=pressure@ip-202-37-228-10.internet.co.nz] has joined #agavi 03:40 -!- eremit [n=eremit@p5490EE34.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 03:41 -!- [1]eremit is now known as eremit 04:10 -!- toby_swe [n=Miranda@nl109-140-176.student.uu.se] has quit ["Miranda IM! Smaller, Faster, Easier. http://miranda-im.org"] 04:34 -!- shoan [n=shoan@59.92.169.39] has joined #agavi 05:38 -!- pressureman [n=pressure@ip-202-37-228-10.internet.co.nz] has left #agavi [] 07:26 -!- pressureman [n=pressure@ip-202-37-228-10.internet.co.nz] has joined #agavi 07:43 -!- pressureman [n=pressure@ip-202-37-228-10.internet.co.nz] has left #agavi [] 07:45 -!- Wombert [n=Wombert@dslb-088-064-001-041.pools.arcor-ip.net] has joined #agavi 07:45 < Wombert> houmenta 07:46 < shoan> houmenta Wombert 07:52 < Wombert> good news 07:53 < Wombert> I think dominik and I figured out a schweet system for date translation, conversion, formatting, calculation etc 07:53 < Wombert> willl even support different calendar systems 08:02 < ttj> Huomenta. 08:03 < ttj> Any estimates on the release candidate? :-) 08:08 < Wombert> nope 08:08 < Wombert> beta 1 next week the earliest 08:08 < Wombert> i18n will take some time 08:08 < Wombert> we will implement large parts of ICU's functionality 08:08 < Wombert> and use all of their locale, timezone etc data 08:09 < Wombert> we can't rely on locales,they are not safe for multithreading, and you always need them installed 08:09 < Wombert> that sucks 08:11 < ttj> Not to be pushy or anything, but if I18N is a Big Thing, couldn't we at some point ship .11 and then offer I18N in .11.1? :-) 08:17 < v-dogg> huomenta 08:19 < ttj> 'men. 08:20 < ttj> Anyway, nearly in Helsinki. Time to pack up the laptop and phone and get ready to continue the commute to the office. Catch you all in a bit. 08:24 < Wombert> ttj: oO 08:24 < Wombert> ttj: the thing is... I want 0.11 to be feature-complete 08:24 < Wombert> so everyone knows "yes, yes, that's the final thing" 08:24 -!- raidman [n=raidman@unaffiliated/raidman] has joined #agavi 08:24 < Wombert> the idea is that we implement everything 08:24 < Wombert> and then ship beta 1 08:24 < Wombert> even though everything is in 08:24 < Wombert> and, in our eyes, final 08:25 < Wombert> and, in large parts, production stable 08:25 < Wombert> the idea is that people can still step up and say "uhhhh this and that is a bad idea because " 08:25 < raidman> morning 08:25 < Wombert> and we'll change it accordingly, if it's a bad idea 08:25 < Wombert> raidman: hi 08:25 < Wombert> raidman: are you using the persian calendar in iran? 08:25 < raidman> Wombert, yes 08:25 < raidman> Jalali 08:26 < Wombert> raidman: then you'll be excited to hear that agavi's i18n will support that ;) 08:26 < ttj> Wombert: Ah, ok. 08:26 < raidman> Wombert, really 08:27 < raidman> that souns good 08:27 < Wombert> yep... at least it will be capable to format dates according to any calendar system, and if you want, I can implement your calendar system, you just have to test it 08:28 < raidman> Wombert, I can do that if you want, I have GPLed codes 08:28 < Wombert> raidman: well we can't use GPLed code :< 08:28 < raidman> Wombert, sure I'll test it :) 08:28 < v-dogg> no GPL in Agavi! 08:29 < raidman> why? 08:29 < Wombert> by the way, everyone... should we change from LGPL to something more liberal, like BSD or MIT 08:29 < v-dogg> you CANNOT have gpl code in a framework 08:29 < Wombert> raidman: the LGPL dopesn't allow it 08:29 < Wombert> and if it's GPL, you can't use it in commercial apps 08:29 < Wombert> which makes it pointless ;) 08:29 < Wombert> GPL sucks in most cases 08:29 < Wombert> exceptions are linux and some apps there, like OOo or Gimp 08:29 < v-dogg> aye 08:29 < raidman> oh yes, I think it was LGPL :P 08:30 < raidman> v-dogg, hi 08:30 < Wombert> schweet 08:30 < v-dogg> morning raidman 08:30 < Wombert> if you still have it, feel free to send it to me or give me a link or anything 08:31 < raidman> okey, I should check it... wait 08:31 < v-dogg> hey! I have an idea! 08:32 < Wombert> raidman: thank you 08:32 < v-dogg> let's make agavi public domain! 08:32 < Wombert> v-dogg: shoot! 08:32 < raidman> np 08:33 < Wombert> raidman: if you don't have it anymore, it's not a problem, I think I can easily find conversion rules from julian day count to jalil 08:33 < Wombert> err 08:33 < Wombert> jalali 08:33 < Wombert> sorry 08:33 < v-dogg> AND we could also offer commercial license and support services 08:33 < Wombert> v-dogg: so you were serious? hmm 08:33 < v-dogg> no :D 08:33 < Wombert> what's the point of a commercial license then 08:33 < Wombert> xD 08:33 < shoan> v-dogg: but why public domain rather than mit? 08:34 < Wombert> see the thing is... I believe LGPL is a good idea in that it forces people to give me their modded code if I want 08:34 < Wombert> some parts, like the context etc cannot be extended for practical reasons 08:34 < raidman> Wombert, yeah it's LGPLed :) 08:34 < Wombert> so if people want to mod it 08:34 < raidman> Wombert, http://www.farsiweb.ir/wiki/Iranian_Calendar 08:35 < v-dogg> oh you guys... I really have to type multiple smiley faces and *g* *g* *g* when I'm joking 08:35 < Wombert> raidman: thanks! that's very helpful 08:35 < raidman> it is not so much clean, but you can get an idea from that :) 08:35 < raidman> Wombert, np :) 08:36 < v-dogg> shoan: I'm just mocking symfony 08:36 < Wombert> haha 08:37 < v-dogg> but nobody gets me :) 08:37 < Wombert> that's because you're a finnish weirdo 08:37 < Wombert> haha <: 08:37 * Wombert hugs v-dogg 08:37 < Wombert> anyways... 08:37 < Wombert> [07:34] Wombert: see the thing is... I believe LGPL is a good idea in that it forces people to give me their modded code if I want 08:37 < Wombert> [07:34] Wombert: some parts, like the context etc cannot be extended for practical reasons 08:37 < Wombert> so if people need agavi to be capable of doing something 08:38 < Wombert> their best option is step forward and suggest it 08:38 < Wombert> and that's what I like 08:38 < Wombert> they could do the same thing if it was MIT, but they wouldn't "have to", as in "have to releaase the modified code" 08:39 < Wombert> the advantage I could see if agavi were MIT or BSD, however, is that the LGPL wasn't really designed for our use case... it's talking about linking, using, compiling etc, which doesn't fit a runtime language like PHP very well 08:39 < Wombert> in fact, from how I understand the LGPL, agavi and any php framework or library don't comply with the terms 08:44 < shoan> Wombert: I once had a conversation with the core dev of coppermine 08:44 < Wombert> that photo gallery thing? 08:44 < shoan> yeah 08:44 < Wombert> aye 08:44 < shoan> hang on looking for a link 08:44 < Wombert> http://coppermine-gallery.net/ ;) 08:44 < Wombert> GPL 08:44 < Wombert> hmm 08:45 < Wombert> I think GPL for such an app is not a bad idea 08:45 < Wombert> but for a framework or any library... no way 08:45 < v-dogg> gpl is ok for an application 08:45 < Wombert> I've seen people post blog entries about what they called "the perfect E-Mail regular expression" 08:45 < Wombert> and then they GPLed it 08:45 < v-dogg> heh 08:46 < shoan> damn...they changed the faq 08:46 < shoan> http://coppermine-gallery.net/demo/cpg14x/docs/faq.htm#editCopyrights 08:46 < Wombert> is anyone running Zeus web server, iPlanet, Litespeed or such? 08:46 < Wombert> or apache or IIS with PHP as FastCGI 08:47 < Wombert> shoan: in this case, the GPL is enough anyway 08:47 < shoan> wait till i find that link ;) 08:47 < Wombert> because you can customize the entire system without having to modify something 08:47 < Wombert> okay <: 08:48 < Wombert> http://coppermine-gallery.net/demo/cpg14x/docs/faq.htm#viewThumbnailsOnly haha wtf 08:49 < v-dogg> this is something that people sometimes argue about but extending framework components shouldn't inherit the framwork's license 08:50 < Wombert> yeah and it doesn't in my understanding 08:50 < Wombert> a CustomSecurityUser is yours, yours, yours 08:50 < shoan> earlier...they said that because it was gpl you couldn't remove the "powered by ..." from the footer 08:50 < Wombert> but the LGPL doesn't explicitely say it that way 08:50 < v-dogg> Wombert: some people disagree 08:50 < Wombert> which would be a good pro-BSD argument 08:50 < v-dogg> I don't 08:50 < shoan> but the footer is part of the code, which I can modify as per the gpl 08:51 < Wombert> shoan: it's right there! http://coppermine-gallery.net/demo/cpg14x/docs/faq.htm#editCopyrights 08:51 < Wombert> As Coppermine is based on OpenSource software published under GNU/GPL (which allows the modification of the code, but disallows changes of the license model of your modifications), you can not purchase a version of coppermine with or without the credit line removed. Read the file COPYING that comes with the distribution of Coppermine for details.# 08:51 < shoan> Wombert: they explicitly stated the gpl 08:51 < Wombert> ;) 08:52 < shoan> looks like they changed their thing around 08:52 < v-dogg> I can use css to make the footer the same color as the background though 08:53 < eremit> morning 08:53 < v-dogg> and... hmm.. I don't think they can say "this line must remain" 08:54 < v-dogg> I can modify the source and remove that line 08:54 < v-dogg> I cannot change the license, but surely I can change the appearance 08:55 < Wombert> eremit: morning 08:55 < v-dogg> that's not a license violation (gpl), just against their wish 08:55 < Wombert> yep 08:56 < Wombert> they can say, however, that in addition to using the GPL, you may not remove the line under any circumstance 08:56 < Wombert> if that's in their COPYING/LICENSE file, you must accept it 08:56 < v-dogg> sure 08:57 < v-dogg> but hey, it must be morning coffee time 08:57 < splatch`> hello :) 08:57 < v-dogg> hi splatch` 08:57 < Wombert> v-dogg: I jus trealized that, too 08:57 < Wombert> gotta grab some 08:59 < v-dogg> done 08:59 < splatch`> I so tired, and I have to work 08:59 < splatch`> :( 08:59 < v-dogg> now I have to sort out last months bookkeeping 09:00 < splatch`> bookkeeping? 09:00 < v-dogg> yep 09:00 < v-dogg> you don't know what it means? 09:00 < eremit> [07:43] or apache or IIS with PHP as FastCGI <<-- if suPHP is enough for ya ... apache2 + suPHP ... 09:00 < splatch`> yes 09:00 < Wombert> eremit: that runs as CGI, doesn't it 09:01 < v-dogg> splatch`: "yes, I know" or "yes, I don't know" :D 09:01 < eremit> yep ... but not using the rfc-cgi implementation ... 09:01 < splatch`> v-dogg: I don't know ;) 09:02 < Wombert> splatch`: in a company, you have to record all your expenses and incomes 09:02 < Wombert> so you know when you got and when you spend how much money, and to whom, from what bank account, for what invoice number etc 09:02 < splatch`> taxes? 09:02 < Wombert> no, not taxes 09:02 < Wombert> but you have to do bookkeeping so you can file tax reports 09:03 < v-dogg> http://m-w.com/dictionary/bookkeeping :: http://en.wikipedia.org/wiki/Bookkeeping 09:03 < raidman> shoan, eremit splatch` hi 09:03 < Wombert> taxes are even more annoying than bookkeeping :) 09:03 < shoan> raidman: hey 09:03 < splatch`> hi raidman 09:03 < eremit> ^^ only in germany Wombert :P 09:03 < v-dogg> no, in finland too. at least 09:04 < eremit> v-dogg i guess not ... ;) did you knew 80% of all tax related books are for the german tax system ? 09:04 < v-dogg> haha :D 09:04 < v-dogg> no, I didn't :) 09:04 < Wombert> shoan: do you sometimes buy maczots? 09:04 < shoan> Wombert: huh? wazzat? ;) 09:04 < Wombert> www.maczot.com 09:05 < Wombert> you get apps with 50% off or so there 09:05 < Wombert> and sometimes, there's a mystery zot or so 09:05 < Wombert> 3 apps for 5$ etc 09:05 < Wombert> but you don't know what it is before ;) 09:05 < Wombert> last time I got four junk apps and one thing (AppZapper) that is actually useful 09:06 < Wombert> shoan: http://www.maczot.com/discuss/ gives you a better idea 09:06 < shoan> ok 09:06 < Wombert> this time I got rooSwitch (sucks), hawkeye (who needs that anyway) and K.I.T (which I hope will be useful) 09:07 < Wombert> gonna use KIT right now for the i18n date coding... need to keep all the bookmarks, documents, code snippets together 09:10 < Wombert> oh dude that's a great app 09:15 < Wombert> raidman: the jalali calendar starts with the hijra, right? 09:17 < raidman> yes 09:18 < v-dogg> hmm... why doesn't fpf populate my form... 09:19 < Wombert> v-dogg: no idea :) 09:19 < Wombert> but I'll improve the detection code along with the other improvements 09:19 < Wombert> btw guys if you want to be cool... learn this: http://en.wikipedia.org/wiki/Doomsday_%28weekday%29 09:19 < Wombert> I love it 09:20 < eremit> does the agavi test things support simulated requests for full action and view testing ? ... 09:20 < v-dogg> no 09:20 < Wombert> eremit: no, but 1.0 will 09:20 < eremit> nice ... 09:21 < splatch`> mock requests :) 09:21 < Wombert> http://trac.agavi.org/trac.cgi/ticket/308 09:21 < eremit> ah .. i hadn't brought this inline with action and view testing ... *Ggg* 09:21 < digitarald> Morning people :) 09:21 < eremit> morn digitarald 09:22 < digitarald> btw. ... the agaviisuploadedimagevalidator is broken 09:22 < Wombert> yeah 09:22 < Wombert> guess I'll throw it out anyway 09:22 < digitarald> good idea ... 09:23 < digitarald> isn't really useful 09:24 < digitarald> can i use my own validators in the xml or do i have to register them in registerValidatorsWrite? 09:25 < raidman> Wombert, you know persian calendar is "Hejri-e Shamsi" Hejri == hijra 09:25 < raidman> digitarald, morning 09:25 < Wombert> raidman: aaaah 09:25 < Wombert> okay :) 09:26 < Wombert> and for dates before the hijra, it's just negative dates like with any other calendar, I assume? 09:26 < Wombert> the yeayr of the hijra, is that year 0 or year 1? 09:28 < v-dogg> digitarald: you can use your own. hang on a sec.. 09:29 < v-dogg> app/config/validators.xml: http://pastebin.ca/160388 09:29 < Wombert> no need to define them, by the way 09:29 < Wombert> you can just use a class name 09:30 < Wombert> the main point of definitions is that you can set additional parameters 09:30 < v-dogg> ok 09:31 < digitarald> i nearly stepped through the validators, but one more question: 09:31 < digitarald> i have an optional upload and only want to check it via agaviuploadedfilevalidator when its given 09:31 < Wombert> provides and depends, I guess 09:31 < digitarald> i have a stringvalidator before, which provides for the uploadvalidator 09:31 < Wombert> right, v-dogg? 09:32 < digitarald> the problem is, i don't want the string validator to throw an error 09:32 < Wombert> there's severities 09:32 < digitarald> i tried severity ... 09:32 < digitarald> with none and success, what should i zse 09:33 < v-dogg> none 09:33 < v-dogg> and an empty error message 09:34 < digitarald> but then the error name is still saved 09:34 < v-dogg> yes, but error handler is not used 09:34 < v-dogg> ie. validation returns 'true' 09:34 < digitarald> there is no msg but the stay request-errors not empty 09:35 < digitarald> and when should i use severity? 09:36 < digitarald> btw. where should i put in this validator_definitions? in every validator xml? 09:37 < digitarald> i see, yes 09:37 < v-dogg> no, app/config/validators.xml and in validate/MyAction.xml you use "" 09:38 < digitarald> ok, much better 09:38 < Wombert> of course!!!!! 09:38 < Wombert> :> 09:38 < Wombert> you can either use a parent config 09:38 < Wombert> or XInclude 09:39 < v-dogg> severities: critical = validation process stops if invalid. error = validation process continues but returns false. none = validation continues and returns true (if no other validator fails) 09:39 < Wombert> error being default 09:39 < digitarald> and success? 09:40 < v-dogg> that's not a validator severity level 09:40 < v-dogg> to be used in xml config, I mean 09:40 < digitarald> k 09:42 < horros> Aww 09:42 < horros> RIP Crocodile Hunter :( 09:42 < digitarald> i have severity to none and no error messages, just thought that it would be cool to have an empty errornames-array if there is no real error 09:43 < v-dogg> horros: :) 09:44 < v-dogg> digitarald: a matter of opinion. there's is an error because one if the validators failed 09:44 < Wombert> On 4 September 2006, shortly after 11:00 a.m. local time (01:00 UTC), Irwin was killed by a stingray barb while filming an underwater documentary in the Great Barrier Reef off the Low Isles near Port Douglas, north of Cairns, Queensland, Australia. News reports say he was stung either through his heart[5] or through the left side of his chest[6] by a stingray, causing a fatal wound. After he was stung, his crew called for medical h 09:47 < raidman> Wombert, I have no clue about negative dates 09:47 < raidman> Wombert, what you mean --> the yeayr of the hijra, is that year 0 or year 1? 09:47 < raidman> If you want start date on hejri it is 1 09:47 < Wombert> okay 09:48 < Wombert> digitarald: $req->hasErrors() 09:48 < digitarald> hasErrors > 0 because there are empty error messages 09:49 < Wombert> http://www.smh.com.au/news/national/crikey-its-raw-stevo/2006/09/04/1157222053963.html 09:49 < Wombert> WOOOOT 09:49 < Wombert> A WOMBAT! 09:49 < Wombert> :> 09:50 < v-dogg> digitarald: hmm.. no? 09:50 < horros> Wombert: btw, we have an app we made that's called "wombat" :) 09:50 < Wombert> :>>>>>> 09:51 < v-dogg> $req->hasErrors() return false when my severity=none validator failed 09:51 < raidman> start year* 09:51 < raidman> lol :) 09:53 < v-dogg> Wombert: fpf doesn't populate because form action doesn't have ?param=foo 09:53 < v-dogg> is that intentional? 09:54 < Wombert> v-dogg: yeah I think so 09:54 < digitarald> hasErrors returns true for me, and error-array only contains elements with severity="none" 09:54 < Wombert> v-dogg: that stuff is always an edge case you know 09:54 < Wombert> I mean I can't be sure if ?param=foo means it's the same form so... 09:54 < Wombert> hidden field maybe? 09:55 < Wombert> the action must be identical to the current url 09:55 < v-dogg> hmm... how do I do my result set scrolling now... 09:55 < Wombert> hidden field? 09:55 < Wombert> or is that a get form 09:56 < v-dogg> post form and scrolling links 09:56 < Wombert> FPF will soon be able to populate forms based on their ID 09:56 < Wombert> if that helps 09:56 < digitarald> severity=null does not affect hasErrors :( 09:57 < v-dogg> form calls /search/ and scrolling /search/(offset:\d+) (or search/?offset=d) 09:57 < digitarald> Wombert: i will love this feature 09:57 < v-dogg> digitarald: severity=null shouldn't even work 09:57 < v-dogg> ah, wait 09:57 < v-dogg> maybe it does 09:58 < v-dogg> if config parser changes it into null value 09:58 < v-dogg> ie. validator uses the default value then 09:58 < digitarald> 3 upload validations with severity="null" and without error messages ... getErrorNames give me the 3 names, and hasErrors is true 09:58 < v-dogg> severity="none" 09:58 < digitarald> just skipped for " in this msg ;) 09:59 < v-dogg> don't use "null" 09:59 < digitarald> i have none, just skipped sense in this msg 09:59 < digitarald> didn't get a coffee until now 09:59 < digitarald> i have none, really, just checked again :D 09:59 < digitarald> "none" 10:00 < horros> need coffee 10:00 < horros> badly 10:01 < Wombert> v-dogg: can you reproduce that or does it work for you 10:01 < Wombert> maybe it's a bugf 10:01 < Wombert> -f 10:01 < v-dogg> don't know what's going on there. I have a form with Submit and Cancel. 10:01 < v-dogg> 10:01 < v-dogg> that error is never set 10:03 < digitarald> ok ... recheck 10:04 < digitarald> i have this in the xml: http://pastebin.ca/160395 10:06 < v-dogg> btw, you might want to set an expiration time for pastebin posts 10:06 < eremit> oO: AgaviSmartyRenderer.class.php line 149 - Only variables should be passed by reference ? 10:06 < v-dogg> it defaults to "never" 10:06 < digitarald> image validator checks vor a valid upload and if the upload is an image, can throw several different errors ... 10:06 < digitarald> getErrorNames() returns only picture,avatar,logo ... ok 10:06 < digitarald> getErrorMessages() returns an empty array 10:06 < digitarald> hasErrors() returns TRUE 10:09 < CIA-6> david * r1039 /trunk/src/renderer/AgaviSmartyRenderer.class.php: fixed 'only variables should be passed by reference' blah blah 10:09 < eremit> rofl ... you are fixing faster, than me opening the source 10:10 < digitarald> he has a mac, everything is faster when u use mac ;) 10:10 < v-dogg> haha 10:10 < eremit> lol 10:17 < eremit> can i somehow use fpf to initially fill a form ... ? Oo 10:17 < v-dogg> you can 10:17 < Wombert> eremit: sure 10:18 < v-dogg> $req->setAttribute('populate', array or AgaviParameterHolder, 'org.agavi.filter.FormPopulationFilter'); 10:18 < eremit> but how to alter the method parameter within the application ... 10:18 < v-dogg> don't have to 10:18 < eremit> ahhh ... 10:18 < eremit> tyvm 10:19 < Wombert> use a parameter holder 10:19 < Wombert> DON'T (!) use an array 10:19 < Wombert> I'll break BC there pretty soon 10:20 < v-dogg> nooooo! 10:20 < v-dogg> why?-) 10:20 < Wombert> array('id_of_form' => $p) can be used to populate a form based on IDs 10:20 < Wombert> even multiple forms 10:20 < Wombert> $p is a parameter holder 10:20 < Wombert> v-dogg: no worries, you can just search and replace and wrap your array into a PH 10:20 < Wombert> i.e. change 10:20 < Wombert> $req->setAttribute('populate', $array, 'org.agavi.filter.FormPopulationFilter'); 10:20 < Wombert> to 10:21 < Wombert> $req->setAttribute('populate', new AgaviParameterHolder($array), 'org.agavi.filter.FormPopulationFilter'); 10:21 < v-dogg> no worries, I use manual population in one (1) place ;) 10:21 < Wombert> unless anyone has a better idea ;) 10:21 -!- digitarald [n=Miranda@62-43-0-206.user.ono.com] has quit ["Miranda IM! Smaller, Faster, Easier. http://miranda-im.org"] 10:22 < raidman> I like that Wombert :) 10:22 < v-dogg> should fpf work with absolute urls in action? 10:22 < Wombert> raidman: I'm currently thinking about how to return dates 10:22 < Wombert> the idea was that dates are, internally, stored as a julian day count plus the milliseconds till midnight 10:23 < Wombert> I can convert to any calendar using that 10:23 < Wombert> however, I'm not sure yet how to return the date in each calendar format 10:23 < eremit> wtf, why does the domdocument::loadhtml() uses the name attribute in a form element as id Oo 10:24 < Wombert> eremit: name and id use the same namespace in html 10:24 < eremit> really ? even in javascripts getElementById() ? 10:24 < eremit> this would be great ... 10:24 < Wombert> no 10:24 < Wombert> that's something else 10:24 < eremit> :/ 10:25 < Wombert> -else +different 10:25 < eremit> gna ... 10:32 < Wombert> raidman: is it common to use numbers for the months? 10:33 < Wombert> i.e. is today 13 Shahrivar 1385? 10:33 < Wombert> or do you also use something like 13.06.1385 10:35 -!- digitarald [n=Miranda@18.Red-83-55-60.dynamicIP.rima-tde.net] has joined #agavi 10:37 -!- shoan [n=shoan@59.92.169.39] has quit [] 10:37 < digitarald> back at work ... back to hasError ;) 10:37 < raidman> Wombert, 13 Shahrivar 1385 is popular 10:38 < Wombert> raidman: hmmmm 10:39 < horros> hmm 10:40 < horros> I think there might be an error in PHP's SOAP extension :( 10:40 < raidman> or monday 13 shahrivar 1385 10:40 < Wombert> raidman: okay 10:40 < Wombert> I'll have to think a bit about that calendar stuff then 10:40 < Wombert> I need a solution that can cater for the various calendars 10:40 < raidman> Wombert, http://www.technotux.org/html/index.php at the top, left of page 10:40 < raidman> that's " monday 13 shahrivar 1385" 10:41 < raidman> "monday, 13 shahrivar 1385" 10:41 < Wombert> raidman: the thing is... let's assume you're fetching a date 10:41 < Wombert> and you want it formatted according to the lalaali calendar 10:41 < Wombert> jalaali 10:42 < Wombert> I need to "give" you that date somehow 10:42 < Wombert> so the question is... encoding? storage (string? array?)? how to format? etc 10:42 < Wombert> I must find a solution that works with all calendars 10:42 < Wombert> also we need strtotime support for each 10:43 < Wombert> so that agavi can parse "monday 13 shahrivar 1385", even in persian script, to a timestamp 10:45 < raidman> you know I just used timestamp for storing in DB, setAttribute, setParameter, and ... but I just convert it to "monday, ..." when I want to display it 10:45 < Wombert> right 10:46 < Wombert> but I need to have a universal storage format for the "local" date representation 10:46 < Wombert> at least I think so 10:46 < Wombert> so for example I'd store the months of the gregorian calendar as 1 to 12 internally 10:46 < Wombert> and only later translate them to January, February etc 10:47 < Wombert> but for jalali, I'd store Farwardin, Ordibehescht etc 10:47 < Wombert> and then translate it later, when you format it 10:47 < Wombert> which is not really the problem 10:48 < Wombert> because you'd call $tm->_d() with a format syntax and the date object, and it will format it 10:48 < Wombert> but if you want the _raw_ representation, for example an array of date parts (day, month, year), it's a bit more difficult 10:50 < Wombert> same, of course, for weekday names, I assume even in transcript versions, you use Doshanbeh, not Monday, right? 10:50 < Wombert> (i.e. when you write it in latin letters, not in persian script) 10:52 < raidman> right 10:52 < Wombert> looks like it will be a day or so before I can actually start writing code ;) 10:53 < Wombert> first need to learn more about all the calendar systems so I can make the right decisions 10:53 * Wombert goes download the ICU source code 10:54 < raidman> it's usefull to convert row data's to everything else 10:54 < Wombert> yep 10:54 < raidman> you can use a Driver per calendar for doing that 10:55 < Wombert> will use http://en.wikipedia.org/wiki/Julian_day for internal storage 10:55 < raidman> somthing like PersianCalendar extens AgaviCalendar 10:55 < Wombert> and each specific implementation translates that to the calendar system 10:55 < Wombert> yep, exactly 10:55 < Wombert> that's the easy part ;) 10:55 < raidman> yeah :) 10:55 -!- v-dogg [n=vmakinen@mcinen-dsl.utu.fi] has quit [Read error: 110 (Connection timed out)] 10:56 < raidman> Wombert, and what you think about unixtimestamp 10:57 < Wombert> raidman: you'll be able to convert any date to a timestamp 10:57 < Wombert> and build a date from a timestamp 10:57 < Wombert> but it's not good for storage 10:58 < Wombert> julian day starts on january 1, 4713 BC and thus covers all dates recorded in human history 10:58 < Wombert> which makes it perfect for storage 10:59 < Wombert> and with an unsigned int it's good for hundreds of thousands of years 10:59 < raidman> hmm, you right 10:59 < Wombert> I'll use one int for the day count, and another one for the milliseconds since midnight 11:00 < Wombert> the only difficulty will be that a) technically, julian day stars on noon, not on midnight and b) that julian day is actually a float number, with the decimal fraction being the time passed since noon 11:00 < Wombert> which isn't a good idea given that float precision may vary 11:04 < raidman> you want to store dates in three separate int? 11:05 < Wombert> nah 11:05 < Wombert> one int for julian day count 11:05 < Wombert> another int for milliseconds since midnight or start of the day (not sure yet) 11:05 < raidman> oh yes 11:05 < raidman> that's good for sorting 11:07 < raidman> we have a problem for sorting dates in persian lang but if date stored in int there is no problem for that, we can sort int numers and then we will convert it to jalai date 11:10 < Wombert> yeah see 11:10 < Wombert> that's where it gets difficult 11:10 < Wombert> we must make the entire system usable independent of the translation manager 11:11 < Wombert> and we ideally should have a storage format in the current calendar, not only in julian day count 11:14 < raidman> hmm 11:20 -!- eremit [n=eremit@p5490DC54.dip.t-dialin.net] has quit [" HydraIRC -> http://www.hydrairc.com <- IRC with a difference"] 11:22 -!- eremit [n=eremit@p5490DC54.dip.t-dialin.net] has joined #agavi 11:22 -!- shoan [n=shoan@61.95.206.107] has joined #agavi 11:22 -!- shoan [n=shoan@61.95.206.107] has quit [Client Quit] 11:24 -!- shoan [n=shoan@61.95.206.107] has joined #agavi 11:35 -!- horros_ [n=mle@a81-197-149-150.elisa-laajakaista.fi] has joined #agavi 11:38 -!- digitarald [n=Miranda@18.Red-83-55-60.dynamicIP.rima-tde.net] has quit ["Miranda IM! Smaller, Faster, Easier. http://miranda-im.org"] 11:39 -!- Netsplit zelazny.freenode.net <-> irc.freenode.net quits: horros_, Wombert 11:45 -!- horros [n=mle@a81-197-149-150.elisa-laajakaista.fi] has quit [Read error: 110 (Connection timed out)] 11:46 -!- eremit [n=eremit@p5490DC54.dip.t-dialin.net] has quit [" HydraIRC -> http://www.hydrairc.com <- IRC for those that like to be different"] 11:47 -!- Netsplit over, joins: Wombert 11:47 -!- raidman [n=raidman@unaffiliated/raidman] has quit ["Leaving"] 11:48 -!- Netsplit over, joins: horros_ 11:48 -!- raidman [n=raidman@unaffiliated/raidman] has joined #agavi 11:48 -!- horros [n=mle@a81-197-149-150.elisa-laajakaista.fi] has joined #agavi 11:49 -!- eremit [n=eremit@p5490DC54.dip.t-dialin.net] has joined #agavi 11:51 -!- raidman [n=raidman@unaffiliated/raidman] has quit [Read error: 104 (Connection reset by peer)] 11:57 -!- horros_ [n=mle@a81-197-149-150.elisa-laajakaista.fi] has quit [Read error: 113 (No route to host)] 12:10 -!- digitarald [n=Miranda@18.Red-83-55-60.dynamicIP.rima-tde.net] has joined #agavi 13:25 < horros> http://modseven.de/misc/steve_irwin_realistic_accident_reconstruction.jpg 13:26 < eremit> oO : Unable to parse url in AgaviWebRouting.class.php on line 108 Oo 13:31 < eremit> uh ... 13:32 < eremit> wombert? isn't the mixture of index.php/foobar?key=value no longer possible ?? 13:36 < eremit> ahhh ... the zend ppl are stupid like hell ... found the problem 14:24 < eremit> sb ever used apc in production envoirements ? 15:17 * horros writes angry email 15:17 < horros> #)¤#(¤% 15:18 < horros> "What I require from you people now is a barrel of initiative. Look at our trac, check the issues, assign to yourself and FIX THEM. My time (still) isn't enough to do everything, and I will not be a sheep herarder/kindergarden teacher/SS-Obergruppenführer." 15:18 < horros> stupid lazy co-workers 15:18 < horros> grumble grumble 15:18 < Wombert> lol 15:18 < eremit> rofl ... 15:19 < eremit> hmm apc drives me crazy :/ 15:37 -!- shoan [n=shoan@61.95.206.107] has quit [Read error: 54 (Connection reset by peer)] 15:46 -!- shoan [n=shoan@61.95.206.107] has joined #agavi 16:44 -!- raidman [i=armen@unaffiliated/raidman] has joined #agavi 17:15 -!- v-dogg [n=vmakinen@mcinen-dsl.utu.fi] has joined #agavi 17:17 < v-dogg> re 17:30 < raidman> Welcome Back v-dogg :) 17:31 < Wombert> hmmm 17:31 < Wombert> guess I'll port http://dev.icu-project.org/cgi-bin/viewcvs.cgi/icu4j/src/com/ibm/icu/util/Calendar.java?rev=HEAD&content-type=text/vnd.viewcvs-markup and everything else to php :p 17:32 -!- digitarald [n=Miranda@18.Red-83-55-60.dynamicIP.rima-tde.net] has quit ["Miranda IM! Smaller, Faster, Easier. http://miranda-im.org"] 17:35 < raidman> hmm, very complex 17:35 < raidman> but well documented, I like it 17:48 < eremit> really nice documented ... 18:14 < splatch`> v-dogg: You writed validators? 18:16 < v-dogg> no, dominik (not present) and Wombert 18:17 < splatch`> I'll wait for dominik :) 18:18 < v-dogg> you might have to wait some time. he is rarely here 18:18 < splatch`> I don't see 18:19 < v-dogg> do you have a question concerning validators? 18:19 < Wombert> splatch`: dominik isn't on IRC 18:19 < Wombert> ask v-dogg, he knows enough about them 18:19 < splatch`> ach 18:20 < v-dogg> or Wombert, he is quite a pro too :) 18:20 < splatch`> ok, v-dogg can you explain me how validators work? 18:20 < v-dogg> briefly, no :D 18:20 < Wombert> but I don't know very much about validators, v-dogg ;) 18:20 < splatch`> I know how validators worked in M3/Agavi 0.10 18:21 < v-dogg> splatch`: how much do you know? 18:21 < splatch`> v-dogg: the most interest me or/xor classes 18:22 < splatch`> no basic classess, because I used him some time ago in previous versions 18:22 < v-dogg> the basic idea hasn't changed. you have three options: define validators in xml, register validators in Action::registerValidators, or do the validation manually in Action::validate 18:22 < splatch`> v-dogg: i know this 18:23 < v-dogg> ok 18:23 < v-dogg> just a second.. 18:23 < splatch`> v-dogg: give some example with logic conditions 18:23 < splatch`> if/else 18:23 < splatch`> please 18:24 < v-dogg> coming... 18:25 < v-dogg> http://pastebin.ca/160632 18:26 < eremit> Wombert, are there any known problems with apc and agavi/creole/propel ? 18:27 < Wombert> eremit: none that I know of 18:27 < Wombert> I've run into trouble with that before, tho 18:27 < Wombert> where all of a sudden it wouldn't find a class or so and I had to restart apache 18:27 < eremit> :/ then i must seek my answers somewhere in my apc installation 18:27 < splatch`> v-dogg: thank you very much :) 18:27 < Wombert> upgrade to latest php and latest apc 18:27 < v-dogg> splatch`: so that's a validator config for an action (app/modules/MyModule/actions/validate/MyAction.xml) 18:28 < splatch`> v-dogg: i know ;) 18:28 < eremit> Wombert, yeah exactly thats my point ... he suddenly cannot find files ... 18:28 < v-dogg> splatch`: there are three things there I must point out: 18:28 < splatch`> "configurations parent" 18:28 < splatch`> wow :) 18:29 < v-dogg> splatch`: (1) parent config (you can have your own validator definitions in the parent) 18:29 < v-dogg> yeah :) 18:29 < splatch`> I can use many parent validators 18:29 < splatch`> or only one? 18:29 < v-dogg> (2) provides - depends: if the first validator fails, the second will not be executed 18:29 < splatch`> *Can I 18:30 < v-dogg> (3) and validator (well, you'll probably figure out how it works :) 18:30 < splatch`> parent="validators.xml;beers.xml" ? 18:30 < v-dogg> I don't think that works 18:30 < v-dogg> but you can use XInclude 18:31 < splatch`> cool 18:32 < Wombert> splatch`: a parent can have a parent again, though 18:32 < Wombert> for example, if you have an autoload.xml in your project, it must have so agavi's own autoload definitions are included 18:32 < Wombert> this is very useful if you want to share autoloads among projects etc 18:34 < v-dogg> Wombert: 18:34 < raidman> but what about I18N in error messages of validators? 18:34 < v-dogg> can I have optional part in a route without a parameter? 18:34 < v-dogg> /foo/optional/bar 18:35 < v-dogg> would /foo(/{foo:bar})?/bar work? 18:36 < raidman> I want to display errors in different langs! 18:36 < Wombert> v-dogg: I don't think so 18:36 < Wombert> raidman: that will be possible once we have i18n support in 18:37 < raidman> so you planing for taht :) 18:37 < splatch`> the localization in Mojavi 4 was great ;) 18:37 < v-dogg> hmm... no. I DO want a parameter. but that's only a flag to show whether or not the optional part was there 18:37 < raidman> planning* 18:39 < raidman> http://skyflashes.com/ 18:41 < splatch`> raidman: cool photos 18:41 < raidman> :) 18:42 < raidman> this is very interesting: http://skyflashes.com/Weekly-Mar1-2.html 18:43 < splatch`> raidman: omg 18:43 < splatch`> that will be my news status ;) 18:45 < raidman> omg? 18:45 < raidman> "Object Management Group?? :) 18:46 < splatch`> oh my god 18:47 < splatch`> raidman: class God implements Ghost, Master {} ;) 18:48 < raidman> lol 18:49 < raidman> wow --> http://www.worth1000.com/tutorial.asp?sid=161052&print=1 18:50 < splatch`> raidman: "An error happened" 18:50 < Wombert> An error happened. An administrator was emailed. Please try refreshing as the error was most likely a timeout resulting from too much traffic on the site. If refreshing doesn't help and you still get this error a few minutes later, please let us know the details of what you are doing to receive this message at errors(a)worth1000.com 18:51 < raidman> oO 18:51 < splatch`> admin have many errors in inbox ;) 18:51 < raidman> lol 18:52 -!- digitarald [n=Miranda@18.Red-83-55-60.dynamicIP.rima-tde.net] has joined #agavi 18:53 < v-dogg> Wombert: any ideas how to do that optional part? 18:56 < Wombert> use a request param? ;) 18:56 < Wombert> and define a default for it 18:57 < raidman> that was a tutorial about "How to destroy a city with photoshop" 18:57 < Wombert> the problem is that we have to generate a url from the pattern, so the routing must know the values 18:58 < Wombert> v-dogg: you can then use paramname to remove the value from the request 18:58 < Wombert> is that enough for your needs? ;) 18:58 < Wombert> a bit hacky, but there is no other way 18:58 -!- shoan [n=shoan@61.95.206.107] has quit [] 19:11 < splatch`> v-dogg: in validators I can use ENTITY :) 19:21 < splatch`> Wombert: do you going to change layout & software on agavi site? 19:21 < Wombert> yes 19:21 < Wombert> one dayx 19:21 < Wombert> -x 19:21 < splatch`> Wombert: forum also? 19:22 < splatch`> http://forum.agavi.org/viewtopic.php?id=133 :/// 19:22 < Wombert> I know 19:32 < raidman> guys now you can check this..> http://www.worth1000.com/tutorial.asp?sid=161052&print=1 19:35 < Wombert> oO 19:41 < impl> raidman: That's pretty cool 19:41 < impl> Oh, and hi everyone :P 19:42 < raidman> impl, hi :) 19:43 < splatch`> hey impl 19:54 * Wombert slaps v-dogg 19:55 -!- raidman [i=armen@unaffiliated/raidman] has quit ["#killall raidman"] 20:26 -!- benny`work [n=benny@p54AC1C9A.dip0.t-ipconnect.de] has joined #agavi 20:46 < eremit> does php have an internal max open files counter ? 21:07 < v-dogg> I've never heard of such 21:08 < v-dogg> Wombert: sure.. I was hoping something less hacky :) 21:09 < v-dogg> because the default is empty 21:10 -!- shoan [n=shoan@59.92.132.230] has joined #agavi 21:10 < v-dogg> but I might a custom callback for it anyways 21:10 < v-dogg> +need 21:15 < splatch`> eremit: you can try create a custom stream handler 21:16 < Wombert> v-dogg: an alternative would be a sub-route 21:16 < eremit> i dont want to create a custom stream handler ... i simply want apc to stop bugging me with nonsense ... like too many open files, splatch` 21:22 < v-dogg> Wombert: two different sub routes? 21:22 < Wombert> route with /foo 21:22 < Wombert> inside that two routes 21:22 < Wombert> one /optional, nonstopping 21:22 < Wombert> another one that actually matches 21:23 < v-dogg> hey! I didn't even remember non-stopping routes :) 21:23 < v-dogg> that might solve it nicely 21:59 -!- digitarald [n=Miranda@18.Red-83-55-60.dynamicIP.rima-tde.net] has quit [Read error: 54 (Connection reset by peer)] 21:59 < splatch`> how role work? 21:59 < splatch`> *roles 21:59 < splatch`> this is extend credentials? 22:15 < Wombert> no 22:15 < Wombert> give a user roles and he gets the credentials 22:15 < Wombert> look at the tests and the commit messages and the ticket 22:36 < splatch`> Wombert: you have an work? 22:37 -!- benny`work is now known as benny`patchslut 22:44 -!- splatch` is now known as xor` 23:18 -!- xor` is now known as splatch` 23:18 < splatch`> Agavi .11 is great stuff 23:22 < splatch`> more i was looking at this than more i was delighted 23:24 < splatch`> anyone have translators.xml example? 23:24 < Wombert> i18n is not yet implemented 23:26 < splatch`> > AgaviConfig::set('core.use_translation', false); 23:26 < splatch`> ;) 23:26 < Wombert> I'm studying computer sciences by the way 23:27 < Wombert> and I'm running my own, very small company together with dominik ;) 23:28 < splatch`> Wombert: give dominik feedback from me - validators is sweet :) 23:29 < Wombert> a guy called uwe provided the basics 23:29 < Wombert> we modified it, cleaned up the code, made it work etc 23:30 < Wombert> still not satisfied with certain aspects to be honest 23:33 < splatch`> Wombert: this is god sign :) 23:33 < splatch`> *good 23:34 < splatch`> If you'll nothing to do, you boredom 23:35 < Wombert> :) 23:39 < splatch`> anyone saw "the wages of fear" film? 23:41 < splatch`> Wombert: btw. where you from? 23:41 < Wombert> munich, germany 23:42 < splatch`> hehe, next neighbor :) 23:42 < splatch`> Wombert: you know Sean Kerr? 23:42 < Wombert> a bit 23:42 < splatch`> from network? 23:43 < splatch`> or in real world? 23:43 < Wombert> no, only from the internet 23:44 < splatch`> Wombert: the gettext is optional translator - I Can use my custom translator - or only custom source? 23:44 < Wombert> everything will be configurable 23:44 < Wombert> but as I said we're still working on it 23:46 < splatch`> Agavi is good like M4, but will better 23:47 < splatch`> in current relase 23:47 < splatch`> I think 23:47 -!- shoan [n=shoan@59.92.132.230] has quit [Read error: 110 (Connection timed out)] 23:47 < Wombert> looks like there will be no M4 ;) 23:49 < splatch`> Wombert: how you'll want build community with Agavi? --- Day changed Tue Sep 05 2006 00:04 -!- shoan [n=shoan@59.92.134.176] has joined #agavi 01:05 < Wombert> splatch`: first things first 01:05 < Wombert> we need a stable release 01:05 < Wombert> and documentation 01:05 < Wombert> and more documentation 01:05 < Wombert> then we can worry about building a community, create a new website etc 01:59 < impl> Wombert: Around? 02:00 < Wombert> yeah 02:01 < impl> Wombert: I think there should be multiple ways to handle things like decorators, so people can choose how they want to do templating and stuff 02:01 < impl> So I was thinking 02:01 < impl> Why not pull the decorator stuff out of AgaviView 02:01 < impl> and use something like AgaviDecoratedView 02:01 < impl> What do you think of that idea? 02:02 < impl> It would make implementing something besides decorators much more trivial 02:06 < Wombert> mmmmh 02:06 < Wombert> no, not trivial 02:06 < Wombert> decorating is done by the renderer 02:06 < Wombert> it's not that easy I think 02:07 < Wombert> anyways, I'd prefer a solid, versatile solution over various ones 02:07 < Wombert> and 02:07 < Wombert> not for 1.0 ;) 02:07 < impl> haha, okay 02:07 * impl throws that idea away 02:07 < impl> I forgot about the whole Renderer::decorate thing :\ 02:12 < Wombert> it's not a bad idea 02:12 < Wombert> it's something we can cater for in 2.0 02:12 < Wombert> I mean... we don't have to ship 21831263 ways to render something 02:12 < Wombert> but at least make it possible 02:13 < impl> Yeah :) incase there's someone who really does like decorators better than 02:34 -!- benny`patchslut [n=benny@p54AC1C9A.dip0.t-ipconnect.de] has quit ["unset($this);"] 02:39 -!- Wombert [n=Wombert@dslb-088-064-001-041.pools.arcor-ip.net] has quit [] 03:22 -!- [1]eremit [n=eremit@p5490CD29.dip.t-dialin.net] has joined #agavi 03:40 -!- eremit [n=eremit@p5490DC54.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 03:40 -!- [1]eremit is now known as eremit 03:43 -!- pressureman [n=pressure@60-234-213-71.bitstream.orcon.net.nz] has joined #agavi 03:55 -!- pressureman [n=pressure@60-234-213-71.bitstream.orcon.net.nz] has left #agavi [] 05:20 -!- impl [n=impl@httpcraft/php/nforbes] has quit ["Leaving"] 08:22 < eremit> morning 08:25 -!- eremit [n=eremit@p5490CD29.dip.t-dialin.net] has quit [" Like VS.net's GUI? Then try HydraIRC -> http://www.hydrairc.com <-"] 08:26 -!- eremit [n=eremit@p5490CD29.dip.t-dialin.net] has joined #agavi 08:29 -!- raidman [n=raidman@unaffiliated/raidman] has joined #agavi 09:08 < v-dogg> huomenta 09:08 < eremit> hey v-dogg :) 09:09 < raidman> morning 09:09 < eremit> and hey raidman ... and all the other who will popup the next minutes ;) 09:09 < raidman> :) 09:15 < v-dogg> what's up 09:16 < eremit> nothing really except i would like to kill somebody for the apc stuff ;) 09:17 < splatch`> who use APC? 09:18 < eremit> i try to install it ... but it's either killing my development server or it complains about "too many open files" or "file not found" 09:20 < splatch`> i try ti install APD 09:20 < splatch`> but APD is not build for php 5.2 09:21 < eremit> ouch ... Version 1.0.1 (stable) Release Date: 2004-09-28 Oo ... 09:21 < splatch`> yes :( 09:22 < splatch`> but in PHP 5.2.0 RC 2 09:22 < splatch`> instalator have compiled APD 09:22 < eremit> why apd ? ... 09:23 < splatch`> apd is have very good profiler and debugger 09:46 < eremit> at least i got the rewrite rules of agavi working on lighttpd ... 09:52 -!- raidman [n=raidman@unaffiliated/raidman] has quit [Read error: 104 (Connection reset by peer)] 10:16 -!- raidman [n=raidman@unaffiliated/raidman] has joined #agavi 10:17 < v-dogg> what's that other compiler cache for php... hm.. 10:18 < eremit> pardon? 10:18 < v-dogg> EAccelerator 10:19 < v-dogg> have you tried that? 10:19 < eremit> yeah APC, eAccelerator, Xcache and the commercial stuff 10:19 < horros> v-dogg: eAccelerator didn't work very well with PHP 5.x 10:19 < eremit> i tried xcache and apc ... 10:19 < horros> eremit: try ionCube? 10:19 < eremit> and since i read what horros just said, i havent tried eacc 10:19 < v-dogg> I've used eaccelerator with 5.0.x without problems 10:20 < eremit> ionCube maybe another possibility ... 10:20 < horros> like I just said on #php on EFNet... 10:20 < horros> if you're going to use a bytecode compiler/cache/optimiser/whatever, beware to NEVER EVER use include_once()/require_once() 10:21 < eremit> tell that 3rd party devs ... 10:21 < v-dogg> just like Zend "framework" 10:21 < eremit> propel, creole, pear :P 10:21 < eremit> and even do a grep -ir _once /path/to/your/agavi 10:21 < eremit> :P 10:22 < horros> eremit: for i in `find . -name \*.php`; do sed -e 's/include[ ]*\(/include_once \(/g' < $i > $i.bak ; cp $i.bak $i; rm $i.bak; done 10:22 < horros> :D 10:22 < eremit> this expression kills most 3rd party libs ... 10:22 < eremit> :P 10:23 < horros> I had so weird problems with *_once() 10:23 < eremit> i already tried it :P ... most common error ... cannot redeclare class 10:23 < horros> PHP thinking the classes aren't really loaded which it really actually is, and, like you said, "cannot redeclare class 'foo'" 10:23 < eremit> yeah me too ... it's funny ... most of the time i get too many open files ... wtf php-cgi is allowed to have 100k fd's per instance running 10:24 < horros> eremit: just throw more servers at it behind a load-balancer :D 10:24 < eremit> maybe we should write an __autoload conversion script ;) ... i already thought about that 10:24 < horros> much less trouble :) 10:24 < eremit> horros, sometimes you have to get a good basic performance before starting to scale with more servers :P 10:25 < eremit> atm my app manages 0.93 reqs / sec ... which is wooooorser than worse 10:25 < horros> :P 10:25 < horros> hmmh, btw, can you somehow make ab benchmark stuff that requires you to login? 10:26 < eremit> if you are using http auth yes ... otherwise try setting cookie params ;) 10:26 < eremit> -C attribute Add cookie, eg. 'Apache=1234. (repeatable) 10:26 -!- raidman [n=raidman@unaffiliated/raidman] has quit [Read error: 104 (Connection reset by peer)] 10:26 < horros> hmm 10:27 < horros> I should try that 10:27 < eremit> that's how i use it ... store a general isLoggedIn cookie ... and setting the application to debug 10:27 < eremit> which is accepting the cookie and automatically uses a valid user 10:28 < eremit> but don't forget to put it back to production mode :P before deploying *hrhr* 10:28 < horros> hehe 10:29 < eremit> ahh ... wtf ... where do all the require_once of propel generated code come from .. using my own code templates does nothing Oo 10:30 < horros> maybe I can just turn off USE_SECURITY in agavi :) 10:30 < eremit> if your actions do not rely on userdata it's a possibility 10:31 < horros> hmm, wait. 10:31 < horros> bugge 10:31 < horros> r 10:31 < horros> the main template that's shown everywhere uses user data 10:48 -!- raidman [n=raidman@unaffiliated/raidman] has joined #agavi 11:14 < horros> needz coffee 11:14 < horros> stupid PDF generation 11:14 < horros> )#(¤) 11:17 < splatch`> heh 11:17 < splatch`> ±ê¶æ? ;) 12:09 < eremit> hah... atleast my propel generated models do not contain any _once 12:17 -!- digitarald [n=Miranda@18.Red-83-55-60.dynamicIP.rima-tde.net] has joined #agavi 12:19 < Macca> my propel doesn't work :( 12:20 < eremit> horros, ? have you every stumpeld across a script which somehow sensefully removes all the _once and creates a list of files e.g. for an autoloader ? 12:20 < Macca> horros+ 12:20 < Macca> horros++ 12:20 < Macca> horros, PDF generator? where? 12:24 < horros> eremit: can't say I have 12:24 < horros> Macca: here. on my screen. 12:25 < Macca> oh :( 12:25 < Macca> in php? 12:25 * Macca needs to gen a pdf 12:25 * eremit has an idea regarding the _onces ... 12:26 < horros> Macca: www.roz.co.nz 12:26 < eremit> using sed, exchanging _once against a custom function uses() and write a include wrapper which has a list about a already loaded files ... 12:26 < Macca> ... horros? 12:26 < horros> nevermind. 12:26 < Macca> eremit, why? 12:26 < eremit> or call my boss and tell him he needs additional approx 8 webservers *hrhr* 12:27 < eremit> Macca, because _once brings you into heavy trouble if you are using opcode caches 12:28 < Macca> op code cache? 12:28 < eremit> apc, eaccelerator, xcache etc ... 12:28 < horros> Macca, you're such a n00b 12:28 < horros> :P 12:28 < Macca> :( 12:33 < v-dogg> horros: I have a php5 (strict) version of rozco pdf lib 12:33 < v-dogg> with a utf-8 filtering :) 12:33 < v-dogg> it's still a work in progress (and is going to stay that way probably :) but it should work as it is already 12:46 < splatch`> in php6 will be a strict keyword 12:46 < splatch`> strict class Foo {} 12:47 < v-dogg> but will there be namespaces....? 12:47 * v-dogg goes get an axe 12:47 < splatch`> I have namespaces in php 5.1.2 12:48 < splatch`> v-dogg: http://phpnamespaces.org/ 12:48 < v-dogg> hehe :) 12:49 * v-dogg puts the axe down 12:49 < splatch`> namespaces is only cool stuff 12:49 < splatch`> this will not change the PHP 12:50 < eremit> namespaces are a requirement at large projects ... 12:50 < v-dogg> I concur 12:50 < v-dogg> and no (NO!), don't say you can just name your classes Module_SubModule_Class 12:51 < eremit> hehe are you sick of this MyFirm_MyName_Toolkit_MyClass::CONSTANT things ? :P 12:51 < v-dogg> yeah, A BIT! 12:52 < v-dogg> and I work alone! 12:52 < v-dogg> I can't even imagine what it would be like with 5-10 coders 12:52 < eremit> we have a golden rule over here ... every developer has it's own classes he uses regulary ... 12:53 < eremit> and they are name __Toolkit___ 12:53 < splatch`> import class a:::AFactory; 12:53 < splatch`> import class a:::A; 12:53 < splatch`> wtf? 12:54 < eremit> e.g. for me having a Agavi_Json_Renderer class ... it's LW_Eremit_Toolkit_Agavi_Json_Renderer 12:54 < splatch`> $filename = str_replace( ':::', '/', $ns ) 12:54 < splatch`> wtf? 12:55 < splatch`> for me this is fake of object oriented languages 12:56 < eremit> if should have not recognized yet .. php is in most parts a faked oop thinggie :P 12:56 * eremit ducks and covers 12:57 < splatch`> eremit: tru 13:47 < horros> BAH 13:47 * horros kicks propel 13:47 < horros> no onDelete="SET DEFAULT" for foreign keys :( 14:11 -!- shoan_ [n=shoan@59.92.134.176] has joined #agavi 14:29 -!- shoan [n=shoan@59.92.134.176] has quit [Read error: 110 (Connection timed out)] 14:31 < horros> wtf 14:31 < horros> stupid propel 14:31 < horros> )#¤(%)(#¤ 14:31 < eremit> haha :P 14:31 * eremit has fought the whole morning against propel ... 14:31 < horros> $tMap->addValidator('WALLET_NAME', 'notMatch', 'propel.validator.NotMatchValidator', '/^[\w\s\d]+$/', 'Virhe: Lompakon nimi voi koostua vain kirjaimista (A-Ö), numeroista (1-9) ja välilyönnistä'); 14:32 < horros> that errors if I try to validate "Testwallet" 14:32 < horros> stupid propel! 14:32 < horros> grumble 14:32 < eremit> uh ... 14:32 < eremit> it shouldn't :/ 14:32 < horros> you would think so, yes :P 14:33 < eremit> maybe (\w|\s|\d)+ ? 14:33 < eremit> quite the same but ... 14:33 < eremit> and more ascii artist like *hrhr* 14:35 < eremit> ah ... is there a function like realpath($filename, $useIncludeDir = true) in php ?? 14:41 < horros> what the hell is wrong with this thing?! 14:41 < horros> )#¤)%(#¤% 14:41 < splatch`> horros: this is no words 14:41 < splatch`> try to use (.*) in your regexp 14:42 < horros> what? 14:43 < splatch`> \w doesn\t match ä 14:43 < horros> I don't care at the moment. 14:43 < horros> it doesn't match ANYTHING 14:44 < splatch`> this is PHP bug 14:44 < splatch`> there are workin' good inly with latin1/2 literals 14:45 < horros> I repeat: 14:45 < horros> I don't care at the moment. it does not match anything. 14:46 < horros> [14:27] that errors if I try to validate "Testwallet" 14:46 < horros> there are no non-latin1 chars there. no non-ascii-chars for that matter. 14:46 < splatch`> so, you have bad regexp 14:47 < horros> SATANDEATH 14:47 * horros kicks self, then proceeds to kick EMS PostgreSQL Manager 14:47 < splatch`> and slaps splatch ;) 14:50 -!- Wombert [n=Wombert@dslb-088-064-003-185.pools.arcor-ip.net] has joined #agavi 14:50 < splatch`> [d] 14:54 < eremit> yes, it's working never ever _once again nowhere :D 14:55 < eremit> hi Wombert 14:56 < v-dogg> eremit: what did you come up with? 14:56 < eremit> a php script which scan all php files in a given directory and it's subdirs ... 14:56 < eremit> replacing include_once with Eremit_OpCodeFix::includeOnce() and require_once with ::requireOnce() 14:57 < v-dogg> :) 14:57 < eremit> the OpCodeFix methods determine the full filename using includepath and stuff ... and afterwards compare the filename to get_included_files 14:57 < eremit> if it's not there it does a require/include ... 14:58 < eremit> so i don'T hassle with __autoloaders etc ... 14:59 < splatch`> eremit: why you don't use static table? 14:59 < splatch`> *array 15:00 < eremit> pardon? 15:00 < splatch`> eremit: you can use static field 15:01 < eremit> where ? why ? 15:01 < splatch`> to don't call get-included-files 15:01 < eremit> i cannot use a static array ... 15:01 < eremit> i need to call get_included_files ... 15:02 < eremit> because of the autoloaders in different libs 15:02 < splatch`> eremit: you can use static array in an function :) 15:02 < eremit> no i cant 15:36 < eremit> strike .... from 0.93 reqs / sec to 5.11 reqs / sec ... and now horros, i can think about horizontal scaling :P 15:36 < horros> :D 15:36 < Wombert> eremit: with apc? 15:36 < Wombert> 0.93 per second, that's a slow machine :p 15:36 < Wombert> or bad bad programming ;) 15:37 < eremit> it's not the fastest machine ... and it's a really really complex form ... i took the most complex for benchmarking ;) 15:37 < horros> k 15:37 < eremit> and yes ... apc + my opcode fix ... 15:37 < horros> wtf am I doing? 15:37 < horros> haha 15:37 < horros> $criteria->add(...., Criteria::GREATER::EQUAL) 15:37 * horros lols at self 15:38 < horros> I think I need more coffee :) 15:38 < eremit> haha 15:39 < eremit> Wombert, and the best .. i never ever have to care about _once again ... so 3rd party libs may use it as often as they like :P 15:42 < eremit> Wombert was there ever a approach to push the parsed configs into the apc instead of the filesystem using apc_store ? 15:47 < Wombert> eremit: that's not possible 15:47 < Wombert> most configs are include()d 15:47 < Wombert> because they contain actual code 15:48 < Wombert> eremit: so the problem with apc is the _once includes? 15:48 < Wombert> oO 15:48 < eremit> yes the problem is as far as i understood the following : 15:48 < horros> Wombert: yes 15:49 < eremit> if php finds a require/include it does a stat() on the file ... 15:49 < horros> Wombert: took me all of ionCube's trial period to figure out :D 15:49 < eremit> and if it's a _once it keeps the stat() open until the interpreter ends 15:50 < Wombert> lol 15:50 < Wombert> eremit: okay 15:50 < Wombert> and there's a limit, and it's hit after some time 15:50 < Wombert> ? 15:51 < Wombert> wouldn't that be a known issue that has been fixed by now I wonder 15:51 < eremit> yes ... in the case of creole and propel heavy using _once ... i get too many files open ... 15:51 < Wombert> eremit: you could use custom propel build templates that don't use _once 15:51 < Wombert> or, even better, rely completely on autoloading 15:51 < eremit> sure i tried that ... but internally propel and creole use _once ... 15:52 < eremit> pear is even more worse ... 15:52 < Wombert> there's no such thing as more worse x 15:52 < Wombert> D 15:52 < Wombert> anyways 15:52 < Wombert> I had plans to change propel so it supports autoloading 15:52 < Wombert> maybe it's time for that now 15:52 < eremit> yes ... :D 15:53 < eremit> and creole and the whole world ... 15:53 < eremit> ;) ... no just joking ... i think they should fix php ... instead of forcing all lib devs to fix their code 15:53 < Wombert> but why isn't that fixed in php? 15:53 < Wombert> did you try clearstatcache() ? 15:53 < eremit> yes... more than once ;) ... 15:54 < Wombert> is it a known issue? 15:54 < Wombert> I would think it is because you ran into it, horros did apparently, and I did, too 15:54 < eremit> rasmus did some investigation about that ... mom 15:55 < eremit> http://groups.google.com/group/mailing.www.php-dev/browse_thread/thread/4c68c52282335cb2/7b07a51d6206d4a3 15:56 < eremit> that's the discussion where rasmus tells about the problem ... 15:56 < eremit> it definately is php related ... but it looks like they do not really care ... 15:56 < eremit> neverless they care about nothing ... another bug we found some time ago is still open 15:57 < eremit> http://bugs.php.net/bug.php?id=38274 15:57 < eremit> ^^ and that's a really nasty one 15:57 < Wombert> dominik once fixed a bug in the mssql extension (bug ticket + patch) and it took them two years or so 15:57 < eremit> btw wombert ... just created rewrite rules for lighttpd and agavi ^^ 15:58 < Wombert> eremit: uhm 15:58 < Wombert> eremit: it's all in the docs 15:58 < eremit> lighttp rewrite rules ? i must have missed them 15:59 < Wombert> cookbook, chapter 2, section 1.2 15:59 < Wombert> url.rewrite-once = ( 15:59 < Wombert> "^/~cbrown/projects/win-a-baseball-match/pub/([^?]*)(?:\?(.*))?$" => "/~cbrown/projects/win-a-baseball-match/pub/index.php?/$1&$2" 15:59 < Wombert> ) 15:59 < Wombert> &, of course, not & 16:00 < eremit> uh ... 16:00 < eremit> that's quite complex ... 16:00 < Wombert> use it 16:00 < Wombert> it's the only rule that's guaranteed to work 16:00 < eremit> #url.rewrite-once = ( 16:00 < eremit> # "^/(.*)\.(js|gif|php|jpg|css)$" => "/$0", 16:00 < eremit> # "^/(.*)$" => "/index.php?/$1" 16:00 < eremit> #) 16:00 < Wombert> yes 16:00 < eremit> that's perfectly working for me ^^ 16:00 < Wombert> and that is wrong 16:00 < Wombert> mhm 16:01 < Wombert> foo/bar/baz?foo=bar 16:01 < Wombert> won't work 16:01 < eremit> ok ... your point :) 16:01 < Wombert> and /$0 is wrong, too, just FYI ;) 16:02 < eremit> uh ? ah ... i should remove the / 16:02 < eremit> and should not write rewrite rules that early in the morning ;) 16:02 < Wombert> please use the rewrite rules recommended in the documentation because a) they work and b) it took me two days to test everything on the various web servers :p 16:02 < eremit> sure i will ... 16:03 < eremit> i simply missed that one... and figured these ones out, wasting 3hrs :( 16:03 < Wombert> good boy 16:04 < eremit> neverless regarding the apc store thing and agavi configs there are some things you could store in the apc ... 16:04 < eremit> routing e.g. ... basically you are doing a include and within that you import and array ... 16:05 < eremit> before including the file you could also fetch the array from apc and import it ... 1 include less ;) ... but this will bring us into a meta discussion 16:05 < eremit> about performance vs. clean design 16:31 < Wombert> v2, maybe 16:31 < Wombert> not in 1,0 16:31 < Wombert> right now, everything uses ConfigCache::blah and I'm not in the mood to change that this late in the game 16:32 < eremit> it's ok ... if i really need it i can change it myself ... ;) 16:32 < eremit> but now there are more options for me to push performance to the desired goals ... 16:35 < Wombert> #1 will, of course, be CachingExecutionFilter 16:36 < Wombert> but 16:36 < Wombert> bbl 16:50 < eremit> rofl: PHP is a minor evil perpetrated and created by incompetent amateurs, whereas Perl is a great and insidious evil, perpetrated by skilled but perverted professionals. 16:55 < v-dogg> hehe 16:59 -!- raidman [n=raidman@unaffiliated/raidman] has quit [Read error: 110 (Connection timed out)] 17:03 -!- raidman [n=raidman@unaffiliated/raidman] has joined #agavi 17:10 < digitarald> Wombert: did u find the problem with : in routings? 17:20 -!- shoan [n=shoan@59.92.134.176] has joined #agavi 17:25 -!- digitarald [n=Miranda@18.Red-83-55-60.dynamicIP.rima-tde.net] has quit [Read error: 104 (Connection reset by peer)] 17:28 -!- shoan_ [n=shoan@59.92.134.176] has quit [Read error: 110 (Connection timed out)] 17:40 < v-dogg> goooood evening folks 17:42 < raidman> gooooooooooooooood evening v-dogg ang guys 17:47 < v-dogg> what's happening 17:48 < shoan> nothing :) 17:50 < v-dogg> so, people, what's the best op code cache for php5.1.x? 17:51 < eremit> apc ... :P 17:51 < eremit> Requests per second: 23.95 [#/sec] (mean) avgt. load: 12 17:52 < eremit> ^^ ... remember i started at sub 1 17:53 < v-dogg> but an op code cache requires (or might require) a _once hacking? 17:54 < eremit> yea ... do ya need a script to hack it ? 17:54 < v-dogg> yes please 18:01 -!- devosc [n=devosc@rrcs-24-172-199-238.central.biz.rr.com] has joined #agavi 18:04 < v-dogg> eremit: did you compile apc yourself or can it be installed via 'pecl install' 18:10 -!- benny`work [n=benny@p54AC1B30.dip0.t-ipconnect.de] has joined #agavi 18:11 < v-dogg> what is "include_once override" in APC? 18:11 < v-dogg> http://pecl.php.net/package-changelog.php?package=APC&release=3.0.12p2 18:27 -!- devosc [n=devosc@rrcs-24-172-199-238.central.biz.rr.com] has left #agavi [] 18:34 -!- raidman [n=raidman@unaffiliated/raidman] has quit ["Leaving"] 18:38 < eremit> v-dogg. ... i used pecl install 18:41 < eremit> include_ones override ? Oo 18:42 < v-dogg> the top most changelog there 18:43 < eremit> as soon as the page opens i can take a look ... but 3.0.12p2 ? released yesterday ? 18:43 < v-dogg> yeah 18:43 < eremit> released today ... looool ... 18:44 < v-dogg> no, sorry, 3.0.12 18:44 < eremit> i'm still at .11 18:44 < eremit> maybe i should try an upgrade ... 18:45 < eremit> rofl ... sudo pecl upgrade -> will upgrade phing, will upgrade apc ... 18:45 < eremit> why cant they stop mixing pear/pecl stuff 18:49 < v-dogg> Override the ZEND_INCLUDE_OR_EVAL opcode handler to avoid pointless fopen()s [still experimental] 18:49 < v-dogg> from: apc_globals.h 19:11 -!- shoan_ [n=shoan@59.92.143.28] has joined #agavi 19:16 -!- jake [n=jake@gg.internal.mixxer.com] has joined #agavi 19:24 -!- shoan [n=shoan@59.92.134.176] has quit [Read error: 110 (Connection timed out)] 19:39 < splatch`> hello 20:31 < Wombert> eremit: because you have an old phing version that is installed as pecl? 20:31 < Wombert> * Override ZEND_INCLUDE_OR_EVAL opcode (when possible) to speed up use of 20:31 < Wombert> require_once() and include_once() statements. (Sara) 20:31 < Wombert> that was in 0.11 20:31 < Wombert> looks like the override is not optional 20:31 < Wombert> so 20:31 < Wombert> probably you need a certain php version for that 20:43 < Wombert> from what I understand, it is enabled in 3.0.11 20:44 < Wombert> and the only change in 3.0.12 is that it's off by default and you can configure it 20:44 < Wombert> I still don't understand the "(when possible)" note there 20:46 < eremit> rehi 20:47 < eremit> hmm :/ .. maybe this include stuff in apc 3.0.12 was the reason for my trouble ... 20:47 < Wombert> I don't think so 20:47 < Wombert> I've seen it with earlier versions 20:48 < eremit> but they changed something in the amount of file descriptors ... 20:48 < Wombert> eremit: what php version 20:48 < eremit> 5.1.2-1ubuntu3 20:49 < Wombert> hmmm 20:50 < Wombert> apc_zend.c uses different approaches for opcode replace definition 20:50 < Wombert> # define APC_REPLACE_OPCODE(opname) { int i; for(i = 0; i < 25; i++) if (zend_opcode_handlers[(opname*25) + i]) zend_opcode_handlers[(opname*25) + i] = apc_op_##opname; } 20:50 < Wombert> that's the only "ehen possible" thing I can find 20:51 < eremit> omg... my software engineering prof would kick them out of the course Oo 20:52 < Wombert> # define APC_REPLACE_OPCODE(opname) zend_opcode_handlers[opname] = apc_op_##opname; 20:52 < Wombert> that's for ze2.0 20:52 < Wombert> might be the reason why it didn't kick in for your php version 20:52 < Wombert> did you try to update php to latest 20:52 < Wombert> 5.1.6 or whatever it is 20:52 < eremit> no i havn't because the production servers are clean ubuntu repository based ... 20:53 < eremit> so i have to use the patched 5.1.2 20:55 < eremit> neverless the apc is, when used wisely really really nice ... after having all the problems solved :) 20:59 < Wombert> omg ubuntu 20:59 < Wombert> omg linux 20:59 < Wombert> omg 20:59 < eremit> oO ... what else would you expect on a server ? ... windows ? :P 20:59 < Wombert> Mac OS X Server ;) 20:59 < eremit> w33... 20:59 < Wombert> and yeah, if you want performance... 20:59 < Wombert> IIS is a lot faster 20:59 < Wombert> than apache 20:59 < Wombert> and lighttpd 20:59 < eremit> oO ... 21:00 < Wombert> yeah 21:00 < eremit> we are currently planing a MacOS X Server port of syscp :D 21:00 < Wombert> didn't think that either, but it is 21:00 < eremit> windows iis is faster than lighttpd ... i really cannot believe that ^^ 21:02 < eremit> woot ... the new apc brought a really nice additional performance boost 21:04 < eremit> and it produces now a correct server overloaded response instead of some silly file not found responses 21:07 -!- raidman|Away [n=raidman@85-18-14-41.fastres.net] has joined #agavi 21:12 < Wombert> http://litespeedtech.com/library/benchmarks/benchmark_r2/ 21:13 < Wombert> as you can see, it also scales best ;) 21:18 < eremit> eh ... sorry but i still cannot believe that ... 21:18 < eremit> and they haven't even tested iis on non static files ... 21:20 < splatch`> Wombert: you use this nick in propel? 21:20 < eremit> sorry wombert .. their test is totally useless ... 21:24 < splatch`> what does minds the "third pary frameworks"? 22:00 -!- digitarald [n=Miranda@62-43-0-206.user.ono.com] has joined #agavi 22:02 -!- HoORnet [n=llsojdt@ARouen-156-1-54-251.w90-8.abo.wanadoo.fr] has joined #agavi 22:02 -!- digitarald [n=Miranda@62-43-0-206.user.ono.com] has quit [Read error: 104 (Connection reset by peer)] 22:02 -!- HoORnet [n=llsojdt@ARouen-156-1-54-251.w90-8.abo.wanadoo.fr] has left #agavi ["I'll be back ;)"] 22:03 -!- digitarald [n=Miranda@62-43-0-206.user.ono.com] has joined #agavi 22:19 -!- impl [n=impl@httpcraft/php/nforbes] has joined #agavi 22:32 -!- HoORnet [n=llsojdt@ARouen-156-1-54-251.w90-8.abo.wanadoo.fr] has joined #agavi 22:32 -!- HoORnet [n=llsojdt@ARouen-156-1-54-251.w90-8.abo.wanadoo.fr] has left #agavi ["I'll be back ;)"] 23:54 -!- shoan_ [n=shoan@59.92.143.28] has quit [Read error: 113 (No route to host)] 23:56 -!- shoan [n=shoan@59.92.137.76] has joined #agavi --- Day changed Wed Sep 06 2006 02:22 -!- benny`work [n=benny@p54AC1B30.dip0.t-ipconnect.de] has quit ["unset($this);"] 03:00 -!- pressureman [n=pressure@ip-202-37-228-10.internet.co.nz] has joined #agavi 03:00 < pressureman> hey hey 03:01 < pressureman> Wombert, are you here? 03:01 < Wombert> lol 03:01 < Wombert> you're lucky 03:02 < Wombert> I entered the room the moment you wrote that 03:02 < pressureman> karma 03:02 < Wombert> should I go to bed or... stay awake 03:02 < pressureman> i sensed you through the sub-ether 03:02 < pressureman> i've got my app migrated to 0.11! 03:02 < Wombert> my dad asked me to drive him to the train station, that's in 2.5 hours or so 03:02 < Wombert> hmmmh 03:02 < Wombert> that's cool! 03:03 < pressureman> i reckon it runs faster... 03:03 < pressureman> very snappy 03:03 < Wombert> you sure? 03:03 < Wombert> I doubt that 03:03 < pressureman> it's a rather unscientific benchmark, but it just feels quicker 03:03 < Wombert> it's faster with APC, yeah, but not under normal circumstances 03:03 < pressureman> maybe i'm just used to working in development mode for so long, with config recompiles 03:04 < pressureman> anyway... are there any more detailed examples of using the new form population stuff? 03:05 < Wombert> well 03:05 < Wombert> 03:05 < Wombert> if the url is the same, it'll populate that on POST 03:06 < pressureman> how about editing an existing record? 03:07 < Wombert> two options 03:07 < Wombert> a) 03:07 < Wombert> b) in the view, do 03:07 < Wombert> $request->setAttribute('populate', new AgaviParameterHolder(array('foo' => 'value!')), 'org.agavi.filter.FormPopulationFilter'); 03:08 < Wombert> you can also pass in an array but that won't work in a couple of days when I update the FPF to be able to pre-populate multiple forms 03:08 < Wombert> using a parameter holder is forward compatible ;) 03:08 < Wombert> mmmh these jelly beans are tasty 03:08 < pressureman> ok... and also the preferred method? 03:08 < Wombert> who else is around? 03:08 * Wombert pokes jake 03:08 * Wombert pokes impl 03:08 < Wombert> yes 03:08 < pressureman> whoa... we've got jellybeans here in the off too! 03:08 < pressureman> spooky 03:08 < Wombert> note that you don't need to run htmlentities() 03:09 < Wombert> and you call them jelly beans, right? 03:09 < pressureman> you're based in .DE, right? 03:09 < Wombert> not jelly belly 03:09 < Wombert> yep 03:09 < Wombert> but 03:09 < Wombert> I must say 03:09 < Wombert> I love them because my dad loves them 03:09 < Wombert> and he is australian ;) 03:09 < Wombert> so I also know what vegemite is, for example (and I hate it... uuuaaahhh) 03:10 < pressureman> i'm in .NZ, but i lived in berlin for 7 months in 2005 03:10 < Wombert> I eat weetabix sometimes 03:10 < Wombert> I put HP sauce on food 03:10 < pressureman> ich lernte deutsch 03:10 < Wombert> and all that other weird stuff 03:10 < Wombert> oh that's nice 03:10 < Wombert> I must say I don't like berlin 03:10 < Wombert> it's just way too large 03:10 < pressureman> which region are you in? 03:10 < Wombert> and too dirty 03:10 < Wombert> I'm from Munich 03:10 < pressureman> ahh that's right 03:10 < Wombert> Oktoberfest, ever heard of that? 03:11 < pressureman> yes, i went there... 03:11 < Wombert> oh! cool :> 03:11 < pressureman> don't remember a heck of a lot... 03:11 < pressureman> other than i was there 03:11 < Wombert> well 03:11 < Wombert> of course ;) 03:11 < Wombert> you prolly drank a sh*load of beer ;> 03:11 < pressureman> i think i did 03:12 < pressureman> and doner kebabs 03:12 < pressureman> mmm... breakfast of champions 03:12 < pressureman> anyway... back to the forms... 03:12 < Wombert> :>>> 03:12 < Wombert> ate one today 03:12 < Wombert> yeah 03:12 < Wombert> are you using utf8, by the way 03:12 < pressureman> umm, it should be possible to use an "edit" form for both editing and adding records, right? 03:13 < Wombert> yeah 03:13 < pressureman> yes, UTF8 all the way 03:13 < Wombert> two views 03:13 < Wombert> but one template 03:13 < Wombert> good boy 03:13 < pressureman> and xhtml 03:13 < pressureman> no more mismatched tags or sloppy markup allowed ;-) 03:13 < Wombert> yep 03:14 < Wombert> FPF will soon use loadXml() instead of loadHtml() for XHTML documents ;) 03:14 < pressureman> how about for actions? two actions? 03:14 < Wombert> I would use two actions, yes 03:14 < Wombert> AddAction 03:14 < Wombert> EditAction 03:14 < Wombert> ViewAction 03:14 < Wombert> DeleteAction 03:14 < pressureman> hmmm 03:14 < pressureman> wouldn't the edit and view actions be combined? 03:15 < Wombert> you can 03:15 < Wombert> however 03:15 < pressureman> returning an input view? 03:15 < Wombert> think about the implications 03:15 < Wombert> technically, it's different things 03:15 < Wombert> let's assume your boss walks in tomorrow and says 03:15 < Wombert> "I heard a competitor has XMLRPC functions. we need that too. implement it" 03:15 < Wombert> you'd be glad to have two actions then ;) 03:16 < pressureman> true 03:16 < pressureman> ok, so the view action would retrieve the record and render the input form 03:16 < pressureman> the form action would be set to POST to the edit action? 03:17 < pressureman> and if validation fails? which action:view would be used? 03:18 < impl> Wombert: I was poked! 03:18 < Wombert> and it serves you right! 03:18 < impl> O: 03:18 < impl> What have I done now? 03:18 < Wombert> pressureman: yes, for example 03:18 < Wombert> pressureman: well that's the question then, and up to you to decide 03:18 < Wombert> many people only use an edit form 03:19 < Wombert> where the data is in the fields already 03:19 < Wombert> or where you push and edit button and the fields are revealed 03:19 < Wombert> but 03:19 < Wombert> I believe you have to make a decision there 03:19 < pressureman> i've been lazy in the past, and used a single edit action. to determine whether it's an edit or an add, i look for the presence of the DB primary key in the POST 03:20 < impl> Mmmmph, you realize anyone can set that as they please, right? 03:21 < impl> POST data is just like GET data realistically 03:21 < pressureman> yes, i know POST can be easily poisoned 03:22 < pressureman> but i will check the role of the currently logged in user who makes that POST 03:22 < pressureman> they need to be an administrator role in order to post 03:22 < impl> Ah :) 03:23 -!- [1]eremit [n=eremit@p5490FAA4.dip.t-dialin.net] has joined #agavi 03:23 < pressureman> i'd be happy just to get rid of the horible, icky, nasty, evil, bad ajax forms i wrote last year 03:28 < pressureman> Wombert, i followed your example for the FPF, but nothing actually happens 03:28 < pressureman> maybe i'm not holding my ears right 03:30 < pressureman> do i need to do something special to make the formpopulationfilter take effect? 03:30 < Wombert> is it active? 03:31 < Wombert> i.e. a) did you put it into global_filters.xml 03:31 < Wombert> b) did you enable it for the "write" method 03:31 < pressureman> heh, i don't even have a global_filters.xml! 03:31 < pressureman> i'll copy it from the sample app 03:32 < pressureman> ok, done that, no cigar 03:34 < Wombert> hm 03:35 < Wombert> is the form action the same as the current url? 03:35 < Wombert> something else does not (yet) work 03:36 < pressureman> i've manually set the form action to the same url at the moment in the template 03:39 -!- eremit [n=eremit@p5490CD29.dip.t-dialin.net] has quit [Read error: 110 (Connection timed out)] 03:39 -!- [1]eremit is now known as eremit 03:40 < pressureman> does the view need to be a specifc class? 03:40 < pressureman> it extends a custom view of mine, which extends AgaviView 03:41 -!- Wombert [n=Wombert@dslb-088-064-003-185.pools.arcor-ip.net] has quit [Nick collision from services.] 03:41 -!- Wombert [n=Wombert@dslb-088-064-003-056.pools.arcor-ip.net] has joined #agavi 03:42 < pressureman> hmm AgaviView is the only view in agavi now it seems 03:43 < Wombert> oO maybe I broke the FPF 03:43 < Wombert> yeah we have renderers now 03:44 < Wombert> pressureman: if I put this 03:44 < Wombert> $this->getContext()->getRequest()->setAttribute('populate', new AgaviParameterHolder(array('username' => 'test')), 'org.agavi.filter.FormPopulationFilter'); 03:45 < Wombert> into samples/app/modules/Default/views/LoginInputView.class.php 03:45 < Wombert> it works 03:47 < pressureman> hmmmm 03:48 < pressureman> are u using html or xhtml? 03:49 < Wombert> in the sample app, it's xhtml 03:49 < Wombert> wait is that ajax? 03:49 < pressureman> no 03:50 < pressureman> my url is /admin/user/edit/4 where 4 is the primary key 03:50 < pressureman> routing tells agavi to load UserEditAction, which has a default view name of Input 03:51 < pressureman> in UserEditInputView i'm setting the 'populate' attribute as you said 03:51 < Wombert> and the form action? 03:51 < pressureman> manually set to the same url 03:51 < Wombert> typo in the populate thing? 03:53 < pressureman> nope 03:54 < pressureman> should i pastebin it somewhere? 03:55 < pressureman> the form shouldn't need a name, should it? 03:57 < Wombert> yeah 03:57 < Wombert> no, no need for a name 03:59 < pressureman> what if i rename the template to cause an exception, and check in the stacktrace whether the FPF is running? 04:00 < Wombert> you could also add a quick echo or so to the fpf 04:01 < pressureman> ok, stacktrace from the first entry is dispatch, execute, fpf... 04:01 < pressureman> that seems to be before it even knows what the view is 04:03 < pressureman> do i need to add 'read' as a param in my global filters? 04:03 < Wombert> no that doesn't matter 04:03 < pressureman> this isn't a post yet, this is a get... it's just to prepopulate the form 04:03 < Wombert> fpf runs on the way back in the chain 04:06 < pressureman> das verstehe ich nicht! 04:14 < Wombert> each filter 04:14 < Wombert> calls the next one by doing 04:14 < Wombert> $filterChain->execute() 04:14 < Wombert> the last filter is the execution filter 04:14 < pressureman> yeah, i've just set up a vhost with the sample app, and it's working in that. 04:15 < Wombert> or, for global filters, the dispatch filter 04:15 < pressureman> i'll try to figure it out 04:15 < Wombert> so everything you do prior to $filterChain->execute() happens before your action runs 04:15 < Wombert> and everything you do after that happens after action has run, view has been rendered etc 04:34 < pressureman> still can't get it to work :( 04:38 < pressureman> do the fields need id's? 04:38 < Wombert> no 04:38 < Wombert> but 04:38 < Wombert> if they have an id 04:38 < Wombert> and you have a