You can subscribe to this list here.
2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(11) |
Nov
(97) |
Dec
(35) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2003 |
Jan
(12) |
Feb
(55) |
Mar
(21) |
Apr
(3) |
May
(7) |
Jun
(25) |
Jul
(108) |
Aug
(23) |
Sep
|
Oct
|
Nov
|
Dec
(4) |
2006 |
Jan
|
Feb
|
Mar
(6) |
Apr
(3) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2008 |
Jan
(13) |
Feb
|
Mar
(257) |
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(38) |
Dec
|
2009 |
Jan
|
Feb
(1) |
Mar
(1) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2010 |
Jan
|
Feb
(63) |
Mar
|
Apr
|
May
|
Jun
(1) |
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
(1) |
2011 |
Jan
|
Feb
(1) |
Mar
|
Apr
(1) |
May
(1) |
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2012 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: <dr...@us...> - 2003-03-12 17:53:38
|
Update of /cvsroot/webmacro/wiki/src/org/tcdi/opensource/wiki/renderer In directory sc8-pr-cvs1:/tmp/cvs-serv23867/src/org/tcdi/opensource/wiki/renderer Modified Files: HTMLURLRenderer.java Log Message: - parser fix to allow *'s and +'s in URL's - fix potential NPE's in HTMLURLRenderer when there is no _wiki Index: HTMLURLRenderer.java =================================================================== RCS file: /cvsroot/webmacro/wiki/src/org/tcdi/opensource/wiki/renderer/HTMLURLRenderer.java,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** HTMLURLRenderer.java 21 Oct 2001 07:42:11 -0000 1.1 --- HTMLURLRenderer.java 12 Mar 2003 17:53:34 -0000 1.2 *************** *** 16,20 **** private final WikiSystem _wiki; ! public HTMLURLRenderer(WikiSystem wiki) { _wiki = wiki; --- 16,24 ---- private final WikiSystem _wiki; ! ! public HTMLURLRenderer () { ! this (null); ! } ! public HTMLURLRenderer(WikiSystem wiki) { _wiki = wiki; *************** *** 55,59 **** .append(label) .append("</a>"); ! } else if (protocol.equalsIgnoreCase("javadoc")) { sb.append("<a target=javadoc href=\"") .append(_wiki.getProperties().getProperty("JavaDocRoot")) --- 59,63 ---- .append(label) .append("</a>"); ! } else if (_wiki != null && protocol.equalsIgnoreCase("javadoc")) { sb.append("<a target=javadoc href=\"") .append(_wiki.getProperties().getProperty("JavaDocRoot")) |
From: <dat...@us...> - 2003-02-18 13:03:19
|
Update of /cvsroot/webmacro/wiki/src/org/tcdi/opensource/wiki/servlet In directory sc8-pr-cvs1:/tmp/cvs-serv6752/src/org/tcdi/opensource/wiki/servlet Modified Files: Tag: christian IndexPageAction.java Log Message: Removed wrong comments. Hate cut'n-paste... Index: IndexPageAction.java =================================================================== RCS file: /cvsroot/webmacro/wiki/src/org/tcdi/opensource/wiki/servlet/Attic/IndexPageAction.java,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** IndexPageAction.java 18 Feb 2003 12:53:01 -0000 1.1.2.1 --- IndexPageAction.java 18 Feb 2003 13:03:16 -0000 1.1.2.2 *************** *** 33,39 **** /** ! * Builds the list of recently changed WikiPages * ! * @author e_ridge */ public class IndexPageAction implements PageAction { --- 33,39 ---- /** ! * Builds a nice index page, sorted and linked. * ! * @author Christian Aust */ public class IndexPageAction implements PageAction { *************** *** 55,59 **** /** ! * template is the "RecentChangesAction.Template" configuration option * * @param wiki Description of the Parameter --- 55,59 ---- /** ! * template is the "IndexPageAction.Template" configuration option * * @param wiki Description of the Parameter *************** *** 67,71 **** /** ! * no page name for this action * * @param wiki Description of the Parameter --- 67,71 ---- /** ! * Returns our page name "IndexPage" * * @param wiki Description of the Parameter *************** *** 79,85 **** /** ! * If it's a GET request, we simply display the login template. If it's a ! * POST request, do process the login request, set the cookie, and redirect ! * to the start page. * * @param wiki Description of the Parameter --- 79,84 ---- /** ! * Builds the list of pages, sorts it and builds a list of all letters from ! * A-Z * * @param wiki Description of the Parameter *************** *** 105,109 **** } ! // sort it descending by date last modified Collections.sort(pages, new Comparator() { --- 104,108 ---- } ! // sort it ascending, not case sensitive Collections.sort(pages, new Comparator() { |
Update of /cvsroot/webmacro/wiki/resources/default/WEB-INF/templates In directory sc8-pr-cvs1:/tmp/cvs-serv2708/resources/default/WEB-INF/templates Modified Files: Tag: christian browsepage.wm delete.wm edit.wm error.wm findresults.wm header.wm index_admin.wm login.wm recentchanges.wm register.wm reloadprops.wm user_admin.wm view.wm welcome.wm Log Message: Updated deprecated #parse with #include as template Index: browsepage.wm =================================================================== RCS file: /cvsroot/webmacro/wiki/resources/default/WEB-INF/templates/Attic/browsepage.wm,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** browsepage.wm 17 Feb 2003 14:17:04 -0000 1.1.2.1 --- browsepage.wm 18 Feb 2003 12:54:28 -0000 1.1.2.2 *************** *** 51,60 **** </table> ! #parse "optionsbar.wm" <table border=0> <tr> <td class="LeftMenu" rowspan=2 valign=top> ! #parse "leftmenu.wm" </td> <td width=15></td> --- 51,60 ---- </table> ! #include as template "optionsbar.wm" <table border=0> <tr> <td class="LeftMenu" rowspan=2 valign=top> ! #include as template "leftmenu.wm" </td> <td width=15></td> *************** *** 75,77 **** </table> ! #parse "footer.wm" --- 75,77 ---- </table> ! #include as template "footer.wm" Index: delete.wm =================================================================== RCS file: /cvsroot/webmacro/wiki/resources/default/WEB-INF/templates/Attic/delete.wm,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** delete.wm 17 Feb 2003 14:17:04 -0000 1.1.2.1 --- delete.wm 18 Feb 2003 12:54:28 -0000 1.1.2.2 *************** *** 1,3 **** ! #parse "header.wm" <form action="$Request.RequestURI" method="POST"> --- 1,3 ---- ! #include as template "header.wm" <form action="$Request.RequestURI" method="POST"> *************** *** 17,19 **** </form> ! #parse "footer.wm" \ No newline at end of file --- 17,19 ---- </form> ! #include as template "footer.wm" \ No newline at end of file Index: edit.wm =================================================================== RCS file: /cvsroot/webmacro/wiki/resources/default/WEB-INF/templates/Attic/edit.wm,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** edit.wm 17 Feb 2003 14:17:04 -0000 1.1.2.1 --- edit.wm 18 Feb 2003 12:54:28 -0000 1.1.2.2 *************** *** 1,3 **** ! #parse "header.wm" <form action="$Request.RequestURI" method=POST> --- 1,3 ---- ! #include as template "header.wm" <form action="$Request.RequestURI" method=POST> *************** *** 44,46 **** </form> ! #parse "footer.wm" --- 44,46 ---- </form> ! #include as template "footer.wm" Index: error.wm =================================================================== RCS file: /cvsroot/webmacro/wiki/resources/default/WEB-INF/templates/Attic/error.wm,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** error.wm 17 Feb 2003 14:17:04 -0000 1.1.2.1 --- error.wm 18 Feb 2003 12:54:28 -0000 1.1.2.2 *************** *** 1,4 **** #set $PageName = "Error " ! #parse "header.wm" #if ($error.Message){ --- 1,4 ---- #set $PageName = "Error " ! #include as template "header.wm" #if ($error.Message){ *************** *** 7,9 **** $error } ! #parse "footer.wm" \ No newline at end of file --- 7,9 ---- $error } ! #include as template "footer.wm" \ No newline at end of file Index: findresults.wm =================================================================== RCS file: /cvsroot/webmacro/wiki/resources/default/WEB-INF/templates/Attic/findresults.wm,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** findresults.wm 17 Feb 2003 14:17:04 -0000 1.1.2.1 --- findresults.wm 18 Feb 2003 12:54:28 -0000 1.1.2.2 *************** *** 1,9 **** #set $PageName="Find Results" ! #parse "header.wm" <table border=0 width="100%"> <tr> <td class="LeftMenu" valign=top width="120"> ! #parse "leftmenu.wm" </td> --- 1,9 ---- #set $PageName="Find Results" ! #include as template "header.wm" <table border=0 width="100%"> <tr> <td class="LeftMenu" valign=top width="120"> ! #include as template "leftmenu.wm" </td> *************** *** 44,46 **** </table> ! #parse "footer.wm" --- 44,46 ---- </table> ! #include as template "footer.wm" Index: header.wm =================================================================== RCS file: /cvsroot/webmacro/wiki/resources/default/WEB-INF/templates/Attic/header.wm,v retrieving revision 1.1.2.2 retrieving revision 1.1.2.3 diff -C2 -d -r1.1.2.2 -r1.1.2.3 *** header.wm 17 Feb 2003 18:31:04 -0000 1.1.2.2 --- header.wm 18 Feb 2003 12:54:28 -0000 1.1.2.3 *************** *** 13,17 **** <META name="keywords" content=" #if ($Page) #begin#foreach $pageTitle in $Page.RelatedTitles #begin $pageTitle $space #end #end"> } ! #if ($Page.Author) { <META name="author" content="$Wiki.getUser($Page.Author).Name"> } --- 13,17 ---- <META name="keywords" content=" #if ($Page) #begin#foreach $pageTitle in $Page.RelatedTitles #begin $pageTitle $space #end #end"> } ! #if ($Page.Author!=null) { <META name="author" content="$Wiki.getUser($Page.Author).Name"> } *************** *** 62,64 **** </table> ! #parse "optionsbar.wm" --- 62,64 ---- </table> ! #include as template "optionsbar.wm" Index: index_admin.wm =================================================================== RCS file: /cvsroot/webmacro/wiki/resources/default/WEB-INF/templates/Attic/index_admin.wm,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** index_admin.wm 17 Feb 2003 18:31:04 -0000 1.1.2.1 --- index_admin.wm 18 Feb 2003 12:54:28 -0000 1.1.2.2 *************** *** 1,5 **** ! #parse "header.wm" This will be Lucene Index administration. ! #parse "footer.wm" \ No newline at end of file --- 1,5 ---- ! #include as template "header.wm" This will be Lucene Index administration. ! #include as template "footer.wm" \ No newline at end of file Index: login.wm =================================================================== RCS file: /cvsroot/webmacro/wiki/resources/default/WEB-INF/templates/Attic/login.wm,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** login.wm 17 Feb 2003 14:17:04 -0000 1.1.2.1 --- login.wm 18 Feb 2003 12:54:28 -0000 1.1.2.2 *************** *** 1,4 **** #set $PageName = "Log In" ! #parse "header.wm" <br> --- 1,4 ---- #set $PageName = "Log In" ! #include as template "header.wm" <br> *************** *** 35,37 **** </form> ! #parse "footer.wm" --- 35,37 ---- </form> ! #include as template "footer.wm" Index: recentchanges.wm =================================================================== RCS file: /cvsroot/webmacro/wiki/resources/default/WEB-INF/templates/Attic/recentchanges.wm,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** recentchanges.wm 17 Feb 2003 14:17:04 -0000 1.1.2.1 --- recentchanges.wm 18 Feb 2003 12:54:28 -0000 1.1.2.2 *************** *** 1,9 **** #set $PageName = "Recent Changes" ! #parse "header.wm" <table border=0 width="100%"> <tr> <td class="LeftMenu" valign=top width="120"> ! #parse "leftmenu.wm" </td> --- 1,9 ---- #set $PageName = "Recent Changes" ! #include as template "header.wm" <table border=0 width="100%"> <tr> <td class="LeftMenu" valign=top width="120"> ! #include as template "leftmenu.wm" </td> *************** *** 66,68 **** </tr> </table> ! #parse "footer.wm" --- 66,68 ---- </tr> </table> ! #include as template "footer.wm" Index: register.wm =================================================================== RCS file: /cvsroot/webmacro/wiki/resources/default/WEB-INF/templates/Attic/register.wm,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** register.wm 17 Feb 2003 14:17:04 -0000 1.1.2.1 --- register.wm 18 Feb 2003 12:54:28 -0000 1.1.2.2 *************** *** 2,6 **** ## say thank you #set $PageName = "Thank you for registering" ! #parse "header.wm" <table border=0 align=center> --- 2,6 ---- ## say thank you #set $PageName = "Thank you for registering" ! #include as template "header.wm" <table border=0 align=center> *************** *** 22,26 **** #set $PageName = "Register" ! #parse "header.wm" <form action="$Request.RequestURI" method=POST> --- 22,26 ---- #set $PageName = "Register" ! #include as template "header.wm" <form action="$Request.RequestURI" method=POST> *************** *** 84,86 **** } ! #parse "footer.wm" --- 84,86 ---- } ! #include as template "footer.wm" Index: reloadprops.wm =================================================================== RCS file: /cvsroot/webmacro/wiki/resources/default/WEB-INF/templates/Attic/reloadprops.wm,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** reloadprops.wm 17 Feb 2003 18:31:04 -0000 1.1.2.1 --- reloadprops.wm 18 Feb 2003 12:54:28 -0000 1.1.2.2 *************** *** 1,5 **** ! #parse "header.wm" .props wurden neu geladen. ! #parse "footer.wm" \ No newline at end of file --- 1,5 ---- ! #include as template "header.wm" .props wurden neu geladen. ! #include as template "footer.wm" \ No newline at end of file Index: user_admin.wm =================================================================== RCS file: /cvsroot/webmacro/wiki/resources/default/WEB-INF/templates/Attic/user_admin.wm,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** user_admin.wm 17 Feb 2003 14:17:04 -0000 1.1.2.1 --- user_admin.wm 18 Feb 2003 12:54:28 -0000 1.1.2.2 *************** *** 1,3 **** ! #parse "header.wm" #if ($User) #begin --- 1,3 ---- ! #include as template "header.wm" #if ($User) #begin *************** *** 38,40 **** #end #end ! #parse "footer.wm" \ No newline at end of file --- 38,40 ---- #end #end ! #include as template "footer.wm" \ No newline at end of file Index: view.wm =================================================================== RCS file: /cvsroot/webmacro/wiki/resources/default/WEB-INF/templates/Attic/view.wm,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** view.wm 17 Feb 2003 14:17:04 -0000 1.1.2.1 --- view.wm 18 Feb 2003 12:54:28 -0000 1.1.2.2 *************** *** 1,8 **** ! #parse "header.wm" <table border=0 width="100%"> <tr> <td class="LeftMenu" valign=top width="120"> ! #parse "leftmenu.wm" </td> --- 1,8 ---- ! #include as template "header.wm" <table border=0 width="100%"> <tr> <td class="LeftMenu" valign=top width="120"> ! #include as template "leftmenu.wm" </td> *************** *** 19,24 **** } } </tr> </table> ! #parse "footer.wm" --- 19,25 ---- } } + </td> </tr> </table> ! #include as template "footer.wm" Index: welcome.wm =================================================================== RCS file: /cvsroot/webmacro/wiki/resources/default/WEB-INF/templates/Attic/welcome.wm,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** welcome.wm 17 Feb 2003 18:31:04 -0000 1.1.2.1 --- welcome.wm 18 Feb 2003 12:54:28 -0000 1.1.2.2 *************** *** 1,8 **** #set $PageName = "Welcome to Wiki" ! #parse "header.wm" ! Welcome to Wiki. This will be the nice welcome page to get you started with ! your Wiki. ! #parse "footer.wm" --- 1,21 ---- #set $PageName = "Welcome to Wiki" ! #include as template "header.wm" ! <table border=0 width="100%"> ! <tr> ! <td class="LeftMenu" valign=top width="120"> ! #include as template "leftmenu.wm" ! </td> ! ! <td width="8"> </td> ! ! <td valign=top> ! Welcome to Wiki. This will be the nice welcome page to get you started with ! your Wiki. ! </td> ! </tr> ! </table> ! ! #include as template "footer.wm" |
From: <dat...@us...> - 2003-02-18 12:54:32
|
Update of /cvsroot/webmacro/wiki/resources/www.webmacro.org/WEB-INF/templates In directory sc8-pr-cvs1:/tmp/cvs-serv2708/resources/www.webmacro.org/WEB-INF/templates Modified Files: Tag: christian webmacro.wm Log Message: Updated deprecated #parse with #include as template Index: webmacro.wm =================================================================== RCS file: /cvsroot/webmacro/wiki/resources/www.webmacro.org/WEB-INF/templates/Attic/webmacro.wm,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** webmacro.wm 17 Feb 2003 14:17:07 -0000 1.1.2.1 --- webmacro.wm 18 Feb 2003 12:54:28 -0000 1.1.2.2 *************** *** 51,60 **** </table> ! #parse "optionsbar.wm" <table border=0> <tr> <td class="LeftMenu" rowspan=2 valign=top> ! #parse "leftmenu.wm" </td> <td width=15></td> --- 51,60 ---- </table> ! #include as template "optionsbar.wm" <table border=0> <tr> <td class="LeftMenu" rowspan=2 valign=top> ! #include as template "leftmenu.wm" </td> <td width=15></td> *************** *** 75,77 **** </table> ! #parse "footer.wm" --- 75,77 ---- </table> ! #include as template "footer.wm" |
From: <dat...@us...> - 2003-02-18 12:53:05
|
Update of /cvsroot/webmacro/wiki/resources/default/WEB-INF/templates In directory sc8-pr-cvs1:/tmp/cvs-serv2060/resources/default/WEB-INF/templates Modified Files: Tag: christian optionsbar.wm Added Files: Tag: christian index_page.wm Log Message: Added index page, page action, template and modified options bar. --- NEW FILE: index_page.wm --- #set $PageName = "Wiki index" #include as template "header.wm" <table border=0 width="100%"> <tr> <td class="LeftMenu" valign=top width="120"> #include as template "leftmenu.wm" </td> <td width="8"> </td> <td valign=top><a name="top"> #foreach $letter in $index { <a href="#$letter">$letter </a>} <hr> #set $start = null #foreach $page in $pages { #if (!$page.getTitle().substring(0,1).equals($start)) { #set $start = $page.getTitle().substring(0,1) <p><a name="$start"><b>$start</b></a><br> } <a href="$page.Title">$page.Title</a><br> } </td> </tr> </table> #include as template "footer.wm" Index: optionsbar.wm =================================================================== RCS file: /cvsroot/webmacro/wiki/resources/default/WEB-INF/templates/Attic/optionsbar.wm,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** optionsbar.wm 17 Feb 2003 14:17:04 -0000 1.1.2.1 --- optionsbar.wm 18 Feb 2003 12:53:01 -0000 1.1.2.2 *************** *** 19,23 **** <td align=center width="100%"> ! <a href="SiteMap"><span class="NavigationLinks">Site Map</span></a> || <a href="http://www.webmacro.org/bugzilla/"><span class="NavigationLinks">Bugzilla</span></a> || <a href="http://www.webmacro.org/cvs/"><span class="NavigationLinks">CVS</span></a> --- 19,23 ---- <td align=center width="100%"> ! <a href="IndexPage"><span class="NavigationLinks">Index</span></a> || <a href="http://www.webmacro.org/bugzilla/"><span class="NavigationLinks">Bugzilla</span></a> || <a href="http://www.webmacro.org/cvs/"><span class="NavigationLinks">CVS</span></a> *************** *** 50,53 **** </table> #if (($User) && ($Wiki.isAdministrator($User))) { ! #parse "adminoptionsbar.wm" } --- 50,53 ---- </table> #if (($User) && ($Wiki.isAdministrator($User))) { ! #include as template "adminoptionsbar.wm" } |
From: <dat...@us...> - 2003-02-18 12:53:05
|
Update of /cvsroot/webmacro/wiki/src/org/tcdi/opensource/wiki/servlet In directory sc8-pr-cvs1:/tmp/cvs-serv2060/src/org/tcdi/opensource/wiki/servlet Added Files: Tag: christian IndexPageAction.java Log Message: Added index page, page action, template and modified options bar. --- NEW FILE: IndexPageAction.java --- /** * The contents of this file are subject to the Mozilla Public License Version * 1.1 (the "License"); you may not use this file except in compliance with the * License. You may obtain a copy of the License at http://www.mozilla.org/MPL/ * Software distributed under the License is distributed on an "AS IS" basis, * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for * the specific language governing rights and limitations under the License. * The Original Code is Wiki. The Initial Developer of the Original Code is * Technology Concepts and Design, Inc. Copyright (C) 2000 Technology Concepts * and Design, Inc. All Rights Reserved. Contributor(s): Lane Sharman * (OpenDoors Software) Justin Wells (Semiotek Inc.) Eric B. Ridge (Technology * Concepts and Design, Inc.) Alternatively, the contents of this file may be * used under the terms of the GNU General Public License Version 2 or later * (the "GPL"), in which case the provisions of the GPL are applicable instead * of those above. If you wish to allow use of your version of this file only * under the terms of the GPL and not to allow others to use your version of * this file under the MPL, indicate your decision by deleting the provisions * above and replace them with the notice and other provisions required by the * GPL. If you do not delete the provisions above, a recipient may use your * version of this file under either the MPL or the GPL. This product includes * sofware developed by OpenDoors Software. This product includes software * developed by Justin Wells and Semiotek Inc. for use in the WebMacro * ServletFramework (http://www.webmacro.org). */ package org.tcdi.opensource.wiki.servlet; import java.util.*; import javax.servlet.http.Cookie; import org.tcdi.opensource.wiki.*; import org.webmacro.servlet.WebContext; /** * Builds the list of recently changed WikiPages * * @author e_ridge */ public class IndexPageAction implements PageAction { private String wikiPageName = "IndexPage"; /** * only accept if the URI ends with <em>IndexPage</em> * * @param wiki Description of the Parameter * @param wc Description of the Parameter * @param user Description of the Parameter * @return Description of the Return Value */ public boolean accept(WikiSystem wiki, WebContext wc, WikiUser user) { return wc.getRequest().getRequestURI().endsWith(wikiPageName); } /** * template is the "RecentChangesAction.Template" configuration option * * @param wiki Description of the Parameter * @param page Description of the Parameter * @return The templateName value */ public String getTemplateName(WikiSystem wiki, WikiPage page) { return wiki.getProperties().getProperty("IndexPageAction.Template"); } /** * no page name for this action * * @param wiki Description of the Parameter * @param wc Description of the Parameter * @return The wikiPageName value */ public String getWikiPageName(WikiSystem wiki, WebContext wc) { return wikiPageName; } /** * If it's a GET request, we simply display the login template. If it's a * POST request, do process the login request, set the cookie, and redirect * to the start page. * * @param wiki Description of the Parameter * @param wc Description of the Parameter * @param user Description of the Parameter * @param page Description of the Parameter * @exception PageAction.PageActionException Description of the Exception */ public void perform(WikiSystem wiki, WebContext wc, WikiUser user, WikiPage page) throws PageAction.PageActionException { List pages = new ArrayList(); String tmp = "X"; String[] pageNames = wiki.getCurrentPageNames(); String[] index = new String[26]; int pos = 0; for (char c = 0x41; c <= 0x5A; c++) { //iterate from A to Z index[pos++] = String.valueOf(c); } for (int x = 0; x < pageNames.length; x++) { WikiPage p = wiki.getPage(pageNames[x]); pages.add(p); } // sort it descending by date last modified Collections.sort(pages, new Comparator() { public int compare(Object o1, Object o2) { WikiPage p1 = (WikiPage) o1; WikiPage p2 = (WikiPage) o2; return p1.getTitle().compareToIgnoreCase(p2.getTitle()); } }); // and add list to the context wc.put("index", index); wc.put("pages", pages); } } |
From: <dat...@us...> - 2003-02-18 12:53:05
|
Update of /cvsroot/webmacro/wiki/resources/default/WEB-INF In directory sc8-pr-cvs1:/tmp/cvs-serv2060/resources/default/WEB-INF Modified Files: Tag: christian Wiki.properties Log Message: Added index page, page action, template and modified options bar. Index: Wiki.properties =================================================================== RCS file: /cvsroot/webmacro/wiki/resources/default/WEB-INF/Attic/Wiki.properties,v retrieving revision 1.1.2.2 retrieving revision 1.1.2.3 diff -C2 -d -r1.1.2.2 -r1.1.2.3 *** Wiki.properties 17 Feb 2003 18:29:35 -0000 1.1.2.2 --- Wiki.properties 18 Feb 2003 12:53:01 -0000 1.1.2.3 *************** *** 12,19 **** org.tcdi.opensource.wiki.servlet.RegisterNewUserAction \ org.tcdi.opensource.wiki.servlet.RecentChangesAction \ org.tcdi.opensource.wiki.servlet.ViewPageAction - # templates used by various PageActions ViewPageAction.Template: view.wm --- 12,24 ---- org.tcdi.opensource.wiki.servlet.RegisterNewUserAction \ org.tcdi.opensource.wiki.servlet.RecentChangesAction \ + org.tcdi.opensource.wiki.servlet.IndexPageAction \ + org.tcdi.opensource.wiki.servlet.UserAdminAction \ + org.tcdi.opensource.wiki.servlet.IndexAdminAction \ + org.tcdi.opensource.wiki.servlet.ReloadPropsAction \ + org.tcdi.opensource.wiki.servlet.ReparsePageAction \ + org.tcdi.opensource.wiki.servlet.BuildIndexAction \ org.tcdi.opensource.wiki.servlet.ViewPageAction # templates used by various PageActions ViewPageAction.Template: view.wm *************** *** 24,28 **** RegisterUserAction.Template: register.wm RecentChangesAction.Template: recentchanges.wm ! --- 29,35 ---- RegisterUserAction.Template: register.wm RecentChangesAction.Template: recentchanges.wm ! UserAdminAction.Template: user_admin.wm ! IndexAdminAction.Template: index_admin.wm ! IndexPageAction.Template: index_page.wm |
From: Christian A. <chr...@wi...> - 2003-02-17 20:55:46
|
Eric B. Ridge wrote: > That's okay. And it's the point. So we can watch what you're doing. :) > > eric I see. A little like "Big brother", I guess? Anyway... ;-) the new build script is much easier to set up, just run ant without any parameters to build a standard wiki under the directory "builds". Any other host could be built using "ant -Dsite.name=www.webmacro.org", for example. For debugging it's handy not to jar stuff up (doesn't reload well) but leave it as single .class files. Do "ant compile" in this case, or "ant compile -Dsite.name=www.webmacro.org" for specific site names. Regards, - Christian -- Christian Aust mailto:chr...@wi... icq: 84500990 - Yahoo!: datenimperator - MSN: datenimperator PGP: A073 F9CD 2F23 25D2 EB95 E7A3 B9B4 2AF3 E103 DB5A |
From: Eric B. R. <eb...@tc...> - 2003-02-17 19:05:13
|
That's okay. And it's the point. So we can watch what you're doing. :) eric On Monday, February 17, 2003, at 09:26 AM, Christian Aust wrote: > I'm very sorry to realize that it was me who caused that mail storm - > I wasn't subscribed to this cvs list before and didn't realize that > every single cvs operation even on side branches (!) would create > email to somebody. I apologize for this. > > - Christian > > -- > > Christian Aust > mailto:chr...@wi... > icq: 84500990 - Yahoo!: datenimperator - MSN: datenimperator > PGP: A073 F9CD 2F23 25D2 EB95 E7A3 B9B4 2AF3 E103 DB5A > > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > Webmacro-cvs mailing list > Web...@li... > https://lists.sourceforge.net/lists/listinfo/webmacro-cvs |
From: <dat...@us...> - 2003-02-17 18:37:00
|
Update of /cvsroot/webmacro/wiki/src/org/tcdi/opensource/wiki/servlet In directory sc8-pr-cvs1:/tmp/cvs-serv5418/src/org/tcdi/opensource/wiki/servlet Modified Files: Tag: christian FindPagesAction.java RegisterNewUserAction.java UserAdminAction.java ViewPageAction.java WikiServlet.java Added Files: Tag: christian IndexAdminAction.java Log Message: All changes since moving the wiki cvs from Eric's server to SF. --- NEW FILE: IndexAdminAction.java --- package org.tcdi.opensource.wiki.servlet; import java.util.*; import javax.servlet.http.Cookie; import org.tcdi.opensource.wiki.*; import org.webmacro.servlet.WebContext; /** * Lucene Index administration<p> * * * * @author ChristianAust * @created 17. December 2002 */ public class IndexAdminAction implements PageAction { /** * can only log in if "?index_admin=true" is specified in the request * * @param wiki Description of the Parameter * @param wc Description of the Parameter * @param user Description of the Parameter * @return Description of the Return Value */ public boolean accept(WikiSystem wiki, WebContext wc, WikiUser user) { String indexadmin = wc.getForm("index_admin"); return indexadmin != null && indexadmin.equals("true") && wiki.isAdministrator(user); } /** * which WebMacro template does this action use? * * @param wiki Description of the Parameter * @param page Description of the Parameter * @return The templateName value */ public String getTemplateName(WikiSystem wiki, WikiPage page) { return wiki.getProperties().getProperty("IndexAdminAction.Template"); } /** * based on the specified WikiSystem and WebContext, which WikiPage is this * action going to be dealing with? * * @param wiki Description of the Parameter * @param wc Description of the Parameter * @return The wikiPageName value */ public String getWikiPageName(WikiSystem wiki, WebContext wc) { return null; } /** * do whatever this action is supposed to do to the specified page * * @param wiki Description of the Parameter * @param wc Description of the Parameter * @param user Description of the Parameter * @param page Description of the Parameter * @exception PageAction.PageActionException Description of the Exception */ public void perform(WikiSystem wiki, WebContext wc, WikiUser user, WikiPage page) throws PageAction.PageActionException { } } Index: FindPagesAction.java =================================================================== RCS file: /cvsroot/webmacro/wiki/src/org/tcdi/opensource/wiki/servlet/FindPagesAction.java,v retrieving revision 1.3 retrieving revision 1.3.2.1 diff -C2 -d -r1.3 -r1.3.2.1 *** FindPagesAction.java 5 Jan 2002 20:27:29 -0000 1.3 --- FindPagesAction.java 17 Feb 2003 18:36:22 -0000 1.3.2.1 *************** *** 1,41 **** /** ! * The contents of this file are subject to the Mozilla Public ! * License Version 1.1 (the "License"); you may not use this file ! * except in compliance with the License. You may obtain a copy of ! * the License at http://www.mozilla.org/MPL/ ! * ! * Software distributed under the License is distributed on an "AS ! * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or ! * implied. See the License for the specific language governing ! * rights and limitations under the License. ! * ! * The Original Code is Wiki. ! * ! * The Initial Developer of the Original Code is Technology Concepts ! * and Design, Inc. ! * Copyright (C) 2000 Technology Concepts and Design, Inc. All ! * Rights Reserved. ! * ! * Contributor(s): Lane Sharman (OpenDoors Software) ! * Justin Wells (Semiotek Inc.) ! * Eric B. Ridge (Technology Concepts and Design, Inc.) ! * ! * Alternatively, the contents of this file may be used under the ! * terms of the GNU General Public License Version 2 or later (the ! * "GPL"), in which case the provisions of the GPL are applicable ! * instead of those above. If you wish to allow use of your ! * version of this file only under the terms of the GPL and not to ! * allow others to use your version of this file under the MPL, ! * indicate your decision by deleting the provisions above and ! * replace them with the notice and other provisions required by ! * the GPL. If you do not delete the provisions above, a recipient ! * may use your version of this file under either the MPL or the ! * GPL. ! * ! * ! * This product includes sofware developed by OpenDoors Software. ! * ! * This product includes software developed by Justin Wells and Semiotek Inc. ! * for use in the WebMacro ServletFramework (http://www.webmacro.org). */ package org.tcdi.opensource.wiki.servlet; --- 1,25 ---- /** ! * The contents of this file are subject to the Mozilla Public License Version ! * 1.1 (the "License"); you may not use this file except in compliance with the ! * License. You may obtain a copy of the License at http://www.mozilla.org/MPL/ ! * Software distributed under the License is distributed on an "AS IS" basis, ! * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for ! * the specific language governing rights and limitations under the License. ! * The Original Code is Wiki. The Initial Developer of the Original Code is ! * Technology Concepts and Design, Inc. Copyright (C) 2000 Technology Concepts ! * and Design, Inc. All Rights Reserved. Contributor(s): Lane Sharman ! * (OpenDoors Software) Justin Wells (Semiotek Inc.) Eric B. Ridge (Technology ! * Concepts and Design, Inc.) Alternatively, the contents of this file may be ! * used under the terms of the GNU General Public License Version 2 or later ! * (the "GPL"), in which case the provisions of the GPL are applicable instead ! * of those above. If you wish to allow use of your version of this file only ! * under the terms of the GPL and not to allow others to use your version of ! * this file under the MPL, indicate your decision by deleting the provisions ! * above and replace them with the notice and other provisions required by the ! * GPL. If you do not delete the provisions above, a recipient may use your ! * version of this file under either the MPL or the GPL. This product includes ! * sofware developed by OpenDoors Software. This product includes software ! * developed by Justin Wells and Semiotek Inc. for use in the WebMacro ! * ServletFramework (http://www.webmacro.org). */ package org.tcdi.opensource.wiki.servlet; *************** *** 43,99 **** import java.util.*; import javax.servlet.http.Cookie; - import org.webmacro.servlet.WebContext; import org.tcdi.opensource.wiki.*; import org.tcdi.opensource.wiki.search.*; /** ! * Using the WikiPageFinder of the provided WikiSystem, attempts to ! * find pages that meet the user's search criteria * ! * @author e_ridge */ public class FindPagesAction implements PageAction { ! /** ! * can only find pages if <i>?find</i> is in the request ! */ ! public boolean accept(WikiSystem wiki, WebContext wc, WikiUser user) { ! return wc.getForm ("find") != null; ! } ! ! /** ! * Use <code>wiki</code>'s WikiPageFinder to find pages that match ! * the query found in the <i>find</i> request parameter. Stuffs the ! * WebContext with an array of <code>WikiPageFinder.FindResult</code> ! * objects as $Results ! */ ! public void perform(WikiSystem wiki, WebContext wc, WikiUser user, WikiPage page) throws PageAction.PageActionException { ! String query = wc.getForm ("find"); ! if (query.trim().length() > 0) { ! WikiPageFinder finder = new LuceneFinder (); ! try { ! WikiPageFinder.FindResult[] results = finder.findPages (wiki, query); ! wc.put ("Results", results); ! } catch (Exception e) { ! // log the exception, but don't pass it back to the user ! wc.getLog ("FindPagesAction").error ("Unable to find pages with query=" + query, e); ! } ! } ! } ! ! /** ! * Use the template specified by <i>FindPageAction.Template</i> ! * in the WikiSystem's properties ! */ ! public String getTemplateName(WikiSystem wiki, WikiPage page) { ! return wiki.getProperties().getProperty ("FindPagesAction.Template"); ! } ! ! /** ! * no page name for this action ! */ ! public String getWikiPageName(WikiSystem wiki, WebContext wc) { ! return null; ! } } --- 27,106 ---- import java.util.*; import javax.servlet.http.Cookie; import org.tcdi.opensource.wiki.*; import org.tcdi.opensource.wiki.search.*; + import org.webmacro.servlet.WebContext; /** ! * Using the WikiPageFinder of the provided WikiSystem, attempts to find pages ! * that meet the user's search criteria * ! * @author e_ridge ! * @created 16. Dezember 2002 */ public class FindPagesAction implements PageAction { ! /** ! * can only find pages if <i>?find</i> is in the request ! * ! * @param wiki Description of the Parameter ! * @param wc Description of the Parameter ! * @param user Description of the Parameter ! * @return Description of the Return Value ! */ ! public boolean accept(WikiSystem wiki, WebContext wc, WikiUser user) { ! return wc.getForm("find") != null; ! } ! ! ! /** ! * Use the template specified by <i>FindPageAction.Template</i> in the ! * WikiSystem's properties ! * ! * @param wiki Description of the Parameter ! * @param page Description of the Parameter ! * @return The templateName value ! */ ! public String getTemplateName(WikiSystem wiki, WikiPage page) { ! return wiki.getProperties().getProperty("FindPagesAction.Template"); ! } ! ! ! /** ! * no page name for this action ! * ! * @param wiki Description of the Parameter ! * @param wc Description of the Parameter ! * @return The wikiPageName value ! */ ! public String getWikiPageName(WikiSystem wiki, WebContext wc) { ! return null; ! } ! ! ! /** ! * Use <code>wiki</code>'s WikiPageFinder to find pages that match the query ! * found in the <i>find</i> request parameter. Stuffs the WebContext with an ! * array of <code>WikiPageFinder.FindResult</code> objects as $Results ! * ! * @param wiki Description of the Parameter ! * @param wc Description of the Parameter ! * @param user Description of the Parameter ! * @param page Description of the Parameter ! * @exception PageAction.PageActionException Description of the Exception ! */ ! public void perform(WikiSystem wiki, WebContext wc, WikiUser user, WikiPage page) throws PageAction.PageActionException { ! String query = wc.getForm("find"); ! if (query.trim().length() > 0) { ! WikiPageFinder finder = new LuceneFinder(); ! try { ! WikiPageFinder.FindResult[] results = finder.findPages(wiki, query); ! wc.put("Results", results); ! } catch (Exception e) { ! // log the exception, but don't pass it back to the user ! //wc.getLog("FindPagesAction").error("Unable to find pages with query=" + query, e); ! throw new PageAction.PageActionException("Unable to find pages with query=" + query + "; " + e); ! } ! } ! } } Index: RegisterNewUserAction.java =================================================================== RCS file: /cvsroot/webmacro/wiki/src/org/tcdi/opensource/wiki/servlet/RegisterNewUserAction.java,v retrieving revision 1.2 retrieving revision 1.2.2.1 diff -C2 -d -r1.2 -r1.2.2.1 *** RegisterNewUserAction.java 5 Jan 2002 20:27:29 -0000 1.2 --- RegisterNewUserAction.java 17 Feb 2003 18:36:23 -0000 1.2.2.1 *************** *** 1,41 **** /** ! * The contents of this file are subject to the Mozilla Public ! * License Version 1.1 (the "License"); you may not use this file ! * except in compliance with the License. You may obtain a copy of ! * the License at http://www.mozilla.org/MPL/ ! * ! * Software distributed under the License is distributed on an "AS ! * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or ! * implied. See the License for the specific language governing ! * rights and limitations under the License. ! * ! * The Original Code is Wiki. ! * ! * The Initial Developer of the Original Code is Technology Concepts ! * and Design, Inc. ! * Copyright (C) 2000 Technology Concepts and Design, Inc. All ! * Rights Reserved. ! * ! * Contributor(s): Lane Sharman (OpenDoors Software) ! * Justin Wells (Semiotek Inc.) ! * Eric B. Ridge (Technology Concepts and Design, Inc.) ! * ! * Alternatively, the contents of this file may be used under the ! * terms of the GNU General Public License Version 2 or later (the ! * "GPL"), in which case the provisions of the GPL are applicable ! * instead of those above. If you wish to allow use of your ! * version of this file only under the terms of the GPL and not to ! * allow others to use your version of this file under the MPL, ! * indicate your decision by deleting the provisions above and ! * replace them with the notice and other provisions required by ! * the GPL. If you do not delete the provisions above, a recipient ! * may use your version of this file under either the MPL or the ! * GPL. ! * ! * ! * This product includes sofware developed by OpenDoors Software. ! * ! * This product includes software developed by Justin Wells and Semiotek Inc. ! * for use in the WebMacro ServletFramework (http://www.webmacro.org). */ --- 1,25 ---- /** ! * The contents of this file are subject to the Mozilla Public License Version ! * 1.1 (the "License"); you may not use this file except in compliance with the ! * License. You may obtain a copy of the License at http://www.mozilla.org/MPL/ ! * Software distributed under the License is distributed on an "AS IS" basis, ! * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for ! * the specific language governing rights and limitations under the License. ! * The Original Code is Wiki. The Initial Developer of the Original Code is ! * Technology Concepts and Design, Inc. Copyright (C) 2000 Technology Concepts ! * and Design, Inc. All Rights Reserved. Contributor(s): Lane Sharman ! * (OpenDoors Software) Justin Wells (Semiotek Inc.) Eric B. Ridge (Technology ! * Concepts and Design, Inc.) Alternatively, the contents of this file may be ! * used under the terms of the GNU General Public License Version 2 or later ! * (the "GPL"), in which case the provisions of the GPL are applicable instead ! * of those above. If you wish to allow use of your version of this file only ! * under the terms of the GPL and not to allow others to use your version of ! * this file under the MPL, indicate your decision by deleting the provisions ! * above and replace them with the notice and other provisions required by the ! * GPL. If you do not delete the provisions above, a recipient may use your ! * version of this file under either the MPL or the GPL. This product includes ! * sofware developed by OpenDoors Software. This product includes software ! * developed by Justin Wells and Semiotek Inc. for use in the WebMacro ! * ServletFramework (http://www.webmacro.org). */ *************** *** 44,159 **** import java.util.*; import javax.servlet.http.Cookie; - import org.webmacro.servlet.WebContext; import org.tcdi.opensource.wiki.*; /** ! * Allows new users to register with Wiki ! * @author e_ridge */ public class RegisterNewUserAction implements PageAction { ! /** ! * if "?register=true", we accept ! */ ! public boolean accept(WikiSystem wiki, WebContext wc, WikiUser user) { ! String register = wc.getForm ("register"); ! return register != null && register.equals ("true"); ! } ! ! /** ! * If it's a GET request, we simply display the register template. If it's ! * a POST request, do process the registration request, create the user, ! * and display the register template again. The register template should be ! * smart enough to detect $User, and if so, display some kind of "thank you" ! * message. ! */ ! public void perform(WikiSystem wiki, WebContext wc, WikiUser user, WikiPage page) throws PageAction.PageActionException { ! String method = wc.getRequest().getMethod(); ! if (method.equalsIgnoreCase ("GET")) { ! return; ! } else if (method.equalsIgnoreCase ("POST")) { ! try { ! // register the user and store him in the context ! user = registerUser (wiki, wc); ! wc.put ("User", user); ! ! // and log him in... which creates his cookie ! LoginAction.loginUser(wiki, wc); ! ! } catch (Exception e) { ! throw new PageAction.PageActionException (e.getMessage()); ! } ! } else { ! throw new PageAction.PageActionException ("Unknown method: " + method); ! } ! } ! ! /** ! * template is the "RegisterUserAction.Template" configuration option ! */ ! public String getTemplateName(WikiSystem wiki, WikiPage page) { ! return wiki.getProperties().getProperty ("RegisterUserAction.Template"); ! } ! ! /** ! * no page name for this action ! */ ! public String getWikiPageName(WikiSystem wiki, WebContext wc) { ! return null; ! } ! ! ! /** ! * register the user based on info in the context, and create his cookie ! */ ! private WikiUser registerUser(WikiSystem wiki, WebContext wc) throws Exception { ! String first = wc.getForm ("FIRST_NAME").trim(); ! String last = wc.getForm ("LAST_NAME").trim(); ! String fullName = first + " " + last; ! String email = wc.getForm ("EMAIL").trim(); ! String uid = wc.getForm ("username").trim(); ! String upw = wc.getForm ("password").trim(); ! String upw2 = wc.getForm ("password2").trim(); ! ! if (!upw.equals (upw2)) ! throw new Exception ("Passwords do not match"); ! if (first.length() == 0 || last.length() == 0 || email.length() == 0 ! || uid.length() == 0) ! throw new Exception ("All fields are required"); ! if (uid.indexOf (' ') > -1) ! throw new Exception ("Username cannot contiain spaces"); ! ! Hashtable attributes = new Hashtable (); ! attributes.put ("email", email); ! attributes.put ("firstname", first); ! attributes.put ("lastname", last); ! ! WikiUser user = wiki.registerUser(uid, fullName, WikiUtil.getMD5(upw), attributes); ! ! return user; ! } ! ! /** ! * create a cookie for the specified WikiUser ! */ ! private void createCookie(WikiSystem wiki, WebContext wc, WikiUser user) { ! try { ! String cookieName = wiki.getProperties().getProperty ("CookieName"); ! long cookieTimeout = Long.parseLong (wiki.getProperties().getProperty ("CookieTimeout").trim()); ! Cookie c = new Cookie(cookieName, "" ! + ((user == null) ? "" : user.getIdentifier()) ! + ((user == null) ? "" : ("|" + user.getPassword())) ! ); ! c.setPath("/"); ! if (user == null) ! c.setMaxAge(0); // clear it out ! else ! c.setMaxAge((int) cookieTimeout); ! wc.getResponse().addCookie(c); ! } catch (Exception e) { ! // should never happen ! } ! } ! } \ No newline at end of file --- 28,182 ---- import java.util.*; import javax.servlet.http.Cookie; import org.tcdi.opensource.wiki.*; + import org.webmacro.servlet.WebContext; /** ! * Allows new users to register with Wiki ! * ! * @author e_ridge ! * @created 16. Dezember 2002 */ public class RegisterNewUserAction implements PageAction { ! /** ! * if "?register=true", we accept ! * ! * @param wiki Description of the Parameter ! * @param wc Description of the Parameter ! * @param user Description of the Parameter ! * @return Description of the Return Value ! */ ! public boolean accept(WikiSystem wiki, WebContext wc, WikiUser user) { ! String register = wc.getForm("register"); ! return register != null && register.equals("true"); ! } ! ! /** ! * create a cookie for the specified WikiUser ! * ! * @param wiki Description of the Parameter ! * @param wc Description of the Parameter ! * @param user Description of the Parameter ! */ ! private void createCookie(WikiSystem wiki, WebContext wc, WikiUser user) { ! try { ! String cookieName = wiki.getProperties().getProperty("CookieName"); ! long cookieTimeout = Long.parseLong(wiki.getProperties().getProperty("CookieTimeout").trim()); ! Cookie c = new Cookie(cookieName, "" ! + ((user == null) ? "" : user.getIdentifier()) ! + ((user == null) ? "" : ("|" + user.getPassword())) ! ); ! c.setPath("/"); ! if (user == null) { ! c.setMaxAge(0); ! } ! // clear it out ! else { ! c.setMaxAge((int) cookieTimeout); ! } ! ! wc.getResponse().addCookie(c); ! } catch (Exception e) { ! // should never happen ! } ! } ! ! ! /** ! * template is the "RegisterUserAction.Template" configuration option ! * ! * @param wiki Description of the Parameter ! * @param page Description of the Parameter ! * @return The templateName value ! */ ! public String getTemplateName(WikiSystem wiki, WikiPage page) { ! return wiki.getProperties().getProperty("RegisterUserAction.Template"); ! } ! ! ! /** ! * no page name for this action ! * ! * @param wiki Description of the Parameter ! * @param wc Description of the Parameter ! * @return The wikiPageName value ! */ ! public String getWikiPageName(WikiSystem wiki, WebContext wc) { ! return null; ! } ! ! ! /** ! * If it's a GET request, we simply display the register template. If it's a ! * POST request, do process the registration request, create the user, and ! * display the register template again. The register template should be ! * smart enough to detect $User, and if so, display some kind of "thank you" ! * message. ! * ! * @param wiki Description of the Parameter ! * @param wc Description of the Parameter ! * @param user Description of the Parameter ! * @param page Description of the Parameter ! * @exception PageAction.PageActionException Description of the Exception ! */ ! public void perform(WikiSystem wiki, WebContext wc, WikiUser user, WikiPage page) throws PageAction.PageActionException { ! String method = wc.getRequest().getMethod(); ! if (method.equalsIgnoreCase("GET")) { ! return; ! } else if (method.equalsIgnoreCase("POST")) { ! try { ! // register the user and store him in the context ! user = registerUser(wiki, wc); ! wc.put("User", user); ! ! // and log him in... which creates his cookie ! LoginAction.loginUser(wiki, wc); ! } catch (Exception e) { ! throw new PageAction.PageActionException(e.toString() + ": " + e.getMessage()); ! } ! } else { ! throw new PageAction.PageActionException("Unknown method: " + method); ! } ! } ! ! ! /** ! * register the user based on info in the context, and create his cookie ! * ! * @param wiki Description of the Parameter ! * @param wc Description of the Parameter ! * @return Description of the Return Value ! * @exception Exception Description of the Exception ! */ ! private WikiUser registerUser(WikiSystem wiki, WebContext wc) throws Exception { ! String first = wc.getForm("FIRST_NAME").trim(); ! String last = wc.getForm("LAST_NAME").trim(); ! String fullName = first + " " + last; ! String email = wc.getForm("EMAIL").trim(); ! String uid = wc.getForm("username").trim(); ! String upw = wc.getForm("password").trim(); ! String upw2 = wc.getForm("password2").trim(); ! ! if (!upw.equals(upw2)) { ! throw new Exception("Passwords do not match"); ! } ! if (first.length() == 0 || last.length() == 0 || email.length() == 0 ! || uid.length() == 0) { ! throw new Exception("All fields are required"); ! } ! if (uid.indexOf(' ') > -1) { ! throw new Exception("Username cannot contain spaces"); ! } ! ! Hashtable attributes = new Hashtable(); ! attributes.put("email", email); ! attributes.put("firstname", first); ! attributes.put("lastname", last); ! ! WikiUser user = wiki.registerUser(uid, fullName, WikiUtil.getMD5(upw), attributes); ! ! return user; ! } ! } Index: UserAdminAction.java =================================================================== RCS file: /cvsroot/webmacro/wiki/src/org/tcdi/opensource/wiki/servlet/Attic/UserAdminAction.java,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** UserAdminAction.java 18 Sep 2002 18:55:05 -0000 1.1.2.1 --- UserAdminAction.java 17 Feb 2003 18:36:23 -0000 1.1.2.2 *************** *** 1,80 **** ! package org.tcdi.opensource.wiki.servlet; ! ! import java.util.*; ! import javax.servlet.http.Cookie; ! import org.webmacro.servlet.WebContext; ! ! import org.tcdi.opensource.wiki.*; ! ! /** ! * User administration<p> ! * ! * ! * ! *@author ChristianAust ! *@created 12. September 2002 ! */ ! public class UserAdminAction implements PageAction { ! ! /** ! * can only log in if "?user_admin=true" is specified in the request ! * ! *@param wiki Description of the Parameter ! *@param wc Description of the Parameter ! *@param user Description of the Parameter ! *@return Description of the Return Value ! */ ! public boolean accept(WikiSystem wiki, WebContext wc, WikiUser user) { ! String useradmin = wc.getForm("user_admin"); ! return useradmin != null && useradmin.equals("true") && wiki.isAdministrator(user); ! } ! ! ! /** ! * based on the specified WikiSystem and WebContext, which WikiPage is this ! * action going to be dealing with? ! * ! *@param wiki Description of the Parameter ! *@param wc Description of the Parameter ! *@return The wikiPageName value ! */ ! public String getWikiPageName(WikiSystem wiki, WebContext wc) { ! return null; ! } ! ! ! /** ! * do whatever this action is supposed to do to the specified page ! * ! *@param wiki Description of the Parameter ! *@param wc Description of the Parameter ! *@param user Description of the Parameter ! *@param page Description of the Parameter ! *@exception PageAction.PageActionException Description of the Exception ! */ ! public void perform(WikiSystem wiki, WebContext wc, WikiUser user, WikiPage page) throws PageAction.PageActionException { ! if (wc.getForm("username") != null) { ! //display user details ! WikiUser currentuser = wiki.getUser(wc.getForm("username")); ! wc.put("currentuser", currentuser); ! } ! if (wc.getForm("update_user") != null) { ! //save new user data ! WikiUser currentuser = wiki.getUser(wc.getForm("username")); ! } ! } ! ! ! /** ! * which WebMacro template does this action use? ! * ! *@param wiki Description of the Parameter ! *@param page Description of the Parameter ! *@return The templateName value ! */ ! public String getTemplateName(WikiSystem wiki, WikiPage page) { ! return wiki.getProperties().getProperty("UserAdminAction.Template"); ! } ! ! } ! --- 1,88 ---- ! package org.tcdi.opensource.wiki.servlet; ! ! import java.util.*; ! import javax.servlet.http.Cookie; ! ! import org.tcdi.opensource.wiki.*; ! import org.webmacro.servlet.WebContext; ! ! /** ! * User administration<p> ! * ! * ! * ! * @author ChristianAust ! * @created 12. September 2002 ! */ ! public class UserAdminAction implements PageAction { ! ! /** ! * can only log in if "?user_admin=true" is specified in the request ! * ! * @param wiki Description of the Parameter ! * @param wc Description of the Parameter ! * @param user Description of the Parameter ! * @return Description of the Return Value ! */ ! public boolean accept(WikiSystem wiki, WebContext wc, WikiUser user) { ! String useradmin = wc.getForm("user_admin"); ! return useradmin != null && useradmin.equals("true") && wiki.isAdministrator(user); ! } ! ! ! /** ! * which WebMacro template does this action use? ! * ! * @param wiki Description of the Parameter ! * @param page Description of the Parameter ! * @return The templateName value ! */ ! public String getTemplateName(WikiSystem wiki, WikiPage page) { ! return wiki.getProperties().getProperty("UserAdminAction.Template"); ! } ! ! ! /** ! * based on the specified WikiSystem and WebContext, which WikiPage is this ! * action going to be dealing with? ! * ! * @param wiki Description of the Parameter ! * @param wc Description of the Parameter ! * @return The wikiPageName value ! */ ! public String getWikiPageName(WikiSystem wiki, WebContext wc) { ! return null; ! } ! ! ! /** ! * do whatever this action is supposed to do to the specified page ! * ! * @param wiki Description of the Parameter ! * @param wc Description of the Parameter ! * @param user Description of the Parameter ! * @param page Description of the Parameter ! * @exception PageAction.PageActionException Description of the Exception ! */ ! public void perform(WikiSystem wiki, WebContext wc, WikiUser user, WikiPage page) throws PageAction.PageActionException { ! if (wc.getForm("username") != null) { ! //display user details ! WikiUser currentuser = wiki.getUser(wc.getForm("username")); ! wc.put("currentuser", currentuser); ! } ! if (wc.getForm("update_user") != null) { ! //save new user data ! WikiUser currentuser = wiki.getUser(wc.getForm("username")); ! currentuser.setName(wc.getForm("fullname")); ! currentuser.setIsModerator(wc.getForm("is_moderator") != null); ! currentuser.setAttribute("email", wc.getForm("email")); ! wiki.updateUser(currentuser); ! } ! if (wc.getForm("delete_user") != null) { ! //Delete user ! wiki.deleteUser(wc.getForm("username")); ! } ! } ! ! } ! Index: ViewPageAction.java =================================================================== RCS file: /cvsroot/webmacro/wiki/src/org/tcdi/opensource/wiki/servlet/ViewPageAction.java,v retrieving revision 1.4 retrieving revision 1.4.2.1 diff -C2 -d -r1.4 -r1.4.2.1 *** ViewPageAction.java 5 Jan 2002 20:27:29 -0000 1.4 --- ViewPageAction.java 17 Feb 2003 18:36:23 -0000 1.4.2.1 *************** *** 1,41 **** /** ! * The contents of this file are subject to the Mozilla Public ! * License Version 1.1 (the "License"); you may not use this file ! * except in compliance with the License. You may obtain a copy of ! * the License at http://www.mozilla.org/MPL/ ! * ! * Software distributed under the License is distributed on an "AS ! * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or ! * implied. See the License for the specific language governing ! * rights and limitations under the License. ! * ! * The Original Code is Wiki. ! * ! * The Initial Developer of the Original Code is Technology Concepts ! * and Design, Inc. ! * Copyright (C) 2000 Technology Concepts and Design, Inc. All ! * Rights Reserved. ! * ! * Contributor(s): Lane Sharman (OpenDoors Software) ! * Justin Wells (Semiotek Inc.) ! * Eric B. Ridge (Technology Concepts and Design, Inc.) ! * ! * Alternatively, the contents of this file may be used under the ! * terms of the GNU General Public License Version 2 or later (the ! * "GPL"), in which case the provisions of the GPL are applicable ! * instead of those above. If you wish to allow use of your ! * version of this file only under the terms of the GPL and not to ! * allow others to use your version of this file under the MPL, ! * indicate your decision by deleting the provisions above and ! * replace them with the notice and other provisions required by ! * the GPL. If you do not delete the provisions above, a recipient ! * may use your version of this file under either the MPL or the ! * GPL. ! * ! * ! * This product includes sofware developed by OpenDoors Software. ! * ! * This product includes software developed by Justin Wells and Semiotek Inc. ! * for use in the WebMacro ServletFramework (http://www.webmacro.org). */ --- 1,25 ---- /** ! * The contents of this file are subject to the Mozilla Public License Version ! * 1.1 (the "License"); you may not use this file except in compliance with the ! * License. You may obtain a copy of the License at http://www.mozilla.org/MPL/ ! * Software distributed under the License is distributed on an "AS IS" basis, ! * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for ! * the specific language governing rights and limitations under the License. ! * The Original Code is Wiki. The Initial Developer of the Original Code is ! * Technology Concepts and Design, Inc. Copyright (C) 2000 Technology Concepts ! * and Design, Inc. All Rights Reserved. Contributor(s): Lane Sharman ! * (OpenDoors Software) Justin Wells (Semiotek Inc.) Eric B. Ridge (Technology ! * Concepts and Design, Inc.) Alternatively, the contents of this file may be ! * used under the terms of the GNU General Public License Version 2 or later ! * (the "GPL"), in which case the provisions of the GPL are applicable instead ! * of those above. If you wish to allow use of your version of this file only ! * under the terms of the GPL and not to allow others to use your version of ! * this file under the MPL, indicate your decision by deleting the provisions ! * above and replace them with the notice and other provisions required by the ! * GPL. If you do not delete the provisions above, a recipient may use your ! * version of this file under either the MPL or the GPL. This product includes ! * sofware developed by OpenDoors Software. This product includes software ! * developed by Justin Wells and Semiotek Inc. for use in the WebMacro ! * ServletFramework (http://www.webmacro.org). */ *************** *** 44,118 **** import java.util.*; - import org.webmacro.servlet.WebContext; - import org.tcdi.opensource.wiki.*; /** ! * This Action allows pages to be viewed.<p> * ! * If no page name can be determined <i>StartPage</i> property ! * of the specified WikiSystem is used.<p> * ! * By default, pages are viewed using the <i>ViewPageAction.Template</i> ! * specified by the WikiSystem, however, one can override the template ! * on a page-by-page basis by specifying properties in the form of:<pre> ! * <page name>.Template ! * </pre> * ! * @author e_ridge */ public class ViewPageAction implements PageAction { ! /** ! * A ViewPage action can only happen if there are no http request parameters ! * and if the request is a GET request ! */ ! public boolean accept(WikiSystem wiki, WebContext wc, WikiUser user) { ! Enumeration enum = wc.getRequest().getParameterNames(); ! // don't accept if we have request parameters ! if (enum.hasMoreElements()) ! return false; ! ! // and then only accept if this is a get request ! return wc.getRequest().getMethod().equalsIgnoreCase("GET"); ! } ! ! /** ! * do whatever this action is supposed to do to the specified page ! */ ! public void perform(WikiSystem wiki, WebContext wc, WikiUser user, WikiPage page) throws PageAction.PageActionException { ! wc.put ("Page", page); ! } ! ! /** ! * which WebMacro template does this action use?<p> ! * ! * If it is determined that the WikiSystem has defined a unique template ! * for the specified page, that template is used instead of the default ! * <i>ViewPageAction.Template</i>. ! */ ! public String getTemplateName(WikiSystem wiki, WikiPage page) { ! Properties props = wiki.getProperties(); ! String template = props.getProperty ("ViewPageAction.Template"); ! if (page != null) { ! if (props.getProperty (page.getTitle()) != null) ! template = props.getProperty (page.getTitle()); ! } ! return template; ! } ! ! /** ! * based on the specified WikiSystem and WebContext, which WikiPage is ! * this action going to be dealing with? ! */ ! public String getWikiPageName(WikiSystem wiki, WebContext wc) { ! String uri = wc.getRequest().getRequestURI (); ! String name = WikiUtil.formatAsWikiTitle(uri.substring (uri.lastIndexOf('/')+1)); ! if (name.length() == 0) ! return wiki.getProperties().getProperty ("StartPage"); ! else ! return name; ! } } --- 28,128 ---- import java.util.*; import org.tcdi.opensource.wiki.*; + import org.webmacro.servlet.WebContext; + /** ! * This Action allows pages to be viewed.<p> * ! * If no page name can be determined <i>StartPage</i> property of the specified ! * WikiSystem is used.<p> * ! * By default, pages are viewed using the <i>ViewPageAction.Template</i> ! * specified by the WikiSystem, however, one can override the template on a ! * page-by-page basis by specifying properties in the form of:<pre> ! * <page name> * ! * .Template </pre> ! * ! * @author e_ridge */ public class ViewPageAction implements PageAction { ! /** ! * A ViewPage action can only happen if there are no http request parameters ! * and if the request is a GET request ! * ! * @param wiki Description of the Parameter ! * @param wc Description of the Parameter ! * @param user Description of the Parameter ! * @return Description of the Return Value ! */ ! public boolean accept(WikiSystem wiki, WebContext wc, WikiUser user) { ! Enumeration enum = wc.getRequest().getParameterNames(); ! // don't accept if we have request parameters ! if (enum.hasMoreElements()) { ! return false; ! } ! // and then only accept if this is a get request ! return wc.getRequest().getMethod().equalsIgnoreCase("GET"); ! } ! ! ! /** ! * which WebMacro template does this action use?<p> ! * ! * If it is determined that the WikiSystem has defined a unique template for ! * the specified page, that template is used instead of the default <i> ! * ViewPageAction.Template</i> . ! * ! * @param wiki Description of the Parameter ! * @param page Description of the Parameter ! * @return The templateName value ! */ ! public String getTemplateName(WikiSystem wiki, WikiPage page) { ! Properties props = wiki.getProperties(); ! String template = props.getProperty("ViewPageAction.Template"); ! if (page != null) { ! if (props.getProperty(page.getTitle()) != null) { ! template = props.getProperty(page.getTitle()); ! } ! } ! ! return template; ! } ! ! ! /** ! * based on the specified WikiSystem and WebContext, which WikiPage is this ! * action going to be dealing with? ! * ! * @param wiki Description of the Parameter ! * @param wc Description of the Parameter ! * @return The wikiPageName value ! */ ! public String getWikiPageName(WikiSystem wiki, WebContext wc) { ! String uri = wc.getRequest().getRequestURI(); ! String name = WikiUtil.formatAsWikiTitle(uri.substring(uri.lastIndexOf('/') + 1)); ! if (name.length() == 0) { ! return wiki.getProperties().getProperty("StartPage"); ! } else { ! return name; ! } ! } ! ! ! /** ! * do whatever this action is supposed to do to the specified page ! * ! * @param wiki Description of the Parameter ! * @param wc Description of the Parameter ! * @param user Description of the Parameter ! * @param page Description of the Parameter ! * @exception PageAction.PageActionException Description of the Exception ! */ ! public void perform(WikiSystem wiki, WebContext wc, WikiUser user, WikiPage page) throws PageAction.PageActionException { ! wc.put("Page", page); ! } } Index: WikiServlet.java =================================================================== RCS file: /cvsroot/webmacro/wiki/src/org/tcdi/opensource/wiki/servlet/WikiServlet.java,v retrieving revision 1.2.2.1 retrieving revision 1.2.2.2 diff -C2 -d -r1.2.2.1 -r1.2.2.2 *** WikiServlet.java 18 Sep 2002 18:49:58 -0000 1.2.2.1 --- WikiServlet.java 17 Feb 2003 18:36:23 -0000 1.2.2.2 *************** *** 25,323 **** package org.tcdi.opensource.wiki.servlet; ! import javax.servlet.http.*; import javax.servlet.*; ! import java.util.*; ! import java.io.*; ! import org.webmacro.*; ! import org.webmacro.servlet.*; import org.tcdi.opensource.wiki.*; - import org.tcdi.opensource.util.*; ! import org.apache.regexp.*; /** * The main servlet for Wiki * ! *@author Eric B. Ridge ! *@created 1. September 2002 */ public class WikiServlet extends HttpServlet { ! private static String COOKIE_NAME; ! private static long COOKIE_TIMEOUT; ! private WebMacro _wm = null; ! private WebContext _wc = null; ! private RE _re = null; ! /** ! * a log we can use ! */ ! private Log _log; ! /** ! * the Wiki instance we're to use ! */ ! private WikiSystem _wiki; ! /** ! * the PageActionManager we should use for each page request ! */ ! private PageActionManager _actionManager; ! /** ! * do necessary statup work like creating a Log and configuring the various ! * options of WikiServet ! * ! *@param config Description of the Parameter ! *@exception ServletException Description of the Exception ! */ ! public void init(ServletConfig config) ! throws ServletException { ! super.init(config); ! try { ! _re = new RE("^[^\\.]+$"); ! _wm = new WM(); ! _log = _wm.getLog("wiki"); ! _wc = new WebContext(_wm.getBroker()); ! configure(); ! } catch (Exception e) { ! throw new ServletException(e); ! } ! } - /** - * Description of the Method - */ - public void destroy() { - _wm.destroy(); - } - /** - * Description of the Method - * - *@param req Description of the Parameter - *@param resp Description of the Parameter - *@exception ServletException Description of the Exception - *@exception java.io.IOException Description of the Exception - */ - public void doPost(HttpServletRequest req, HttpServletResponse resp) - throws ServletException, java.io.IOException { - this.doGet(req, resp); - } - /** - * Description of the Method - * - *@param req Description of the Parameter - *@param resp Description of the Parameter - *@exception ServletException Description of the Exception - *@exception java.io.IOException Description of the Exception - */ - public void doGet(HttpServletRequest req, HttpServletResponse resp) - throws ServletException, java.io.IOException { - String uri = req.getRequestURI().substring(req.getContextPath().length()); - if (uri.equals("")) { - resp.sendRedirect(req.getRequestURI().concat("/")); - return; - } - if (_re.match(uri)) { - WebContext wc = _wc.newInstance(req, resp); - try { - Template t = handle(wc); - FastWriter out = _wm.getFastWriter(resp.getOutputStream(), "UTF-8"); - t.write(out, wc); - out.close(); - } catch (PageAction.RedirectException re) { - resp.sendRedirect(re.getURL()); - return; - } catch (Exception e) { - throw new ServletException(e); - } - } else { - try { - InputStream in = this.getServletConfig().getServletContext().getResourceAsStream(uri); - if ((in != null) && (in.available() > 0)) { - byte[] buffer = new byte[1024]; - resp.setContentLength(in.available()); - int size = 0; - for (; ; ) { - size = in.read(buffer); - if (size == -1) { - break; - } - resp.getOutputStream().write(buffer, 0, size); - } - in.close(); - } else { - resp.sendError(404, "File not found: " + uri); - } - } catch (java.net.MalformedURLException me) { - _log.notice("Malformed URL: " + uri); - } - } - } - /** - * Gets the template attribute of the WikiServlet object - * - *@param aName Description of the Parameter - *@return The template value - *@exception ResourceException Description of the Exception - */ - private Template getTemplate(String aName) throws ResourceException { - return _wm.getTemplate(aName); - } - /** - * Respond to a request by getting the proper PageAction from our - * PageActionManager - * - *@param wc Description of the Parameter - *@return Description of the Return Value - *@exception HandlerException Description of the Exception - *@exception PageAction.PageActionException Description of the Exception - */ - public final Template handle(WebContext wc) throws HandlerException, PageAction.PageActionException { - String pageName = null; - WikiPage wikiPage = null; ! // who is trying to do something? ! WikiUser user = getUser(wc); ! // which action wants to respond to this request? ! PageAction action = _actionManager.getAction(wc, user); ! // use the action to determine which WikiPage ! // we should be dealing with ! if (action != null) { ! pageName = action.getWikiPageName(_wiki, wc); ! } ! if (pageName != null) { ! wikiPage = _wiki.getPage(pageName); ! _log.notice("page: " + wikiPage); ! } ! // stuff the webcontext with useful stuff ! stuffContext(wc, wikiPage, user, pageName); ! if (action == null) { ! throw new HandlerException("Unable to find a PageAction to handle" ! + " this request."); ! } - // attempt to perform the action against the page - action.perform(_wiki, wc, user, wikiPage); ! // the action performed successfully, so now return ! // the template it wants us to use ! try { ! // determine the template name and return ! String templateName = action.getTemplateName(_wiki, wikiPage); ! return getTemplate(templateName); ! } catch (ResourceException re) { ! throw new HandlerException("Could not get template", re); ! } ! } ! /** ! *@param wc Description of the Parameter ! *@return a WikiUser object from cookie. null if no cookie or if user not ! * found ! */ ! private WikiUser getUser(WebContext wc) { ! try { ! Cookie cookie = wc.getCookie(COOKIE_NAME); ! String uid = null; ! String password = null; ! if (cookie != null) { ! String val = cookie.getValue(); ! int idx = val.indexOf('|'); ! uid = val.substring(0, idx); ! password = val.substring(idx + 1); ! } ! WikiUser user = (WikiUser) ((uid == null) ? null : _wiki.getUser(uid)); ! if (user != null) { ! // udate the last accessed attribute for this user ! user.setAttribute("LastAccessed", new Date().toString()); ! user.setAttribute("IPAddress", wc.getRequest().getRemoteAddr()); ! _wiki.updateUser(user); ! } ! return user; ! } catch (Exception e) { ! return null; ! } ! } ! /** ! * stuff the context with objects required by most templates ! * ! *@param wc Description of the Parameter ! *@param page Description of the Parameter ! *@param user Description of the Parameter ! *@param pageName Description of the Parameter ! */ ! private void stuffContext(WebContext wc, WikiPage page, WikiUser user, String pageName) { ! wc.put("Wiki", _wiki); ! wc.put("WikiUtil", WikiUtil.getInstance()); ! wc.put("Renderer", _wiki.getPageRenderer()); ! wc.put("Page", page); ! wc.put("User", user); ! wc.put("PageName", pageName); ! } ! /** ! * do one-time intialization/configuration ! * ! *@exception Exception Description of the Exception ! */ ! private void configure() throws Exception { ! _wiki = new Wiki(translatePath("/"), this.getInitParameter("properties")); ! _log.notice(translatePath("/")); ! _actionManager = new PageActionManager(_wiki, _log); ! COOKIE_NAME = _wiki.getProperties().getProperty("CookieName").trim(); ! COOKIE_TIMEOUT = Long.parseLong(_wiki.getProperties().getProperty("CookieTimeout").trim()); ! _log.notice("Wiki configured successfully"); - boolean reindex = _wiki.getProperties().getProperty("ReIndex") != null - && _wiki.getProperties().getProperty("ReIndex").equalsIgnoreCase("true"); - if (reindex) { - _wiki.indexCurrentPages(); - } - } - /** - * Description of the Method - * - *@param url Description of the Parameter - *@return Description of the Return Value - */ - private String translatePath(String url) { - java.net.URL u = null; ! try { ! u = this.getServletConfig().getServletContext().getResource(url); ! } catch (java.net.MalformedURLException me) { ! _log.notice("Malformed URL: " + url); ! } finally { ! return u != null ? u.getFile() : null; ! } ! } } --- 25,351 ---- package org.tcdi.opensource.wiki.servlet; + import java.io.*; ! import java.util.*; import javax.servlet.*; ! import javax.servlet.http.*; ! import org.apache.regexp.*; ! import org.tcdi.opensource.util.*; import org.tcdi.opensource.wiki.*; ! import org.webmacro.*; ! import org.webmacro.servlet.*; /** * The main servlet for Wiki * ! * @author Eric B. Ridge ! * @created 1. September 2002 */ public class WikiServlet extends HttpServlet { ! private static String COOKIE_NAME; ! private static long COOKIE_TIMEOUT; ! /** ! * the PageActionManager we should use for each page request ! */ ! private PageActionManager _actionManager; ! /** ! * a log we can use ! */ ! private Log _log; ! private RE _re = null; ! private WebContext _wc = null; ! /** ! * the Wiki instance we're to use ! */ ! private WikiSystem _wiki; ! private WebMacro _wm = null; ! /** ! * do one-time intialization/configuration ! * ! * @exception Exception Description of the Exception ! */ ! private void configure() throws Exception { ! _wiki = new Wiki(translatePath("/"), this.getInitParameter("properties")); ! _actionManager = new PageActionManager(_wiki, _log); ! COOKIE_NAME = _wiki.getProperties().getProperty("CookieName").trim(); ! COOKIE_TIMEOUT = Long.parseLong(_wiki.getProperties().getProperty("CookieTimeout").trim()); ! _log.notice("Wiki configured successfully"); + boolean reindex = _wiki.getProperties().getProperty("ReIndex") != null + && _wiki.getProperties().getProperty("ReIndex").equalsIgnoreCase("true"); + if (reindex) { + _wiki.indexCurrentPages(); + } + } + /** + * Description of the Method + */ + public void destroy() { + _wm.destroy(); + } + /** + * Description of the Method + * + * @param req Description of the Parameter + * @param resp Description of the Parameter + * @exception ServletException Description of the Exception + * @exception java.io.IOException Description of the Exception + */ + public void doGet(HttpServletRequest req, HttpServletResponse resp) + throws ServletException, java.io.IOException { + String uri = req.getRequestURI().substring(req.getContextPath().length()); + if (uri.equals("")) { + resp.sendRedirect(req.getRequestURI().concat("/")); + return; + } else { + if (uri.equals("/")) { + uri = uri.concat(_wiki.getProperties().getProperty("StartPage")); + } + } + if (_re.match(uri)) { + WebContext wc = _wc.newInstance(req, resp); + try { + Template t = handle(wc); + FastWriter out = _wm.getFastWriter(resp.getOutputStream(), "UTF-8"); + t.write(out, wc); + out.close(); + } catch (PageAction.RedirectException re) { + resp.sendRedirect(re.getURL()); + return; + } catch (Exception e) { + throw new ServletException(e); + } + } else { + try { + InputStream in = this.getServletConfig().getServletContext().getResourceAsStream(uri); + if ((in != null) && (in.available() > 0)) { + byte[] buffer = new byte[1024]; + resp.setContentLength(in.available()); + int size = 0; + for (; ; ) { + size = in.read(buffer); + if (size == -1) { + break; + } + resp.getOutputStream().write(buffer, 0, size); + } + in.close(); + } else { + resp.sendError(404, "File not found: " + uri); + } + } catch (java.net.MalformedURLException me) { + _log.notice("Malformed URL: " + uri); + } + } + } + /** + * Description of the Method + * + * @param req Description of the Parameter + * @param resp Description of the Parameter + * @exception ServletException Description of the Exception + * @exception java.io.IOException Description of the Exception + */ + public void doPost(HttpServletRequest req, HttpServletResponse resp) + throws ServletException, java.io.IOException { + this.doGet(req, resp); + } + /** + * Gets the template attribute of the WikiServlet object + * + * @param aName Description of the Parameter + * @return The template value + * @exception ResourceException Description of the Exception + */ + private Template getTemplate(String aName) throws ResourceException { + return _wm.getTemplate(aName); + } ! /** ! * @param wc Description of the Parameter ! * @return a WikiUser object from cookie. null if no cookie or if user ! * not found ! */ ! private WikiUser getUser(WebContext wc) { ! try { ! String uid = null; ! String password = null; ! boolean autoCreate = false; ! if (wc.getRequest().getRemoteUser() != null) { ! uid = wc.getRequest().getRemoteUser().toLowerCase(); ! int pos = uid.indexOf("\\"); ! if (pos > 0) { ! uid = uid.substring(pos + 1, uid.length()); ! } ! autoCreate = true; ! } else { ! Cookie cookie = wc.getCookie(COOKIE_NAME); ! if (cookie != null) { ! String val = cookie.getValue(); ! int idx = val.indexOf('|'); ! uid = val.substring(0, idx); ! password = val.substring(idx + 1); ! } ! } ! WikiUser user = (WikiUser) ((uid == null) ? null : _wiki.getUser(uid)); ! if (user != null) { ! // udate the last accessed attribute for this user ! user.setAttribute("LastAccessed", new Date().toString()); ! user.setAttribute("IPAddress", wc.getRequest().getRemoteAddr()); ! _wiki.updateUser(user); ! } else { ! if (autoCreate) { ! Hashtable attributes = new Hashtable(); ! attributes.put("email", ""); ! attributes.put("firstname", uid); ! attributes.put("lastname", ""); ! attributes.put("comment", "Automatically created from single-sign-on username"); ! user = _wiki.registerUser(uid, "User " + uid, "", attributes); ! user.setAttribute("LastAccessed", new Date().toString()); ! user.setAttribute("IPAddress", wc.getRequest().getRemoteAddr()); ! _wiki.updateUser(user); ! } ! } ! return user; ! } catch (Exception e) { ! return null; ! } ! } ! /** ! * Respond to a request by getting the proper PageAction from our ! * PageActionManager ! * ! * @param wc Description of the Parameter ! * @return Description of the Return ! * Value ! * @exception HandlerException Description of the Exception ! * @exception PageAction.PageActionException Description of the Exception ! */ ! public final Template handle(WebContext wc) throws HandlerException, PageAction.PageActionException { ! String pageName = null; ! WikiPage wikiPage = null; + // who is trying to do something? + WikiUser user = getUser(wc); ! // which action wants to respond to this request? ! PageAction action = _actionManager.getAction(wc, user); ! // use the action to determine which WikiPage ! // we should be dealing with ! if (action != null) { ! pageName = action.getWikiPageName(_wiki, wc); ! } ! if (pageName != null) { ! wikiPage = _wiki.getPage(pageName); ! _log.notice("page: " + wikiPage); ! } ! // stuff the webcontext with useful stuff ! stuffContext(wc, wikiPage, user, pageName); ! if (action == null) { ! throw new HandlerException("Unable to find a PageAction to handle" ! + " this request."); ! } + // attempt to perform the action against the page + action.perform(_wiki, wc, user, wikiPage); ! // the action performed succes... [truncated message content] |
From: <dat...@us...> - 2003-02-17 18:36:33
|
Update of /cvsroot/webmacro/wiki/src/org/tcdi/opensource/wiki/search In directory sc8-pr-cvs1:/tmp/cvs-serv5418/src/org/tcdi/opensource/wiki/search Modified Files: Tag: christian LuceneFinder.java LuceneIndexer.java Log Message: All changes since moving the wiki cvs from Eric's server to SF. Index: LuceneFinder.java =================================================================== RCS file: /cvsroot/webmacro/wiki/src/org/tcdi/opensource/wiki/search/LuceneFinder.java,v retrieving revision 1.2.2.1 retrieving revision 1.2.2.2 diff -C2 -d -r1.2.2.1 -r1.2.2.2 *** LuceneFinder.java 18 Sep 2002 18:48:33 -0000 1.2.2.1 --- LuceneFinder.java 17 Feb 2003 18:36:26 -0000 1.2.2.2 *************** *** 32,40 **** import org.apache.lucene.analysis.de.GermanAnalyzer; import org.apache.lucene.document.Document; ! import org.apache.lucene.search.Searcher; import org.apache.lucene.search.IndexSearcher; import org.apache.lucene.search.Query; ! import org.apache.lucene.search.Hits; ! import org.apache.lucene.queryParser.QueryParser; import org.tcdi.opensource.wiki.*; --- 32,40 ---- import org.apache.lucene.analysis.de.GermanAnalyzer; import org.apache.lucene.document.Document; ! import org.apache.lucene.queryParser.QueryParser; ! import org.apache.lucene.search.Hits; import org.apache.lucene.search.IndexSearcher; import org.apache.lucene.search.Query; ! import org.apache.lucene.search.Searcher; import org.tcdi.opensource.wiki.*; *************** *** 49,143 **** * be searched. * ! *@author e_ridge ! *@created 8. September 2002 */ public class LuceneFinder implements WikiPageFinder { ! static Analyzer analyzer = new GermanAnalyzer(); ! /** ! * return an array of pages that match the <code>query</code>. The query is ! * implementation specific ! * ! *@param wiki Description of the Parameter ! *@param query Description of the Parameter ! *@return Description of the Return Value ! *@exception WikiPageFinder.FinderException Description of the Exception ! */ ! public WikiPageFinder.FindResult[] findPages(WikiSystem wiki, String query) throws WikiPageFinder.FinderException { ! try { ! Searcher searcher = null; ! //Analyzer analyzer = new StopAnalyzer(); ! String _query = "title:" + query + " keywords:" + query + "^2 " + query + "^3"; ! Query q = QueryParser.parse(_query, "text", analyzer); ! /* ! * QueryParser qp = new QueryParser("text", analyzer); ! * Query q = qp.parse("(title:" + query + ")^4 OR (keywords:" + query + ")^2 OR (text:" + query + ")"); ! * System.out.println("query: " + q); ! */ ! Hits hits = null; ! if (wiki.getBaseDir() != null) { ! searcher = new IndexSearcher(wiki.getBaseDir() + wiki.getProperties().getProperty("LuceneIndexer.IndexDirectory")); ! } else { ! searcher = new IndexSearcher(wiki.getProperties().getProperty("LuceneIndexer.IndexDirectory")); ! } ! hits = searcher.search(q); ! List pages = new ArrayList(); ! int size = hits.length(); ! for (int x = 0; x < size; x++) { ! String title = hits.doc(x).get("title"); ! if (title != null) { ! WikiPage page = wiki.getPage(title); ! if (page == null) { ! continue; ! } ! FindResult result = new FindResult(); ! result.page = page; ! result.score = Math.round(hits.score(x) * 100); ! result.preview = org.webmacro.util.HTMLEscaper.escape(hits.doc(x).get("text")); ! /* ! * boolean skip = false; ! * for (int y = 0; y < pages.size(); y++) { ! * FindResult fr = (FindResult) pages.get(y); ! * String tmp = fr.page.getTitle(); ! * if (tmp.equals(title)) { ! * fr.score += 1; ! * skip = true; ! * break; ! * } ! * } ! * if (skip) { ! * continue; ! * } ! */ ! pages.add(result); ! } ! } ! searcher.close(); ! WikiPageFinder.FindResult[] results = (FindResult[]) pages.toArray(new WikiPageFinder.FindResult[0]); ! /* ! * Arrays.sort(results, ! * new Comparator() { ! * public int compare(Object o1, Object o2) { ! * FindResult fr1 = (FindResult) o1; ! * FindResult fr2 = (FindResult) o2; ! * return (int) (fr2.score * 1000 - fr1.score * 1000); ! * } ! * }); ! */ ! return results; ! } catch (Exception e) { ! e.printStackTrace(); ! throw new WikiPageFinder.FinderException(e.toString()); ! } ! } } --- 49,146 ---- * be searched. * ! * @author e_ridge ! * @created 8. September 2002 */ public class LuceneFinder implements WikiPageFinder { ! static Analyzer analyzer = new GermanAnalyzer(); ! /** ! * return an array of pages that match the <code>query</code>. The query is ! * implementation specific ! * ! * @param wiki Description of the Parameter ! * @param query Description of the Parameter ! * @return Description of the Return ! * Value ! * @exception WikiPageFinder.FinderException Description of the Exception ! */ ! public WikiPageFinder.FindResult[] findPages(WikiSystem wiki, String query) throws WikiPageFinder.FinderException { ! try { ! Searcher searcher = null; ! //Analyzer analyzer = new StopAnalyzer(); ! String _query = null; ! if (query.indexOf(":") > 0) { ! _query = query; ! } else { ! _query = "title:" + query + " keywords:" + query + "^2 " + query + "^3"; ! } ! Query q = QueryParser.parse(_query, "text", analyzer); ! /* ! * QueryParser qp = new QueryParser("text", analyzer); ! * Query q = qp.parse("(title:" + query + ")^4 OR (keywords:" + query + ")^2 OR (text:" + query + ")"); ! * System.out.println("query: " + q); ! */ ! Hits hits = null; ! if (wiki.getBaseDir() != null) { ! searcher = new IndexSearcher(wiki.getBaseDir() + wiki.getProperties().getProperty("LuceneIndexer.IndexDirectory")); ! } else { ! searcher = new IndexSearcher(wiki.getProperties().getProperty("LuceneIndexer.IndexDirectory")); ! } ! hits = searcher.search(q); ! List pages = new ArrayList(); ! int size = hits.length(); ! for (int x = 0; x < size; x++) { ! String title = hits.doc(x).get("title"); ! if (title != null) { ! WikiPage page = wiki.getPage(title); ! if (page == null) { ! continue; ! } ! FindResult result = new FindResult(); ! result.page = page; ! result.score = Math.round(hits.score(x) * 100); ! result.preview = org.webmacro.util.HTMLEscaper.escape(hits.doc(x).get("text")); ! /* ! * boolean skip = false; ! * for (int y = 0; y < pages.size(); y++) { ! * FindResult fr = (FindResult) pages.get(y); ! * String tmp = fr.page.getTitle(); ! * if (tmp.equals(title)) { ! * fr.score += 1; ! * skip = true; ! * break; ! * } ! * } ! * if (skip) { ! * continue; ! * } ! */ ! pages.add(result); ! } ! } ! searcher.close(); ! WikiPageFinder.FindResult[] results = (FindResult[]) pages.toArray(new WikiPageFinder.FindResult[0]); ! Arrays.sort(results, ! new Comparator() { ! public int compare(Object o1, Object o2) { ! FindResult fr1 = (FindResult) o1; ! FindResult fr2 = (FindResult) o2; ! return (int) (fr2.score * 1000 - fr1.score * 1000); ! } ! }); ! return results; ! } catch (Exception e) { ! throw new WikiPageFinder.FinderException(e.toString()); ! } ! } } Index: LuceneIndexer.java =================================================================== RCS file: /cvsroot/webmacro/wiki/src/org/tcdi/opensource/wiki/search/LuceneIndexer.java,v retrieving revision 1.3.2.1 retrieving revision 1.3.2.2 diff -C2 -d -r1.3.2.1 -r1.3.2.2 *** LuceneIndexer.java 18 Sep 2002 18:48:33 -0000 1.3.2.1 --- LuceneIndexer.java 17 Feb 2003 18:36:27 -0000 1.3.2.2 *************** *** 27,39 **** import java.io.*; import java.util.Vector; import org.apache.lucene.index.IndexReader; import org.apache.lucene.index.IndexWriter; import org.apache.lucene.index.Term; - import org.apache.lucene.document.Document; - import org.apache.lucene.document.Field; - import org.apache.lucene.document.DateField; - import org.apache.lucene.analysis.Analyzer; - import org.apache.lucene.analysis.de.GermanAnalyzer; import org.tcdi.opensource.wiki.*; --- 27,39 ---- import java.io.*; import java.util.Vector; + import org.apache.lucene.analysis.Analyzer; + import org.apache.lucene.analysis.de.GermanAnalyzer; + import org.apache.lucene.document.DateField; + import org.apache.lucene.document.Document; + import org.apache.lucene.document.Field; import org.apache.lucene.index.IndexReader; import org.apache.lucene.index.IndexWriter; import org.apache.lucene.index.Term; import org.tcdi.opensource.wiki.*; *************** *** 50,222 **** * directory that is writeable by the owner of the running JVM. * ! *@author e_ridge ! *@created 8. September 2002 */ public class LuceneIndexer implements WikiPageIndexer { ! static Analyzer analyzer = new GermanAnalyzer(); ! private Vector _pageQueue = new Vector(); ! private WikiSystem _wiki = null; - /** - * Description of the Class - * - *@author christiana - *@created 18. September 2002 - */ - private class IndexThread extends Thread { - private LuceneIndexer _parent = null; - /** - * Constructor for the IndexThread object - * - *@param p Description of the Parameter - */ - public IndexThread(LuceneIndexer p) { - this._parent = p; - } - /** - * Main processing method for the IndexThread object - */ - public void run() { - boolean optimized = true; - File f = null; - while (true) { - if (_parent._pageQueue.size() != 0) { - if (f == null) { - if (_parent._wiki.getBaseDir() != null) { - f = new File(_parent._wiki.getBaseDir() + _parent._wiki.getProperties().getProperty("LuceneIndexer.IndexDirectory")); - } else { - f = new File(_parent._wiki.getProperties().getProperty("LuceneIndexer.IndexDirectory")); - } - } - WikiPage p = (WikiPage) _pageQueue.elementAt(0); - Document doc = createDocument(_parent._wiki, p); - if (doc != null) { - try { - IndexReader reader = IndexReader.open(f); - reader.delete(new Term("title", p.getTitle())); - reader.close(); ! IndexWriter writer = new IndexWriter(f, _parent.analyzer, ! !f.exists()); ! writer.addDocument(doc); ! writer.close(); ! } catch (IOException ioe) { ! ioe.printStackTrace(System.err); ! } finally { ! optimized = false; ! _pageQueue.removeElementAt(0); ! } - } - } else if (!optimized) { - //optimize the index - try { - IndexWriter writer = new IndexWriter(f, _parent.analyzer, - !f.exists()); - writer.optimize(); - writer.close(); - } catch (IOException ioe) { - ioe.printStackTrace(System.err); - } - optimized = true; - } - } - } - /** - * Description of the Method - * - *@param wiki Description of the Parameter - *@param page Description of the Parameter - *@return Description of the Return Value - */ - private Document createDocument(WikiSystem wiki, WikiPage page) { - Document doc = new Document(); - String tmp = null; ! // title ! tmp = page.getTitle(); ! if (tmp != null) { ! doc.add(Field.Keyword("title", tmp)); ! } ! // last modified date ! doc.add(Field.Keyword("modified", DateField.dateToString(page.getDateLastModified()))); ! // creation date ! doc.add(Field.Keyword("created", DateField.dateToString(page.getDateCreated()))); ! // author ! WikiUser user = wiki.getUser(page.getAuthor()); ! if (user != null) { ! doc.add(Field.Keyword("author", user.getName())); ! } ! // keywords (related titles) ! StringBuffer sb = new StringBuffer(128); ! String[] keywords = page.getRelatedTitles(); ! for (int x = 0; x < keywords.length; x++) { ! if (sb.length() > 0) { ! sb.append(" "); ! } ! sb.append(keywords[x]); ! } ! doc.add(Field.Text("keywords", sb.toString())); ! // the actual text of the page ! tmp = page.getUnparsedData(); ! if (tmp != null) { ! WikiPageRenderer renderer = new TextPageRenderer(new TextURLRenderer(), wiki); ! try { ! doc.add(Field.Text("text", renderer.render(page))); ! } catch (Exception e) { ! e.printStackTrace(); ! return null; ! } ! } ! return doc; ! } ! } - private IndexThread _indexer = new IndexThread(this); ! /** ! * Constructor for the LuceneIndexer object ! */ ! public LuceneIndexer() { ! this._indexer.start(); ! } ! /** ! * Description of the Method ! * ! *@param wiki Description of the Parameter ! *@param page Description of the Parameter ! *@exception WikiPageIndexer.IndexerException Description of the Exception ! */ ! public void index(WikiSystem wiki, WikiPage page) throws WikiPageIndexer.IndexerException { ! if (this._wiki == null) { ! this._wiki = wiki; ! } else { ! if (this._wiki != wiki) { ! throw new WikiPageIndexer.IndexerException("Using the same LuceneIndexer on multiple Wikis is not supported"); ! } ! } ! _pageQueue.add(page); ! } } --- 50,238 ---- * directory that is writeable by the owner of the running JVM. * ! * @author e_ridge ! * @created 8. September 2002 */ public class LuceneIndexer implements WikiPageIndexer { ! private IndexThread _indexer = new IndexThread(this); ! private Vector _pageQueue = new Vector(); ! private WikiSystem _wiki = null; + static Analyzer analyzer = new GermanAnalyzer(); + /** + * Constructor for the LuceneIndexer object + */ + public LuceneIndexer() { + this._indexer.start(); + } + /** + * Description of the Method + * + * @param wiki Description of the Parameter + * @param page Description of the Parameter + * @exception WikiPageIndexer.IndexerException Description of the Exception + */ + public void index(WikiSystem wiki, WikiPage page) throws WikiPageIndexer.IndexerException { + if (this._wiki == null) { + this._wiki = wiki; + } else { + if (this._wiki != wiki) { + throw new WikiPageIndexer.IndexerException("Using the same LuceneIndexer on multiple Wikis is not supported"); + } + } + _pageQueue.add(page); + } ! /** ! * Description of the Class ! * ! * @author christiana ! * @created 18. September 2002 ! */ ! private class IndexThread extends Thread { ! private LuceneIndexer _parent = null; + /** + * Constructor for the IndexThread object + * + * @param p Description of the Parameter + */ + public IndexThread(LuceneIndexer p) { + this._parent = p; + } ! /** ! * Description of the Method ! * ! * @param wiki Description of the Parameter ! * @param page Description of the Parameter ! * @return Description of the Return Value ! */ ! private Document createDocument(WikiSystem wiki, WikiPage page) { ! Document doc = new Document(); ! String tmp = null; ! // title ! tmp = page.getTitle(); ! if (tmp != null) { ! doc.add(Field.Keyword("title", tmp)); ! } ! // last modified date ! doc.add(Field.Keyword("modified", DateField.dateToString(page.getDateLastModified()))); ! // creation date ! doc.add(Field.Keyword("created", DateField.dateToString(page.getDateCreated()))); ! // author ! WikiUser user = wiki.getUser(page.getAuthor()); ! if (user != null) { ! doc.add(Field.Keyword("author", user.getName())); ! } ! // keywords (related titles) ! StringBuffer sb = new StringBuffer(128); ! String[] keywords = page.getRelatedTitles(); ! for (int x = 0; x < keywords.length; x++) { ! if (sb.length() > 0) { ! sb.append(" "); ! } ! sb.append(keywords[x]); ! } ! doc.add(Field.Text("keywords", sb.toString())); ! // the actual text of the page ! tmp = page.getUnparsedData(); ! if (tmp != null) { ! WikiPageRenderer renderer = new TextPageRenderer(new TextURLRenderer(), wiki); ! try { ! doc.add(Field.Text("text", renderer.render(page))); ! } catch (Exception e) { ! e.printStackTrace(); ! return null; ! } ! } + return doc; + } + /** + * Main processing method for the IndexThread object + */ + public void run() { + boolean optimized = true; + File f = null; + boolean running = true; + while (running) { + if (_parent._pageQueue.size() != 0) { + if (f == null) { + if (_parent._wiki.getBaseDir() != null) { + f = new File(_parent._wiki.getBaseDir() + _parent._wiki.getProperties().getProperty("LuceneIndexer.IndexDirectory")); + } else { + f = new File(_parent._wiki.getProperties().getProperty("LuceneIndexer.IndexDirectory")); + } + } + WikiPage p = (WikiPage) _pageQueue.elementAt(0); + Document doc = createDocument(_parent._wiki, p); + if (doc != null) { + IndexWriter writer = null; + try { + IndexReader reader = IndexReader.open(f); + reader.delete(new Term("title", p.getTitle())); + reader.close(); ! writer = new IndexWriter(f, _parent.analyzer, ! !f.exists()); ! writer.addDocument(doc); ! writer.close(); ! } catch (IOException ioe) { ! ioe.printStackTrace(System.err); ! } finally { ! optimized = false; ! _pageQueue.removeElementAt(0); ! try { ! writer.close(); ! } catch (Exception e) {} + } ! } ! } else if (!optimized) { ! //optimize the index ! IndexWriter writer = null; ! try { ! writer = new IndexWriter(f, _parent.analyzer, ! !f.exists()); ! writer.optimize(); ! writer.close(); ! } catch (IOException ioe) { ! ioe.printStackTrace(System.err); ! } finally { ! try { ! writer.close(); ! } catch (Exception e) {} ! ! } ! optimized = true; ! } ! try { ! Thread.sleep(100); ! } catch (InterruptedException i) { ! running = false; ! } ! } ! } ! } } |
From: <dat...@us...> - 2003-02-17 18:36:33
|
Update of /cvsroot/webmacro/wiki/src/org/tcdi/opensource/wiki In directory sc8-pr-cvs1:/tmp/cvs-serv5418/src/org/tcdi/opensource/wiki Modified Files: Tag: christian Wiki.java WikiData.java WikiPage.java Log Message: All changes since moving the wiki cvs from Eric's server to SF. Index: Wiki.java =================================================================== RCS file: /cvsroot/webmacro/wiki/src/org/tcdi/opensource/wiki/Wiki.java,v retrieving revision 1.7.2.1 retrieving revision 1.7.2.2 diff -C2 -d -r1.7.2.1 -r1.7.2.2 *** Wiki.java 18 Sep 2002 18:57:12 -0000 1.7.2.1 --- Wiki.java 17 Feb 2003 18:36:28 -0000 1.7.2.2 *************** *** 25,28 **** --- 25,33 ---- package org.tcdi.opensource.wiki; + import java.io.ByteArrayInputStream; + import java.io.FileInputStream; + import java.io.InputStream; + import java.util.*; + import org.opendoors.instant.vlh.VLHProvider; import org.opendoors.intf.QueueListener; [...1179 lines suppressed...] + } ! try { ! indexPage(page); ! } catch (Exception e) { ! e.printStackTrace(); ! } ! } ! /** ! * Description of the Method ! * ! * @param user Description of the Parameter ! */ ! public void updateUser(WikiUser user) { ! _userStore.put(user.getIdentifier(), user); ! } } Index: WikiData.java =================================================================== RCS file: /cvsroot/webmacro/wiki/src/org/tcdi/opensource/wiki/WikiData.java,v retrieving revision 1.1.1.1 retrieving revision 1.1.1.1.2.1 diff -C2 -d -r1.1.1.1 -r1.1.1.1.2.1 *** WikiData.java 30 Sep 2001 08:28:27 -0000 1.1.1.1 --- WikiData.java 17 Feb 2003 18:36:28 -0000 1.1.1.1.2.1 *************** *** 1,41 **** ! /** ! * The contents of this file are subject to the Mozilla Public ! * License Version 1.1 (the "License"); you may not use this file ! * except in compliance with the License. You may obtain a copy of ! * the License at http://www.mozilla.org/MPL/ ! * ! * Software distributed under the License is distributed on an "AS ! * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or ! * implied. See the License for the specific language governing ! * rights and limitations under the License. ! * ! * The Original Code is Wiki. ! * ! * The Initial Developer of the Original Code is Technology Concepts ! * and Design, Inc. ! * Copyright (C) 2000 Technology Concepts and Design, Inc. All ! * Rights Reserved. ! * ! * Contributor(s): Lane Sharman (OpenDoors Software) ! * Justin Wells (Semiotek Inc.) ! * Eric B. Ridge (Technology Concepts and Design, Inc.) ! * ! * Alternatively, the contents of this file may be used under the ! * terms of the GNU General Public License Version 2 or later (the ! * "GPL"), in which case the provisions of the GPL are applicable ! * instead of those above. If you wish to allow use of your ! * version of this file only under the terms of the GPL and not to ! * allow others to use your version of this file under the MPL, ! * indicate your decision by deleting the provisions above and ! * replace them with the notice and other provisions required by ! * the GPL. If you do not delete the provisions above, a recipient ! * may use your version of this file under either the MPL or the ! * GPL. ! * ! * ! * This product includes sofware developed by OpenDoors Software. ! * ! * This product includes software developed by Justin Wells and Semiotek Inc. ! * for use in the WebMacro ServletFramework (http://www.webmacro.org). */ package org.tcdi.opensource.wiki; --- 1,25 ---- ! /** ! * The contents of this file are subject to the Mozilla Public License Version ! * 1.1 (the "License"); you may not use this file except in compliance with the ! * License. You may obtain a copy of the License at http://www.mozilla.org/MPL/ ! * Software distributed under the License is distributed on an "AS IS" basis, ! * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License for ! * the specific language governing rights and limitations under the License. ! * The Original Code is Wiki. The Initial Developer of the Original Code is ! * Technology Concepts and Design, Inc. Copyright (C) 2000 Technology Concepts ! * and Design, Inc. All Rights Reserved. Contributor(s): Lane Sharman ! * (OpenDoors Software) Justin Wells (Semiotek Inc.) Eric B. Ridge (Technology ! * Concepts and Design, Inc.) Alternatively, the contents of this file may be ! * used under the terms of the GNU General Public License Version 2 or later ! * (the "GPL"), in which case the provisions of the GPL are applicable instead ! * of those above. If you wish to allow use of your version of this file only ! * under the terms of the GPL and not to allow others to use your version of ! * this file under the MPL, indicate your decision by deleting the provisions ! * above and replace them with the notice and other provisions required by the ! * GPL. If you do not delete the provisions above, a recipient may use your ! * version of this file under either the MPL or the GPL. This product includes ! * sofware developed by OpenDoors Software. This product includes software ! * developed by Justin Wells and Semiotek Inc. for use in the WebMacro ! * ServletFramework (http://www.webmacro.org). */ package org.tcdi.opensource.wiki; *************** *** 44,162 **** /** ! * A WikiData object contains an individual piece of data (usually just a java.lang.String) and ! * has a type. ! * ! * WikiData is usually used as an array from the WikiPage object. ! * ! * @author Eric B. Ridge */ ! public class WikiData implements Serializable ! { ! /** ! * @deprecated these constants have been replaced by constants in WikiDataTypes. Their values should be ignored ! */ ! public static final int TYPE_UNKNOWN = -1; ! ! /** ! * @deprecated these constants have been replaced by constants in WikiDataTypes. Their values should be ignored ! */ ! public static final int TYPE_PAGE_REFERENCE = 0; ! /** ! * @deprecated these constants have been replaced by constants in WikiDataTypes. Their values should be ignored ! */ ! public static final int TYPE_PLAIN_TEXT = 1; ! ! /** ! * @deprecated these constants have been replaced by constants in WikiDataTypes. Their values should be ignored ! */ ! public static final int TYPE_USER = 1000; ! ! private Object _text; ! private int _type = WikiDataTypes.PLAIN_TEXT; ! static final long serialVersionUID = 0L; ! ! ! // ! // constructors ! // ! ! /** ! * Empty constructor. Does nothing. ! */ ! public WikiData () { ; } ! ! /** ! * Constructor to set data and type ! * ! * @param text the data of this object ! * @param type this object's type ! */ ! public WikiData (Object text, int type) ! { ! _text = text; ! _type = type; ! } ! ! // ! // get methods ! // ! ! /** ! * @return the data from this object ! */ ! public Object getData () { return _text; } ! ! /** ! * @return this object's type ! */ ! public int getType () { return _type; } ! ! // ! // set methods ! // ! ! /** ! * Set the data for this object ! * @param new_text the data to set ! */ ! public void setData (Object data) { _text = data; } ! /** ! * Set the type for this object ! * @param new_type the type of this object ! */ ! public void setType (int new_type) { _type = new_type; } ! ! ! // ! // other methods ! // ! ! /** ! * is this data object a reference to another page? ! */ ! public boolean isPageReference () { return _type == WikiDataTypes.PAGE_REFERENCE; } - /** - * is this data object plain text? - */ - public boolean isText () { return _type == WikiDataTypes.PLAIN_TEXT; } - - /** - * is this data object of the type specified? - * - * @param t the type to test for - * - * @return true if object is of specified type - */ - public boolean isOfType (int type) { return _type == type; } - - - /** - * Overloaded to return the toString() value of the internal data structure - */ - public String toString () { return _text.toString (); } - } --- 28,180 ---- /** ! * A WikiData object contains an individual piece of data (usually just a ! * java.lang.String) and has a type. WikiData is usually used as an array from ! * the WikiPage object. ! * ! *@author Eric B. Ridge ! *@created 20. September 2002 */ ! public class WikiData implements Serializable { ! /** ! *@deprecated these constants have been replaced by constants in ! * WikiDataTypes. Their values should be ignored ! */ ! public final static int TYPE_UNKNOWN = -1; ! /** ! *@deprecated these constants have been replaced by constants in ! * WikiDataTypes. Their values should be ignored ! */ ! public final static int TYPE_PAGE_REFERENCE = 0; ! /** ! *@deprecated these constants have been replaced by constants in ! * WikiDataTypes. Their values should be ignored ! */ ! public final static int TYPE_PLAIN_TEXT = 1; ! /** ! *@deprecated these constants have been replaced by constants in ! * WikiDataTypes. Their values should be ignored ! */ ! public final static int TYPE_USER = 1000; ! ! private Object _text; ! private int _type = WikiDataTypes.PLAIN_TEXT; ! ! final static long serialVersionUID = 0L; ! ! ! // ! // constructors ! // ! ! /** ! * Empty constructor. Does nothing. ! */ ! public WikiData() { ! ; ! } ! ! ! /** ! * Constructor to set data and type ! * ! *@param text the data of this object ! *@param type this object's type ! */ ! public WikiData(Object text, int type) { ! _text = text; ! _type = type; ! } ! ! ! // ! // get methods ! // ! ! /** ! *@return the data from this object ! */ ! public Object getData() { ! return _text; ! } ! ! ! /** ! *@return this object's type ! */ ! public int getType() { ! return _type; ! } ! ! ! // ! // set methods ! // ! ! /** ! * Set the data for this object ! * ! *@param data The new data value ! */ ! public void setData(Object data) { ! _text = data; ! } ! ! ! /** ! * Set the type for this object ! * ! *@param new_type the type of this object ! */ ! public void setType(int new_type) { ! _type = new_type; ! } ! ! ! // ! // other methods ! // ! ! /** ! * is this data object a reference to another page? ! * ! *@return The pageReference value ! */ ! public boolean isPageReference() { ! return _type == WikiDataTypes.PAGE_REFERENCE; ! } ! ! ! /** ! * is this data object plain text? ! * ! *@return The text value ! */ ! public boolean isText() { ! return _type == WikiDataTypes.PLAIN_TEXT; ! } ! ! ! /** ! * is this data object of the type specified? ! * ! *@param type Description of the Parameter ! *@return true if object is of specified type ! */ ! public boolean isOfType(int type) { ! return _type == type; ! } ! ! ! /** ! * Overloaded to return the toString() value of the internal data structure ! * ! *@return Description of the Return Value ! */ ! public String toString() { ! return _text != null ? _text.toString() : ""; ! } } Index: WikiPage.java =================================================================== RCS file: /cvsroot/webmacro/wiki/src/org/tcdi/opensource/wiki/WikiPage.java,v retrieving revision 1.1.1.1.2.1 retrieving revision 1.1.1.1.2.2 diff -C2 -d -r1.1.1.1.2.1 -r1.1.1.1.2.2 *** WikiPage.java 18 Sep 2002 18:53:55 -0000 1.1.1.1.2.1 --- WikiPage.java 17 Feb 2003 18:36:28 -0000 1.1.1.1.2.2 *************** *** 24,30 **** */ package org.tcdi.opensource.wiki; import java.util.*; - import java.io.Serializable; import org.tcdi.opensource.util.*; --- 24,30 ---- */ package org.tcdi.opensource.wiki; + import java.io.Serializable; import java.util.*; import org.tcdi.opensource.util.*; *************** *** 36,39 **** --- 36,43 ---- * * + * + * + * + * *<li> date it was created * <li> author who created reated it *************** *** 460,463 **** --- 464,468 ---- public void setWikiData(WikiData[] data) { _parsedData = data; + updateOutgoingLinks(_parsedData); } *************** *** 494,497 **** --- 499,514 ---- public String toString() { return _title; + } + + + private void updateOutgoingLinks(WikiData[] data) { + System.out.println("Recreating outgoing links for page " + this.getTitle()); + _outgoingLinks = new String[0]; + for (int i = 0; i < data.length; i++) { + if ((data[i].getType() == WikiDataTypes.PAGE_REFERENCE) || + (data[i].getType() == WikiDataTypes.URL)) { + addOutgoingLink(data[i].toString()); + } + } } } |
From: <dat...@us...> - 2003-02-17 18:35:17
|
Update of /cvsroot/webmacro/wiki In directory sc8-pr-cvs1:/tmp/cvs-serv4600 Modified Files: Tag: christian build.xml Log Message: Simplified build file; running 'ant' will create default wiki web application plus *.war file for easy deployment. To build another config, override site.name with 'ant -Dsite.name=www.webmacro.org' Index: build.xml =================================================================== RCS file: /cvsroot/webmacro/wiki/build.xml,v retrieving revision 1.8.2.1 retrieving revision 1.8.2.2 diff -C2 -d -r1.8.2.1 -r1.8.2.2 *** build.xml 18 Sep 2002 18:14:57 -0000 1.8.2.1 --- build.xml 17 Feb 2003 18:35:12 -0000 1.8.2.2 *************** *** 1,71 **** ! <project name="wiki" default="install" basedir="."> ! <property name="site.name" value="reference.arinso.de" /> ! <property name="dir.install" value="/C:/" /> ! <property name="app.name" value="wiki" /> ! <property name="dir.class" value="./class" /> ! <property name="dir.src" value="./src" /> ! <property name="dir.lib" value="./lib" /> ! <property name="dir.lib.build" value="./lib.build" /> ! ! <property name="file.jar" value="./wiki.jar" /> ! ! <path id="path.class"> ! <fileset dir="${dir.lib}"> ! <include name="*.jar" /> ! <include name="*.zip" /> ! </fileset> ! <fileset dir="${dir.lib.build}"> ! <include name="*.jar" /> ! <include name="*.zip" /> ! </fileset> ! </path> ! ! <target name="prepare"> ! <mkdir dir="${dir.class}" /> </target> <target name="clean"> ! <delete dir="${dir.class}" /> ! <delete file="${file.jar}" /> </target> ! <target name="compile" depends="prepare"> ! <!-- <javacc target="${dir.src}/org/tcdi/opensource/wiki/parser/wiki.jj" javacchome="." /> ! --> ! <javac destdir="${dir.class}" debug="on" optimize="on" ! deprecation="on" ! > <src path="${dir.src}" /> ! <classpath refid="path.class" /> </javac> </target> ! <target name="jar" depends="prepare,compile"> ! <jar jarfile="${file.jar}" ! basedir="${dir.class}" ! /> ! </target> ! ! <target name="verify.dir.install" unless="dir.install"> ! <fail message="Please define dir.install" /> ! </target> ! <target name="verify.site.name" unless="site.name"> ! <fail message="Please specify the site.name to install" /> ! </target> ! ! <target name="install" depends="verify.dir.install,verify.site.name,prepare,compile,jar"> ! <ant antfile="build.xml" ! inheritAll="false" ! dir="builds/${site.name}/"> ! <property name="dir.install" value="${dir.install}" /> ! </ant> </target> - </project> --- 1,59 ---- ! <project name="wiki" default="jar" basedir="."> ! <property name="site.name.default" value="default" /> ! <property name="site.name" value="${site.name.default}" /> ! <property name="build" value="builds" /> ! <property name="dir.src" value="src" /> ! <property name="dir.resource" value="resources" /> ! ! <property name="dir.lib" value="lib" /> ! <target name="init"> ! <tstamp /> ! <mkdir dir="${build}/${site.name}/WEB-INF/classes" /> </target> <target name="clean"> ! <delete dir="${build}" /> </target> + + <target name="copy" depends="init"> + <copy todir="${build}/${site.name}"> + <fileset dir="${dir.resource}/${site.name.default}"/> + </copy> + <copy todir="${build}/${site.name}" overwrite="true"> + <fileset dir="${dir.resource}/${site.name}"/> + </copy> + </target> ! <target name="javacc" depends="copy" if="compile_cc"> <javacc target="${dir.src}/org/tcdi/opensource/wiki/parser/wiki.jj" javacchome="." /> ! </target> ! ! <target name="compile" depends="copy"> ! <property name="build.classes" value="${build}${file.separator}${site.name}${file.separator}WEB-INF${file.separator}classes" /> ! <delete file="${build}/${site.name}/WEB-INF/lib/wiki.jar"/> ! <javac destdir="${build.classes}" debug="on" optimize="on" ! deprecation="on" > <src path="${dir.src}" /> ! <classpath> ! <fileset dir="${dir.lib}"> ! <include name="*.jar" /> ! </fileset> ! <fileset dir="${build}/${site.name}/WEB-INF/lib"> ! <include name="*.jar" /> ! </fileset> ! </classpath> </javac> </target> ! <target name="jar" depends="compile"> ! <jar jarfile="${build}${file.separator}${site.name}${file.separator}WEB-INF${file.separator}lib${file.separator}wiki.jar" basedir="${build.classes}" /> ! <delete dir="${build.classes}"/> ! <jar jarfile="${build}${file.separator}${site.name}.war" basedir="${build}${file.separator}${site.name}"/> </target> </project> |
From: <dat...@us...> - 2003-02-17 18:31:09
|
Update of /cvsroot/webmacro/wiki/resources/default/WEB-INF In directory sc8-pr-cvs1:/tmp/cvs-serv535/WEB-INF Modified Files: Tag: christian web.xml Added Files: Tag: christian WebMacro.properties Log Message: Initial version for out-of-the-box wiki compatible to Tomcat 3.x and up --- NEW FILE: WebMacro.properties --- Servlet22Broker.TemplateLocation=/WEB-INF/templates Index: web.xml =================================================================== RCS file: /cvsroot/webmacro/wiki/resources/default/WEB-INF/Attic/web.xml,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** web.xml 17 Feb 2003 14:17:02 -0000 1.1.2.1 --- web.xml 17 Feb 2003 18:31:05 -0000 1.1.2.2 *************** *** 1,6 **** <web-app> ! <servlet-mapping url-regexp='^[^\.]+$' servlet-name='WikiServlet' /> ! <servlet servlet-name='WikiServlet' servlet-class='org.tcdi.opensource.wiki.servlet.WikiServlet'> ! <init-param properties='@INSTALL_DIR@/deploy/WEB-INF/Wiki.properties' /> </servlet> ! </web-app> \ No newline at end of file --- 1,21 ---- + <!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.2//EN" + "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd"> + <web-app> ! <display-name>wiki</display-name> ! <description>Web based content management</description> ! <servlet> ! <servlet-name>WikiServlet</servlet-name> ! <display-name>Main wiki servlet</display-name> ! <servlet-class>org.tcdi.opensource.wiki.servlet.WikiServlet</servlet-class> ! <init-param> ! <param-name>properties</param-name> ! <param-value>/WEB-INF/Wiki.properties</param-value> ! </init-param> ! <load-on-startup>1</load-on-startup> </servlet> ! <servlet-mapping> ! <servlet-name>WikiServlet</servlet-name> ! <url-pattern>/*</url-pattern> ! </servlet-mapping> ! </web-app> |
From: <dat...@us...> - 2003-02-17 18:31:08
|
Update of /cvsroot/webmacro/wiki/resources/default/WEB-INF/templates In directory sc8-pr-cvs1:/tmp/cvs-serv535/WEB-INF/templates Modified Files: Tag: christian header.wm Added Files: Tag: christian index_admin.wm reloadprops.wm welcome.wm Log Message: Initial version for out-of-the-box wiki compatible to Tomcat 3.x and up --- NEW FILE: index_admin.wm --- #parse "header.wm" This will be Lucene Index administration. #parse "footer.wm" --- NEW FILE: reloadprops.wm --- #parse "header.wm" .props wurden neu geladen. #parse "footer.wm" --- NEW FILE: welcome.wm --- #set $PageName = "Welcome to Wiki" #parse "header.wm" Welcome to Wiki. This will be the nice welcome page to get you started with your Wiki. #parse "footer.wm" Index: header.wm =================================================================== RCS file: /cvsroot/webmacro/wiki/resources/default/WEB-INF/templates/Attic/header.wm,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** header.wm 17 Feb 2003 14:17:04 -0000 1.1.2.1 --- header.wm 17 Feb 2003 18:31:04 -0000 1.1.2.2 *************** *** 39,43 **** <td class="HeaderLeft" valign=middle nowrap width="40"> ! <a href="WebMacro" title="WebMacro Homepage"><img align=middle src=images/fish-small.gif width=48 height=44 border=0></a> </td> <td class="HeaderLeft" valign=top nowrap><span class="PageTitle"> </span></td> --- 39,43 ---- <td class="HeaderLeft" valign=middle nowrap width="40"> ! </td> <td class="HeaderLeft" valign=top nowrap><span class="PageTitle"> </span></td> |
From: <dat...@us...> - 2003-02-17 18:29:40
|
Update of /cvsroot/webmacro/wiki/resources/default/WEB-INF In directory sc8-pr-cvs1:/tmp/cvs-serv31868/WEB-INF Modified Files: Tag: christian Wiki.properties Log Message: More generic wiki settings for default Index: Wiki.properties =================================================================== RCS file: /cvsroot/webmacro/wiki/resources/default/WEB-INF/Attic/Wiki.properties,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** Wiki.properties 17 Feb 2003 14:17:02 -0000 1.1.2.1 --- Wiki.properties 17 Feb 2003 18:29:35 -0000 1.1.2.2 *************** *** 37,54 **** # format: # WikiPageTitle: webmacro-template.wm ! WebMacro: webmacro.wm # Lucene Indexer options ! LuceneIndexer.IndexDirectory: @INSTALL_DIR@/index/ ReIndex: false - - # who are the administrators? # administrators are allowed to do user-administration stuff ! Administrators: e_ridge;lane;justin;BrianGoetz; --- 37,54 ---- # format: # WikiPageTitle: webmacro-template.wm ! WelcomePage: welcome.wm # Lucene Indexer options ! LuceneIndexer.IndexDirectory: /WEB-INF/index/ ReIndex: false # who are the administrators? # administrators are allowed to do user-administration stuff ! Administrators: admin; + # who are the moderators? + Moderators: admin; *************** *** 64,73 **** # what is the default page to display ! StartPage: WebMacro # Properties for PageStore ! PageStore.Server: @INSTALL_DIR@/VLH PageStore.Port: 1998 PageStore.PartitionKey: Pages-WebMacro --- 64,73 ---- # what is the default page to display ! StartPage: WelcomePage # Properties for PageStore ! PageStore.Server: /WEB-INF/VLH PageStore.Port: 1998 PageStore.PartitionKey: Pages-WebMacro *************** *** 75,84 **** PageStore.MutableCertificate: private write certificate: la;skfjqpowieutr;aslkfdjja ;slkdfjq;owieurpqowiurep oiw3u4rquwyequw45y9q7233r089 23qurpwjhasdf PageStore.ProxyImplementation: org.opendoors.instant.vlh.client.LocalProxyImpl ! PageStore.Creator: Eric # Properties for UserStore ! UserStore.Server: @INSTALL_DIR@/VLH UserStore.Port: 1998 UserStore.PartitionKey: Users-WebMacro --- 75,84 ---- PageStore.MutableCertificate: private write certificate: la;skfjqpowieutr;aslkfdjja ;slkdfjq;owieurpqowiurep oiw3u4rquwyequw45y9q7233r089 23qurpwjhasdf PageStore.ProxyImplementation: org.opendoors.instant.vlh.client.LocalProxyImpl ! PageStore.Creator: admin # Properties for UserStore ! UserStore.Server: /WEB-INF/VLH UserStore.Port: 1998 UserStore.PartitionKey: Users-WebMacro *************** *** 86,90 **** UserStore.MutableCertificate: private write certificate:qpw84o5qp3oweuifypfqowe4urp2qiu3yrpqiwueyr[2i3u51p28o3759-1082eqwrupoi wqehp`ou1 3hq[90u[if;s[ UserStore.ProxyImplementation: org.opendoors.instant.vlh.client.LocalProxyImpl ! UserStore.Creator=Eric --- 86,90 ---- UserStore.MutableCertificate: private write certificate:qpw84o5qp3oweuifypfqowe4urp2qiu3yrpqiwueyr[2i3u51p28o3759-1082eqwrupoi wqehp`ou1 3hq[90u[if;s[ UserStore.ProxyImplementation: org.opendoors.instant.vlh.client.LocalProxyImpl ! UserStore.Creator=admin |
From: <dat...@us...> - 2003-02-17 18:28:58
|
Update of /cvsroot/webmacro/wiki/resources/default/WEB-INF/lib In directory sc8-pr-cvs1:/tmp/cvs-serv30817/WEB-INF/lib Modified Files: Tag: christian webmacro.jar Log Message: Upgraded to WM 1.1 final Index: webmacro.jar =================================================================== RCS file: /cvsroot/webmacro/wiki/resources/default/WEB-INF/lib/Attic/webmacro.jar,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 Binary files /tmp/cvsGegFV2 and /tmp/cvsU5HEIX differ |
From: Christian A. <chr...@wi...> - 2003-02-17 14:27:07
|
I'm very sorry to realize that it was me who caused that mail storm - I wasn't subscribed to this cvs list before and didn't realize that every single cvs operation even on side branches (!) would create email to somebody. I apologize for this. - Christian -- Christian Aust mailto:chr...@wi... icq: 84500990 - Yahoo!: datenimperator - MSN: datenimperator PGP: A073 F9CD 2F23 25D2 EB95 E7A3 B9B4 2AF3 E103 DB5A |
From: <dat...@us...> - 2003-02-17 14:20:31
|
Update of /cvsroot/webmacro/wiki In directory sc8-pr-cvs1:/tmp/cvs-serv30420 Modified Files: Tag: christian .cvsignore Log Message: Added builds directory to list of ignored files, it's contents will be generated Index: .cvsignore =================================================================== RCS file: /cvsroot/webmacro/wiki/Attic/.cvsignore,v retrieving revision 1.1.2.1 retrieving revision 1.1.2.2 diff -C2 -d -r1.1.2.1 -r1.1.2.2 *** .cvsignore 18 Sep 2002 18:59:00 -0000 1.1.2.1 --- .cvsignore 17 Feb 2003 14:20:25 -0000 1.1.2.2 *************** *** 1,5 **** ! builds/*.jar ! class ! *.jar ! ! --- 1,3 ---- ! builds ! class ! *.jar |
Update of /cvsroot/webmacro/wiki/builds/www.defaultserver.org/templates In directory sc8-pr-cvs1:/tmp/cvs-serv29370/www.defaultserver.org/templates Removed Files: Tag: christian adminoptionsbar.wm browsepage.wm delete.wm edit.wm error.wm findresults.wm footer.wm header.wm leftmenu.wm login.wm optionsbar.wm recentchanges.wm register.wm related_pages.wm user_admin.wm view.wm Log Message: Moved files to corresponding places under resources/... --- adminoptionsbar.wm DELETED --- --- browsepage.wm DELETED --- --- delete.wm DELETED --- --- edit.wm DELETED --- --- error.wm DELETED --- --- findresults.wm DELETED --- --- footer.wm DELETED --- --- header.wm DELETED --- --- leftmenu.wm DELETED --- --- login.wm DELETED --- --- optionsbar.wm DELETED --- --- recentchanges.wm DELETED --- --- register.wm DELETED --- --- related_pages.wm DELETED --- --- user_admin.wm DELETED --- --- view.wm DELETED --- |
From: <dat...@us...> - 2003-02-17 14:18:43
|
Update of /cvsroot/webmacro/wiki/builds/www.webmacro.org/htdocs/images In directory sc8-pr-cvs1:/tmp/cvs-serv29370/www.webmacro.org/htdocs/images Removed Files: Tag: christian fish-normal.gif fish-small.gif fishy.gif Log Message: Moved files to corresponding places under resources/... --- fish-normal.gif DELETED --- --- fish-small.gif DELETED --- --- fishy.gif DELETED --- |
From: <dat...@us...> - 2003-02-17 14:18:43
|
Update of /cvsroot/webmacro/wiki/builds/www.webmacro.org In directory sc8-pr-cvs1:/tmp/cvs-serv29370/www.webmacro.org Removed Files: Tag: christian build.xml Log Message: Moved files to corresponding places under resources/... --- build.xml DELETED --- |
From: <dat...@us...> - 2003-02-17 14:18:43
|
Update of /cvsroot/webmacro/wiki/builds/www.webmacro.org/htdocs In directory sc8-pr-cvs1:/tmp/cvs-serv29370/www.webmacro.org/htdocs Removed Files: Tag: christian site-style.css Log Message: Moved files to corresponding places under resources/... --- site-style.css DELETED --- |
Update of /cvsroot/webmacro/wiki/builds/www.webmacro.org/templates In directory sc8-pr-cvs1:/tmp/cvs-serv29370/www.webmacro.org/templates Removed Files: Tag: christian adminoptionsbar.wm delete.wm edit.wm error.wm findresults.wm footer.wm header.wm leftmenu.wm login.wm optionsbar.wm recentchanges.wm register.wm related_pages.wm user_admin.wm view.wm webmacro.wm Log Message: Moved files to corresponding places under resources/... --- adminoptionsbar.wm DELETED --- --- delete.wm DELETED --- --- edit.wm DELETED --- --- error.wm DELETED --- --- findresults.wm DELETED --- --- footer.wm DELETED --- --- header.wm DELETED --- --- leftmenu.wm DELETED --- --- login.wm DELETED --- --- optionsbar.wm DELETED --- --- recentchanges.wm DELETED --- --- register.wm DELETED --- --- related_pages.wm DELETED --- --- user_admin.wm DELETED --- --- view.wm DELETED --- --- webmacro.wm DELETED --- |
From: <dat...@us...> - 2003-02-17 14:18:43
|
Update of /cvsroot/webmacro/wiki/builds/www.defaultserver.org/htdocs In directory sc8-pr-cvs1:/tmp/cvs-serv29370/www.defaultserver.org/htdocs Removed Files: Tag: christian site-style.css Log Message: Moved files to corresponding places under resources/... --- site-style.css DELETED --- |