Hi,

seems like you have also encountered the issue reported here:
http://www.pubbs.net/201005/xwiki/10944-xwiki-users-configuring-open-office-server.html

Your suggestions sounds good (but may be you should have used
$util.clearName() for cleaning names). Anyway, you should create a JIRA
issue at jira.xwiki.org under officeimporter component and attach your
suggestions as a patch. I'll review the patch and apply it.

Thanks.

- Asiri

On Tue, May 11, 2010 at 1:45 AM, Wouter Boasson <wouter.boas...@rivm.nl>wrote:

> Dear reader,
>
> Version: XWiki/XE 2.2.4
>
> I gave the Office importer some treatment to make it work conform
> expectations. Maybe interesting for others?
> Whats weird is, that in IE7 it proposes an ugly document name, something
> like: c-fakepath etc. So I modified XWiki.OfficeImporterResults to strip
> everything in front of the actual documentname:
>
>
> #set($fileName=$fileUpload.getFileName("filePath").replaceAll("^.*[\\]",""))
>
> Then, I added a check for an empty spacename (otherwise you'll end-up with
> a document in the XWiki space, which is probably not what you want), and
> also strip any considered 'dangerous' character from the documentname (such
> as &^@, accents, etc):
>
> ###########################
> ## Validate Target Space ##
> ###########################
>  #if(! $request.targetSpace)
>    {{error}}$msg.get("xe.officeimporter.results.missingspace",
> [$goBack]){{/error}}
>  #else
>    #if( $request.targetSpace == "" )
>      {{error}}$msg.get("xe.officeimporter.results.missingspace",
> [$goBack]){{/error}}
>    #else
>      ## #set($targetSpace=$request.targetSpace.replaceAll("[:/&=+?#]",
> "-"))
>      ##
> #set($targetSpace=$request.targetSpace.replaceAll("[^a-zA-Z0-9-_~]","_").replaceAll("
> \\.\\/", "").replaceAll('"',""))
>      #set($targetSpace=$request.targetSpace.replaceAll(" \\.\\/",
> "").replaceAll("[\=\&\@'\\/()]","-").replaceAll('"',"").replaceAll("[^a-zA-Z0-9-_~]","_"))
>    #end
>  #end
> ##########################
> ## Validate Target Page ##
> ##########################
>  #if(! $request.targetPage)
>    {{error}}$msg.get("xe.officeimporter.results.missingpage",
> [$goBack]){{/error}}
>  #else
>    ## #set($targetPage=$request.targetPage)
>    ##
> #set($targetPage=$request.targetPage.replaceAll("[^a-zA-Z0-9-_~]","_").replaceAll("/",
> "-").replaceAll('"',""))
>    #set($targetPage=$request.targetPage.replaceAll("[\=\&\@'\\/()]",
> "-").replaceAll('"',"").replaceAll("[^a-zA-Z0-9-_~]","_"))
>  #end
>
> Finally, I did not want to present the menu option at all for users who
> have no rights to create documents:
> In: templates/menuview.vm
>  ## #if($canImport) (original)
>  #if($canImport && $hasCreatePage)
>    #submenuitem($xwiki.getURL('XWiki.OfficeImporter', 'view')
> $msg.get('core.menu.create.pageFromOffice') 'tmActionImport')
>  #end
>
> More of this to follow, hopefully useful for others!
>
> Regards,
> Wouter
> _______________________________________________
> users mailing list
> users@xwiki.org
> http://lists.xwiki.org/mailman/listinfo/users
>
_______________________________________________
users mailing list
users@xwiki.org
http://lists.xwiki.org/mailman/listinfo/users

Reply via email to