You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jspwiki.apache.org by aj...@apache.org on 2008/09/07 05:32:11 UTC
svn commit: r692770 [2/2] - in
/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH: ./ etc/
etc/db/hsql/ etc/db/postgresql/ etc/i18n/ etc/i18n/templates/ etc/ini/
src/com/ecyrd/jspwiki/ src/com/ecyrd/jspwiki/action/
src/com/ecyrd/jspwiki/auth/ src/c...
Modified: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/com/ecyrd/jspwiki/ui/WikiServletFilter.java
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/com/ecyrd/jspwiki/ui/WikiServletFilter.java?rev=692770&r1=692769&r2=692770&view=diff
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/com/ecyrd/jspwiki/ui/WikiServletFilter.java (original)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/com/ecyrd/jspwiki/ui/WikiServletFilter.java Sat Sep 6 20:32:08 2008
@@ -51,7 +51,6 @@
* this method contains all of the logic needed to grab any user login credentials set
* by the container or by cookies.
*
- * @author Janne Jalkanen
* @author Andrew Jaquith
*
*/
@@ -60,6 +59,9 @@
protected static final Logger log = Logger.getLogger( WikiServletFilter.class );
protected WikiEngine m_engine = null;
+ /**
+ * Creates a Wiki Servlet Filter.
+ */
public WikiServletFilter()
{
super();
@@ -67,6 +69,9 @@
/**
* Initializes the WikiServletFilter.
+ *
+ * @param config The FilterConfig.
+ * @throws ServletException If a WikiEngine cannot be started.
*/
public void init( FilterConfig config ) throws ServletException
{
@@ -89,8 +94,10 @@
* {@link WikiRequestWrapper}.
* @param request the current HTTP request object
* @param response the current HTTP response object
+ * @param chain The Filter chain passed down.
* @throws ServletException if {@link AuthenticationManager#login(HttpServletRequest)} fails for any reason
- */
+ * @throws IOException If writing to the servlet response fails.
+ */
public void doFilter( ServletRequest request, ServletResponse response, FilterChain chain ) throws IOException, ServletException
{
//
Added: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/com/ecyrd/jspwiki/util/UtilJ2eeCompat.java
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/com/ecyrd/jspwiki/util/UtilJ2eeCompat.java?rev=692770&view=auto
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/com/ecyrd/jspwiki/util/UtilJ2eeCompat.java (added)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/com/ecyrd/jspwiki/util/UtilJ2eeCompat.java Sat Sep 6 20:32:08 2008
@@ -0,0 +1,156 @@
+/*
+ JSPWiki - a JSP-based WikiWiki clone.
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+ */
+package com.ecyrd.jspwiki.util;
+
+import org.apache.log4j.Logger;
+
+/**
+ * Misc J2EE Compatibility Utility Functions
+ */
+public class UtilJ2eeCompat
+{
+ private static Logger log = Logger.getLogger( UtilJ2eeCompat.class.getName() );
+
+ public static final String TOMCAT = "Apache Tomcat";
+
+ public static final String ORION = "Orion";
+
+ public static final String RESIN = "Resin";
+
+ public static final String REX_IP = "TradeCity";
+
+ public static final String OC4J = "Oracle";
+
+ public static final String JRUN = "JRun";
+
+ public static final String JETTY = "Jetty";
+
+ public static final String WEBSPHERE = "Websphere";
+
+ public static final String WEBLOGIC = "WebLogic";
+
+ public static final String GLASSFISH = "Sun Java System Application Server";
+
+ /**
+ *
+ */
+ protected static Boolean useOutputStreamValue = null;
+
+ private static String m_serverInfo;
+
+ /**
+ * Determines the response wrapper for the servlet filters
+ *
+ * @param serverInfo The string returned from context.getServerInfo()
+ * @return <code>true</code> if standard response wrapper does not work
+ * properly; <code>false</code> default, otherwise
+ */
+ public static boolean useOutputStream( String serverInfo )
+ {
+ if( useOutputStreamValue == null )
+ {
+ initCompatibilityOptions( serverInfo );
+ }
+ return useOutputStreamValue.booleanValue();
+ }
+
+ /**
+ * For testing only
+ *
+ * @param serverInfo The string returned from context.getServerInfo()
+ * @param boolInitialize True, if you want to force initialization again
+ * @return <code>true</code> if standard response wrapper does not work
+ * properly; <code>false</code> default, otherwise
+ */
+ public static boolean useOutputStream( String serverInfo, Boolean boolInitialize )
+ {
+ if( (useOutputStreamValue == null) | (boolInitialize) )
+ {
+ initCompatibilityOptions( serverInfo );
+ }
+ return useOutputStreamValue.booleanValue();
+ }
+
+ /**
+ * Simple check of the servlet container
+ *
+ * @param serverInfo The string returned from context.getServerInfo()
+ */
+ protected static void initCompatibilityOptions( String serverInfo )
+ {
+ log.info( "serverInfo: " + serverInfo );
+ m_serverInfo = serverInfo;
+ // response.getWriter is the default
+ boolean useStream = false;
+ if( serverInfo.indexOf( RESIN ) >= 0 )
+ {
+ log.info( RESIN + " detected" );
+ }
+ else if( serverInfo.indexOf( REX_IP ) >= 0 )
+ {
+ log.info( REX_IP + " detected" );
+ }
+ else if( serverInfo.indexOf( TOMCAT ) >= 0 )
+ {
+ log.info( TOMCAT + " detected" );
+ }
+ else if( serverInfo.indexOf( JRUN ) >= 0 )
+ {
+ log.info( JRUN + " detected" );
+ }
+ else if( serverInfo.indexOf( JETTY ) >= 0 )
+ {
+ log.info( JETTY + " detected" );
+ }
+ else if( serverInfo.indexOf( ORION ) >= 0 )
+ {
+ log.info( ORION + " detected" );
+ }
+ else if( serverInfo.indexOf( WEBSPHERE ) >= 0 )
+ {
+ log.info( WEBSPHERE + " detected" );
+ }
+ else if( serverInfo.indexOf( WEBLOGIC ) >= 0 )
+ {
+ log.info( WEBLOGIC + " detected" );
+ }
+ else if( serverInfo.indexOf( GLASSFISH ) >= 0 )
+ {
+ log.info( GLASSFISH + " detected" );
+ }
+ else if( serverInfo.indexOf( OC4J ) >= 0 )
+ {
+ log.info( "Oracle Container for JEE detected" );
+ // use response.getOutputStream instead of response.getWriter
+ useStream = true;
+ }
+ useOutputStreamValue = new Boolean( useStream );
+ }
+
+ /**
+ * @return the Container type that has been detected
+ */
+ public static String getServerInfo()
+ {
+ return m_serverInfo;
+ }
+
+}
Modified: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/com/ecyrd/jspwiki/util/WikiBackgroundThread.java
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/com/ecyrd/jspwiki/util/WikiBackgroundThread.java?rev=692770&r1=692769&r2=692770&view=diff
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/com/ecyrd/jspwiki/util/WikiBackgroundThread.java (original)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/com/ecyrd/jspwiki/util/WikiBackgroundThread.java Sat Sep 6 20:32:08 2008
@@ -115,8 +115,8 @@
* The thread will initially pause for a full sleep interval
* before starting, after which it will execute
* {@link #startupTask()}. This method will cleanly
- * terminates the thread if the it has previously
- * been marked for death, before which it will execute
+ * terminate the thread if it has previously
+ * been marked as dead, before which it will execute
* {@link #shutdownTask()}. If any of the three methods
* return an exception, it will be re-thrown as a
* {@link com.ecyrd.jspwiki.InternalWikiException}.
@@ -139,8 +139,8 @@
// log.debug( "Running background task: " + name + "." );
backgroundTask();
- // Sleep for the interval we're supposed do, but
- // wake up every second to see if thread should die
+ // Sleep for the interval we're supposed to, but
+ // wake up every POLLING_INTERVAL to see if thread should die
boolean interrupted = false;
try
{
Modified: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/Comment.jsp
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/Comment.jsp?rev=692770&r1=692769&r2=692770&view=diff
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/Comment.jsp (original)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/Comment.jsp Sat Sep 6 20:32:08 2008
@@ -94,6 +94,9 @@
session.setAttribute( "link", link );
+ if( changenote != null )
+ session.setAttribute( "changenote", changenote );
+
//
// Branch
//
@@ -132,12 +135,11 @@
modifiedPage.setAuthor( storedUser );
- if( changenote == null ) changenote = (String) session.getAttribute("changenote");
-
- session.removeAttribute("changenote");
-
- modifiedPage.setAttribute( WikiPage.CHANGENOTE, "Comment by "+storedUser );
-
+ if( changenote != null )
+ modifiedPage.setAttribute( WikiPage.CHANGENOTE, changenote );
+ else
+ modifiedPage.removeAttribute( WikiPage.CHANGENOTE );
+
//
// Build comment part
//
Modified: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/Rename.jsp
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/Rename.jsp?rev=692770&r1=692769&r2=692770&view=diff
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/Rename.jsp (original)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/Rename.jsp Sat Sep 6 20:32:08 2008
@@ -17,7 +17,7 @@
if(!wikiContext.hasAccess( response )) return;
String renameFrom = wikiContext.getName();
- String renameTo = request.getParameter( "renameto");
+ String renameTo = request.getParameter("renameto");
boolean changeReferences = false;
@@ -28,9 +28,6 @@
changeReferences = true;
}
- // Set the content type and include the response content
- response.setContentType("text/html; charset="+wiki.getContentEncoding() );
-
log.info("Page rename request for page '"+renameFrom+ "' to new name '"+renameTo+"' from "+request.getRemoteAddr()+" by "+request.getRemoteUser() );
WikiSession wikiSession = wikiContext.getWikiSession();
@@ -47,54 +44,39 @@
}
else
{
- wikiSession.addMessage(rb.getString("rename.empty"));
+ wikiSession.addMessage("rename", rb.getString("rename.empty"));
log.info("Page rename request failed because new page name was left blank");
-
-%>
- <h3><fmt:message key="rename.error.title"/></h3>
-
- <dl>
- <dt><b><fmt:message key="rename.error.reason"/></b></dt>
- <dd>
- <wiki:Messages div="error" />
- </dd>
- </dl>
-<%
}
-
}
catch (WikiException e)
{
- if (e.getMessage().equals("Page exists"))
+ if (e.getMessage().equals("You cannot rename the page to itself"))
{
- if (renameTo.equals( renameFrom ))
- {
- log.info("Page rename request failed because page names are identical");
- wikiSession.addMessage( rb.getString("rename.identical") );
- }
- else
- {
- log.info("Page rename request failed because new page name is already in use");
- Object[] args = { renameTo };
- wikiSession.addMessage(MessageFormat.format(rb.getString("rename.exists"),args));
- }
+ log.info("Page rename request failed because page names are identical");
+ wikiSession.addMessage("rename", rb.getString("rename.identical") );
+ }
+ else if (e.getMessage().startsWith("Page already exists "))
+ {
+ log.info("Page rename request failed because new page name is already in use");
+ Object[] args = { renameTo };
+ wikiSession.addMessage("rename", MessageFormat.format(rb.getString("rename.exists"),args));
}
else
{
Object[] args = { e.toString() };
- wikiSession.addMessage( MessageFormat.format(rb.getString("rename.unknownerror"),args));
+ wikiSession.addMessage("rename", MessageFormat.format(rb.getString("rename.unknownerror"),args));
}
-%>
- <h3><fmt:message key="rename.error.title"/></h3>
-
- <dl>
- <dt><b><fmt:message key="rename.error.reason"/></b></dt>
- <dd>
- <wiki:Messages div="error" />
- </dd>
- </dl>
-<%
}
-%>
+
+ pageContext.setAttribute( "renameto",
+ TextUtil.replaceEntities( renameTo ),
+ PageContext.REQUEST_SCOPE );
+
+ response.setContentType("text/html; charset="+wiki.getContentEncoding() );
+ String contentPage = wiki.getTemplateManager().findJSP( pageContext,
+ wikiContext.getTemplate(),
+ "ViewTemplate.jsp" );
+
+%><wiki:Include page="<%=contentPage%>" />
\ No newline at end of file
Modified: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/scripts/jspwiki-common.js
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/scripts/jspwiki-common.js?rev=692770&r1=692769&r2=692770&view=diff
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/scripts/jspwiki-common.js (original)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/scripts/jspwiki-common.js Sat Sep 6 20:32:08 2008
@@ -242,6 +242,16 @@
var p = $('page'); if(p) this.renderPage(p, Wiki.PageName);
var f = $('favorites'); if(f) this.renderPage(f, "Favorites");
},
+ /* show popup alert, which allows any html msg to be displayed */
+ alert: function(msg){
+ return alert(msg); //standard js
+
+ },
+ /* show popup prompt, which allows any html msg to be displayed and replied to */
+ prompt: function(msg, defaultreply, callback){
+ return callback( prompt(msg,defaultreply) ); //standard js
+
+ },
renderPage: function(page, name){
this.$pageHandlers.each(function(obj){
@@ -281,21 +291,6 @@
.replace(/[^A-Za-z0-9()&+,-=._$ ]/g, '');
},
- savePrefs: function(){
- var prefs = {
- 'prefSkin':'SkinName',
- 'prefTimeZone':'TimeZone',
- 'prefTimeFormat':'DateFormat',
- 'prefOrientation':'Orientation',
- 'editor':'editor',
- 'prefLanguage':'Language',
- 'prefSectionEditing':'SectionEditing'
- };
- for(var el in prefs){
- if($(el)) this.prefs.set(prefs[el],$(el).getValue());
- };
- },
-
changeOrientation: function(){
var fav = $('prefOrientation').getValue();
$('wikibody')
@@ -361,16 +356,6 @@
location = location.href; /* now jump to the #hash */
},
- alert: function(msg){
- /* TODO: create popup alert, which allowed any html msg to be displayed */
- alert(msg);
- },
-
- prompt: function(title, msg){
- /* TODO: create popup prompt */
- return prompt(title,msg);
- },
-
/* SubmitOnce: disable all buttons to avoid double submit */
submitOnce: function(form){
window.onbeforeunload = null; /* regular exit of this page -- see jspwiki-edit.js */
@@ -399,10 +384,12 @@
url = url + (url.contains('?') ? '&' : '?') + 'section=';
var aa = new Element('a').setHTML('quick.edit'.localize()),
- ee = new Element('span',{'class':'editsection'}).adopt(aa);
+ ee = new Element('span',{'class':'editsection'}).adopt(aa),
+ i = 0;
- $$('#pagecontent *[id^=section]').each(function(el,i){
- aa.set({'href':url+i});
+ $$('#pagecontent *[id^=section]').each(function(el){
+ if(el.id=='section-TOC') return;
+ aa.set({'href':url + i++ });
el.adopt(ee.clone());
});
},
@@ -935,7 +922,7 @@
s = this.query.value;
if(s == this.query.defaultValue) s = '';
- var handleResult=function(s){
+ var handleResult = function(s){
if(s == '') return;
if(!search) s = Wiki.cleanLink(s);//remove invalid chars from the pagename
@@ -946,24 +933,11 @@
location.href = url.replace('__PAGEHERE__', s );
};
- if(s!='') handleResult(s); //????
- //handleResult(Wiki.prompt(promptText, (clone) ? p+'sbox.clone.suffix'.localize() : p));
- //return;
-
- Wiki.prompt(promptText, defaultResult, handleResult.bind(this));
-
- return;
-/*
- new Popup({
- caption:'',
- body:promptText,
- promptDefault:(clone) ? p+'sbox.clone.suffix'.localize() : p,
- buttons:({
- 'Cancel':Class.empty,
- 'Ok':function(result){ doNavigate(result); }
- })
- });
-*/
+ if(s!='') {
+ handleResult(s);
+ } else {
+ Wiki.prompt(promptText, defaultResult, handleResult.bind(this));
+ }
}
}
Modified: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/scripts/jspwiki-commonstyles.js
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/scripts/jspwiki-commonstyles.js?rev=692770&r1=692769&r2=692770&view=diff
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/scripts/jspwiki-commonstyles.js (original)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/scripts/jspwiki-commonstyles.js Sat Sep 6 20:32:08 2008
@@ -131,15 +131,15 @@
$ES('.accordion, .tabbedAccordion, .leftAccordion, .rightAccordion',page).each( function(tt){
- var toggles=[], contents=[], togglemenu=false;
+ var toggles=[], contents=[], menu=false;
if(tt.hasClass('tabbedAccordion')){
- togglemenu = new Element('div',{'class':'togglemenu'}).injectBefore(tt);
+ menu = new Element('div',{'class':'menu top'}).injectBefore(tt);
}
else if(tt.hasClass('leftAccordion')){
- togglemenu = new Element('div',{'class':'sidemenu left'}).injectBefore(tt);
+ menu = new Element('div',{'class':'menu left'}).injectBefore(tt);
}
else if(tt.hasClass('rightAccordion')){
- togglemenu = new Element('div',{'class':'sidemenu right'}).injectBefore(tt);
+ menu = new Element('div',{'class':'menu right'}).injectBefore(tt);
}
tt.getChildren().each(function(tab) {
@@ -150,17 +150,15 @@
var title = tab.className.substr(4).deCamelize(),
t = toggle.clone().appendText(title);
- if(togglemenu) {
- toggles.push(t.inject(togglemenu));
- } else {
- toggles.push(t.adopt(bullet.clone()).injectBefore(tab));
- }
+ menu ? t.inject(menu) : bullet.clone().injectTop(t.injectBefore(tab));
+
+ toggles.push(t);
contents.push(tab.addClass('tab'));
});
new Accordion(toggles, contents, {
height: true,
- alwaysHide: !togglemenu,
+ alwaysHide: !menu,
onComplete: function(){
var el = $(this.elements[this.previous]);
if (el.offsetHeight > 0) el.setStyle('height', 'auto');
@@ -180,7 +178,7 @@
}
});
});
- bullet=toggle=null;
+ bullet=toggle=null; //avoid memory leaks
}
}
Wiki.addPageRender(WikiAccordion);
Modified: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/scripts/jspwiki-edit.js
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/scripts/jspwiki-edit.js?rev=692770&r1=692769&r2=692770&view=diff
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/scripts/jspwiki-edit.js (original)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/scripts/jspwiki-edit.js Sat Sep 6 20:32:08 2008
@@ -166,43 +166,33 @@
Wiki.onPageLoad(); //Wiki.onpageload should always run first, but seems not guaranteed on ie so let's do this for sure
- this.textarea = $('editorarea');
- if(!this.textarea || !this.textarea.visible) return;
-
- /* Duplicate the textarea into a main and work area.
- The workarea is used for actual editing.
- The mainarea reflects at all times the whole document
- */
- var m = this.mainarea = this.textarea;
- this.textarea = m.clone()
- .removeProperty('id')
- .removeProperty('name')
- .injectBefore( m.hide() );
-
- //this.ta = new TextArea( this.textarea );
- this.ta = TextArea.initialize( this.textarea );
-
window.onbeforeunload = (function(){
var ta = $('editorarea');
if(ta.value != ta.defaultValue) return "edit.areyousure".localize();
}).bind(this);
- //alert($('scroll').getValue());
-
this.wikisnippets = WikiSnippets.getSnippets();
this.wikismartpairs = WikiSnippets.getSmartPairs();
- this.onPageLoadSectionToc();
+ this.mainarea = this.textarea = $('editorarea');
+ if(!this.textarea || !this.textarea.visible) return;
+
+ /* may insert a new this.textarea */
+ this.onPageLoadSectionEdit( );
+
+ //this.ta = new TextArea( this.textarea );
+ this.ta = TextArea.initialize( this.textarea ); //FIXME
+
this.onPageLoadResizeTextarea();
this.onPageLoadToolbar();
this.onPageLoadPostEditor();
this.onPageLoadPreview();
- /* add textarea suggestion events */
this.textarea
- .addEvent('click',this.getSuggestions.bind(this))
- .addEvent('keyup',this.getSuggestions.bind(this))
+ .addEvent('click', this.getSuggestions.bind(this))
+ .addEvent('keyup', this.getSuggestions.bind(this))
+ .addEvent('change', this.onChangeTextarea.bind(this))
.focus();
},
@@ -400,7 +390,8 @@
var textarea = this.textarea,
sel = TextArea.getSelectionCoordinates(textarea),
val = textarea.value,
- searchword = '';
+ searchword = '',
+ searchlen = 0;
var suggestID = 'findSuggestionMenu',
suggest = $(suggestID) || new Element('div',{
@@ -409,21 +400,24 @@
/* find a partial jspwiki-link 'searchword' */
/* look backwards for the start of a wiki-link bracket */
- for( i = sel.start-1; i >= 0; i-- ){
+ for( var i = sel.start-1; i >= 0; i-- ){
if( val.charAt(i) == ']' ) break;
if( val.charAt(i) == '[' && i < val.length-1 ) {
searchword = val.substring(i+1,sel.start);
+ if( searchword.charAt(0) == '{' ) return; // Ignore plugins.
if(searchword.indexOf('|') != -1) searchword = searchword.split('|')[1];
+ searchlen = searchword.length;
+
+ if(searchlen == 0) searchword=Wiki.PageName+'/'; /* by default - get list of attachments, if any */
break;
}
}
if(searchword =='') return suggest.hide();
- var searchlen = searchword.length;
-
- if(sel.start == sel.end) { //when no selection, extend till next ]
- var i = val.indexOf(']',sel.start);
- if( i>0 ) sel.end = i
+ if(sel.start == sel.end) { //when no selection, extend till next ] or end of the line
+ var ss = val.substring(sel.start),
+ end = ss.search(/[\n\r\]]/);
+ if(end!=-1) sel.end = sel.start+end;
}
Wiki.jsonrpc('search.getSuggestions', [searchword,30], function(result,exception){
@@ -452,7 +446,7 @@
} /* endif */
});
},
-
+
onPageLoadPreview : function(){
if( $$('#sneakpreview','#autopreview').length != 2) return;
$('autopreview')
@@ -492,37 +486,47 @@
}).request();
},
- onPageLoadSectionToc : function(){
+ onPageLoadSectionEdit : function( ){
- if(Wiki.prefs.get('SectionEditing') != 'on') return;
+ /* section editing is only valid for edit context, not valid in the comment context */
+ if( (Wiki.Context!='edit')
+ ||(Wiki.prefs.get('SectionEditing') != 'on') ) return;
+ /* Duplicate the textarea into a main and work area.
+ The workarea is used for actual editing.
+ The mainarea reflects at all times the whole document
+ */
+ this.textarea = this.mainarea.clone()
+ .removeProperty('id')
+ .removeProperty('name')
+ .injectBefore( this.mainarea.hide() );
+
var tt = new Element('div',{'id':'toctoc'}).adopt(
new Element('label').setHTML('sectionediting.label'.localize()),
- this.selector = new Element('ul')
+ this.sections = new Element('ul')
).injectTop($('favorites'))
- /* initialise the section selectors */
- this.onSelectorLoad();
+ /* initialise the section sections */
+ this.onSectionLoad();
var cursor = location.search.match(/[&?]section=(\d+)/);
cursor = (cursor && cursor[1]) ? 1+cursor[1].toInt() : 0;
if((cursor>0) && this.textarea.sop) cursor++;
/* initialise the selected section */
- this.onChangeSelector(cursor);
+ this.onChangeSection(cursor);
- this.textarea.addEvent('change', this.onChangeTextarea.bind(this));
},
/*
- * UPDATE/RFEFRESH the section selector dropdown
+ * UPDATE/RFEFRESH the section dropdown
* This function is called at startup, and everytime the section textarea changes
- * Postcondition: the sectiontoc dropdown contains following entries
+ * Postcondition: the section-edit dropdown contains following entries
* 0. ( all )
* 1. start-of-page (if applicable)
- * 2. text==<<header 1...n>> , <<selector.offset stores start-offset in main textarea>>
+ * 2. text==<<header 1...n>> , <<sections.offset stores start-offset in main textarea>>
*/
- onSelectorLoad : function(){
+ onSectionLoad : function(){
var mainarea = this.mainarea.value,
ta = this.textarea,
DELIM = "\u00a4";
@@ -534,9 +538,9 @@
var tt = mainarea.replace( /^([!]{1,3})/mg, DELIM+"$1"+DELIM ).split(DELIM);
- this.newSelector();
+ this.newSection();
ta.sop = (tt.length>1) && (tt[0] != ''); //start of page section has no !!!header
- if(ta.sop) this.addSelector("edit.startOfPage".localize(), 0, 0);
+ if(ta.sop) this.addSection("edit.startOfPage".localize(), 0, 0);
var pos = tt.shift().length,
ttlen = tt.map(function(i){ return i.length });
@@ -546,29 +550,29 @@
indent = (hlen==2) ? 1 : (hlen==1) ? 2 : 0,
title = tt[i+1].match(/.*?$/m)[0]; //title is first line only
- this.addSelector(title, pos, indent);
+ this.addSection(title, pos, indent);
pos += hlen + ttlen[i+1];
};
},
- setSelector: function( cursor ){
- var els = this.selector.getChildren();
+ setSection: function( cursor ){
+ var els = this.sections.getChildren();
if(cursor <0 || cursor >= els.length) cursor = 0;
els.removeClass('cursor');
els[cursor].addClass('cursor');
},
- newSelector: function(){
- this.selector.empty();
- this.selector.offsets = [];
- this.addSelector("edit.allsections".localize(),-1,0);
+ newSection: function(){
+ this.sections.empty();
+ this.sections.offsets = [];
+ this.addSection("edit.allsections".localize(),-1,0);
},
- addSelector: function(text,offset,indent){
+ addSection: function(text,offset,indent){
text = text.replace(/~([^~])/g, '$1'); /*remove wiki-markup escape chars ~ */
- this.selector.offsets.push(offset);
- this.selector.adopt(
+ this.sections.offsets.push(offset);
+ this.sections.adopt(
new Element('li').adopt(
new Element('a',{
'class':'action',
@@ -577,22 +581,22 @@
},
'title':text,
'events':{
- 'click':this.onChangeSelector.pass([this.selector.offsets.length-1],this)
+ 'click':this.onChangeSection.pass([this.sections.offsets.length-1],this)
}
}).setHTML(text.trunc(30))
)
);
},
- /* the USER clicks a new item from the section selector dropdown
+ /* the USER clicks a new item from the section dropdown
* copy a part of the main textarea to the section textarea
*/
- onChangeSelector: function(cursor){
- var se = this.selector.offsets,
+ onChangeSection: function(cursor){
+ var se = this.sections.offsets,
ta = this.textarea,
ma = this.mainarea.value;
- this.setSelector(cursor);
+ this.setSection(cursor);
ta.cursor = cursor;
ta.begin = (cursor==0) ? 0 : se[cursor];
ta.end = ((cursor==0) || (cursor+1 >= se.length)) ? ma.length : se[cursor+1];
@@ -608,18 +612,20 @@
* (ii) user clicks a toolbar-button
*
* 1) copy section textarea at the right offset of the main textarea
- * 2) refresh the sectiontoc menu
+ * 2) refresh the section-edit menu
*/
onChangeTextarea : function(){
var ta = this.textarea, ma = this.mainarea;
- var s = ta.value;
- if( s.lastIndexOf("\n") + 1 != s.length ) ta.value += '\n';
-
- s = ma.value;
- ma.value = s.substring(0, ta.begin) + ta.value + s.substring(ta.end);
- ta.end = ta.begin + ta.value.length;
- this.onSelectorLoad(); //refresh selectortoc menu
+ if( this.sections ){
+ var s = ta.value;
+ if( s.lastIndexOf("\n") + 1 != s.length ) ta.value += '\n';
+
+ s = ma.value;
+ ma.value = s.substring(0, ta.begin) + ta.value + s.substring(ta.end);
+ ta.end = ta.begin + ta.value.length;
+ this.onSectionLoad(); //refresh section-edit menu
+ }
ta.fireEvent('preview');
}
}
Modified: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/scripts/jspwiki-prefs.js
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/scripts/jspwiki-prefs.js?rev=692770&r1=692769&r2=692770&view=diff
==============================================================================
Binary files - no diff available.
Modified: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/InfoContent.jsp
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/InfoContent.jsp?rev=692770&r1=692769&r2=692770&view=diff
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/InfoContent.jsp (original)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/InfoContent.jsp Sat Sep 6 20:32:08 2008
@@ -3,6 +3,7 @@
<%@ page import="com.ecyrd.jspwiki.auth.*" %>
<%@ page import="com.ecyrd.jspwiki.auth.permissions.*" %>
<%@ page import="com.ecyrd.jspwiki.attachment.*" %>
+<%@ page import="com.ecyrd.jspwiki.i18n.InternationalizationManager" %>
<%@ page import="java.security.Permission" %>
<%@ page import="javax.servlet.jsp.jstl.fmt.*" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %>
@@ -16,6 +17,9 @@
String attTitle = LocaleSupport.getLocalizedMessage(pageContext, "attach.tab");
if( attCount != 0 ) attTitle += " (" + attCount + ")";
+ String parm_renameto = (String)request.getParameter( "renameto" );
+ if( parm_renameto == null ) parm_renameto = wikiPage.getName();
+
String creationAuthor ="";
//FIXME -- seems not to work correctly for attachments !!
@@ -23,6 +27,15 @@
if( firstPage != null )
{
creationAuthor = firstPage.getAuthor();
+
+ if( creationAuthor != null && creationAuthor.length() > 0 )
+ {
+ creationAuthor = TextUtil.replaceEntities(creationAuthor);
+ }
+ else
+ {
+ creationAuthor = c.getBundle( InternationalizationManager.CORE_BUNDLE ).getString( "common.unknownauthor" );
+ }
}
int itemcount = 0; //number of page versions
@@ -33,14 +46,16 @@
catch( Exception e ) { /* dont care */ }
int pagesize = 20;
- int startitem = itemcount;
- if( startitem == pagesize ) startitem = 0;
+ int startitem = itemcount-1; /* itemcount==1-20 -> startitem=0-19 ... */
String parm_start = (String)request.getParameter( "start" );
if( parm_start != null ) startitem = Integer.parseInt( parm_start ) ;
- /*round to start of a pagination block */
- if( startitem > -1 ) startitem = ( (startitem/pagesize) * pagesize );
+ /* round to start of block: 0-19 becomes 0; 20-39 becomes 20 ... */
+ if( startitem > -1 ) startitem = ((startitem)/pagesize) * pagesize;
+
+ /* startitem drives the pagination logic */
+ /* startitem=-1:show all; startitem=0:show block 1-20; startitem=20:block 21-40 ... */
%>
<wiki:PageExists>
@@ -91,6 +106,11 @@
</wiki:CheckVersion>
<wiki:Permission permission="rename">
+
+ <div class="formhelp">
+ <wiki:Messages div="error" topic="rename" prefix='<%=LocaleSupport.getLocalizedMessage(pageContext,"prefs.errorprefix.rename")%>'/>
+ </div>
+
<form action="<wiki:Link format='url' jsp='Rename.jsp'/>"
class="wikiform"
id="renameform"
@@ -99,7 +119,7 @@
<p>
<input type="hidden" name="page" value="<wiki:Variable var='pagename' />" />
<input type="submit" name="rename" value="<fmt:message key='info.rename.submit' />" />
- <input type="text" name="renameto" value="<wiki:Variable var='pagename' />" size="40" />
+ <input type="text" name="renameto" value="<%= parm_renameto %>" size="40" />
<input type="checkbox" name="references" checked="checked" />
<fmt:message key="info.updatereferrers"/>
Modified: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/PageActionsTop.jsp
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/PageActionsTop.jsp?rev=692770&r1=692769&r2=692770&view=diff
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/PageActionsTop.jsp (original)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/PageActionsTop.jsp Sat Sep 6 20:32:08 2008
@@ -7,7 +7,7 @@
<div id="actionsTop" class="pageactions">
<ul>
- <wiki:CheckRequestContext context='view|info|diff|upload'>
+ <wiki:CheckRequestContext context='view|info|diff|upload|rename'>
<wiki:Permission permission="edit">
<li>
<wiki:PageType type="page">
Modified: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/PreferencesTab.jsp
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/PreferencesTab.jsp?rev=692770&r1=692769&r2=692770&view=diff
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/PreferencesTab.jsp (original)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/PreferencesTab.jsp Sat Sep 6 20:32:08 2008
@@ -37,7 +37,7 @@
class="wikiform"
id="setCookie"
method="post" accept-charset="<wiki:ContentEncoding />"
- onsubmit="Wiki.savePrefs(); return Wiki.submitOnce(this);" >
+ onsubmit="WikiPreferences.savePrefs(); return Wiki.submitOnce(this);" >
<table>
<tr>
@@ -82,7 +82,7 @@
<td><label for="prefSectionEditing"><fmt:message key="prefs.user.sectionediting"/></label></td>
<td>
<input id="prefSectionEditing" name="prefSectionEditing"
- type="checkbox" <c:if test='${"on" == prefs["SectionEditing"]}'>checked="checked"</c:if> ></input>
+ type="checkbox" <c:if test='${"on" == prefs.SectionEditing}'>checked="checked"</c:if> ></input>
<fmt:message key="prefs.user.sectionediting.text"/>
</td>
</tr>
@@ -92,7 +92,7 @@
<td>
<select id="prefSkin" name="prefSkin">
<c:forEach items="${skins}" var="i">
- <option value='<c:out value='${i}'/>' <c:if test='${i == prefs["SkinName"]}'>selected="selected"</c:if> ><c:out value="${i}"/></option>
+ <option value='<c:out value='${i}'/>' <c:if test='${i == prefs.SkinName}'>selected="selected"</c:if> ><c:out value="${i}"/></option>
</c:forEach>
</select>
</td>
@@ -150,7 +150,7 @@
<td><label for="prefShowQuickLinks">Show Quick Links</label></td>
<td>
<input class='checkbox' type='checkbox' id='prefShowQuickLinks' name='prefShowQuickLinks'
- <c:if test='${"on" == prefs["SectionEdit"]}'>selected="selected"</c:if> />
+ <c:if test='${"on" == prefs.SectionEdit}'>selected="selected"</c:if> />
<span class="quicklinks"><span
class='quick2Top'><a href='#wikibody' title='Go to Top' >«</a></span><span
class='quick2Prev'><a href='#' title='Go to Previous Section'>‹</a></span><span
Modified: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/commonheader.jsp
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/commonheader.jsp?rev=692770&r1=692769&r2=692770&view=diff
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/commonheader.jsp (original)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/commonheader.jsp Sat Sep 6 20:32:08 2008
@@ -95,15 +95,15 @@
<wiki:FeedDiscovery />
<%-- SKINS : extra stylesheets, extra javascript --%>
-<c:if test='${(!empty prefs["SkinName"]) && (prefs["SkinName"]!="PlainVanilla") }'>
+<c:if test='${(!empty prefs.SkinName) && (prefs.SkinName!="PlainVanilla") }'>
<link rel="stylesheet" type="text/css" media="screen, projection, print"
- href="<wiki:Link format='url' templatefile='skins/' /><c:out value='${prefs["SkinName"]}/skin.css' />" />
+ href="<wiki:Link format='url' templatefile='skins/' /><c:out value='${prefs.SkinName}/skin.css' />" />
<%--
<link rel="stylesheet" type="text/css" media="print"
- href="<wiki:Link format='url' templatefile='skins/' /><c:out value='${prefs["SkinName"]}/print_skin.css' />" />
+ href="<wiki:Link format='url' templatefile='skins/' /><c:out value='${prefs.SkinName}/print_skin.css' />" />
--%>
<script type="text/javascript"
- src="<wiki:Link format='url' templatefile='skins/' /><c:out value='${prefs["SkinName"]}/skin.js' />" ></script>
+ src="<wiki:Link format='url' templatefile='skins/' /><c:out value='${prefs.SkinName}/skin.js' />" ></script>
</c:if>
<wiki:Include page="localheader.jsp"/>
\ No newline at end of file
Modified: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/editors/FCK.jsp
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/editors/FCK.jsp?rev=692770&r1=692769&r2=692770&view=diff
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/editors/FCK.jsp (original)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/editors/FCK.jsp Sat Sep 6 20:32:08 2008
@@ -119,12 +119,10 @@
<div class="error"><fmt:message key="editor.fck.noscript" /></div>
</noscript>
- <wiki:CheckRequestContext context="edit">
- <p>
- <label for="changenote"><fmt:message key='editor.plain.changenote'/></label>
- <input type="text" id="changenote" name="changenote" size="80" maxlength="80" value="<c:out value='${changenote}'/>"/>
- </p>
- </wiki:CheckRequestContext>
+ <p>
+ <label for="changenote"><fmt:message key='editor.plain.changenote'/></label>
+ <input type="text" id="changenote" name="changenote" size="80" maxlength="80" value="<c:out value='${changenote}'/>"/>
+ </p>
<wiki:CheckRequestContext context="comment">
<fieldset>
<legend><fmt:message key="editor.commentsignature"/></legend>
@@ -143,9 +141,9 @@
</wiki:CheckRequestContext>
<p>
- <input name='ok' type='submit' value='<fmt:message key="editor.plain.save.submit"/>' />
- <input name='preview' type='submit' value='<fmt:message key="editor.plain.preview.submit"/>' />
- <input name='cancel' type='submit' value='<fmt:message key="editor.plain.cancel.submit"/>' />
+ <input name='ok' type='submit' value='<fmt:message key="editor.plain.save.submit"/>' />
+ <input name='preview' type='submit' value='<fmt:message key="editor.plain.preview.submit"/>' />
+ <input name='cancel' type='submit' value='<fmt:message key="editor.plain.cancel.submit"/>' />
</p>
</div>
</form>
Modified: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/editors/preview.jsp
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/editors/preview.jsp?rev=692770&r1=692769&r2=692770&view=diff
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/editors/preview.jsp (original)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/editors/preview.jsp Sat Sep 6 20:32:08 2008
@@ -31,6 +31,7 @@
<input type="hidden" name="author" value="<c:out value='${author}' />" />
<input type="hidden" name="link" value="<c:out value='${link}' />" />
<input type="hidden" name="remember" value="<c:out value='${remember}' />" />
+ <input type="hidden" name="changenote" value="<c:out value='${changenote}' />" />
<input type="hidden" name="page" value="<wiki:Variable var='pagename' />" />
<input type="hidden" name="action" value="save" />
Modified: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/jspwiki.css
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/jspwiki.css?rev=692770&r1=692769&r2=692770&view=diff
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/jspwiki.css (original)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/jspwiki.css Sat Sep 6 20:32:08 2008
@@ -54,6 +54,7 @@
float:left;
margin-top:1.75em;
width:18%;
+ padding:0.5em;
}
#favorites .userbox {
border:1px solid #ddd;
@@ -126,7 +127,7 @@
padding:0;
border:0;
outline:none;
- vertical-align:baseline;
+ /* vertical-align:baseline; seems to give printing errors in FF */
}
/* remember to define focus styles! */
:focus {
@@ -1081,12 +1082,6 @@
float:right;
background:url(images/arrup.gif) no-repeat 3px 3px;
}
-/* obsolete
-a.action.quick2bottom {
- background:url(images/arrdown.png) no-repeat 3px 3px;
- height:16px;
-}
-*/
/*********/
.popup ul {
@@ -1479,33 +1474,59 @@
line-height:1.4;
padding:0.25em 1em 0.25em 0;
}
-.accordion .toggle:hover, .togglemenu .toggle:hover, .sidemenu .toggle:hover {
+.accordion .toggle:hover, .menu .toggle:hover {
background:#eee;
}
.accordion .tab {
padding:0 1em;
}
-.togglemenu {
+.menu {
clear:both; /* check out */
color:gray;
font-weight:bold;
- padding:0.25em 0.5em;
}
-.togglemenu .toggle {
+.menu.top {
+ margin-left:0.5em; /* small left indent of first toggle */
+}
+.menu.left {
float:left;
+ margin-top:0.5em; /* small top indent of first toggle */
+}
+.menu.right {
+ float:right;
+ margin-top:0.5em; /* small top indent of first toggle */
+}
+.menu .toggle {
background:#f9f9f9;
border:1px solid #ddd;
cursor:pointer;
- display:inline;
- margin:0 0 -1px -1px;
padding:0.25em 0.5em;
}
-.togglemenu .toggle.active {
+.menu.top .toggle {
+ float:left;
+ margin:0 0 -1px -1px; /* adjacent toggle will stick: let 1px border overlap.*/
+ display:inline;
+}
+.menu.left .toggle {
+ margin:0 -1px -1px 0; /* adjacent toggle will stick: let 1px border overlap.*/
+}
+.menu.right .toggle {
+ margin:0 0 -1px -1px; /* adjacent toggle will stick: let 1px border overlap.*/
+}
+.menu .toggle.active {
background:transparent;
- border-bottom:1px solid white;
cursor:default;
color:black;
}
+.menu.top .toggle.active {
+ border-bottom:1px solid white;
+}
+.menu.left .toggle.active {
+ border-right:1px solid white;
+}
+.menu.right .toggle.active {
+ border-left:1px solid white;
+}
.tabbedAccordion {
padding:0.5em;
}
@@ -1514,38 +1535,8 @@
}
.leftAccordion .tab, .rightAccordion .tab {
border:1px solid #ddd !important;
- margin:0 0 -2px 0; /* nice trick :: -2px to reveal top and bottom borders the tabs */
+ margin:0 0 -2px 0; /* trick :: -2px to reveal top and bottom borders the tabs */
padding:0.25em 0.5em;
-}
-.sidemenu {
- clear:both;
- color:gray;
- font-weight:bold;
- margin-top:0.5em;
-}
-.sidemenu.left {
- float:left;
-}
-.sidemenu.right {
- float:right;
-}
-.sidemenu .toggle {
- background:#f9f9f9;
- border:1px solid #ddd;
- cursor:pointer;
- margin:0 0 -1px 0;
- padding:0.25em 0.5em;
-}
-.sidemenu.left .toggle {
- border-right:none;
-}
-.sidemenu.right .toggle {
- border-left:none;
-}
-.sidemenu .toggle.active {
- background:transparent;
- cursor:default;
- color:black;
}
/* ie only hack no needed ?
Added: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/skins/OrderedList/images/arrdown.gif
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/skins/OrderedList/images/arrdown.gif?rev=692770&view=auto
==============================================================================
Binary file - no diff available.
Propchange: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/skins/OrderedList/images/arrdown.gif
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/skins/OrderedList/images/bulletDown.gif
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/skins/OrderedList/images/bulletDown.gif?rev=692770&view=auto
==============================================================================
Binary file - no diff available.
Propchange: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/skins/OrderedList/images/bulletDown.gif
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/skins/OrderedList/images/bulletUp.gif
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/skins/OrderedList/images/bulletUp.gif?rev=692770&view=auto
==============================================================================
Binary file - no diff available.
Propchange: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/skins/OrderedList/images/bulletUp.gif
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/skins/OrderedList/images/smart-logo.gif
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/skins/OrderedList/images/smart-logo.gif?rev=692770&view=auto
==============================================================================
Binary file - no diff available.
Propchange: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/skins/OrderedList/images/smart-logo.gif
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Added: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/skins/OrderedList/images/sortable.gif
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/skins/OrderedList/images/sortable.gif?rev=692770&view=auto
==============================================================================
Binary file - no diff available.
Propchange: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/skins/OrderedList/images/sortable.gif
------------------------------------------------------------------------------
svn:mime-type = application/octet-stream
Modified: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/skins/OrderedList/skin.css
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/src/webdocs/templates/default/skins/OrderedList/skin.css?rev=692770&r1=692769&r2=692770&view=diff
==============================================================================
Binary files - no diff available.
Modified: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/auth/user/JDBCUserDatabaseTest.java
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/auth/user/JDBCUserDatabaseTest.java?rev=692770&r1=692769&r2=692770&view=diff
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/auth/user/JDBCUserDatabaseTest.java (original)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/auth/user/JDBCUserDatabaseTest.java Sat Sep 6 20:32:08 2008
@@ -166,7 +166,7 @@
try
{
UserProfile profile = m_db.findByEmail( "janne@ecyrd.com" );
- assertEquals( -7739839977499061014L, profile.getUid() );
+ assertEquals( "-7739839977499061014", profile.getUid() );
assertEquals( "janne", profile.getLoginName() );
assertEquals( "Janne Jalkanen", profile.getFullname() );
assertEquals( "JanneJalkanen", profile.getWikiName() );
@@ -196,7 +196,7 @@
try
{
UserProfile profile = m_db.findByFullName( "Janne Jalkanen" );
- assertEquals( -7739839977499061014L, profile.getUid() );
+ assertEquals( "-7739839977499061014", profile.getUid() );
assertEquals( "janne", profile.getLoginName() );
assertEquals( "Janne Jalkanen", profile.getFullname() );
assertEquals( "JanneJalkanen", profile.getWikiName() );
@@ -225,8 +225,8 @@
{
try
{
- UserProfile profile = m_db.findByUid( -7739839977499061014L );
- assertEquals( -7739839977499061014L, profile.getUid() );
+ UserProfile profile = m_db.findByUid( "-7739839977499061014" );
+ assertEquals( "-7739839977499061014", profile.getUid() );
assertEquals( "janne", profile.getLoginName() );
assertEquals( "Janne Jalkanen", profile.getFullname() );
assertEquals( "JanneJalkanen", profile.getWikiName() );
@@ -256,7 +256,7 @@
try
{
UserProfile profile = m_db.findByWikiName( "JanneJalkanen" );
- assertEquals( -7739839977499061014L, profile.getUid() );
+ assertEquals( "-7739839977499061014", profile.getUid() );
assertEquals( "janne", profile.getLoginName() );
assertEquals( "Janne Jalkanen", profile.getFullname() );
assertEquals( "JanneJalkanen", profile.getWikiName() );
@@ -286,7 +286,7 @@
try
{
UserProfile profile = m_db.findByLoginName( "janne" );
- assertEquals( -7739839977499061014L, profile.getUid() );
+ assertEquals( "-7739839977499061014", profile.getUid() );
assertEquals( "janne", profile.getLoginName() );
assertEquals( "Janne Jalkanen", profile.getFullname() );
assertEquals( "JanneJalkanen", profile.getWikiName() );
Modified: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/auth/user/UserProfileTest.java
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/auth/user/UserProfileTest.java?rev=692770&r1=692769&r2=692770&view=diff
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/auth/user/UserProfileTest.java (original)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/auth/user/UserProfileTest.java Sat Sep 6 20:32:08 2008
@@ -82,9 +82,9 @@
public void testSetUid()
{
UserProfile p = m_db.newProfile();
- assertNotSame( 1234567890, p.getUid() );
- p.setUid( 1234567890 );
- assertEquals( 1234567890, p.getUid() );
+ assertNotSame( "1234567890", p.getUid() );
+ p.setUid( "1234567890" );
+ assertEquals( "1234567890", p.getUid() );
}
public void testEquals()
Modified: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/auth/user/XMLUserDatabaseTest.java
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/auth/user/XMLUserDatabaseTest.java?rev=692770&r1=692769&r2=692770&view=diff
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/auth/user/XMLUserDatabaseTest.java (original)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/auth/user/XMLUserDatabaseTest.java Sat Sep 6 20:32:08 2008
@@ -102,7 +102,7 @@
try
{
UserProfile profile = m_db.findByEmail("janne@ecyrd.com");
- assertEquals( -7739839977499061014L, profile.getUid() );
+ assertEquals( "-7739839977499061014", profile.getUid() );
assertEquals("janne", profile.getLoginName());
assertEquals("Janne Jalkanen", profile.getFullname());
assertEquals("JanneJalkanen", profile.getWikiName());
@@ -130,7 +130,7 @@
try
{
UserProfile profile = m_db.findByFullName( "Janne Jalkanen" );
- assertEquals( -7739839977499061014L, profile.getUid() );
+ assertEquals( "-7739839977499061014", profile.getUid() );
assertEquals( "janne", profile.getLoginName() );
assertEquals( "Janne Jalkanen", profile.getFullname() );
assertEquals( "JanneJalkanen", profile.getWikiName() );
@@ -159,8 +159,8 @@
{
try
{
- UserProfile profile = m_db.findByUid( -7739839977499061014L );
- assertEquals( -7739839977499061014L, profile.getUid() );
+ UserProfile profile = m_db.findByUid( "-7739839977499061014" );
+ assertEquals( "-7739839977499061014", profile.getUid() );
assertEquals( "janne", profile.getLoginName() );
assertEquals( "Janne Jalkanen", profile.getFullname() );
assertEquals( "JanneJalkanen", profile.getWikiName() );
@@ -190,7 +190,7 @@
try
{
UserProfile profile = m_db.findByWikiName("JanneJalkanen");
- assertEquals( -7739839977499061014L, profile.getUid() );
+ assertEquals( "-7739839977499061014", profile.getUid() );
assertEquals("janne", profile.getLoginName());
assertEquals("Janne Jalkanen", profile.getFullname());
assertEquals("JanneJalkanen", profile.getWikiName());
@@ -218,7 +218,7 @@
try
{
UserProfile profile = m_db.findByLoginName("janne");
- assertEquals( -7739839977499061014L, profile.getUid() );
+ assertEquals( "-7739839977499061014", profile.getUid() );
assertEquals("janne", profile.getLoginName());
assertEquals("Janne Jalkanen", profile.getFullname());
assertEquals("JanneJalkanen", profile.getWikiName());
Modified: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/search/SearchManagerTest.java
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/search/SearchManagerTest.java?rev=692770&r1=692769&r2=692770&view=diff
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/search/SearchManagerTest.java (original)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/search/SearchManagerTest.java Sat Sep 6 20:32:08 2008
@@ -61,7 +61,7 @@
Thread.yield();
- Thread.sleep( 5000L ); // Should cover for both index and initial delay
+ Thread.sleep( 10000L ); // Should cover for both index and initial delay
Collection res = m_mgr.findPages( "mankind" );
@@ -82,7 +82,7 @@
Thread.yield();
- Thread.sleep( 2000L ); // Should cover for both index and initial delay
+ Thread.sleep( 10000L ); // Should cover for both index and initial delay
Collection res = m_mgr.findPages( "mankind" );
@@ -108,7 +108,7 @@
Thread.yield();
- Thread.sleep( 2000L ); // Should cover for both index and initial delay
+ Thread.sleep( 10000L ); // Should cover for both index and initial delay
Collection res = m_mgr.findPages( "mankind" );
@@ -131,7 +131,7 @@
Thread.yield();
- Thread.sleep( 2000L ); // Should cover for both index and initial delay
+ Thread.sleep( 5000L ); // Should cover for both index and initial delay
Collection res = m_mgr.findPages( "Test" );
@@ -150,7 +150,7 @@
Thread.yield();
- Thread.sleep( 2000L ); // Should cover for both index and initial delay
+ Thread.sleep( 5000L ); // Should cover for both index and initial delay
Collection res = m_mgr.findPages( "TestPage" );
Modified: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/ui/InputValidatorTest.java
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/ui/InputValidatorTest.java?rev=692770&r1=692769&r2=692770&view=diff
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/ui/InputValidatorTest.java (original)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/ui/InputValidatorTest.java Sat Sep 6 20:32:08 2008
@@ -12,7 +12,8 @@
import junit.framework.TestSuite;
import com.ecyrd.jspwiki.TestEngine;
-import com.ecyrd.jspwiki.WikiSession;
+import com.ecyrd.jspwiki.WikiContext;
+import com.ecyrd.jspwiki.WikiPage;
public class InputValidatorTest extends TestCase
{
@@ -27,8 +28,8 @@
Properties props = new Properties();
props.load( TestEngine.findTestProperties() );
testEngine = new TestEngine( props );
- WikiSession session = WikiSession.getWikiSession( testEngine, testEngine.newHttpRequest() );
- val = new InputValidator( TEST, session );
+ WikiContext context = testEngine.getWikiActionBeanFactory().newViewActionBean( null, null, new WikiPage(testEngine,"dummyPage") );
+ val = new InputValidator( TEST, context );
}
public void testUnsafePattern()
Added: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/util/UtilJ2eeCompatTest.java
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/util/UtilJ2eeCompatTest.java?rev=692770&view=auto
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/util/UtilJ2eeCompatTest.java (added)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/com/ecyrd/jspwiki/util/UtilJ2eeCompatTest.java Sat Sep 6 20:32:08 2008
@@ -0,0 +1,53 @@
+/*
+ JSPWiki - a JSP-based WikiWiki clone.
+
+ Licensed to the Apache Software Foundation (ASF) under one
+ or more contributor license agreements. See the NOTICE file
+ distributed with this work for additional information
+ regarding copyright ownership. The ASF licenses this file
+ to you under the Apache License, Version 2.0 (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.apache.org/licenses/LICENSE-2.0
+
+ Unless required by applicable law or agreed to in writing,
+ software distributed under the License is distributed on an
+ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ KIND, either express or implied. See the License for the
+ specific language governing permissions and limitations
+ under the License.
+ */
+package com.ecyrd.jspwiki.util;
+
+import junit.framework.Test;
+import junit.framework.TestCase;
+import junit.framework.TestSuite;
+import com.ecyrd.jspwiki.util.UtilJ2eeCompat;
+
+public class UtilJ2eeCompatTest extends TestCase
+{
+
+ public void testOracle()
+ {
+ assertTrue( UtilJ2eeCompat.useOutputStream( "Oracle Containers for J2EE 10g(10.1.3.1.0 )", true ) );
+ // Do not reinitialize
+ assertTrue( UtilJ2eeCompat.useOutputStream( "Apache Tomcat/5.5.20" ) );
+ }
+
+ public void testGlassfish()
+ {
+ assertTrue( UtilJ2eeCompat.useOutputStream( "Sun Java System Application Server 9.1_02" ) );
+ }
+
+ public void testTomcat()
+ {
+ // Reinitialize
+ assertFalse( UtilJ2eeCompat.useOutputStream( "Apache Tomcat/5.5.20", true ) );
+ }
+
+ public static Test suite()
+ {
+ return new TestSuite( UtilJ2eeCompatTest.class );
+ }
+}
Modified: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/etc/selenium/readme.txt
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/etc/selenium/readme.txt?rev=692770&r1=692769&r2=692770&view=diff
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/etc/selenium/readme.txt (original)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/etc/selenium/readme.txt Sat Sep 6 20:32:08 2008
@@ -22,7 +22,7 @@
Start the Selenium server...
-java -jar tests/lib/selenium-server-0.9.2-patched.jar -interactive
+java -jar tests/lib/selenium-server-1.0-beta1.jar -interactive
Open Firefox.
Set the browser proxy to localhost:4444
@@ -33,7 +33,7 @@
CREATING TESTS
--------------
Selenium-IDE is the preferred way to create test files. The master
-test suite file is tests/etc/selenium/tests/JSPWikiTestSuite.html.
+test suite file is tests/etc/selenium/tests/TestSuite.html.
You can add a new test file (such as one recorded in Selenium-IDE) to
the suite file by appending a table row like this:
Modified: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/etc/selenium/tests/all/TestSuite.html
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/etc/selenium/tests/all/TestSuite.html?rev=692770&r1=692769&r2=692770&view=diff
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/etc/selenium/tests/all/TestSuite.html (original)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/etc/selenium/tests/all/TestSuite.html Sat Sep 6 20:32:08 2008
@@ -45,9 +45,12 @@
<tr><td><a href="./CreateGroupLoginName.html">Create Group (LoginName)</a></td></tr>
<tr><td><a href="./CreateGroupWikiName.html">Create Group (WikiName)</a></td></tr>
- <!-- User profile/preferences tests -->
- <tr><td><a href="./RenameProfile.html">Rename Profile</a></td></tr>
-
+ <!-- User profile/preferences tests -->
+ <tr><td><a href="./RenameProfile.html">Rename Profile</a></td></tr>
+
+ <!-- View Page Source Test -->
+ <tr><td><a href="./ViewPageSource.html">View Page Source</a></td></tr>
+
</tbody>
</table>
Added: incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/etc/selenium/tests/all/ViewPageSource.html
URL: http://svn.apache.org/viewvc/incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/etc/selenium/tests/all/ViewPageSource.html?rev=692770&view=auto
==============================================================================
--- incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/etc/selenium/tests/all/ViewPageSource.html (added)
+++ incubator/jspwiki/branches/JSPWIKI_2_9_STRIPES_BRANCH/tests/etc/selenium/tests/all/ViewPageSource.html Sat Sep 6 20:32:08 2008
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+<head profile="http://selenium-ide.openqa.org/profiles/test-case">
+<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
+<link rel="selenium.base" href="" />
+<title>ViewPageSource</title>
+</head>
+<body>
+<table cellpadding="1" cellspacing="1" border="1">
+<thead>
+<tr><td rowspan="1" colspan="3">ViewPageSource</td></tr>
+</thead><tbody>
+ <tr><td>store</td> <td>/@selenium.context@</td> <td>baseUrl</td></tr>
+ <tr><td>open</td> <td>${baseUrl}/Wiki.jsp?page=Main</td> <td> </td></tr>
+ <tr><td>verifyTextPresent</td> <td>You have successfully installed</td> <td> </td></tr>
+ <tr><td rowspan="1" colspan="3"> Simply do View Page Source and check if you get it<br/></td> </tr>
+ <tr><td>open</td> <td>${baseUrl}/Wiki.jsp?page=Main&skin=raw</td> <td> </td></tr>
+ <tr><td>verifyTextPresent</td> <td>You have successfully installed [JSPWiki|About].</td> <td> </td></tr>
+</tbody></table>
+</body>
+</html>