From casual.dodo at gmail.com Fri Jun 1 05:16:33 2007 From: casual.dodo at gmail.com (Ramnath R Iyer) Date: Fri, 01 Jun 2007 14:46:33 +0530 Subject: [geeklog-devel] Link autotag Message-ID: <465FE3F1.1000102@gmail.com> -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 Hi, With the link autotag, the HTML does not validate. In plugins/links/functions.inc (line 181 approx) I think it should be: $url = COM_buildUrl ($_CONF['site_url'] . '/links/portal.php?what=link&item=' . $lid); (Note the & instead of &) - -- Ramnath R Iyer http://www.silentyak.com/ /* Today is the beginning of the rest of your life */ -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.7 (GNU/Linux) iD8DBQFGX+PxMxCblU0G03MRAhOyAJsF2Pey6jkiRucOzuRbVzJXGpUGdACfe1W3 imakXDsjCL+AUE8ozWNXBrg= =ik1T -----END PGP SIGNATURE----- From dirk at haun-online.de Sat Jun 2 03:34:48 2007 From: dirk at haun-online.de (Dirk Haun) Date: Sat, 2 Jun 2007 09:34:48 +0200 Subject: [geeklog-devel] CVS problems Message-ID: <20070602073448.1571984501@smtp.haun-online.de> Looks like we have some problems with CVS: The CVS server is crashing when you try do anything (checkouts, checkins, updates) and leaves locks behind that need to be cleaned up manually. I've informed pair.com support. Until they fix this, can I please ask everyone to abstain from doing anything with CVS. Thanks. bye, Dirk -- http://www.geeklog.net/ http://geeklog.info/ From joe at ThrowingDice.com Sun Jun 3 08:01:09 2007 From: joe at ThrowingDice.com (Joe Mucchiello) Date: Sun, 03 Jun 2007 08:01:09 -0400 Subject: [geeklog-devel] CAPTCHA v3.0 removes reliance on PHP sessions In-Reply-To: <20070602073448.1571984501@smtp.haun-online.de> References: <20070602073448.1571984501@smtp.haun-online.de> Message-ID: <0JJ20075E7046R00@mta4.srv.hcvlny.cv.net> > Authored by: mevans on Sunday, June 03 2007 @ 01:08 AM EDT > I'm working on CAPTCHA v3.0 and I will try to get OpenID support in there. My plan is to make it an option just like anonymous, > so you can select to have all OpenID users enter the CAPTCHA if you want. The other big change in v3 will be removing the > PHP sessions and replacing it with a db driven solution. PHP sessions seem to cause more problems than they solve right now. I had a feature request for a new table supported by lib-sessions called gl_sess_vars. It would have three columns: sess_id, name, var. lib-sessions would expose a new global: $_SESS_ID that would be used as half of the key for gl_sess_vars (the other half being name). When lib-sessions does maintanance to remove dead sessions from gl_sessions it would also clean up gl_sess_vars. This would solve all sorts of issues with forms knowing where they came from that I can't believe it didn't get written sooner. If someone will guarantee this feature will be accepted, I'll write the change to lib-session myself. Joe ---- Joe Mucchiello Throwing Dice Games http://www.throwingdice.com From WebSiteMaster at Cogeco.net Sun Jun 3 09:31:23 2007 From: WebSiteMaster at Cogeco.net (Web Site Master) Date: Sun, 3 Jun 2007 09:31:23 -0400 Subject: [geeklog-devel] CAPTCHA v3.0 removes reliance on PHP sessions In-Reply-To: <0JJ20075E7046R00@mta4.srv.hcvlny.cv.net> References: <20070602073448.1571984501@smtp.haun-online.de> <0JJ20075E7046R00@mta4.srv.hcvlny.cv.net> Message-ID: <005d01c7a5e3$7aef97b0$9601a8c0@WS1> This is something that we have needed. Are you planning for it to be able to handle arrays? I have an array that is built in a plugin each time the user accesses a page. Building it once and storing it for a session would be a lot faster than rebuilding it for each access. -----Original Message----- From: geeklog-devel-bounces at lists.geeklog.net [mailto:geeklog-devel-bounces at lists.geeklog.net] On Behalf Of Joe Mucchiello Sent: June 3, 2007 8:01 AM To: Geeklog Development Subject: [geeklog-devel] CAPTCHA v3.0 removes reliance on PHP sessions > Authored by: mevans on Sunday, June 03 2007 @ 01:08 AM EDT > I'm working on CAPTCHA v3.0 and I will try to get OpenID support in there. My plan is to make it an option just like anonymous, > so you can select to have all OpenID users enter the CAPTCHA if you want. The other big change in v3 will be removing the > PHP sessions and replacing it with a db driven solution. PHP sessions seem to cause more problems than they solve right now. I had a feature request for a new table supported by lib-sessions called gl_sess_vars. It would have three columns: sess_id, name, var. lib-sessions would expose a new global: $_SESS_ID that would be used as half of the key for gl_sess_vars (the other half being name). When lib-sessions does maintanance to remove dead sessions from gl_sessions it would also clean up gl_sess_vars. This would solve all sorts of issues with forms knowing where they came from that I can't believe it didn't get written sooner. If someone will guarantee this feature will be accepted, I'll write the change to lib-session myself. Joe ---- Joe Mucchiello Throwing Dice Games http://www.throwingdice.com _______________________________________________ geeklog-devel mailing list geeklog-devel at lists.geeklog.net http://eight.pairlist.net/mailman/listinfo/geeklog-devel __________ NOD32 2305 (20070601) Information __________ This message was checked by NOD32 antivirus system. http://www.eset.com From joe at ThrowingDice.com Sun Jun 3 13:41:03 2007 From: joe at ThrowingDice.com (Joe Mucchiello) Date: Sun, 03 Jun 2007 13:41:03 -0400 Subject: [geeklog-devel] CAPTCHA v3.0 removes reliance on PHP sessions In-Reply-To: <005d01c7a5e3$7aef97b0$9601a8c0@WS1> References: <20070602073448.1571984501@smtp.haun-online.de> <0JJ20075E7046R00@mta4.srv.hcvlny.cv.net> <005d01c7a5e3$7aef97b0$9601a8c0@WS1> Message-ID: <0JJ2006XLMGRSYK0@mta1.srv.hcvlny.cv.net> I would say it should support nothing but read and write. Though I suppose an API could be created. What happens if the value of an array member is itself an array? Or if the array have a resource or object in it? No, leave it up to the code that wants to save the data to know how to save and load it. It is faster for you to code calling DB_save in a loop to save the array and to call DB_query with a LIKE clause to read the data than it is to write a robust save/load that can handle any data structure. Though if I get bored I'll give it a shot. At a minimum I would probably provide a few helper functions: function SESS_getSessionVar($name, $default = NULL); // if not in db return default do not modify db function SESS_getAndSetSessionVar($name, $default = NULL); // if not in db set value to default and save to db else return db value function SESS_setSessionVar($name, $value); function SESS_issetSessionVar($name); // return true if name is in the db function SESS_unsetSessionVar($name); // delete name from the db function SESS_clearSessionVars(); // delete all vars associated with current session At 09:31 AM 6/3/2007, Web Site Master wrote: >This is something that we have needed. > >Are you planning for it to be able to handle arrays? I have an array that >is built in a plugin each time the user accesses a page. Building it once >and storing it for a session would be a lot faster than rebuilding it for >each access. ---- Joe Mucchiello Throwing Dice Games http://www.throwingdice.com From dirk at haun-online.de Tue Jun 5 13:13:52 2007 From: dirk at haun-online.de (Dirk Haun) Date: Tue, 5 Jun 2007 19:13:52 +0200 Subject: [geeklog-devel] CVS problems In-Reply-To: <20070602073448.1571984501@smtp.haun-online.de> References: <20070602073448.1571984501@smtp.haun-online.de> Message-ID: <20070605171352.1643174146@smtp.haun-online.de> >Looks like we have some problems with CVS I haven't had an official "go" yet (Tony?), but it seems we're back in business. I expect to see a flurry of CVS activity now ;-) Btw, I've added the "tools" directory again, in case anyone should ever need to create an "official" Geeklog tarball (project name is "tools", on the same directory level as "Geeklog-1.x"). bye, Dirk -- http://www.geeklog.net/ http://geeklog.info/ From tony at tonybibbs.com Tue Jun 5 16:16:50 2007 From: tony at tonybibbs.com (Tony Bibbs) Date: Tue, 5 Jun 2007 13:16:50 -0700 (PDT) Subject: [geeklog-devel] CVS problems Message-ID: <549716.86657.qm@web715.biz.mail.mud.yahoo.com> Yes, as you suggested we did get the all clear. I see you had one CVS commit so far so I'm hopefully it's working for everybody now. --Tony ----- Original Message ---- From: Dirk Haun To: geeklog-devel Sent: Tuesday, June 5, 2007 12:13:52 PM Subject: Re: [geeklog-devel] CVS problems >Looks like we have some problems with CVS I haven't had an official "go" yet (Tony?), but it seems we're back in business. I expect to see a flurry of CVS activity now ;-) Btw, I've added the "tools" directory again, in case anyone should ever need to create an "official" Geeklog tarball (project name is "tools", on the same directory level as "Geeklog-1.x"). bye, Dirk -- http://www.geeklog.net/ http://geeklog.info/ _______________________________________________ geeklog-devel mailing list geeklog-devel at lists.geeklog.net http://eight.pairlist.net/mailman/listinfo/geeklog-devel From dirk at haun-online.de Tue Jun 5 16:25:27 2007 From: dirk at haun-online.de (Dirk Haun) Date: Tue, 5 Jun 2007 22:25:27 +0200 Subject: [geeklog-devel] CVS problems In-Reply-To: <549716.86657.qm@web715.biz.mail.mud.yahoo.com> References: <549716.86657.qm@web715.biz.mail.mud.yahoo.com> Message-ID: <20070605202527.350261848@smtp.haun-online.de> Tony Bibbs wrote: >I see you had one CVS commit so far I actually did an import for the tools directory - those don't seem to send out emails. The email was for the readme, which I added with "cvs add". bye, Dirk -- http://spam.tinyweb.net/ From tony at tonybibbs.com Wed Jun 6 15:31:42 2007 From: tony at tonybibbs.com (Tony Bibbs) Date: Wed, 6 Jun 2007 12:31:42 -0700 (PDT) Subject: [geeklog-devel] SVN? Message-ID: <361329.54879.qm@web709.biz.mail.mud.yahoo.com> Any objections to me converting all of the Geeklog2 stuff over to SVN? I'm in the process of finally adding PHPUnit tests to the underlying GL2 libraries that we use quite a bit here at work. In addition to feeling like I'm waiting for CVS to die, I'd like to use xinc which requires SVN: http://xinc.entrypoint.biz/ Since we're already using Phing and now PHPUnit it'd be a bit silly not to convert to SVN so we could use it. --Tony From mjervis at gmail.com Wed Jun 6 15:39:30 2007 From: mjervis at gmail.com (Michael Jervis) Date: Wed, 6 Jun 2007 20:39:30 +0100 Subject: [geeklog-devel] SVN? In-Reply-To: <361329.54879.qm@web709.biz.mail.mud.yahoo.com> References: <361329.54879.qm@web709.biz.mail.mud.yahoo.com> Message-ID: <7b42e7470706061239j7461de77ub9da44101c20bdeb@mail.gmail.com> no, like SVN lots more. Is Phing that tool you mentioned that allowed you to do conditional complilation of PHP scripts (in a static way) when we were talking about performance? On 06/06/07, Tony Bibbs wrote: > Any objections to me converting all of the Geeklog2 stuff over to SVN? > > I'm in the process of finally adding PHPUnit tests to the underlying GL2 libraries that we use quite a bit here at work. In addition to feeling like I'm waiting for CVS to die, I'd like to use xinc which requires SVN: > > http://xinc.entrypoint.biz/ > > Since we're already using Phing and now PHPUnit it'd be a bit silly not to convert to SVN so we could use it. > > --Tony > > > _______________________________________________ > geeklog-devel mailing list > geeklog-devel at lists.geeklog.net > http://eight.pairlist.net/mailman/listinfo/geeklog-devel > -- Michael Jervis mjervis at gmail.com 504B03041400000008008F846431E3543A820800000006000000060000007765 62676F642B4F4D4ACF4F0100504B010214001400000008008F846431E3543A82 0800000006000000060000000000000000002000000000000000776562676F64 504B05060000000001000100340000002C0000000000 From tony at tonybibbs.com Wed Jun 6 15:50:26 2007 From: tony at tonybibbs.com (Tony Bibbs) Date: Wed, 6 Jun 2007 12:50:26 -0700 (PDT) Subject: [geeklog-devel] SVN? Message-ID: <226138.80654.qm@web713.biz.mail.mud.yahoo.com> Phing can be used to do it. If you are familiar with Java's ANT or nANT in .NET then you get the basics of Phing. To that extent, xinc is very much like Java's CruiseControl or .NET's CruiseControl.net. Right now we are only using Phing as part of the process that reverse engineers the database into PHP model classes but with Xinc the use of Phing would expand considerably. Idea is with Xinc is it can poll SVN for commits and when it finds changes it can run any unit tests and depending on their outcome it can then package up the software (using PEAR or a simple tarball or whatever). --Tony ----- Original Message ---- From: Michael Jervis To: Geeklog Development Sent: Wednesday, June 6, 2007 2:39:30 PM Subject: Re: [geeklog-devel] SVN? no, like SVN lots more. Is Phing that tool you mentioned that allowed you to do conditional complilation of PHP scripts (in a static way) when we were talking about performance? On 06/06/07, Tony Bibbs wrote: > Any objections to me converting all of the Geeklog2 stuff over to SVN? > > I'm in the process of finally adding PHPUnit tests to the underlying GL2 libraries that we use quite a bit here at work. In addition to feeling like I'm waiting for CVS to die, I'd like to use xinc which requires SVN: > > http://xinc.entrypoint.biz/ > > Since we're already using Phing and now PHPUnit it'd be a bit silly not to convert to SVN so we could use it. > > --Tony > > > _______________________________________________ > geeklog-devel mailing list > geeklog-devel at lists.geeklog.net > http://eight.pairlist.net/mailman/listinfo/geeklog-devel > -- Michael Jervis mjervis at gmail.com 504B03041400000008008F846431E3543A820800000006000000060000007765 62676F642B4F4D4ACF4F0100504B010214001400000008008F846431E3543A82 0800000006000000060000000000000000002000000000000000776562676F64 504B05060000000001000100340000002C0000000000 _______________________________________________ geeklog-devel mailing list geeklog-devel at lists.geeklog.net http://eight.pairlist.net/mailman/listinfo/geeklog-devel From dirk at haun-online.de Wed Jun 6 15:58:21 2007 From: dirk at haun-online.de (Dirk Haun) Date: Wed, 6 Jun 2007 21:58:21 +0200 Subject: [geeklog-devel] SVN? In-Reply-To: <361329.54879.qm@web709.biz.mail.mud.yahoo.com> References: <361329.54879.qm@web709.biz.mail.mud.yahoo.com> Message-ID: <20070606195821.2087995044@smtp.haun-online.de> Tony Bibbs wrote: >In addition to feeling >like I'm waiting for CVS to die, I'd like to use xinc which requires SVN: So if you need it - go for it. Actually, after using SVN for something like 2 or 3 years now, I'm not that impressed any more. Sure, it's an improvement over CVS but not a big improvement and you even lose a thing of two (like proper labels). I really need to invest some time to look into one of the new(er) kids on the block, like Bazaar or Mercurial. bye, Dirk -- http://www.geeklog.net/ http://geeklog.info/ From dracul01 at gmail.com Wed Jun 6 15:43:31 2007 From: dracul01 at gmail.com (Damien Hodgkin) Date: Wed, 6 Jun 2007 15:43:31 -0400 Subject: [geeklog-devel] SVN? In-Reply-To: <361329.54879.qm@web709.biz.mail.mud.yahoo.com> References: <361329.54879.qm@web709.biz.mail.mud.yahoo.com> Message-ID: <200706061543.31472.dracul01@gmail.com> No objections from me Damien On Wednesday 06 June 2007 3:31 pm, Tony Bibbs wrote: > Any objections to me converting all of the Geeklog2 stuff over to SVN? > > I'm in the process of finally adding PHPUnit tests to the underlying GL2 > libraries that we use quite a bit here at work. In addition to feeling > like I'm waiting for CVS to die, I'd like to use xinc which requires SVN: > > http://xinc.entrypoint.biz/ > > Since we're already using Phing and now PHPUnit it'd be a bit silly not to > convert to SVN so we could use it. > > --Tony > > > _______________________________________________ > geeklog-devel mailing list > geeklog-devel at lists.geeklog.net > http://eight.pairlist.net/mailman/listinfo/geeklog-devel From tony at tonybibbs.com Wed Jun 6 16:37:48 2007 From: tony at tonybibbs.com (Tony Bibbs) Date: Wed, 6 Jun 2007 13:37:48 -0700 (PDT) Subject: [geeklog-devel] SVN? Message-ID: <851632.71837.qm@web709.biz.mail.mud.yahoo.com> Allegedly some big wizbang release of SVN is suppose to be fixing some of the annoying omissions like proper tagging. Saw Rasmus yappin' about it on php-dev. --Tony ----- Original Message ---- From: Dirk Haun To: geeklog-devel Sent: Wednesday, June 6, 2007 2:58:21 PM Subject: Re: [geeklog-devel] SVN? Tony Bibbs wrote: >In addition to feeling >like I'm waiting for CVS to die, I'd like to use xinc which requires SVN: So if you need it - go for it. Actually, after using SVN for something like 2 or 3 years now, I'm not that impressed any more. Sure, it's an improvement over CVS but not a big improvement and you even lose a thing of two (like proper labels). I really need to invest some time to look into one of the new(er) kids on the block, like Bazaar or Mercurial. bye, Dirk -- http://www.geeklog.net/ http://geeklog.info/ _______________________________________________ geeklog-devel mailing list geeklog-devel at lists.geeklog.net http://eight.pairlist.net/mailman/listinfo/geeklog-devel From dirk at haun-online.de Thu Jun 7 08:57:55 2007 From: dirk at haun-online.de (Dirk Haun) Date: Thu, 7 Jun 2007 14:57:55 +0200 Subject: [geeklog-devel] Yahoo bot becoming a pain Message-ID: <20070607125755.1501718254@smtp.haun-online.de> Is anyone else seeing excessive visits from Yahoo's Slurp bot on their sites? I've been watching this on geeklog.net for a while now but never really measured it until now. At one point today, of 44 active sessions, 30 were for instances of the Slurp bot. Which means that within the last 120 seconds, 30 instances of that bot had visited the site from 30 different IP addresses. About 30% of all the HTTP requests in today's logfile (up until now) are from Slurp. This bot has gone completely bonkers ... I tried adding a Crawl-delay directive to the robots.txt weeks ago (as suggested by Yahoo's FAQ) but that didn't do anything. I guess it only slows down individual instances. I have now sent an enquiry via their website. Just wanted to check if anyone else had the same problem. And now you know why the site may appear slow at times ... bye, Dirk -- http://www.geeklog.net/ http://geeklog.info/ From tomw at pigstye.net Thu Jun 7 09:28:11 2007 From: tomw at pigstye.net (Tom Willett) Date: Thu, 07 Jun 2007 09:28:11 -0400 Subject: [geeklog-devel] Yahoo bot becoming a pain In-Reply-To: <20070607125755.1501718254@smtp.haun-online.de> References: <20070607125755.1501718254@smtp.haun-online.de> Message-ID: <466807EB.9010503@pigstye.net> Just looked and not a problem here. Out of 315,894 requests only 7,098 were slurp. On 6/7/2007 8:57 AM, Dirk Haun wrote: > Is anyone else seeing excessive visits from Yahoo's Slurp bot on their sites? > > I've been watching this on geeklog.net for a while now but never really > measured it until now. > > At one point today, of 44 active sessions, 30 were for instances of the > Slurp bot. Which means that within the last 120 seconds, 30 instances of > that bot had visited the site from 30 different IP addresses. > > About 30% of all the HTTP requests in today's logfile (up until now) are > from Slurp. > > This bot has gone completely bonkers ... > > I tried adding a Crawl-delay directive to the robots.txt weeks ago (as > suggested by Yahoo's FAQ) but that didn't do anything. I guess it only > slows down individual instances. > > I have now sent an enquiry via their website. Just wanted to check if > anyone else had the same problem. > > And now you know why the site may appear slow at times ... > > bye, Dirk > > > -- Tom Willett tomw at pigstye.net From dirk at haun-online.de Fri Jun 8 16:50:05 2007 From: dirk at haun-online.de (Dirk Haun) Date: Fri, 8 Jun 2007 22:50:05 +0200 Subject: [geeklog-devel] Yahoo bot becoming a pain In-Reply-To: <20070607125755.1501718254@smtp.haun-online.de> References: <20070607125755.1501718254@smtp.haun-online.de> Message-ID: <20070608205005.1235039704@smtp.haun-online.de> Dirk Haun wrote: >This bot has gone completely bonkers ... Still no change, btw. Since the majority of its requests are for /forum/ viewtopic.php, I've modified that file now to give Slurp a 503. Doesn't seem to impress it too much yet: 74.6.69.31 - - [08/Jun/2007:16:35:39 -0400] "GET /forum/viewtopic.php? forum=3&showtopic=47113 HTTP/1.0" 503 0 "-" "Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp)" 74.6.21.164 - - [08/Jun/2007:16:35:39 -0400] "GET /forum/viewtopic.php? showtopic=14219 HTTP/1.0" 503 0 "-" "Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp)" 74.6.18.103 - - [08/Jun/2007:16:35:39 -0400] "GET /forum/viewtopic.php? forum=3&showtopic=31759 HTTP/1.0" 503 0 "-" "Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp)" That was the best I could think of, short of blocking it entirely. And who wants to block the #2 search engine, even if it's a pain? :-/ I hope it slows down a bit eventually, so that I can let at least get some requests through again ... bye, Dirk -- http://www.geeklog.net/ http://geeklog.info/ From tony at tonybibbs.com Fri Jun 8 17:48:31 2007 From: tony at tonybibbs.com (Tony Bibbs) Date: Fri, 8 Jun 2007 14:48:31 -0700 (PDT) Subject: [geeklog-devel] Generator and DAO packages in pear.geeklog.net Message-ID: <354686.49833.qm@web702.biz.mail.mud.yahoo.com> The Geeklog_Generator and Geeklog_DAO packages are updated on pear.geeklog.net. There's quite a bit of difference from the past: Generator: 1) In addition to building default Propel model objects, cleaner, lighter data transfer objects (DTO) are built. DTO's also are designed to be used directly with SOAP...this is done by making all class members public. DTO's can be converted into their persistable Propel equivalents by calling a simple method on the DTO. Likewise, DTO's can be generated from Propel objects with a single method call. 2) Manager classes where all domain specific data access logic goes are generated. This uses the Geeklog_DAO to stub out all CRUD logic 3) PHPUnit tests have been added DAO: 1) Provides the interface used to save/retrieve data in GL2. The DAO can handle a combination of Propel model objects as well as named queries to do all data access. 2) Support for multiple named query files has been added, though, they all end up in the same compiled PHP array. 3) APC support allows the array of compiled queries to be loaded into memory for faster access. Should be used sparingly. 4) PHPUnit tests have been added. Doesn't mean a whole lot to any of you other than Michael and my two GSoC students but feel free to ask questions. --Tony From dirk at haun-online.de Sat Jun 9 05:54:25 2007 From: dirk at haun-online.de (Dirk Haun) Date: Sat, 9 Jun 2007 11:54:25 +0200 Subject: [geeklog-devel] GeekLog vs. Geeklog Message-ID: <20070609095425.1447888388@smtp.haun-online.de> Here's a topic for a highly controversial and emotional debate ... Or maybe not: Would anybody be offended or otherwise emotionally scarred if I changed every occurence of the spelling "GeekLog" (with an uppercase 'L') to "Geeklog" (with a lowercase 'l') in CVS? Effectively, this has been the "correct" spelling for a while now. Our logo spells it like that, as does everyone I know. From a branding point of view: Consistency is good. And while the name has too many vocals to swim with the Web 2.0 crowd, this would at least remove the 90's smell that I somehow associate with that spelling ... bye, Dirk -- http://www.geeklog.net/ http://geeklog.info/ From oliver at spiesshofer.com Sat Jun 9 07:18:58 2007 From: oliver at spiesshofer.com (Oliver Spiesshofer) Date: Sat, 09 Jun 2007 19:18:58 +0800 Subject: [geeklog-devel] GeekLog vs. Geeklog In-Reply-To: <20070609095425.1447888388@smtp.haun-online.de> References: <20070609095425.1447888388@smtp.haun-online.de> Message-ID: <466A8CA2.1080409@spiesshofer.com> I agree. And whatever I learned in marketing studies does also. Oliver Dirk Haun wrote: > Here's a topic for a highly controversial and emotional debate ... Or > maybe not: > > Would anybody be offended or otherwise emotionally scarred if I changed > every occurence of the spelling "GeekLog" (with an uppercase 'L') to > "Geeklog" (with a lowercase 'l') in CVS? > > Effectively, this has been the "correct" spelling for a while now. Our > logo spells it like that, as does everyone I know. > > >From a branding point of view: Consistency is good. And while the name > has too many vocals to swim with the Web 2.0 crowd, this would at least > remove the 90's smell that I somehow associate with that spelling ... > > bye, Dirk > > > From WebSiteMaster at Cogeco.net Sat Jun 9 08:57:04 2007 From: WebSiteMaster at Cogeco.net (Web Site Master) Date: Sat, 9 Jun 2007 08:57:04 -0400 Subject: [geeklog-devel] Yahoo bot becoming a pain In-Reply-To: <20070608205005.1235039704@smtp.haun-online.de> References: <20070607125755.1501718254@smtp.haun-online.de> <20070608205005.1235039704@smtp.haun-online.de> Message-ID: <001b01c7aa95$ae252f30$9601a8c0@WS1> I am having the same issue with one of my sites. Yesterday and last Wednesday the Yahoo bot increased my traffic by over 25% and was mainly going after the forum. -----Original Message----- From: geeklog-devel-bounces at lists.geeklog.net [mailto:geeklog-devel-bounces at lists.geeklog.net] On Behalf Of Dirk Haun Sent: June 8, 2007 4:50 PM To: geeklog-devel Subject: Re: [geeklog-devel] Yahoo bot becoming a pain Dirk Haun wrote: >This bot has gone completely bonkers ... Still no change, btw. Since the majority of its requests are for /forum/ viewtopic.php, I've modified that file now to give Slurp a 503. Doesn't seem to impress it too much yet: 74.6.69.31 - - [08/Jun/2007:16:35:39 -0400] "GET /forum/viewtopic.php? forum=3&showtopic=47113 HTTP/1.0" 503 0 "-" "Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp)" 74.6.21.164 - - [08/Jun/2007:16:35:39 -0400] "GET /forum/viewtopic.php? showtopic=14219 HTTP/1.0" 503 0 "-" "Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp)" 74.6.18.103 - - [08/Jun/2007:16:35:39 -0400] "GET /forum/viewtopic.php? forum=3&showtopic=31759 HTTP/1.0" 503 0 "-" "Mozilla/5.0 (compatible; Yahoo! Slurp; http://help.yahoo.com/help/us/ysearch/slurp)" That was the best I could think of, short of blocking it entirely. And who wants to block the #2 search engine, even if it's a pain? :-/ I hope it slows down a bit eventually, so that I can let at least get some requests through again ... bye, Dirk -- http://www.geeklog.net/ http://geeklog.info/ _______________________________________________ geeklog-devel mailing list geeklog-devel at lists.geeklog.net http://eight.pairlist.net/mailman/listinfo/geeklog-devel __________ NOD32 2319 (20070608) Information __________ This message was checked by NOD32 antivirus system. http://www.eset.com From mjervis at gmail.com Sat Jun 9 10:10:14 2007 From: mjervis at gmail.com (Michael Jervis) Date: Sat, 9 Jun 2007 15:10:14 +0100 Subject: [geeklog-devel] GeekLog vs. Geeklog In-Reply-To: <20070609095425.1447888388@smtp.haun-online.de> References: <20070609095425.1447888388@smtp.haun-online.de> Message-ID: <7b42e7470706090710v1599b5fah3d6e5540d2ed84e1@mail.gmail.com> > >From a branding point of view: Consistency is good. And while the name > has too many vocals to swim with the Web 2.0 crowd, this would at least > remove the 90's smell that I somehow associate with that spelling ... Perhaps we should rename it to something more web 2.0y? Geeklg, Giiklog, Giiklg? OR perhaps a tag line: GeekLog - The smell of the 90's! From joe at ThrowingDice.com Sat Jun 9 14:22:34 2007 From: joe at ThrowingDice.com (Joe Mucchiello) Date: Sat, 09 Jun 2007 14:22:34 -0400 Subject: [geeklog-devel] config.php request In-Reply-To: <7b42e7470706090710v1599b5fah3d6e5540d2ed84e1@mail.gmail.co m> References: <20070609095425.1447888388@smtp.haun-online.de> <7b42e7470706090710v1599b5fah3d6e5540d2ed84e1@mail.gmail.com> Message-ID: <0JJD005M0SDVYXM0@mta3.srv.hcvlny.cv.net> If you have a site where public_html/admin is in use by the service provider and thus must modify $_CONF['site_admin_url'], finding the path to the admin directory can be very annoying. How about adding a $_CONF['path_admin']? // Some hosting services have a preconfigured admin directory. In that case, // you need to rename Geeklog's admin directory to something like "myadmin" // and change the following URL as well. Leave as is until you experience any // problems accessing Geeklog's admin menu. // Be sure to update both variables below. Note the different slash requirements: $_CONF['site_admin_url'] = $_CONF['site_url'] . '/admin'; $_CONF['path_admin] = $_CONF['path_html] . 'admin'/; ---- Joe Mucchiello Throwing Dice Games http://www.throwingdice.com From ironmax at spacequad.com Sat Jun 9 23:48:18 2007 From: ironmax at spacequad.com (Michael Brusletten) Date: Sat, 9 Jun 2007 23:48:18 -0400 Subject: [geeklog-devel] geeklog-devel Digest, Vol 3, Issue 7 References: Message-ID: <001501c7ab12$2f06bc00$fe00a8c0@Node1> I know Windows does not care about the case sensitivity issue. So in the up to date look and feel. Go for it! Geeklog in its spelling is fine instead of GeekLog from the 90s look. Michael ----- Original Message ----- > Message: 4 > Date: Sat, 09 Jun 2007 19:18:58 +0800 > From: Oliver Spiesshofer > Subject: Re: [geeklog-devel] GeekLog vs. Geeklog > To: Geeklog Development > Message-ID: <466A8CA2.1080409 at spiesshofer.com> > Content-Type: text/plain; charset=ISO-8859-1; format=flowed > > I agree. And whatever I learned in marketing studies does also. > > Oliver > > Dirk Haun wrote: > > Here's a topic for a highly controversial and emotional debate ... Or > > maybe not: > > > > Would anybody be offended or otherwise emotionally scarred if I changed > > every occurence of the spelling "GeekLog" (with an uppercase 'L') to > > "Geeklog" (with a lowercase 'l') in CVS? > > > > Effectively, this has been the "correct" spelling for a while now. Our > > logo spells it like that, as does everyone I know. > > > > >From a branding point of view: Consistency is good. And while the name > > has too many vocals to swim with the Web 2.0 crowd, this would at least > > remove the 90's smell that I somehow associate with that spelling ... > > > > bye, Dirk > > From ironmax at spacequad.com Sat Jun 9 23:41:29 2007 From: ironmax at spacequad.com (Michael Brusletten) Date: Sat, 9 Jun 2007 23:41:29 -0400 Subject: [geeklog-devel] geeklog-devel Digest, Vol 3, Issue 6 References: Message-ID: <000d01c7ab11$3b0697b0$fe00a8c0@Node1> I have seen an increase in the daily amounts from yahoo on a few hundred hits to over 2000 hits daily, all coming from different IPs of theirs. My site now tops over 5000 hits total daily, and sometimes more. Michael ----- Original Message ----- > > Message: 7 > Date: Thu, 7 Jun 2007 14:57:55 +0200 > From: "Dirk Haun" > Subject: [geeklog-devel] Yahoo bot becoming a pain > To: geeklog-devel > Message-ID: <20070607125755.1501718254 at smtp.haun-online.de> > Content-Type: text/plain; charset=US-ASCII > > Is anyone else seeing excessive visits from Yahoo's Slurp bot on their sites? > > I've been watching this on geeklog.net for a while now but never really > measured it until now. > > At one point today, of 44 active sessions, 30 were for instances of the > Slurp bot. Which means that within the last 120 seconds, 30 instances of > that bot had visited the site from 30 different IP addresses. > > About 30% of all the HTTP requests in today's logfile (up until now) are > from Slurp. > > This bot has gone completely bonkers ... > > I tried adding a Crawl-delay directive to the robots.txt weeks ago (as > suggested by Yahoo's FAQ) but that didn't do anything. I guess it only > slows down individual instances. > > I have now sent an enquiry via their website. Just wanted to check if > anyone else had the same problem. > > And now you know why the site may appear slow at times ... > > bye, Dirk > > > -- > http://www.geeklog.net/ > http://geeklog.info/ > > > > ------------------------------ > > Message: 8 > Date: Thu, 07 Jun 2007 09:28:11 -0400 > From: Tom Willett > Subject: Re: [geeklog-devel] Yahoo bot becoming a pain > To: Geeklog Development > Message-ID: <466807EB.9010503 at pigstye.net> > Content-Type: text/plain; charset=ISO-8859-1; format=flowed > > Just looked and not a problem here. > > Out of 315,894 requests only 7,098 were slurp. > > On 6/7/2007 8:57 AM, Dirk Haun wrote: > > Is anyone else seeing excessive visits from Yahoo's Slurp bot on their sites? > > > > I've been watching this on geeklog.net for a while now but never really > > measured it until now. > > > > At one point today, of 44 active sessions, 30 were for instances of the > > Slurp bot. Which means that within the last 120 seconds, 30 instances of > > that bot had visited the site from 30 different IP addresses. > > > > About 30% of all the HTTP requests in today's logfile (up until now) are > > from Slurp. > > > > This bot has gone completely bonkers ... > > > > I tried adding a Crawl-delay directive to the robots.txt weeks ago (as > > suggested by Yahoo's FAQ) but that didn't do anything. I guess it only > > slows down individual instances. > > > > I have now sent an enquiry via their website. Just wanted to check if > > anyone else had the same problem. > > > > And now you know why the site may appear slow at times ... > > > > bye, Dirk > > > > > > > > -- > > Tom Willett > tomw at pigstye.net > > > > ------------------------------ > > _______________________________________________ > geeklog-devel mailing list > geeklog-devel at lists.geeklog.net > http://eight.pairlist.net/mailman/listinfo/geeklog-devel > > > End of geeklog-devel Digest, Vol 3, Issue 6 > ******************************************* > > From info at heatherengineering.com Sun Jun 10 02:38:41 2007 From: info at heatherengineering.com (Heather Engineering) Date: Sun, 10 Jun 2007 15:38:41 +0900 Subject: [geeklog-devel] Staticpage checkin/checkout functionality; staticpage refresh option Message-ID: <2A87E4C0-4EE0-486B-A2F7-B4DC11CF3193@heatherengineering.com> I needed this for a site, so figured I'd send it in. 1) Checkin/checkout facility for plugins (just used for staticpages but could easily be extended) 2) Refresh option for staticpages (refresh to edited page on saving). Not done yet: block on moderation page (moderation.php) showing items checked out, and option to check in. Text below is also in attached text file. Suggestions welcome, or if someone wants to improve on this, please do. Refresh option would also be nice for stories - some users find it confusing to see administration pages and like to just edit and return to the story/page where they started out. Euan. ** http://www.heatherengineering.com/ **************** config.php: add one line $_CONF['checkout_expiry'] = 3600; // time in seconds after which items automatically checked in (Better perhaps to set this in the plugin config.php file and create a simple function to return the value on demand: eg plugin_checkout_time_staticpages returns $_SP_CONF['checkout_time'].) **************** system/lib-database: add one line $_TABLES['checkout'] = $_DB_table_prefix . 'checkout'; **************** staticpages/config.php: add seven lines: // 'refresh' will refresh to the page that was just edited // anything else will default to the staticpages admin page (page list) $_SP_CONF['on_save'] = 'refresh'; // check in/check out staticpages // can be 1 (use check in/out) or 0 (don't) $_SP_CONF['checkout'] = 1; **************** sql/mysql_tableanddata.php: new table $_SQL[45] = " CREATE TABLE {$_TABLES['checkout']} ( id varchar(20) NOT NULL default '', plugin varchar(20) NOT NULL default '', uid mediumint(8) default NULL, date datetime default NULL PRIMARY KEY (id) ) TYPE=MyISAM "; **************** language/english.php: add one line to $LANG_ADMIN < 'records_found' => 'Records found' --- > 'records_found' => 'Records found', > 'checked_out' => 'Item is checked out by %user% at %date%. To edit, check it in first.' **************** admin/plugins/staticpages/index.php: iMac:~/desktop euan$ diff -c index.php index-new.php *** index.php Sat Dec 9 21:57:03 2006 --- index-new.php Sun Jun 10 13:49:08 2007 *************** *** 608,615 **** --- 608,638 ---- } else { DB_delete ($_TABLES['staticpage'], 'sp_id', $sp_id, $_CONF['site_admin_url'] . '/plugins/staticpages/ index.php'); + // check in staticpage + if ($_SP_CONF['checkout']==1) { + COM_item_checkin ($sp_id, 'staticpages'); + } } } else if ($mode == 'edit') { + // check out item + if ($_SP_CONF['checkout']==1) { + $checkout = COM_item_checkout ($sp_id, 'staticpages'); + if (is_array ($checkout)) { + // item already checked out + $display .= COM_siteHeader ('menu', $LANG_STATIC ['staticpagelist']); + $display .= COM_startBlock ($LANG_ACCESS ['accessdenied'], '', + COM_getBlockTemplate ('_msg_block', 'header')); + $username = DB_getItem ($_TABLES['users'], 'username', 'uid='.$checkout['uid']); + $message = str_replace("%user%", $username, $LANG_ADMIN ['checked_out']); + $message = str_replace("%date%", $checkout['date'], $message); + $display .= $message; + $display .= COM_endBlock (COM_getBlockTemplate ('_msg_block', 'footer')); + $display .= liststaticpages(); + $display .= COM_siteFooter (); + echo $display; + exit; + } + } $display .= COM_siteHeader ('menu', $LANG_STATIC ['staticpageeditor']); $editor = ''; if (isset ($_GET['editor'])) { *************** *** 661,669 **** --- 684,712 ---- $sp_help, COM_applyFilter ($_POST['sp_tid']), COM_applyFilter ($_POST['sp_where'], true), $_POST ['sp_inblock'], COM_applyFilter ($_POST['postmode'])); + // check in staticpage + if ($_SP_CONF['checkout']==1) { + COM_item_checkin ($sp_id, 'staticpages'); + } + // check where we should return + if ($_SP_CONF['on_save']=='refresh') { + $display = COM_refresh ($_CONF['site_url'] . '/ staticpages/index.php?page='.$sp_id); + } } else { $display = COM_refresh ($_CONF['site_admin_url'] . '/ index.php'); } + } else if ($mode==$LANG_ADMIN['cancel']) { + // check in staticpage + if ($_SP_CONF['checkout']==1) { + COM_item_checkin ($sp_id, 'staticpages'); + } + if ($_SP_CONF['on_save']=='refresh') { + $display = COM_refresh ($_CONF['site_url'] . '/staticpages/ index.php?page='.$sp_id); + } else { + $display .= COM_siteHeader ('menu', $LANG_STATIC ['staticpagelist']); + $display .= liststaticpages(); + $display .= COM_siteFooter (); + } } else { $display .= COM_siteHeader ('menu', $LANG_STATIC ['staticpagelist']); $display .= liststaticpages(); **************** Add two functions to lib-common.php /** * Check in a plugin item (ie finish editing it and release it for others to edit) * * @param string $sp_id the id of the item to check in * @return nothing */ function COM_item_checkin ($id, $plugin) { global $_CONF, $_TABLES; // delete item from checkout table DB_delete ($_TABLES['checkout'], array('id', 'plugin'), array ($id, $plugin)); return; } /** * Check out a staticpage (ie start editing it and lock it so others cannot edit it) * * @param string $sp_id the id of the page to check out * @return string 0 if item successfully checked out, user is if already checked out */ function COM_item_checkout ($id, $plugin) { global $_CONF, $_TABLES, $_USER; // check item not already in use $result = DB_query("SELECT uid,date FROM {$_TABLES['checkout']} WHERE id='{$id}' AND plugin='{$plugin}'"); if ( DB_numRows ($result) > 0) { $A = DB_fetchArray ($result); // check time and user $difference = strtotime('now') - strtotime($A['date']); if (($difference > $_CONF['checkout_expiry']) || ($A['uid']== $_USER['uid'])) { // expired, or checked out by self, so check in and check out again COM_item_checkin ($id, $plugin); DB_query("INSERT INTO {$_TABLES['checkout']} (id, plugin, uid, date) VALUES ('{$id}', '{$plugin}', '{$_USER['uid']}', NOW())"); return; } // in use return $A; } else { // not in use so check it out and return true DB_query("INSERT INTO {$_TABLES['checkout']} (id, plugin, uid, date) VALUES ('{$id}', '{$plugin}', '{$_USER['uid']}', NOW())"); return; } } **************** This is required, but I haven't written the function yet - list up checked out items on the moderation page, with an option to check them in if required. admin/moderation.php: add one function and the following two lines to commandcontrol() at about line 211 // check for checked out items (security is handled in the function) $retval .= checkedoutlist (); -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: staticpage_mod.txt URL: -------------- next part -------------- From joe at ThrowingDice.com Sun Jun 10 10:42:08 2007 From: joe at ThrowingDice.com (Joe Mucchiello) Date: Sun, 10 Jun 2007 10:42:08 -0400 Subject: [geeklog-devel] Staticpage checkin/checkout functionality; staticpage refresh option In-Reply-To: <2A87E4C0-4EE0-486B-A2F7-B4DC11CF3193@heatherengineering.co m> References: <2A87E4C0-4EE0-486B-A2F7-B4DC11CF3193@heatherengineering.com> Message-ID: <0JJF004DICUFEX90@mta3.srv.hcvlny.cv.net> This is yet another thing that would work better if the plugin API for hooking display/edit/save were complete. The current implementation of PLG_setTemplateVars and PLG_itemSaved doesn't cut it. Back in Jan/Feb were talking about this but nothing came of it. I still advocate a specific API with 3 functions to replace the current incomplete API. There should be itemDisplay, itemOpenEditor, and itemSave functions. All of them should be able to cause the intended action to be aborted. So in the case of this idea, the itemOpenEditor routine would return "already checked out" if the editor should not display due to someone else having the object checked out. Likewise, the itemSave function would fail if the checkout expired before save was called. A project that would go through the core and do this would not be so large, I would think. function PLG_itemDisplay($objtype, $mode, $objid, &$template); Where $objtype would be something like 'story', 'staticpage', etc., $mode can be 'browser' or 'print', $objid would identify the object (sid, sp_id, etc), $template is the actual template object. function PLG_itemOpenEditor($objtype, $mode, $A, &$template); Where $objtype as above, $mode can be 'edit', 'newadmin', or 'newsubmission', $A is data for the object if it exists. The plugin must reply true. If it replies with a string, the string is considered an error result and displayed as such in lieu of the editor. function PLG_itemSave($objtype, $mode, $A, $request = null); Where mode is 'new', 'edit' or 'delete', $objtype is as above, $A is the set of fields to save, $request is the $_POST array if we are in a post. Return from this is like the return from showEditor, a string indicates an error. Dirk, I know you objected before because we have most of this in place. But it would be nice to be able to stop the editor or save from happening with a plugin. That would make the data objects far more extensible. Joe At 02:38 AM 6/10/2007, Heather Engineering wrote: >I needed this for a site, so figured I'd send it in. > >1) Checkin/checkout facility for plugins (just used for staticpages >but could easily be extended) >2) Refresh option for staticpages (refresh to edited page on saving). > >Not done yet: block on moderation page (moderation.php) showing items >checked out, and option to check in. > >Text below is also in attached text file. Suggestions welcome, or if >someone wants to improve on this, please do. >Refresh option would also be nice for stories - some users find it >confusing to see administration pages and like to just edit and >return to the story/page where they started out. > >Euan. > >** >http://www.heatherengineering.com/ ---- Joe Mucchiello Throwing Dice Games http://www.throwingdice.com From joe at ThrowingDice.com Tue Jun 12 22:26:51 2007 From: joe at ThrowingDice.com (Joe Mucchiello) Date: Tue, 12 Jun 2007 22:26:51 -0400 Subject: [geeklog-devel] Plugin help --- Package Extractor In-Reply-To: <0JJF004DICUFEX90@mta3.srv.hcvlny.cv.net> References: <2A87E4C0-4EE0-486B-A2F7-B4DC11CF3193@heatherengineering.com> <0JJF004DICUFEX90@mta3.srv.hcvlny.cv.net> Message-ID: <0JJK00ISFHJR6ZJ0@mta5.srv.hcvlny.cv.net> I've just about finished a new plugin called Package Extractor for Geeklog. I consider it only Alpha level code at the moment. In a nutshell, it presents an upload form for plugin tarballs. You upload the tarball and it extracts the files to the proper directories (admin to /public_html/admin/plugins/$plugin_name, public_html to /public_html/plugins/$plugin_name, and the rest to /plugins/$plugin_name). Assuming nothing goes wrong it redirects you to the plugin.php where the install link for the new plugin should be available in lower part of the page. Features (and Limitations): * Appears on the Admin menu only to members of Root as "Package Extractor (N/A)". * It only works with tar, tar.gz, tar.bz2 and tgz files as it is using PEAR::ARCHIVE::TAR to do the extractions. Plans for zip and rar support as they become available. * Likewise, it is pretty strict about the file name being $plugin_$plver_$glver.tar. * If there is a file named package.inc in the tarball, it will attempt to execute the function plugin_postpackageupload_$plugin (if it exists) after it moves the files. This is a place where plugins with weird file location requirements can move more stuff around. (Like Blaine's lib-portalparts.php file.) If the function returns false, the upload is aborted (though I still need to make it clean up. * Each major step of the process executes in its own request using redirects to avoid long processing time limitations made by some webhosts. * Files are placed in /data/packages before extraction. On success they are moved to /data/packages/installed. (Automatic cleanup of installed is a future feature.) * If the plugin is already installed, it compares plugin versions. If they match, it aborts the extraction. If they don't match it disables the current plugin, extracts and re-enables. This should activate the "upgrade" button in the plugins.php admin screen. * It logs much of its activity to a file called /logs/package.log Future Ideas: * Well, some kind of SOAP/XML-RPC/Web20/whatever-it's-called-these-days interface to a public website which would allow you to download the package from the web rather than uploading from the browser would be really cool. Probably include a support URL API like plugin_support_site_$plugin so plugins can reveal their "official" website to the package extractor (this would go in functions.inc of course). * It's called Package Extractor because I expect it to also work with Theme installation someday. * package.inc could have lots of cool functions. Like, plugin_final_instructions_$plugin, a function that would display an informative page about last minute things you MUST take care before hitting that install link. It would end on that page instead of plugins.php page if the function returns a string. Or, plugin_home_server_$plugin which, with the web20 interface could allow the plugin to verify it is up to date. * Oh, yeah. It needs a good icon. As I said, it's at the Alpha stage. It works in my test environment for most simple plugins (autotags, nettools, faq, glutil). More complex plugins really need that package.inc file but that's up to the plugin writers to support. And that's why I'm posting here. This thing needs testing in alternate environments (I've only got Win XP, Apache 2, PHP 5, GL 1.4.1). I'm looking for a few testers and for a few plugin writers to support the package.inc extensions. I'll have a tarball available to those who request it by the end of the week (although originally I was going to post this Sunday so who knows). I just need to test installing the package extractor plugin itself as it's been an active plugin in my test system for a while now. I also need to make a sample package.inc file. ---- Joe Mucchiello Throwing Dice Games http://www.throwingdice.com From info at heatherengineering.com Wed Jun 13 06:08:10 2007 From: info at heatherengineering.com (Heather Engineering) Date: Wed, 13 Jun 2007 19:08:10 +0900 Subject: [geeklog-devel] Plugin help --- Package Extractor In-Reply-To: <0JJK00ISFHJR6ZJ0@mta5.srv.hcvlny.cv.net> References: <2A87E4C0-4EE0-486B-A2F7-B4DC11CF3193@heatherengineering.com> <0JJF004DICUFEX90@mta3.srv.hcvlny.cv.net> <0JJK00ISFHJR6ZJ0@mta5.srv.hcvlny.cv.net> Message-ID: <011A29BF-6FE3-4499-973D-92A1B723421B@heatherengineering.com> Sure - send me a copy and I'll try it out on OSX. Euan. ------------------------------------------------------------------------ ----- Euan McKay PhD Candidate in International Relations Department of Advanced Social and International Studies Graduate School of Arts and Sciences The University of Tokyo Email: euan at euans.net Mobile: 090 6150 6553 Tel/Fax: 03 5307 3996 On 2007/06/13, at 11:26, Joe Mucchiello wrote: > I've just about finished a new plugin called Package Extractor for > Geeklog. I consider it only Alpha level code at the moment. In a > nutshell, it presents an upload form for plugin tarballs. You > upload the tarball and it extracts the files to the proper > directories (admin to /public_html/admin/plugins/$plugin_name, > public_html to /public_html/plugins/$plugin_name, and the rest to / > plugins/$plugin_name). Assuming nothing goes wrong it redirects you > to the plugin.php where the install link for the new plugin should > be available in lower part of the page. > > Features (and Limitations): > * Appears on the Admin menu only to members of Root as "Package > Extractor (N/A)". > * It only works with tar, tar.gz, tar.bz2 and tgz files as it is > using PEAR::ARCHIVE::TAR to do the extractions. Plans for zip and > rar support as they become available. > * Likewise, it is pretty strict about the file name being $plugin_ > $plver_$glver.tar. > * If there is a file named package.inc in the tarball, it will > attempt to execute the function plugin_postpackageupload_$plugin > (if it exists) after it moves the files. This is a place where > plugins with weird file location requirements can move more stuff > around. (Like Blaine's lib-portalparts.php file.) If the function > returns false, the upload is aborted (though I still need to make > it clean up. > * Each major step of the process executes in its own request using > redirects to avoid long processing time limitations made by some > webhosts. > * Files are placed in /data/packages before extraction. On success > they are moved to /data/packages/installed. (Automatic cleanup of > installed is a future feature.) > * If the plugin is already installed, it compares plugin versions. > If they match, it aborts the extraction. If they don't match it > disables the current plugin, extracts and re-enables. This should > activate the "upgrade" button in the plugins.php admin screen. > * It logs much of its activity to a file called /logs/package.log > > Future Ideas: > * Well, some kind of SOAP/XML-RPC/Web20/whatever-it's-called-these- > days interface to a public website which would allow you to > download the package from the web rather than uploading from the > browser would be really cool. Probably include a support URL API > like plugin_support_site_$plugin so plugins can reveal their > "official" website to the package extractor (this would go in > functions.inc of course). > * It's called Package Extractor because I expect it to also work > with Theme installation someday. > * package.inc could have lots of cool functions. Like, > plugin_final_instructions_$plugin, a function that would display an > informative page about last minute things you MUST take care before > hitting that install link. It would end on that page instead of > plugins.php page if the function returns a string. Or, > plugin_home_server_$plugin which, with the web20 interface could > allow the plugin to verify it is up to date. > * Oh, yeah. It needs a good icon. > > As I said, it's at the Alpha stage. It works in my test environment > for most simple plugins (autotags, nettools, faq, glutil). More > complex plugins really need that package.inc file but that's up to > the plugin writers to support. And that's why I'm posting here. > This thing needs testing in alternate environments (I've only got > Win XP, Apache 2, PHP 5, GL 1.4.1). I'm looking for a few testers > and for a few plugin writers to support the package.inc extensions. > > I'll have a tarball available to those who request it by the end of > the week (although originally I was going to post this Sunday so > who knows). I just need to test installing the package extractor > plugin itself as it's been an active plugin in my test system for a > while now. I also need to make a sample package.inc file. > > > ---- > Joe Mucchiello > Throwing Dice Games > http://www.throwingdice.com > _______________________________________________ > geeklog-devel mailing list > geeklog-devel at lists.geeklog.net > http://eight.pairlist.net/mailman/listinfo/geeklog-devel From mevans at ecsnet.com Wed Jun 13 11:46:43 2007 From: mevans at ecsnet.com (Mark R. Evans) Date: Wed, 13 Jun 2007 10:46:43 -0500 Subject: [geeklog-devel] Plugin help --- Package Extractor In-Reply-To: <0JJK00ISFHJR6ZJ0@mta5.srv.hcvlny.cv.net> References: <2A87E4C0-4EE0-486B-A2F7-B4DC11CF3193@heatherengineering.com> <0JJF004DICUFEX90@mta3.srv.hcvlny.cv.net> <0JJK00ISFHJR6ZJ0@mta5.srv.hcvlny.cv.net> Message-ID: <46701163.9090005@ecsnet.com> Joe, I'll be happy to give it a go in a Unix environment and also a WinSrv/IIS setup. Thanks! Mark Joe Mucchiello wrote: > I've just about finished a new plugin called Package Extractor for > Geeklog. I consider it only Alpha level code at the moment. In a > nutshell, it presents an upload form for plugin tarballs. You upload > the tarball and it extracts the files to the proper directories (admin > to /public_html/admin/plugins/$plugin_name, public_html to > /public_html/plugins/$plugin_name, and the rest to > /plugins/$plugin_name). Assuming nothing goes wrong it redirects you > to the plugin.php where the install link for the new plugin should be > available in lower part of the page. > > Features (and Limitations): > * Appears on the Admin menu only to members of Root as "Package > Extractor (N/A)". > * It only works with tar, tar.gz, tar.bz2 and tgz files as it is using > PEAR::ARCHIVE::TAR to do the extractions. Plans for zip and rar > support as they become available. > * Likewise, it is pretty strict about the file name being > $plugin_$plver_$glver.tar. > * If there is a file named package.inc in the tarball, it will attempt > to execute the function plugin_postpackageupload_$plugin (if it > exists) after it moves the files. This is a place where plugins with > weird file location requirements can move more stuff around. (Like > Blaine's lib-portalparts.php file.) If the function returns false, the > upload is aborted (though I still need to make it clean up. > * Each major step of the process executes in its own request using > redirects to avoid long processing time limitations made by some > webhosts. > * Files are placed in /data/packages before extraction. On success > they are moved to /data/packages/installed. (Automatic cleanup of > installed is a future feature.) > * If the plugin is already installed, it compares plugin versions. If > they match, it aborts the extraction. If they don't match it disables > the current plugin, extracts and re-enables. This should activate the > "upgrade" button in the plugins.php admin screen. > * It logs much of its activity to a file called /logs/package.log > > Future Ideas: > * Well, some kind of > SOAP/XML-RPC/Web20/whatever-it's-called-these-days interface to a > public website which would allow you to download the package from the > web rather than uploading from the browser would be really cool. > Probably include a support URL API like plugin_support_site_$plugin so > plugins can reveal their "official" website to the package extractor > (this would go in functions.inc of course). > * It's called Package Extractor because I expect it to also work with > Theme installation someday. > * package.inc could have lots of cool functions. Like, > plugin_final_instructions_$plugin, a function that would display an > informative page about last minute things you MUST take care before > hitting that install link. It would end on that page instead of > plugins.php page if the function returns a string. Or, > plugin_home_server_$plugin which, with the web20 interface could allow > the plugin to verify it is up to date. > * Oh, yeah. It needs a good icon. > > As I said, it's at the Alpha stage. It works in my test environment > for most simple plugins (autotags, nettools, faq, glutil). More > complex plugins really need that package.inc file but that's up to the > plugin writers to support. And that's why I'm posting here. This thing > needs testing in alternate environments (I've only got Win XP, Apache > 2, PHP 5, GL 1.4.1). I'm looking for a few testers and for a few > plugin writers to support the package.inc extensions. > > I'll have a tarball available to those who request it by the end of > the week (although originally I was going to post this Sunday so who > knows). I just need to test installing the package extractor plugin > itself as it's been an active plugin in my test system for a while > now. I also need to make a sample package.inc file. > > > ---- > Joe Mucchiello > Throwing Dice Games > http://www.throwingdice.com > _______________________________________________ > geeklog-devel mailing list > geeklog-devel at lists.geeklog.net > http://eight.pairlist.net/mailman/listinfo/geeklog-devel > From mjervis at gmail.com Wed Jun 13 12:07:03 2007 From: mjervis at gmail.com (Michael Jervis) Date: Wed, 13 Jun 2007 17:07:03 +0100 Subject: [geeklog-devel] Plugin help --- Package Extractor In-Reply-To: <46701163.9090005@ecsnet.com> References: <2A87E4C0-4EE0-486B-A2F7-B4DC11CF3193@heatherengineering.com> <0JJF004DICUFEX90@mta3.srv.hcvlny.cv.net> <0JJK00ISFHJR6ZJ0@mta5.srv.hcvlny.cv.net> <46701163.9090005@ecsnet.com> Message-ID: <7b42e7470706130907s5460a584l6bf182c64068ad65@mail.gmail.com> Joe, I was thinking of doing something similar, so love to give it a run, my env is a lot like yours, but on a USB key so will be an interesting test I think. From joe at ThrowingDice.com Wed Jun 13 13:10:05 2007 From: joe at ThrowingDice.com (Joe Mucchiello) Date: Wed, 13 Jun 2007 13:10:05 -0400 Subject: [geeklog-devel] Plugin help --- Package Extractor In-Reply-To: <46701163.9090005@ecsnet.com> References: <2A87E4C0-4EE0-486B-A2F7-B4DC11CF3193@heatherengineering.com> <0JJF004DICUFEX90@mta3.srv.hcvlny.cv.net> <0JJK00ISFHJR6ZJ0@mta5.srv.hcvlny.cv.net> <46701163.9090005@ecsnet.com> Message-ID: <0JJL00M4E3P66QQ0@mta3.srv.hcvlny.cv.net> At 11:46 AM 6/13/2007, Mark R. Evans wrote: >Joe, > >I'll be happy to give it a go in a Unix environment and also a >WinSrv/IIS setup. >Thanks! >Mark I'm most interested in the Unix env since it is most likely to be setup such that Apache runs as nobody and doesn't have write access to the public_html and public_html/admin directories. Currently, I just have to give up at that point. Though I hope at some point to add code to check for that as the package plugin itself installs. (Basically judy attempt to create a file in public_html/admin/plugins/package to see if there are any issues writing to the public folders.) I should have the package package ready by the weekend. ---- Joe Mucchiello Throwing Dice Games http://www.throwingdice.com From oliver at spiesshofer.com Thu Jun 14 07:40:43 2007 From: oliver at spiesshofer.com (Oliver Spiesshofer) Date: Thu, 14 Jun 2007 13:40:43 +0200 Subject: [geeklog-devel] Yahoo bot becoming a pain In-Reply-To: <001b01c7aa95$ae252f30$9601a8c0@WS1> References: <20070607125755.1501718254@smtp.haun-online.de> <20070608205005.1235039704@smtp.haun-online.de> <001b01c7aa95$ae252f30$9601a8c0@WS1> Message-ID: <4671293B.8020609@spiesshofer.com> Yahoo got through to my site now: May Full Month (Hits MB) Yahoo Slurp 11,454 49.78 MB Googlebot 11,369 97.45 MB June 1-13 Yahoo Slurp 7,085 33.98 MB Googlebot 5,820 22.02 MB 500 hits of the 7,085 came in just yesterday. Oliver Web Site Master wrote: > I am having the same issue with one of my sites. Yesterday and last > Wednesday the Yahoo bot increased my traffic by over 25% and was mainly > going after the forum. > > -----Original Message----- > From: geeklog-devel-bounces at lists.geeklog.net > [mailto:geeklog-devel-bounces at lists.geeklog.net] On Behalf Of Dirk Haun > Sent: June 8, 2007 4:50 PM > To: geeklog-devel > Subject: Re: [geeklog-devel] Yahoo bot becoming a pain > > Dirk Haun wrote: > > >> This bot has gone completely bonkers ... >> > > Still no change, btw. Since the majority of its requests are for /forum/ > viewtopic.php, I've modified that file now to give Slurp a 503. Doesn't seem > to impress it too much yet: > > 74.6.69.31 - - [08/Jun/2007:16:35:39 -0400] "GET /forum/viewtopic.php? > forum=3&showtopic=47113 HTTP/1.0" 503 0 "-" "Mozilla/5.0 (compatible; Yahoo! > Slurp; http://help.yahoo.com/help/us/ysearch/slurp)" > 74.6.21.164 - - [08/Jun/2007:16:35:39 -0400] "GET /forum/viewtopic.php? > showtopic=14219 HTTP/1.0" 503 0 "-" "Mozilla/5.0 (compatible; Yahoo! > Slurp; http://help.yahoo.com/help/us/ysearch/slurp)" > 74.6.18.103 - - [08/Jun/2007:16:35:39 -0400] "GET /forum/viewtopic.php? > forum=3&showtopic=31759 HTTP/1.0" 503 0 "-" "Mozilla/5.0 (compatible; Yahoo! > Slurp; http://help.yahoo.com/help/us/ysearch/slurp)" > > That was the best I could think of, short of blocking it entirely. And who > wants to block the #2 search engine, even if it's a pain? :-/ > > I hope it slows down a bit eventually, so that I can let at least get some > requests through again ... > > bye, Dirk > > > -- > http://www.geeklog.net/ > http://geeklog.info/ > > _______________________________________________ > geeklog-devel mailing list > geeklog-devel at lists.geeklog.net > http://eight.pairlist.net/mailman/listinfo/geeklog-devel > > __________ NOD32 2319 (20070608) Information __________ > > This message was checked by NOD32 antivirus system. > http://www.eset.com > > > _______________________________________________ > geeklog-devel mailing list > geeklog-devel at lists.geeklog.net > http://eight.pairlist.net/mailman/listinfo/geeklog-devel > > > From tony at tonybibbs.com Thu Jun 14 10:06:04 2007 From: tony at tonybibbs.com (Tony Bibbs) Date: Thu, 14 Jun 2007 07:06:04 -0700 (PDT) Subject: [geeklog-devel] Plugin help --- Package Extractor Message-ID: <924425.25112.qm@web713.biz.mail.mud.yahoo.com> Joe, while all this sounds good, it duplicates everything PEAR does. Just a note you can do all this stuff with an embedded PEAR installation (read: no dependency on a system-level PEAR installation). While people are trying out Joe's code (which is good) I'd wish people would do more than just stare blindly at the PEAR stuff committed months ago. A little TLC and it will do everything Joe's trying to do minus having to manage the core code that manages packages, etc. Feel free to drop this note in the Trash folder, but figured i'd remind everybody this sort of stuff is there in a way that is a lot less work us. Not that I'm bitter ;-) --Tony ----- Original Message ---- From: Joe Mucchiello To: Geeklog Development Sent: Tuesday, June 12, 2007 9:26:51 PM Subject: [geeklog-devel] Plugin help --- Package Extractor I've just about finished a new plugin called Package Extractor for Geeklog. I consider it only Alpha level code at the moment. In a nutshell, it presents an upload form for plugin tarballs. You upload the tarball and it extracts the files to the proper directories (admin to /public_html/admin/plugins/$plugin_name, public_html to /public_html/plugins/$plugin_name, and the rest to /plugins/$plugin_name). Assuming nothing goes wrong it redirects you to the plugin.php where the install link for the new plugin should be available in lower part of the page. Features (and Limitations): * Appears on the Admin menu only to members of Root as "Package Extractor (N/A)". * It only works with tar, tar.gz, tar.bz2 and tgz files as it is using PEAR::ARCHIVE::TAR to do the extractions. Plans for zip and rar support as they become available. * Likewise, it is pretty strict about the file name being $plugin_$plver_$glver.tar. * If there is a file named package.inc in the tarball, it will attempt to execute the function plugin_postpackageupload_$plugin (if it exists) after it moves the files. This is a place where plugins with weird file location requirements can move more stuff around. (Like Blaine's lib-portalparts.php file.) If the function returns false, the upload is aborted (though I still need to make it clean up. * Each major step of the process executes in its own request using redirects to avoid long processing time limitations made by some webhosts. * Files are placed in /data/packages before extraction. On success they are moved to /data/packages/installed. (Automatic cleanup of installed is a future feature.) * If the plugin is already installed, it compares plugin versions. If they match, it aborts the extraction. If they don't match it disables the current plugin, extracts and re-enables. This should activate the "upgrade" button in the plugins.php admin screen. * It logs much of its activity to a file called /logs/package.log Future Ideas: * Well, some kind of SOAP/XML-RPC/Web20/whatever-it's-called-these-days interface to a public website which would allow you to download the package from the web rather than uploading from the browser would be really cool. Probably include a support URL API like plugin_support_site_$plugin so plugins can reveal their "official" website to the package extractor (this would go in functions.inc of course). * It's called Package Extractor because I expect it to also work with Theme installation someday. * package.inc could have lots of cool functions. Like, plugin_final_instructions_$plugin, a function that would display an informative page about last minute things you MUST take care before hitting that install link. It would end on that page instead of plugins.php page if the function returns a string. Or, plugin_home_server_$plugin which, with the web20 interface could allow the plugin to verify it is up to date. * Oh, yeah. It needs a good icon. As I said, it's at the Alpha stage. It works in my test environment for most simple plugins (autotags, nettools, faq, glutil). More complex plugins really need that package.inc file but that's up to the plugin writers to support. And that's why I'm posting here. This thing needs testing in alternate environments (I've only got Win XP, Apache 2, PHP 5, GL 1.4.1). I'm looking for a few testers and for a few plugin writers to support the package.inc extensions. I'll have a tarball available to those who request it by the end of the week (although originally I was going to post this Sunday so who knows). I just need to test installing the package extractor plugin itself as it's been an active plugin in my test system for a while now. I also need to make a sample package.inc file. ---- Joe Mucchiello Throwing Dice Games http://www.throwingdice.com _______________________________________________ geeklog-devel mailing list geeklog-devel at lists.geeklog.net http://eight.pairlist.net/mailman/listinfo/geeklog-devel From dracul01 at gmail.com Thu Jun 14 10:32:10 2007 From: dracul01 at gmail.com (Damien Hodgkin) Date: Thu, 14 Jun 2007 10:32:10 -0400 Subject: [geeklog-devel] Plugin help --- Package Extractor In-Reply-To: <924425.25112.qm@web713.biz.mail.mud.yahoo.com> References: <924425.25112.qm@web713.biz.mail.mud.yahoo.com> Message-ID: <200706141032.19148.dracul01@gmail.com> I agree with Tony, you shouldn't have to reinvent the wheel. Code reuse is a big part of programming and what PEAR does is the wheel. Modifications to the wheel are fine even great, make the wheel rounder, cleaner, faster. I am a firm believer in code reuse. On Thursday 14 June 2007 10:06 am, Tony Bibbs wrote: > Joe, while all this sounds good, it duplicates everything PEAR does. Just > a note you can do all this stuff with an embedded PEAR installation (read: > no dependency on a system-level PEAR installation). While people are > trying out Joe's code (which is good) I'd wish people would do more than > just stare blindly at the PEAR stuff committed months ago. A little TLC > and it will do everything Joe's trying to do minus having to manage the > core code that manages packages, etc. > > Feel free to drop this note in the Trash folder, but figured i'd remind > everybody this sort of stuff is there in a way that is a lot less work us. > Not that I'm bitter ;-) > > --Tony > > ----- Original Message ---- > From: Joe Mucchiello > To: Geeklog Development > Sent: Tuesday, June 12, 2007 9:26:51 PM > Subject: [geeklog-devel] Plugin help --- Package Extractor > > I've just about finished a new plugin called Package Extractor for > Geeklog. I consider it only Alpha level code at the moment. In a > nutshell, it presents an upload form for plugin tarballs. You upload > the tarball and it extracts the files to the proper directories > (admin to /public_html/admin/plugins/$plugin_name, public_html to > /public_html/plugins/$plugin_name, and the rest to > /plugins/$plugin_name). Assuming nothing goes wrong it redirects you > to the plugin.php where the install link for the new plugin should be > available in lower part of the page. > > Features (and Limitations): > * Appears on the Admin menu only to members of Root as "Package > Extractor (N/A)". > * It only works with tar, tar.gz, tar.bz2 and tgz files as it is > using PEAR::ARCHIVE::TAR to do the extractions. Plans for zip and rar > support as they become available. > * Likewise, it is pretty strict about the file name being > $plugin_$plver_$glver.tar. > * If there is a file named package.inc in the tarball, it will > attempt to execute the function plugin_postpackageupload_$plugin (if > it exists) after it moves the files. This is a place where plugins > with weird file location requirements can move more stuff around. > (Like Blaine's lib-portalparts.php file.) If the function returns > false, the upload is aborted (though I still need to make it clean up. > * Each major step of the process executes in its own request using > redirects to avoid long processing time limitations made by some webhosts. > * Files are placed in /data/packages before extraction. On success > they are moved to /data/packages/installed. (Automatic cleanup of > installed is a future feature.) > * If the plugin is already installed, it compares plugin versions. If > they match, it aborts the extraction. If they don't match it disables > the current plugin, extracts and re-enables. This should activate the > "upgrade" button in the plugins.php admin screen. > * It logs much of its activity to a file called /logs/package.log > > Future Ideas: > * Well, some kind of > SOAP/XML-RPC/Web20/whatever-it's-called-these-days interface to a > public website which would allow you to download the package from the > web rather than uploading from the browser would be really cool. > Probably include a support URL API like plugin_support_site_$plugin > so plugins can reveal their "official" website to the package > extractor (this would go in functions.inc of course). > * It's called Package Extractor because I expect it to also work with > Theme installation someday. > * package.inc could have lots of cool functions. Like, > plugin_final_instructions_$plugin, a function that would display an > informative page about last minute things you MUST take care before > hitting that install link. It would end on that page instead of > plugins.php page if the function returns a string. Or, > plugin_home_server_$plugin which, with the web20 interface could > allow the plugin to verify it is up to date. > * Oh, yeah. It needs a good icon. > > As I said, it's at the Alpha stage. It works in my test environment > for most simple plugins (autotags, nettools, faq, glutil). More > complex plugins really need that package.inc file but that's up to > the plugin writers to support. And that's why I'm posting here. This > thing needs testing in alternate environments (I've only got Win XP, > Apache 2, PHP 5, GL 1.4.1). I'm looking for a few testers and for a > few plugin writers to support the package.inc extensions. > > I'll have a tarball available to those who request it by the end of > the week (although originally I was going to post this Sunday so who > knows). I just need to test installing the package extractor plugin > itself as it's been an active plugin in my test system for a while > now. I also need to make a sample package.inc file. > > > ---- > Joe Mucchiello > Throwing Dice Games > http://www.throwingdice.com > > _______________________________________________ > geeklog-devel mailing list > geeklog-devel at lists.geeklog.net > http://eight.pairlist.net/mailman/listinfo/geeklog-devel > > > > _______________________________________________ > geeklog-devel mailing list > geeklog-devel at lists.geeklog.net > http://eight.pairlist.net/mailman/listinfo/geeklog-devel -- Best Regards, Damien -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 189 bytes Desc: not available URL: From cweiske at cweiske.de Thu Jun 14 10:14:31 2007 From: cweiske at cweiske.de (Christian Weiske) Date: Thu, 14 Jun 2007 16:14:31 +0200 Subject: [geeklog-devel] Plugin help --- Package Extractor In-Reply-To: <924425.25112.qm@web713.biz.mail.mud.yahoo.com> References: <924425.25112.qm@web713.biz.mail.mud.yahoo.com> Message-ID: <20070614161431.c432fcfb.cweiske@cweiske.de> Tony, > Joe, while all this sounds good, it duplicates everything PEAR does. > Just a note you can do all this stuff with an embedded PEAR > installation (read: no dependency on a system-level PEAR > installation). While people are trying out Joe's code (which is It might be interesting for you that there are already existing PEAR web frontends, like PEAR_Frontend_Web. See http://tias.ulyssis.org/frontweb_demo/ for a demo and http://pear.php.net/package/PEAR_Frontend_Web for the package site and source code. Geeklog could be implementing a minimal pear frontend, just displaying all packages installed from the geeklog channel and allowing to install new and uninstall existing ones. -- Mit freundlichen Gr??en/Regards, Christian Weiske From info at heatherengineering.com Thu Jun 14 11:10:51 2007 From: info at heatherengineering.com (Heather Engineering) Date: Fri, 15 Jun 2007 00:10:51 +0900 Subject: [geeklog-devel] locales Message-ID: <92C97D95-A178-44E3-9D41-9FC83E0DC5BF@heatherengineering.com> I'd like to request that the locale is added to each language file next to the charset next time translations are updated: $LANG_CHARSET = 'utf-8'; $LANG_LOCALE = 'en_GB'; unless there is some other way of working out the locale that I'm missing? I know I could do it from the filename, but that seems a little long winded to me and I think that the locale should be available. The following array might also be useful if added to the language files. For good measure, I've added an array of countries in English in case anyone wants. This would also be useful in the language files. Euan. -------------- next part -------------- An embedded and charset-unspecified text was scrubbed... Name: locales.txt URL: -------------- next part -------------- // partial list of locales $LANG_LOCALES = array ( 'af_ZA' => 'Afrikaans (South Africa)', 'ca_ES' => 'Catalan (Spain)', 'cs_CZ' => 'Czech (Czech Republic)', 'da_DK' => 'Danish (Denmark)', 'de_CH' => 'German (Switzerland)', 'de_DE' => 'German (Germany)', 'el_GR' => 'Greek (Greece)', 'en_GB' => 'English (UK)', 'en_US' => 'English (USA)', 'es_ES' => 'Spanish (Spain)', 'fi_FI' => 'Finnish (Finland)', 'fr_BE' => 'French (Belgium)', 'fr_CA' => 'French (Canada)', 'fr_CH' => 'French (Switzerland)', 'fr_FR' => 'French (France)', 'he_IL' => 'Hebrew (Israel)', 'hu_HU' => 'Hungarian (Hungary)', 'is_IS' => 'Islandic (Iceland)', 'it_IT' => 'Italian (Italy)', 'ja_JP' => 'Japanese (Japan)', 'ko_KR' => 'Korean (Korea)', 'lt_LT' => 'Lithuanian (Lithuania)', 'nl_NL' => 'Dutch (the Netherlands)', 'no_NO' => 'Norwegian (Norway)', 'pl_PL' => 'Polish (Poland)', 'pt_PT' => 'Portuguese (Portugal)', 'ru_RU' => 'Russian (Russia)', 'sk_SK' => 'Slovak (Slovakia)', 'sl_SI' => 'Slovenian (Slovenia)', 'sv_SE' => 'Swedish (Sweden)', 'th_TH' => 'Thai (Thailand)', 'tr_TR' => 'Turkish (Turkey)', 'zh_CN' => 'Chinese (Simplified)', 'zh_HK' => 'Chinese (Hong Kong)', 'zh_TW' => 'Chinese (Traditional, Taiwan)' ); // complete list of countries $LANG_COUNTRIES = array ( 'af' => 'Afghanistan', 'al' => 'Albania', 'dz' => 'Algeria', 'as' => 'American Samoa', 'ad' => 'Andorra', 'ao' => 'Angola', 'ai' => 'Anguilla', 'aq' => 'Antarctica', 'ag' => 'Antigua and Barbuda', 'ar' => 'Argentina', 'am' => 'Armenia', 'aw' => 'Aruba', 'au' => 'Australia', 'at' => 'Austria', 'az' => 'Azerbaidjan', 'bs' => 'Bahamas', 'bh' => 'Bahrain', 'bd' => 'Bangladesh', 'bb' => 'Barbados', 'by' => 'Belarus', 'be' => 'Belgium', 'bz' => 'Belize', 'bj' => 'Benin', 'bm' => 'Bermuda', 'bt' => 'Bhutan', 'bo' => 'Bolivia', 'ba' => 'Bosnia-Herzegovina', 'bw' => 'Botswana', 'bv' => 'Bouvet Island', 'br' => 'Brazil', 'io' => 'British Indian Ocean Territory', 'bn' => 'Brunei Darussalam', 'bg' => 'Bulgaria', 'bf' => 'Burkina Faso', 'bi' => 'Burundi', 'kh' => 'Cambodia', 'cm' => 'Cameroon', 'ca' => 'Canada', 'cv' => 'Cape Verde', 'ky' => 'Cayman Islands', 'cf' => 'Central African Republic', 'td' => 'Chad', 'cl' => 'Chile', 'cn' => 'China', 'cx' => 'Christmas Island', 'cc' => 'Cocos (Keeling) Islands', 'co' => 'Colombia', 'km' => 'Comoros', 'cg' => 'Congo', 'ck' => 'Cook Islands', 'cr' => 'Costa Rica', 'hr' => 'Croatia', 'cu' => 'Cuba', 'cy' => 'Cyprus', 'cz' => 'Czech Republic', 'dk' => 'Denmark', 'dj' => 'Djibouti', 'dm' => 'Dominica', 'do' => 'Dominican Republic', 'tp' => 'East Timor', 'ec' => 'Ecuador', 'eg' => 'Egypt', 'sv' => 'El Salvador', 'gq' => 'Equatorial Guinea', 'er' => 'Eritrea', 'ee' => 'Estonia', 'et' => 'Ethiopia', 'fk' => 'Falkland Islands', 'fo' => 'Faroe Islands', 'fj' => 'Fiji', 'fi' => 'Finland', 'cs' => 'Former Czechoslovakia', 'su' => 'Former USSR', 'fr' => 'France', 'fx' => 'France (European Territory)', 'gf' => 'French Guyana', 'tf' => 'French Southern Territories', 'ga' => 'Gabon', 'gm' => 'Gambia', 'ge' => 'Georgia', 'de' => 'Germany', 'gh' => 'Ghana', 'gi' => 'Gibraltar', 'gb' => 'Great Britain', 'gr' => 'Greece', 'gl' => 'Greenland', 'gd' => 'Grenada', 'gp' => 'Guadeloupe (French)', 'gu' => 'Guam (USA)', 'gt' => 'Guatemala', 'gn' => 'Guinea', 'gw' => 'Guinea Bissau', 'gy' => 'Guyana', 'ht' => 'Haiti', 'hm' => 'Heard and McDonald Islands', 'hn' => 'Honduras', 'hk' => 'Hong Kong', 'hu' => 'Hungary', 'is' => 'Iceland', 'in' => 'India', 'id' => 'Indonesia', 'ir' => 'Iran', 'iq' => 'Iraq', 'ie' => 'Ireland', 'il' => 'Israel', 'it' => 'Italy', 'ci' => 'Ivory Coast (Cote D\'Ivoire)', 'jm' => 'Jamaica', 'jp' => 'Japan', 'jo' => 'Jordan', 'kz' => 'Kazakhstan', 'ke' => 'Kenya', 'ki' => 'Kiribati', 'kw' => 'Kuwait', 'kg' => 'Kyrgyzstan', 'la' => 'Laos', 'lv' => 'Latvia', 'lb' => 'Lebanon', 'ls' => 'Lesotho', 'lr' => 'Liberia', 'ly' => 'Libya', 'li' => 'Liechtenstein', 'lt' => 'Lithuania', 'lu' => 'Luxembourg', 'mo' => 'Macau', 'mk' => 'Macedonia', 'mg' => 'Madagascar', 'mw' => 'Malawi', 'my' => 'Malaysia', 'mv' => 'Maldives', 'ml' => 'Mali', 'mt' => 'Malta', 'mh' => 'Marshall Islands', 'mq' => 'Martinique (French)', 'mr' => 'Mauritania', 'mu' => 'Mauritius', 'yt' => 'Mayotte', 'mx' => 'Mexico', 'fm' => 'Micronesia', 'md' => 'Moldavia', 'mc' => 'Monaco', 'mn' => 'Mongolia', 'ms' => 'Montserrat', 'ma' => 'Morocco', 'mz' => 'Mozambique', 'mm' => 'Myanmar', 'na' => 'Namibia', 'nr' => 'Nauru', 'np' => 'Nepal', 'nl' => 'Netherlands', 'an' => 'Netherlands Antilles', 'nt' => 'Neutral Zone', 'nc' => 'New Caledonia (French)', 'nz' => 'New Zealand', 'ni' => 'Nicaragua', 'ne' => 'Niger', 'ng' => 'Nigeria', 'nu' => 'Niue', 'nf' => 'Norfolk Island', 'kp' => 'North Korea', 'mp' => 'Northern Mariana Islands', 'no' => 'Norway', 'om' => 'Oman', 'pk' => 'Pakistan', 'pw' => 'Palau', 'pa' => 'Panama', 'pg' => 'Papua New Guinea', 'py' => 'Paraguay', 'pe' => 'Peru', 'ph' => 'Philippines', 'pn' => 'Pitcairn Island', 'pl' => 'Poland', 'pf' => 'Polynesia (French)', 'pt' => 'Portugal', 'pr' => 'Puerto Rico', 'qa' => 'Qatar', 're' => 'Reunion (French)', 'ro' => 'Romania', 'ru' => 'Russian Federation', 'rw' => 'Rwanda', 'gs' => 'S. Georgia & S. Sandwich Isls.', 'sh' => 'Saint Helena', 'kn' => 'Saint Kitts & Nevis Anguilla', 'lc' => 'Saint Lucia', 'pm' => 'Saint Pierre and Miquelon', 'st' => 'Saint Tome (Sao Tome) and Principe', 'vc' => 'Saint Vincent & Grenadines', 'ws' => 'Samoa', 'sm' => 'San Marino', 'sa' => 'Saudi Arabia', 'sn' => 'Senegal', 'sc' => 'Seychelles', 'sl' => 'Sierra Leone', 'sg' => 'Singapore', 'sk' => 'Slovak Republic', 'si' => 'Slovenia', 'sb' => 'Solomon Islands', 'so' => 'Somalia', 'za' => 'South Africa', 'kr' => 'South Korea', 'es' => 'Spain', 'lk' => 'Sri Lanka', 'sd' => 'Sudan', 'sr' => 'Suriname', 'sj' => 'Svalbard and Jan Mayen Islands', 'sz' => 'Swaziland', 'se' => 'Sweden', 'ch' => 'Switzerland', 'sy' => 'Syria', 'tj' => 'Tadjikistan', 'tw' => 'Taiwan', 'tz' => 'Tanzania', 'th' => 'Thailand', 'tg' => 'Togo', 'tk' => 'Tokelau', 'to' => 'Tonga', 'tt' => 'Trinidad and Tobago', 'tn' => 'Tunisia', 'tr' => 'Turkey', 'tm' => 'Turkmenistan', 'tc' => 'Turks and Caicos Islands', 'tv' => 'Tuvalu', 'ug' => 'Uganda', 'ua' => 'Ukraine', 'ae' => 'United Arab Emirates', 'uk' => 'United Kingdom', 'us' => 'United States', 'uy' => 'Uruguay', 'um' => 'USA Minor Outlying Islands', 'uz' => 'Uzbekistan', 'vu' => 'Vanuatu', 'va' => 'Vatican City State', 've' => 'Venezuela', 'vn' => 'Vietnam', 'vg' => 'Virgin Islands (British)', 'vi' => 'Virgin Islands (USA)', 'wf' => 'Wallis and Futuna Islands', 'eh' => 'Western Sahara', 'ye' => 'Yemen', 'yu' => 'Yugoslavia', 'zr' => 'Zaire', 'zm' => 'Zambia', 'zw' => 'Zimbabwe' ); /** * returns a string of option values for an HTML form */ function COM_country_select_list ($selected) { global $LANG_COUNTRIES; $retval = ''; foreach ($LANG_COUNTRIES AS $key => $value) { $retval .= '