Modified: incubator/jspwiki/trunk/src/WebContent/templates/default/PageInfo.jsp URL: http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/WebContent/templates/default/PageInfo.jsp?rev=917294&r1=917293&r2=917294&view=diff ============================================================================== --- incubator/jspwiki/trunk/src/WebContent/templates/default/PageInfo.jsp (original) +++ incubator/jspwiki/trunk/src/WebContent/templates/default/PageInfo.jsp Sun Feb 28 21:12:40 2010 @@ -1,4 +1,4 @@ -<%-- +<%-- JSPWiki - a JSP-based WikiWiki clone. Licensed to the Apache Software Foundation (ASF) under one @@ -16,7 +16,7 @@ "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. + under the License. --%> <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> <%@ taglib uri="http://jakarta.apache.org/jspwiki.tld" prefix="wiki" %> @@ -47,7 +47,7 @@ <wiki:Param name="page" value="${wikiActionBean.page.name}" /> </wiki:Tab> </wiki:Permission> - + <%-- Attachments tab --%> <wiki:Tab id="attachments" accesskey="a" title="${wiki:attachmentsTitle(request.Locale, wikiActionBean.attachments)}"> @@ -66,10 +66,14 @@ <td colspan="2"><s:errors field="newAttachments" /></td> </tr> <tr> + <td><s:label for="attachfile" name="attach.add.selectfile" /></td> + <td><s:file name="newAttachments[0]" id="attachfile0" /></td> +<%-- <td><s:label for="attachfile0" name="attach.add.selectfile" /></td> <td><s:file name="newAttachments[0]" id="attachfile0" /><br/> <s:file name="newAttachments[1]" id="attachfile1" /><br/> <s:file name="newAttachments[2]" id="attachfile2" /></td> +--%> </tr> <tr> <td><s:label for="attachnote" name="attach.add.changenote" /></td> @@ -92,7 +96,7 @@ <%-- Info tab --%> <wiki:Tab id="info" titleKey="info.tab" accesskey="i"> - + <%-- Rename page --%> <wiki:Permission permission="rename"> <s:form beanclass="org.apache.wiki.action.RenameActionBean" class="wikiform" id="renameform" method="post" acceptcharset="UTF-8" > @@ -106,7 +110,7 @@ </p> </s:form> </wiki:Permission> - + <%-- Delete page --%> <wiki:Permission permission="delete"> <s:form beanclass="org.apache.wiki.action.DeleteActionBean" class="wikiform" id="deleteForm" method="post" acceptcharset="UTF-8"> @@ -116,7 +120,7 @@ </p> </s:form> </wiki:Permission> - + <%-- Referring pages, previous versions --%> <jsp:include page="${'tabs/PageInfoTab.jsp'}" />
Added: incubator/jspwiki/trunk/src/WebContent/templates/default/editors/wysiwyg.jsp URL: http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/WebContent/templates/default/editors/wysiwyg.jsp?rev=917294&view=auto ============================================================================== --- incubator/jspwiki/trunk/src/WebContent/templates/default/editors/wysiwyg.jsp (added) +++ incubator/jspwiki/trunk/src/WebContent/templates/default/editors/wysiwyg.jsp Sun Feb 28 21:12:40 2010 @@ -0,0 +1,235 @@ +<%-- + 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. +--%> +<%@ page language="java" pageEncoding="UTF-8" %> +<%@ taglib uri="http://jakarta.apache.org/jspwiki.tld" prefix="wiki" %> +<%@ page import="java.util.Properties" %> +<%@ page import="org.apache.wiki.*" %> +<%@ page import="org.apache.wiki.action.WikiContextFactory" %> +<%@ page import="org.apache.wiki.auth.*" %> +<%@ page import="org.apache.wiki.auth.permissions.*" %> +<%@ page import="org.apache.wiki.render.*" %> +<%@ page import="org.apache.wiki.parser.JSPWikiMarkupParser" %> +<%@ page import="org.apache.wiki.ui.*" %> +<%@ page import="org.apache.wiki.util.TextUtil" %> +<%@ page import="org.apache.wiki.filters.*" %> +<%@ page import="org.apache.wiki.api.WikiPage" %> +<%@ page import="org.apache.commons.lang.*" %> + +<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> +<%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> +<%@ taglib uri="http://stripes.sourceforge.net/stripes.tld" prefix="s" %> +<%@ page import="org.apache.wiki.action.WikiContextFactory" %> +<%-- + This provides a WYSIWYG editor for JSPWiki, based on mooeditable. + + FIXME: + first hack of the wysiwyg editor for jspwiki + + Clientside js is based on "mooeditable". + See http://github.com/cheeaun/mooeditable, by Lim Chee Aun. + +--%> +<% + + WikiContext context = WikiContextFactory.findContext( pageContext ); + WikiEngine engine = context.getEngine(); + //c.setVariable( RenderingManager.WYSIWYG_EDITOR_MODE, Boolean.TRUE ); + //c.setVariable( WikiEngine.PROP_RUNFILTERS, "false" ); + + WikiPage wikiPage = context.getPage(); + //String originalCCLOption = (String)wikiPage.getAttribute(JSPWikiMarkupParser.PROP_CAMELCASELINKS ); + //wikiPage.setAttribute( JSPWikiMarkupParser.PROP_CAMELCASELINKS, "false" ); + + //String usertext = EditorManager.getEditedText(pageContext); + String usertext = engine.getPureText( wikiPage ); + + + //FIXME: seems to be broken + //probably the default layout is invoked before these lines are executed. + //Needs to be refactored (ref v2.x) + TemplateManager.addResourceRequest( context, "script", "scripts/wysiwyg/MooEditable.js" ); + TemplateManager.addResourceRequest( context, "css", "scripts/wysiwyg/MooEditable.SilkTheme.css" ); +%> +<script type="text/javascript" src="<wiki:Link format='url' jsp='scripts/wysiwyg/MooEditable.js' />"></script> + +<link rel="stylesheet" media="screen, projection, print" type="text/css" href="<wiki:Link format='url' jsp='scripts/wysiwyg/MooEditable.css' />" /> + +<link rel="stylesheet" media="screen, projection, print" type="text/css" href="<wiki:Link format='url' jsp='scripts/wysiwyg/MooEditableSilkTheme.css' />" /> + +<wiki:CheckRequestContext context="edit"> +<wiki:NoSuchPage> <%-- this is a new page, check if we're cloning --%> +<% + String clone = request.getParameter( "clone" ); + if( clone != null ) + { + WikiPage p = engine.getPage( clone ); + if( p != null ) + { + AuthorizationManager mgr = engine.getAuthorizationManager(); + PagePermission pp = new PagePermission( p, PagePermission.VIEW_ACTION ); + + try + { + if( mgr.checkPermission( context.getWikiSession(), pp ) ) + { + usertext = engine.getPureText( p ); + } + } + catch( Exception e ) { /*log.error( "Accessing clone page "+clone, e );*/ } + } + } +%> +</wiki:NoSuchPage> +<%-- + if( usertext == null ) + { + usertext = engine.getPureText( context.getPage() ); + } +--%> +</wiki:CheckRequestContext> +<% + if( usertext == null ) usertext = ""; + + RenderingManager renderingManager = new RenderingManager(); + + // since the WikiProperties are shared, we'll want to make our own copy of it for modifying. + Properties props = new Properties(); + props.putAll( engine.getWikiProperties() ); + props.setProperty( "jspwiki.renderingManager.renderer", WysiwygEditingRenderer.class.getName() ); + renderingManager.initialize( engine, props ); + + //String pageAsHtml = StringEscapeUtils.escapeJavaScript( renderingManager.getHTML( context, usertext ) ); + String pageAsHtml = renderingManager.getHTML( context, usertext ) ; + + // Disable the WYSIWYG_EDITOR_MODE and reset the other properties immediately + // after the XHTML has been rendered. + //context.setVariable( RenderingManager.WYSIWYG_EDITOR_MODE, Boolean.FALSE ); + //context.setVariable( WikiEngine.PROP_RUNFILTERS, null ); + //wikiPage.setAttribute( JSPWikiMarkupParser.PROP_CAMELCASELINKS, originalCCLOption ); + +%> + +<div style="width:100%"> <%-- Required for IE6 on Windows --%> + + <%-- Print any validation errors --%> + <s:errors /> + + <s:form beanclass="org.apache.wiki.action.EditActionBean" + class="wikiform" + id="editform" + method="post" + acceptcharset="UTF-8" + enctype="application/x-www-form-urlencoded" > + + <%-- If any conflicts, print the conflicting text here --%> + <c:if test="${not empty wikiActionBean.conflictText}"> + <p> + <s:label for="conflictText" /> + <s:textarea name="conflictText" readonly="true" /> + </p> + </c:if> + + + <%-- EditActionBean relies on these being found. So be careful, if you make changes. --%> + <p id="submitbuttons"> + <s:hidden name="page" /> + <s:hidden name="startTime" /> + <s:hidden name="append" /> + <c:set var="saveTitle" scope="page"><fmt:message key="editor.plain.save.title" /></c:set> + <wiki:CheckRequestContext context='edit'> + <s:submit name="save" accesskey="s" title="${saveTitle}" /> + </wiki:CheckRequestContext> + <wiki:CheckRequestContext context='comment'> + <s:submit name="comment" accesskey="s" title="${saveTitle}" /> + </wiki:CheckRequestContext> + + <c:set var="previewTitle" scope="page"><fmt:message key="editor.plain.preview.title" /></c:set> + <s:submit name="preview" accesskey="v" title="${previewTitle}" /> + + <c:set var="cancelTitle" scope="page"><fmt:message key="editor.plain.cancel.title" /></c:set> + <s:submit name="cancel" accesskey="q" title="${cancelTitle}" /> + </p> + + <%-- Fields for changenote, renaming etc. --%> + <table> + <tr> + <td> + <s:label for="changenote" name="changenote" /> + </td> + <td> + <s:text name="changenote" id="changenote" size="50" maxlength="80" /> + </td> + </tr> + + <wiki:CheckRequestContext context="comment"> + <tr> + <td><s:label for="author" accesskey="n" name="author" /></td> + <td><s:text id="author" name="author" /> + <s:checkbox id="remember" name="remember" /> + <s:label for="remember" name="remember" /> + </td> + </tr> + <tr> + <td><s:label for="link" accesskey="m" name="editor.plain.email" /></td> + <td><s:text id="link" name="link" size="24" /></td> + </tr> + </wiki:CheckRequestContext> + + </table> + + <%-- FIXME: just for testing... + <s:textarea id="htmlPageText" name="htmlPageText" class="editor" rows="10" cols="80" /> + --%> + <%-- FIXME: + Remove all <a class="hashlink" >.</a> from the pageAsHtml !! + --%> + <textarea id="htmlPageText" name="htmlPageText" class="editor" rows="20" cols="80" ><%= pageAsHtml%></textarea> + + <%-- FIXME: fake textarea to fool the action bean --%> + <div style="display:none"> + <s:textarea id="wikiText" name="wikiText" class="editor" rows="20" cols="80" /> + </div> + + + <%-- Spam detection fields --%> + <wiki:SpamProtect /> + +</s:form> +</div> + +<script type="text/javascript"> +//<![CDATA[ + +//FIXME: move this to jspwiki-edit.js +window.addEvent('load', function(){ + $('htmlPageText').mooEditable(); + + // Post submit + /* + $('editform').addEvent('submit', function(e){ + alert($('htmlPageText').value); + return true; + }); + */ +}); + +//]]> +</script> Added: incubator/jspwiki/trunk/src/WebContent/templates/default/images/delete.png URL: http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/WebContent/templates/default/images/delete.png?rev=917294&view=auto ============================================================================== Binary file - no diff available. Propchange: incubator/jspwiki/trunk/src/WebContent/templates/default/images/delete.png ------------------------------------------------------------------------------ svn:executable = * Propchange: incubator/jspwiki/trunk/src/WebContent/templates/default/images/delete.png ------------------------------------------------------------------------------ svn:mime-type = application/octet-stream Modified: incubator/jspwiki/trunk/src/WebContent/templates/default/jspwiki.css URL: http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/WebContent/templates/default/jspwiki.css?rev=917294&r1=917293&r2=917294&view=diff ============================================================================== --- incubator/jspwiki/trunk/src/WebContent/templates/default/jspwiki.css (original) +++ incubator/jspwiki/trunk/src/WebContent/templates/default/jspwiki.css Sun Feb 28 21:12:40 2010 @@ -66,6 +66,8 @@ - error (light pink) : #ffe0e0/.#ERROR#./ - diff inserted lines: #9f9/.#DIFFADD#./ - diff deleted lines: #f93/.#DIFFDEL#./ + - slimbox overlay color: #000/.#SLIMBOX-OVERLAY#./ + - slimbox main backgroun: #fff/.#SLIMBOX#./ History: * April 07, based on BrushedTemplate, v2.6/v2.8 @@ -133,11 +135,11 @@ DOM structure: (start code) -<body class="view|edit|comment hidefav"> +<body class="view|edit|comment fullscreen"> <div id="wikibody" class="<empty>|fav-right"> <div id="header"> ................ </div> <div id="content"> - <div id="main"> + <div id="page"> <div id="actionsTop"> ........ </div> ... page content goes here ... <div id="actionsBottom"> ..... </div> @@ -150,7 +152,7 @@ */ -/*DEBUG./ +/*DEBUG #header,#content,#footer { border:1px solid red; } #page,#favorites, .applicationlogo, .breadcrumbs, .userbox, .searchbox, .titlebox { border:1px solid lime; } #previewcontent, #info, #pagecontent, #attach, #findcontent { border:1px solid pink; } @@ -175,15 +177,18 @@ } .fav-right #page { float:left; - xxmargin:0 10px 0 0; /*replace by split-handle ? */ + _margin-left:auto; _margin-right:-3px;/* ie hack - three pixel text jog */ } -.hidefav #page, .hidefav .fav-right #page { +body.fullscreen #page, body.fullscreen .fav-right #page { width:auto; float:none; } -.hidefav #favorites { - width:20%; +body.fullscreen #favorites { + xposition:relative; + xtop:0; + xbackground:white; + xz-index:5; } .fav-right #header .applicationlogo { right:2em; @@ -461,6 +466,9 @@ font:110% Monaco, "Courier New", Courier, monospace; line-height:1.1; border:1px solid #ddd/*#BORDER#*/; + -moz-border-radius:3px; + -webkit-border-radius:3px; + padding:0 0.25em; } pre { clear:both; @@ -624,8 +632,8 @@ clear:both; margin:1em 0; padding:1em 32px; - -moz-border-radius:3px; - -webkit-border-radius:3px; + -moz-border-radius:5px; + -webkit-border-radius:5px; } td .information, td .warning, td .error { margin:0; /* make sure to fill the table cell with the background color*/ @@ -677,6 +685,20 @@ #upload { float:left; } +ul.fileupload { + margin:0; + padding:0; +} +.fileupload li { + list-style:none; + padding:0.5em 0; +} +.fileupload .delete { + float:left; + display:block; + background-image:url("images/delete.png"); + cursor:pointer; +} #progressbar { float:left; margin-left:1em; @@ -703,6 +725,7 @@ /* Style: AttachmentTab Add attachment icons per type of attachement. + Ref. http://www.w3schools.com/media/media_mimeref.asp DOM structure > <div class="mime image-gif"> ... </div> @@ -742,21 +765,19 @@ display:none; } a.external { - padding-right:6px; + /*padding-right:6px; background:transparent url(images/out.png) no-repeat center right; -} -/* FIXME -a.external { padding-right:18px; - background:transparent url(images/extern.gif) no-repeat center right; + background:transparent url(images/extern.gif) no-repeat center right;*/ } a.external[href^='mailto:'] { padding-right:20px; background:transparent url(images/email.png) no-repeat center right; } -a.createpage{ +/* +a.createpage { padding-right:20px; - background:transparent url(images/pencil.png) no-repeat center right; + background:transparent url(images/pencil.png) no-repeat center right ; } */ /* fixme @@ -986,7 +1007,7 @@ } .resize-bar { background:#ddd/*#BORDER#*/ url(images/resize-horizontal.gif) top center; - cursor:s-resize; /* css3 row-resize */ + cursor:row-resize; /*ns-resize;*/ /* css3 row-resize */ font-size:1px; height:6px; line-height:6px; @@ -1074,46 +1095,57 @@ */ #favorites { overflow:hidden; /*avoid overflow for wide content of leftmenu or leftmenufooter */ - padding-top:1.75em; + padding:1.75em 0.5em 0.5em 0.5em; } #page { position:relative; - padding:0 0 0 16px; -} -.fav-right #page { - padding:0 16px 0 0; + padding:0 1em; } -#page .splitbar { +#page a.splitbar { position:absolute; - width:4px; - top:1.75em; /* 1.5line-height + ?0.25 */ - left:12px; - bottom:2em; /* 1.5line-height + 0.5margin-bottom */ - background:#f9f9f9/*#COMMENT#*/; - xxborder-top:1px solid #f9f9f9/*#COMMENT#*/; - cursor:pointer; + width:1em; + top:1.75em; /* tabmenu height = 1.5line-height + ?0.25 */ + bottom:1.75em; /* page-bottom height = 1.5line-height + 0.5margin-bottom */ + left:0; + cursor:w-resize; /*col-resize*/ + z-index:5; +} +.fullscreen #page .splitbar { + cursor:e-resize; } .fav-right #page .splitbar { left:auto; - right:12px; + right:0; + cursor:e-resize; +} +.fav-right .fullscreen #page .splitbar { + cursor:w-resize; } -#page .splitbar.hover { - background:#eee; +/* if needed, overwrite standard :hover treatment +a.splitbar:hover{ + background-color:#adf4ff; } -#splitPointer, .hidefav .fav-right #splitPointer { +*/ + +/* +FIXME: can be removed, when cursor:x-resize is supported by the browser + Check IE7/IE6 + +#splitPointer, .fullscreen .fav-right #splitPointer { position:absolute; - width:4px; - height:12px; + width:5px; + height:#1px; background:url(images/arrleft.gif) top left no-repeat; - margin-top:-16px; + margin-top:-5px; z-index:5; } -.hidefav #splitPointer, .fav-right #splitPointer { +.fullscreen #splitPointer, .fav-right #splitPointer { background-image:url(images/arrright.gif); -} +*/ + .wikiversion, .rssfeed { font-size:90%; padding:0.25em; @@ -1398,8 +1430,9 @@ #hiddenmorepopup { display:none; - border:1px solid #ddd/*#BORDER#*/; + xborder:1px solid #ddd/*#BORDER#*/; } +/* replace by .more class ??*/ #hiddenmorepopup ul { list-style:none; margin:0; @@ -1471,8 +1504,8 @@ so the majority of visible styles are applied to two inner {{span}}. DOM structure -> <a class=".btn"><span><span>...</span></span></a> -> <button class=".btn"><span><span>...</span></span></button> +> <a class="btn"><span><span>...</span></span></a> +> <button class="btn"><span><span>...</span></span></button> Credit: http://stopdesign.com/eg/buttons/3.0/code.html @@ -1612,10 +1645,9 @@ */ .spin { - background:url(images/spin.gif) no-repeat; + background:url(images/spin.gif) no-repeat center; height:16px; - text-indent:20px; - xmargin:0 0.5em; + text-indent:20px; /* shift optional text inside spin element */ } /* @@ -2277,7 +2309,7 @@ color:blue; font:bold small Monaco, "Courier New", Courier, monospace; width:1.2em; - height:1em; + line-height:1.2em; } .collapseOpen, .collapseClose { cursor:pointer; @@ -2333,183 +2365,171 @@ /* Style: SLIMBOX - SLIMBOX is the attachment viewer etc. + SLIMBOX is a modal viewer for images, video, wikipages + and external sites (iframe) Credit: - Todo + Inspired by Slimbox by Christophe Bleys. + (see http://www.digitalia.be/software/slimbox) + and the mediaboxAdvanced by John Einselen + (see http://iaian7.com/webcode/mediaboxAdvanced) + +DOM Structure: + DOM structure of the JSPWiki Slimbox viewer. + (start code) + <div id="lbOverlay"></div> + <div id="lbCenter" class="or spin"> + <div id="lbImage"> + <!-- img or iframe element is inserted here --> + </div> + </div> + <div id="lbBottomContainer"> + <div id="lbBottom"> + <a id="lbCloseLink"/> + <a id="lbNextLink"/> + <a id="lbPrevLink"/> + <div id="lbCaption"> + <div id="lbNumber"> + </div> + </div> + (end) */ -a.slimbox { - font-weight:bold; - font-size:1.3em; - padding:0 0.25em; +.slimboxbtn { + padding:0 0.5em; color:transparent; - background: url(images/slimbox.gif) no-repeat center; -} -a.slimbox:visited, a.slimbox:active, a.slimbox:link { - text-decoration:none; - border:none; -} -a.slimbox:hover { - background-color:#ddd/*#HOVER#*/; + background: transparent url(images/slimbox.gif) no-repeat center; } - #lbOverlay { - position:absolute; - left:0; + position:fixed; + _position:absolute; + z-index:99; top:0; + left:0; width:100%; - background-color:#000; + height:100%;/**/ + background-color:#000;/*#SLIMBOX-OVERLAY#*/ cursor:pointer; - } -#lbCenter, #lbBottomContainer { +#lbCenter { position:absolute; - left:50%; - overflow:hidden; - font: 90% Verdana, Helvetica, sans-serif; - color:#666; - line-height:1.5; - text-align:left; + z-index:99;/**/ + padding:10px; + /*left:50%;*/ + background-color:rgba(0,0,0,0.85); + padding-bottom:3em; /* placeholder for lbBottomContainer */ + -moz-border-radius:10px; + -webkit-border-radius:10px; + -moz-box-shadow:0 10px 40px rgba(0,0,0,0.5); + -webkit-box-shadow:0 10px 40px rgba(0,0,0,0.5); } #lbBottomContainer { - padding:0 12px; -} -#lbCenter { - padding:12px 12px 0 12px; -} -#lbCenter a { - outline:none; -} -.lbLoading { - background:#fff url(images/spin.gif) no-repeat center; + position:absolute; + z-index:99;/**/ + padding:1em; + /*left:50%;*/ + overflow:hidden;_overflow:visible;_zoom:1;/*FIXME ?? inherit .line*/ } #lbImage { - border:10px solid #fff; - border-top-width:1.4em; - background-color:#fff; - background-repeat:no-repeat; + /*position:absolute;*/ + top:0; + left:0; + background-repeat:no-repeat; /* needed in case image is smaller the minimal window size */ background-position:center center; - position:relative; } #lbBottom { - border:10px solid #fff; - border-top-style:none; - background-color:#fff; + color: #999; /*#SLIMBOX-TEXT#*/ + line-height: 1.5; + text-align: left; } -#lbBottom div { +#lbBottom * { + padding:0.5em; white-space:nowrap; - overflow:hidden; -} -#lbCaption, #lbPrevLink, #lbNextLink { - font-weight:bold; -} -#lbPrevLink { - padding-right:1em; + /*overflow:hidden;*/ } -#lbNextLink { - padding-left:1em; +#lbBottom div { + float:left; } -#lbCloseLink { +#lbBottom a { display:block; - position:absolute; - width:28px; - height:28px; - top:0; - right:0; - background:url(images/slimbox_close.png) no-repeat; - z-index:10; + float:right; + color:inherit; + font-weight:bold; + outline:none; + text-decoration:none; + cursor:pointer; } -/* gif icons for ie */ -* html #lbCloseLink { - background:url(images/slimbox_close.gif) 4px 12px no-repeat; +#lbBottom a:hover { + color:white !important; + background-color:rgba(0,0,0,0.5); + -moz-border-radius:10px; + -webkit-border-radius:10px; } -* html #lbCloseLink:hover { - background-image:url(images/slimbox_close_hover.gif); +/* +#lbNumber { } - -#lbBottomContainer *:visited, #lbBottomContainer *:active, #lbBottomContainer *:link, -#lbCenter *:visited, #lbCenter *:active, #lbCenter *:link { - text-decoration:none; - border-bottom:none; +*/ +#lbCaption { + font-weight:bold; } + /* Style: Category + +DOM structure: +(start code) + <span> + <a href=".." class="wikipage categoryLink">category-page></a> + <div class="categoryPopup"> + <p><a href=".." class="wikipage categoryLink">category-page</a></p> + <ul> + <li><a>..</a></li> + </ul> + </div> + </span> +(end) */ .categoryLink { border-bottom:2px solid #545454; text-decoration:none; } .categoryPopup { - color:white; z-index:100; - font-size:90%; - margin-top:2px; position:absolute; z-index:10; background-color:rgba(0,0,0,0.7); -moz-border-radius:10px; - -webkit-border-radius:5px; - -webkit-box-shadow:0 0 5px rgba(0, 0, 0, 0.5); -} -/* ie6 hack */ -* html .categoryPopup { - width:240px; -} -/* ie7 hack */ -*:first-child+html .categoryPopup { - width:240px; + -webkit-border-radius:10px; + -webkit-box-shadow:0 0 10px rgba(0, 0, 0, 0.5); + _width:240px; /* IEx: width of the tip.png background image */ } -.categoryPopup a:link, .categoryPopup a:active,.categoryPopup a:visited { +.categoryPopup a { color:white; text-decoration:none; } -.categoryTitle { - padding:4px; +.categoryPopup p { + margin:0; + padding:0.25em 10px; font-weight:bold; + _background:url(images/tip.png) top left; } -/* ie6 hack */ -* html .categoryTitle { - background:url(images/tip.png) top left; -} -/* ie7 hack */ -*:first-child+html .categoryTitle { - background:url(images/tip.png) top left; -} -.categoryText { - padding:4px 0; -} -/* ie6 hack */ -* html .categoryText { - background:url(images/tip.png) bottom right; -} -/* ie7 hack */ -*:first-child+html .categoryText { - background:url(images/tip.png) bottom right; -} -.categoryText ul { +div.categoryPopup ul { + margin:0; + padding:0; + _background:url(images/tip.png) bottom right; list-style:none; - margin:0 !important; - padding:0 !important; } -.categoryText li { +div.categoryPopup li { display:block; - padding:0 8px; + padding:0.15em 10px; } .categoryPopup .hover { background-color:rgba(0,0,0,0.5); -moz-border-radius:10px; - -webkit-border-radius:5px; -} -/* ie6 hack */ -* html .categoryPopup .hover { - background-color:black; -} -/* ie7 hack */ -*:first-child+html .categoryPopup .hover { - background-color:black; + -webkit-border-radius:10px; + _background-color:black; } @@ -2550,6 +2570,19 @@ .atv { color: #080; } .dec { color: #606; } +/* linenumbers */ +.prettylines { + float:left; + margin:0; + color:#aaa; + text-align:right; + background:none; + border-color:transparent; +} +.prettyprint { + clear:right; +} + @media print { .str {color: #060; } .kwd {color: #006; font-weight: bold; } @@ -2797,7 +2830,7 @@ overflow-x:visible; } /* use !important to overwrite css style on following specified blocks */ -.pagename, #header, #footer, #page { +/*.pagename, #header, #footer, #xpage { width:100% !important; margin:0 !important; padding:0 !important; @@ -2806,6 +2839,7 @@ position:static !important; overflow:visible !important; } +*/ .pagename { font-size:250%; margin-bottom:1.5em; Modified: incubator/jspwiki/trunk/src/WebContent/templates/default/layout/DefaultLayout.jsp URL: http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/WebContent/templates/default/layout/DefaultLayout.jsp?rev=917294&r1=917293&r2=917294&view=diff ============================================================================== --- incubator/jspwiki/trunk/src/WebContent/templates/default/layout/DefaultLayout.jsp (original) +++ incubator/jspwiki/trunk/src/WebContent/templates/default/layout/DefaultLayout.jsp Sun Feb 28 21:12:40 2010 @@ -51,7 +51,7 @@ 2) DefaultLayout injects additional JSPs that are meant to be customized. These include: - + LocalHeader.jsp : A "local header" that can contain company logos or other markup. Default=blank @@ -60,7 +60,7 @@ <head> <title> <%-- - + Title: by default, use the "view page" title --%> <s:layout-component name="headTitle"> @@ -117,6 +117,7 @@ <script type="text/javascript" src="<wiki:Link format='url' jsp='scripts/prettify.js' />"></script> <script type="text/javascript" src="<wiki:Link format='url' jsp='scripts/jspwiki-common.js' />"></script> + <script type="text/javascript" src="<wiki:Link format='url' jsp='scripts/jspwiki-slimbox.js' />"></script> <script type="text/javascript" src="<wiki:Link format='url' jsp='scripts/jspwiki-commonstyles.js' />"></script> <s:layout-component name="script" /> <%-- @@ -173,7 +174,7 @@ <div id="localHeader"> <jsp:include page="${templates['layout/LocalHeader.jsp']}" /> </div> - + <%-- Header --%> Modified: incubator/jspwiki/trunk/src/WebContent/templates/default/tabs/AttachmentsTab.jsp URL: http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/WebContent/templates/default/tabs/AttachmentsTab.jsp?rev=917294&r1=917293&r2=917294&view=diff ============================================================================== --- incubator/jspwiki/trunk/src/WebContent/templates/default/tabs/AttachmentsTab.jsp (original) +++ incubator/jspwiki/trunk/src/WebContent/templates/default/tabs/AttachmentsTab.jsp Sun Feb 28 21:12:40 2010 @@ -1,4 +1,4 @@ -<%-- +<%-- JSPWiki - a JSP-based WikiWiki clone. Licensed to the Apache Software Foundation (ASF) under one @@ -16,7 +16,7 @@ "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. + under the License. --%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %> <%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt" %> @@ -45,7 +45,7 @@ <tr> <%-- The 'title' attribute is used to sort empty cells --%> <td title="${attachment.contentType}"> - <div class="${fn:replace(attachment.contentType,'/','-')}"> </div> + <div class="mime ${fn:replace(attachment.contentType,'/','-')}" /> </td> <td title="${attachment.name}"> <s:link beanclass="org.apache.wiki.action.AttachmentActionBean" event="download"> @@ -63,6 +63,11 @@ ${attachment.version} </s:link> </td> + <%-- FIXME + Needs to return date/time converted to msec, to allow numeric sorting + eg. attachment.lastModified.getTime() ... + A ISO8601DATE does not sort properly. + --%> <td jspwiki:sortvalue="${wiki:iso8601date(attachment.lastModified)}"> <fmt:formatDate value="${attachment.lastModified}" pattern="${prefs.TimeFormat}" timeZone="${prefs.TimeZone}" /> </td> Modified: incubator/jspwiki/trunk/src/java/org/apache/wiki/Release.java URL: http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/java/org/apache/wiki/Release.java?rev=917294&r1=917293&r2=917294&view=diff ============================================================================== --- incubator/jspwiki/trunk/src/java/org/apache/wiki/Release.java (original) +++ incubator/jspwiki/trunk/src/java/org/apache/wiki/Release.java Sun Feb 28 21:12:40 2010 @@ -77,7 +77,7 @@ * <p> * If the build identifier is empty, it is not added. */ - public static final String BUILD = "210"; + public static final String BUILD = "211"; /** * This is the generic version string you should use Modified: incubator/jspwiki/trunk/src/java/org/apache/wiki/action/ViewActionBean.java URL: http://svn.apache.org/viewvc/incubator/jspwiki/trunk/src/java/org/apache/wiki/action/ViewActionBean.java?rev=917294&r1=917293&r2=917294&view=diff ============================================================================== --- incubator/jspwiki/trunk/src/java/org/apache/wiki/action/ViewActionBean.java (original) +++ incubator/jspwiki/trunk/src/java/org/apache/wiki/action/ViewActionBean.java Sun Feb 28 21:12:40 2010 @@ -62,6 +62,7 @@ private static final Logger log = LoggerFactory.getLogger( ViewActionBean.class ); private String m_renameTo = null; + private String m_wikiPage = null; private int m_version = WikiProvider.LATEST_VERSION; @@ -84,24 +85,18 @@ public void stream( HttpServletResponse response ) throws IOException { WikiContext context = getContext(); - WikiPage page = getPage(); Writer out = response.getWriter(); - out.write( "<div class='categoryTitle'>"); - out.write( context.getViewURL( page.getName() ) ); - out.write( "</div>" ); - out.write( "<div class='categoryText'>"); PluginManager mgr = context.getEngine().getPluginManager(); String result; try { - result = mgr.execute( context, "{ReferringPagesPlugin,page="+page.getName()+",max=20,before='*',after='\n'}" ); + result = mgr.execute( context, "{ReferringPagesPlugin,page="+getPage().getName()+",max=20,before='*',after='\\n'}" ); } catch (PluginException e) { result = e.getMessage(); } out.write( result ); - out.write( "</div>" ); } }; return r;
