From aa31993e22d2e76dd9a361f6f294ffda226025c0 Mon Sep 17 00:00:00 2001 From: Dave Ward Date: Thu, 24 Jun 2010 15:47:38 +0000 Subject: [PATCH] =?UTF-8?q?Merged=20V3.3=20to=20HEAD=20=20=20=2020794:=20M?= =?UTF-8?q?erged=20DEV/V3.3-BUG-FIX=20to=20V3.3=20=20=20=20=20=20=2020792:?= =?UTF-8?q?=20Fix=20for=20unit=20test=20failures=20introduced=20by=20check?= =?UTF-8?q?=20in=2020771=20=20=20=20=20=20=2020791:=20ALF-3568:=20Include?= =?UTF-8?q?=20axiom=20jars=20in=20WAS=20shared=20library=20to=20solve=20Qu?= =?UTF-8?q?ickr=20connector=20issues=20=20=20=20=20=20=2020785:=20Merged?= =?UTF-8?q?=20DEV/BELARUS/V3.3-BUG-FIX-2010=5F06=5F14=20to=20DEV/V3.3-BUG-?= =?UTF-8?q?FIX=20=20=20=20=20=20=20=20=20=2020644:=20Function=20for=20the?= =?UTF-8?q?=20browser=20window=20closing=20was=20implemented.=20For=20IE?= =?UTF-8?q?=20browser=20the=20trick=20with=20window=20opener=20was=20used.?= =?UTF-8?q?=20Fixes=20ALF-1004:=20After=20closing=20Details=20Space,=20use?= =?UTF-8?q?r=20doesn't=20return=20to=20his=20previous=20location=20=20=20?= =?UTF-8?q?=20=20=20=2020784:=20Fix=20for=20ALF-3516:=20Enterprise=203.X?= =?UTF-8?q?=20/=20Impossible=20to=20Create=20a=20Blog=20with=20Special=20C?= =?UTF-8?q?haracters=20in=20the=20Title=20(=3F/!)=20=20=20=20=20=20=202078?= =?UTF-8?q?3:=20Fix=20for=20ALF-1087:=20Documents=20checked-out=20from=20S?= =?UTF-8?q?hare=20do=20not=20have=20"Upload=20new=20version"=20action=20in?= =?UTF-8?q?=20Alfresco=20Explorer=20=20=20=20=20=20=2020782:=20Added=20mul?= =?UTF-8?q?tiday=20timed=20event=20handling=20to=20week=20view=20=20=20=20?= =?UTF-8?q?=20=20=2020775:=20Merged=20V3.3=20to=20DEV/V3.3-BUG-FIX=20=20?= =?UTF-8?q?=20=20=20=20=20=20=20=2020670:=20Fix=20for=20ALF-3260:=20XSS=20?= =?UTF-8?q?attack=20is=20made=20in=20Wiki=20tab=20if=20First/Last=20user?= =?UTF-8?q?=20name=20contain=20xss.=20Also=20fixed=20double=20encoding=20e?= =?UTF-8?q?rrors=20found=20during=20regression=20testing.=20=20=20=20=20?= =?UTF-8?q?=20=2020772:=20Update=20to=20node=20browser=20to=20show=20names?= =?UTF-8?q?pace=20of=20attributes.=20=20=20=20=20=20=2020771:=20ALF-3591?= =?UTF-8?q?=20-=20transferring=20rules.=20=20=20=20=20=20=20=20=20=20-=20a?= =?UTF-8?q?lso=20extends=20the=20behaviour=20filter.=20=20=20=20=20=20=202?= =?UTF-8?q?0770:=20ALF-3186=20-=20action=20parameter=20values=20are=20not?= =?UTF-8?q?=20fully=20transferred=20-=20need=20to=20handle=20d:any=20=20?= =?UTF-8?q?=20=20=20=20=2020768:=20AVM=20-=20ALF-3611=20(OrphanReaper=20+?= =?UTF-8?q?=20PurgeTestP=20+=20additional=20NPE=20fixes)=20=20=20=20=20=20?= =?UTF-8?q?=2020765:=20(RECORD=20ONLY)=20Merged=20BRANCHES/V3.3=20to=20BRA?= =?UTF-8?q?NCHES/DEV/V3.3-BUG-FIX:=20=20=20=20=20=20=20=20=20=2020708:=20D?= =?UTF-8?q?B2=20build=20-=20add=20create/drop=20db=20ant=20targets=20(use?= =?UTF-8?q?=20DB2=20cmdline=20-=20since=20not=20possible=20via=20JDBC/SQL)?= =?UTF-8?q?=20=20=20=20=20=20=20=20=20=2020722:=20DB2=20build=20-=20run=20?= =?UTF-8?q?db2cmd=20in=20same=20window=20(follow-on=20to=20r20708)=20=20?= =?UTF-8?q?=20=20=20=20=2020764:=20Fix=20unreported=20JSON=20encoding=20is?= =?UTF-8?q?sue=20with=20links=20components=20=20=20=20=20=20=2020762:=20Fi?= =?UTF-8?q?x=20ALF-2599:=20Share=20-=20Cannot=20search=20for=20user=20curr?= =?UTF-8?q?ently=20logged=20on=20=20=20=20=20=20=2020759:=20DB2:=20fix=20F?= =?UTF-8?q?ullNodeServiceTest.testLongMLTextValues=20(ALF-497)=20=20=20=20?= =?UTF-8?q?=20=20=20=20=20=20-=20TODO:=20fix=20create=20script=20when=20me?= =?UTF-8?q?rging=20to=20HEAD=20=20=20=20=20=20=2020756:=20DB2:=20fix=20JBP?= =?UTF-8?q?MEngine*Test.*=20(ALF-3640)=20-=20follow-on=20(upgrade=20patch)?= =?UTF-8?q?=20=20=20=20=20=20=2020746:=20DB2:=20fix=20WebProjectServiceImp?= =?UTF-8?q?lTest.testCreateWebProject=20(ALF-2300)=20=20=20=20=20=20=20207?= =?UTF-8?q?44:=20DB2:=20fix=20JBPMEngine*Test.*=20(ALF-3640)=20-=20missed?= =?UTF-8?q?=20file=20=20=20=20=20=20=2020743:=20DB2:=20fix=20JBPMEngine*Te?= =?UTF-8?q?st.*=20(ALF-3640)=20=20=20=20=20=20=2020729:=20AVM=20-=20fix=20?= =?UTF-8?q?purge=20store=20so=20that=20root=20nodes=20are=20actually=20orp?= =?UTF-8?q?haned=20(ALF-3627)=20=20=20=20=20=20=20=20=20=20-=20also=20prel?= =?UTF-8?q?im=20for=20ALF-3611=20=20=20=20=20=20=2020720:=20(RECORD=20ONLY?= =?UTF-8?q?)=20ALF-3594:=20Merged=20HEAD=20to=20V3.3-BUGFIX=20=20=20=20=20?= =?UTF-8?q?=20=20=20=20=2020616:=20ALF-2265:=20Share=20'Uber=20Filter'=20p?= =?UTF-8?q?art=202=20=20=20=20=20=20=20=20=20=20=20=20=20-=20WebScriptNTLM?= =?UTF-8?q?AuthenticationFilter=20detached=20from=20its=20superclass=20and?= =?UTF-8?q?=20renamed=20to=20WebScriptSSOAuthenticationFilter=20=20=20=20?= =?UTF-8?q?=20=20=20=20=20=20=20=20=20-=20Now=20the=20filter=20simply=20ch?= =?UTF-8?q?ains=20to=20the=20downstream=20authentication=20filter=20rather?= =?UTF-8?q?=20than=20call=20its=20superclass=20=20=20=20=20=20=20=20=20=20?= =?UTF-8?q?=20=20=20-=20This=20means=20the=20same=20filter=20can=20be=20us?= =?UTF-8?q?ed=20for=20Kerberos-protected=20webscripts=20as=20well=20as=20N?= =?UTF-8?q?TLM=20=20=20=20=20=20=20=20=20=20=20=20=20-=20Wired=20globalAut?= =?UTF-8?q?henticationFilter=20behind=20webscriptAuthenticationFilter=20in?= =?UTF-8?q?=20the=20filter=20chain=20in=20web.xml=20=20=20=20=20=20=20=20?= =?UTF-8?q?=20=20=20=20=20-=20Configured=20webscriptAuthenticationFilter?= =?UTF-8?q?=20for=20Kerberos=20subsystem=20=20=20=20=20=20=2020719:=20Merg?= =?UTF-8?q?ed=20DEV/TEMPORARY=20to=20V3.3-BUGFIX=20=20=20=20=20=20=20=20?= =?UTF-8?q?=20=2020696:=20ALF-3180:=20when=20using=20NTLM=20SSO,=20a=20use?= =?UTF-8?q?r=20needs=20to=20log=20in=20first=20into=20the=20web=20UI=20bef?= =?UTF-8?q?ore=20being=20able=20to=20mount=20alfresco=20using=20CIFS=20=20?= =?UTF-8?q?=20=20=20=20=20=20=20=20=20=20=20The=20absence=20of=20the=20mis?= =?UTF-8?q?sing=20person=20creation=20logic=20in=20=E2=80=9Cthe=20org.alfr?= =?UTF-8?q?esco.filesys.auth.cifs.PassthruCifsAuthenticator.authenticateUs?= =?UTF-8?q?er()=E2=80=9D=20method=20was=20fixed.=20=20=20=20=20=20=2020718?= =?UTF-8?q?:=20Merged=20DEV/TEMPORARY=20to=20V3.3-BUGFIX=20=20=20=20=20=20?= =?UTF-8?q?=20=20=20=2020659:=20ALF-3216:=20Incomplete=20settings=20for=20?= =?UTF-8?q?Lotus=20Quickr=20=20=20=20=20=20=20=20=20=20=20=20=20The=20prot?= =?UTF-8?q?ocol,host,port=20and=20context=20are=20removed=20from=20propert?= =?UTF-8?q?ies=20and=20a=20dependency=20on=20the=20org.alfresco.repo.admin?= =?UTF-8?q?.SysAdminParams=20interface=20is=20introduced.=20=20=20=20=20?= =?UTF-8?q?=20=2020711:=20Latest=20SpringSurf=20libs=20-=20fix=20for=20ALF?= =?UTF-8?q?-3557=20=20=20=20=20=20=2020710:=20Merged=20HEAD=20to=20BRANCHE?= =?UTF-8?q?S/DEV/V3.3-BUG-FIX:=20=20=20=20=20=20=20=20=20=2020705:=20Fix?= =?UTF-8?q?=20ALF-3585:=20AtomPub=20summary=20can=20render=20first=20part?= =?UTF-8?q?=20of=20binary=20content=20resulting=20in=20invalid=20XML=20=20?= =?UTF-8?q?=20=20=20=20=2020691:=20Merged=20DEV/TEMPORARY=20to=20V3.3-BUGF?= =?UTF-8?q?IX=20=20=20=20=20=20=20=20=20=2019404:=20ALF-220:=20Editor=20ca?= =?UTF-8?q?n't=20rename=20files=20and=20folders=20via=20WebDav=20=20=20=20?= =?UTF-8?q?=20=20=20=20=20=20=20=20=20The=20Rename=20method=20of=20FileFol?= =?UTF-8?q?derService=20was=20used=20in=20case=20of=20file=20renaming=20in?= =?UTF-8?q?stead=20of=20move=20method=20in=20WebDAV=20MOVE=20command.=20?= =?UTF-8?q?=20=20=20=20=20=2020663:=20ALF-3208=20RenderingEngine=20actions?= =?UTF-8?q?=20should=20no=20longer=20appear=20in=20the=20list=20of=20avail?= =?UTF-8?q?able=20actions=20that=20can=20be=20fired=20using=20rules.=20=20?= =?UTF-8?q?=20=20=20=20=2020656:=20ALF-2645:=20LDAP=20sync=20now=20logs=20?= =?UTF-8?q?'dangling=20references'=20for=20debugging=20purposes=20=20=20?= =?UTF-8?q?=20=20=20=2020651:=20ALF-485:=20FTP=20passthru=20authenticator?= =?UTF-8?q?=20logs=20authentication=20failures=20at=20debug=20level=20to?= =?UTF-8?q?=20avoid=20noise=20in=20the=20logs=20=20=20=20=20=20=2020646:?= =?UTF-8?q?=20Merge=20V2.2=20To=20V3.3=20=20=20=20=20=20=20=20=20=2014301?= =?UTF-8?q?=20:=20RECORD=20ONLY=20-=20ETWOTWO-1227=20-=20fix=20to=20serial?= =?UTF-8?q?ize=20FSR=20deployments.=20=20=20=20=20=20=20=20=20=2014618=20:?= =?UTF-8?q?=20RECORD=20ONLY=20-=20Merge=20HEAD=20to=202.2=2013944=20:=20Af?= =?UTF-8?q?ter=20rename=20project=20deploy=20option=20disappears.=20=20=20?= =?UTF-8?q?=20=20=20=2020637:=20ALF-3123:=20Avoid=20NPE=20on=20Oracle=20wh?= =?UTF-8?q?en=20loading=20empty=20string=20values=20persisted=20through=20?= =?UTF-8?q?JMX=20and=20the=20attribute=20service=20=20=20=20=20=20=2020633?= =?UTF-8?q?:=20ALF-2057:=20LDAP=20synchronization=20lock=20now=20persists?= =?UTF-8?q?=20for=20a=20maximum=20of=20two=20minutes=20(instead=20of=2024?= =?UTF-8?q?=20hours!)=20=20=20=20=20=20=20=20=20=20-=20The=20exclusive=20l?= =?UTF-8?q?ock=20gained=20for=20LDAP=20sync=20from=20the=20JobLockService?= =?UTF-8?q?=20is=20now=20refreshed=20at=201=20minute=20intervals=20and=20n?= =?UTF-8?q?ever=20persists=20for=20more=20than=202=20minutes=20=20=20=20?= =?UTF-8?q?=20=20=2020628:=20ALF-1905:=20Allow=20use=20of=20anonymous=20bi?= =?UTF-8?q?nd=20for=20LDAP=20synchronization=20(NOT=20authentication)=20?= =?UTF-8?q?=20=20=20=20=20=20=20=20=20-=20Previously=20synchronization=20A?= =?UTF-8?q?ND=20authentication=20shared=20the=20same=20setting=20for=20jav?= =?UTF-8?q?a.naming.security.authentication,=20meaning=20that=20if=20you?= =?UTF-8?q?=20tried=20to=20use=20anonymous=20bind=20for=20the=20synchroniz?= =?UTF-8?q?ation=20side,=20the=20authentication=20side=20would=20complain.?= =?UTF-8?q?=20=20=20=20=20=20=20=20=20=20-=20Now=20there=20are=20two=20ind?= =?UTF-8?q?ependent=20environments=20declared=20for=20the=20'default'=20sy?= =?UTF-8?q?nchronization=20connection=20and=20the=20authentication=20conne?= =?UTF-8?q?ction=20=20=20=20=20=20=20=20=20=20-=20A=20new=20property=20lda?= =?UTF-8?q?p.synchronization.java.naming.security.authentication=20declare?= =?UTF-8?q?s=20the=20authentication=20type=20used=20by=20synchronization.?= =?UTF-8?q?=20Set=20to=20"none"=20for=20anonymous=20bind.=20=20=20=20=20?= =?UTF-8?q?=20=2020623:=20Fix=20for=20ALF-3188=20:=20Access=20Denied=20whe?= =?UTF-8?q?n=20updating=20doc=20via=20CIFS=20=20=20=20=20=20=2020620:=20Me?= =?UTF-8?q?rge=20DEV=20to=20V3.3-BUG-FIX=20=20=20=20=20=20=20=20=20=202045?= =?UTF-8?q?6=20-=20=20ALF-1824=20:=20Setting=20alfresco.rmi.services.host?= =?UTF-8?q?=20on=20linux=20does=20not=20use=20specified=20host/IP=20=20=20?= =?UTF-8?q?=20=20=20=2020617:=20Merged=20DEV/BELARUS/V3.3-2010=5F06=5F08?= =?UTF-8?q?=20to=20V3.3-BUG-FIX=20(with=20corrections)=20=20=20=20=20=20?= =?UTF-8?q?=20=20=20=2020606:=20ALF-651:=20Web=20Services=20client=20Conte?= =?UTF-8?q?ntUtils.convertToByteArray=20is=20broken=20=20=20=20=20=20=20?= =?UTF-8?q?=20=20=20=20=20=20-=20org.alfresco.webservice.util.ContentUtils?= =?UTF-8?q?.convertToByteArray()=20method=20has=20been=20updated=20to=20co?= =?UTF-8?q?ver=20large=20Input=20Streams=20conversion.=20=20=20=20=20=20?= =?UTF-8?q?=20=20=20=20=20=20=20-=20org.alfresco.webservice.test.ContentUt?= =?UTF-8?q?ilsTest=20is=20a=20test=20for=20the=20new=20functionality=20imp?= =?UTF-8?q?lemented=20in=20the=20ContentUtils=20class.=20=20=20=20=20=20?= =?UTF-8?q?=20=20=20=20=20=20=20-=20org.alfresco.webservice.test.resources?= =?UTF-8?q?.big-content.pdf=20is=20a=20large=20content=20for=20the=20Conte?= =?UTF-8?q?ntUtilsTest.testInputStreamToByteArrayConversion()=20test.=20?= =?UTF-8?q?=20=20=20=20=20=2020613:=20Fixed=20ALF-1746:=20Metadata=20extra?= =?UTF-8?q?ctors=20are=20unable=20to=20remove=20ALL=20aspect-related=20pro?= =?UTF-8?q?perties=20=20=20=20=20=20=20=20=20=20-=20putRawValue=20keeps=20?= =?UTF-8?q?hold=20of=20'null'=20values=20=20=20=20=20=20=20=20=20=20-=20Al?= =?UTF-8?q?l=20policies=20keep=20hold=20of=20'null'=20values=20=20=20=20?= =?UTF-8?q?=20=20=20=20=20=20-=20Only=20affects=20'carryAspectProperties?= =?UTF-8?q?=3Dfalse'=20=20=20=20=20=20=2020609:=20Merged=20HEAD=20to=20V3.?= =?UTF-8?q?3-BUG-FIX=20=20=20=20=20=20=20=20=20=2020578:=20ALF-3178=20-=20?= =?UTF-8?q?Transfer=20Service=20-=20to=20transfer=20rule=20(ie.=20ruleFold?= =?UTF-8?q?er=20with=20it's=20children)=20the=20PathHelper=20should=20allo?= =?UTF-8?q?w=20"-"=20(dash=20character)=20=20=20=20=20=20=20=20=20=2020608?= =?UTF-8?q?:=20ALF-3178=20-=20fix=20r20578=20(mis-applied=20patch)=20=20?= =?UTF-8?q?=20=20=20=20=2020594:=20WebDAV=20BitKinex=20compatibility=20fix?= =?UTF-8?q?=20-=20Let=20the=20XML=20Parser=20work=20out=20the=20body=20enc?= =?UTF-8?q?oding=20if=20it=20is=20not=20declared=20in=20the=20Content-Type?= =?UTF-8?q?=20header=20=20=20=20=20=20=2020588:=20(RECORD=20ONLY)=20Merged?= =?UTF-8?q?=20V3.3=20to=20V3.3-BUG-FIX=20=20=20=20=20=20=20=20=20=20-=20Me?= =?UTF-8?q?rged=20across=20all=20differences=20from=20V3.3=20=20=20=202077?= =?UTF-8?q?8:=20Added=20revision=20to=20version=20label.=20=20=20=2020777:?= =?UTF-8?q?=20Fix=20for=20ALF-2451=20-=20installer=20correctly=20configure?= =?UTF-8?q?=20Share=20port=20=20=20=2020722:=20DB2=20build=20-=20run=20db2?= =?UTF-8?q?cmd=20in=20same=20window=20(follow-on=20to=20r20712)=20=20=20?= =?UTF-8?q?=2020721:=20DB2=20build=20-=20fix=20create=20target=20and=20add?= =?UTF-8?q?=20"/c"=20to=20exit=20"db2cmd"=20=20=20=20=20=20=20-=20TODO:=20?= =?UTF-8?q?add=20wait/timeout=20target,=20ideally=20checking=20for=20creat?= =?UTF-8?q?ed=20DB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@20796 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../alfresco/repository/links/links.lib.ftl | 86 +++++++++---------- .../action/checkout.post.json.js | 14 +-- .../org/alfresco/repo/webdav/MoveMethod.java | 11 ++- .../alfresco/repo/webdav/WebDAVMethod.java | 10 ++- 4 files changed, 71 insertions(+), 50 deletions(-) diff --git a/config/alfresco/templates/webscripts/org/alfresco/repository/links/links.lib.ftl b/config/alfresco/templates/webscripts/org/alfresco/repository/links/links.lib.ftl index 2b7028a31e..3069b73a0a 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/repository/links/links.lib.ftl +++ b/config/alfresco/templates/webscripts/org/alfresco/repository/links/links.lib.ftl @@ -2,46 +2,46 @@ <#macro renderPerson person fieldName> <#escape x as jsonUtils.encodeJSONString(x)> - "${fieldName}": - { - <#if person.assocs["cm:avatar"]??> - "avatarRef": "${person.assocs["cm:avatar"][0].nodeRef?string}", - - "username": "${person.properties["cm:userName"]}", - "firstName": "${person.properties["cm:firstName"]!""}", - "lastName": "${person.properties["cm:lastName"]!""}" - }, + "${fieldName}": + { + <#if person.assocs["cm:avatar"]??> + "avatarRef": "${person.assocs["cm:avatar"][0].nodeRef?string}", + + "username": "${person.properties["cm:userName"]}", + "firstName": "${person.properties["cm:firstName"]!""}", + "lastName": "${person.properties["cm:lastName"]!""}" + }, <#-- - This template renders a link. + This template renders a link. --> <#macro linkJSON item> <#escape x as jsonUtils.encodeJSONString(x)> { - "url": "${item.url!''}", - "commentsUrl": "/node/${item.node.nodeRef?replace('://','/')}/comments", - "description": "${item.description!''}", - "nodeRef": "${item.node.nodeRef}", - "name": "${item.name!''}", - "title": "${item.title!''}", - "internal": ${(item.internal!false)?string}, - "createdOn": "${item.createdOn?string("MMM dd yyyy HH:mm:ss 'GMT'Z '('zzz')'")}", - <#if item.creator??> - <@renderPerson person=item.creator fieldName="author" /> - <#else> - "author": - { - "username": "${item.node.properties.creator}" - }, - - "permissions": - { - "edit": ${item.node.hasPermission("Write")?string}, - "delete": ${item.node.hasPermission("Delete")?string} - }, - "tags": [<#list item.tags as x>"${x}"<#if x_has_next>, ] + "url": "${item.url!''}", + "commentsUrl": "/node/${item.node.nodeRef?replace('://','/')}/comments", + "description": "${item.description!''}", + "nodeRef": "${item.node.nodeRef}", + "name": "${item.name!''}", + "title": "${item.title!''}", + "internal": ${(item.internal!false)?string}, + "createdOn": "${item.createdOn?string("MMM dd yyyy HH:mm:ss 'GMT'Z '('zzz')'")}", + <#if item.creator??> + <@renderPerson person=item.creator fieldName="author" /> + <#else> + "author": + { + "username": "${item.node.properties.creator}" + }, + + "permissions": + { + "edit": ${item.node.hasPermission("Write")?string}, + "delete": ${item.node.hasPermission("Delete")?string} + }, + "tags": [<#list item.tags as x>"${x}"<#if x_has_next>, ] } @@ -49,16 +49,16 @@ <#macro renderLinkList> <#escape x as jsonUtils.encodeJSONString(x)> { - "metadata": - { - "linkPermissions": - { - "create": "${links.hasPermission("CreateChildren")?string}" - } - }, - <@gen.pagedResults data=data ; item> - <@linkJSON item=item /> - + "metadata": + { + "linkPermissions": + { + "create": "${links.hasPermission("CreateChildren")?string}" + } + }, + <@gen.pagedResults data=data ; item> + <@linkJSON item=item /> + } @@ -66,7 +66,7 @@ <#macro renderLink> <#escape x as jsonUtils.encodeJSONString(x)> { - "item": <@linkJSON item=item /> + "item": <@linkJSON item=item /> } \ No newline at end of file diff --git a/config/alfresco/templates/webscripts/org/alfresco/slingshot/documentlibrary/action/checkout.post.json.js b/config/alfresco/templates/webscripts/org/alfresco/slingshot/documentlibrary/action/checkout.post.json.js index 813fe54db5..3894fae490 100644 --- a/config/alfresco/templates/webscripts/org/alfresco/slingshot/documentlibrary/action/checkout.post.json.js +++ b/config/alfresco/templates/webscripts/org/alfresco/slingshot/documentlibrary/action/checkout.post.json.js @@ -25,15 +25,15 @@ function runAction(p_params) // Ensure the file is versionable if (!assetNode.hasAspect("cm:versionable")) { - var props = new Array(1); - props["cm:autoVersionOnUpdateProps"] = false; - assetNode.addAspect("cm:versionable", props); + var props = new Array(1); + props["cm:autoVersionOnUpdateProps"] = false; + assetNode.addAspect("cm:versionable", props); } if (assetNode.versionHistory == null) { - // Create the first version manually so we have 1.0 before checkout - assetNode.createVersion("", true); + // Create the first version manually so we have 1.0 before checkout + assetNode.createVersion("", true); } // Checkout the asset @@ -43,6 +43,10 @@ function runAction(p_params) status.setCode(status.STATUS_INTERNAL_SERVER_ERROR, "Could not checkout: " + p_params.path); return; } + + // Extra property to allow the full series of actions via the Explorer client + workingCopy.properties["cm:workingCopyMode"] = "offlineEditing"; + workingCopy.save(); var resultId = assetNode.name, resultNodeRef = workingCopy.nodeRef.toString(); diff --git a/source/java/org/alfresco/repo/webdav/MoveMethod.java b/source/java/org/alfresco/repo/webdav/MoveMethod.java index 5e339c383a..20b0b37d61 100644 --- a/source/java/org/alfresco/repo/webdav/MoveMethod.java +++ b/source/java/org/alfresco/repo/webdav/MoveMethod.java @@ -68,6 +68,15 @@ public class MoveMethod extends AbstractMoveOrCopyMethod checkNode(fileInfo); - fileFolderService.move(sourceNodeRef, destParentNodeRef, name); + if (getNodeService().getPrimaryParent(sourceNodeRef).getParentRef().equals(destParentNodeRef)) + { + // It is renaming operation + fileFolderService.rename(sourceNodeRef, name); + } + else + { + // It is move operation + fileFolderService.move(sourceNodeRef, destParentNodeRef, name); + } } } diff --git a/source/java/org/alfresco/repo/webdav/WebDAVMethod.java b/source/java/org/alfresco/repo/webdav/WebDAVMethod.java index f59dbd44cd..fd0b65a23c 100644 --- a/source/java/org/alfresco/repo/webdav/WebDAVMethod.java +++ b/source/java/org/alfresco/repo/webdav/WebDAVMethod.java @@ -383,7 +383,15 @@ public abstract class WebDAVMethod factory.setNamespaceAware(true); DocumentBuilder builder = factory.newDocumentBuilder(); - body = builder.parse(new InputSource(m_request.getReader())); + if (m_request.getCharacterEncoding() == null) + { + // Let the XML parser work out the encoding if it is not explicitly declared in the HTTP header + body = builder.parse(new InputSource(m_request.getInputStream())); + } + else + { + body = builder.parse(new InputSource(m_request.getReader())); + } } catch (ParserConfigurationException e) {