383 Commits

Author SHA1 Message Date
Neil McErlean
30084dde24 Merge from V3.3 to HEAD
20069 Fix for unreported issue where the Rendition Service's JavaScript API cannot be used to execute ad hoc rendition definitions.

Rendition Definitions can be created and executed programmatically. This works fine via the Java Foundation API, but is broken in the JavaScript API.
The rendition nodes are not correctly created for ad hoc rendition definitions created in JavaScript.
Note that the built-in rendition definitions work fine in JavaScript.

This fix:
    - ScriptRenditionDefinition now extends ScriptAction in order to reuse its parameter handling and execution code.
    - ScriptRenditionDefinition now mimics ScriptAction so you can call
            renditionDef.execute(testSourceNode); in JavaScript.
    - more test coverage in the test_renditionService.js to reproduce the issue.
    - adds debug logging in various places in the rendition service.
    - changes ScriptAction to be a non-final class so that it can be extended by ScriptRenditionDefinition.
    - fixes some fragile asserts in test code.
    - changes a few fields to protected visibility and provides an extension point so that the rendition service can execute its "actions" as renditions rather than simple actions.
    - trivial. tidied up some unused imports in ScriptNode.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@20070 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2010-05-04 15:31:23 +00:00
N Smith
f09e9b85b1 ALF-1568 Expanded the JSON returned by the api/sites/{siteName}/invitations webscript and various other related webscripts. The JSOn now includes an "invitee" object with a structure
{  "avatar" : "avatarThumbnailURI",
   "firstName" : "John",
   "lastName" : "Smith",
   "userName" : "johnsmith"
}

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@20040 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2010-04-29 11:14:15 +00:00
Mike Hatfield
29d1e316a9 ALF-2462 - Duplicate data list item does not handle aspect properties
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@19886 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2010-04-17 01:10:23 +00:00
Mike Hatfield
783ce15a2c SAIL-10 - Data Lists in Share. Various enhancements and improvements. SAIL-106 - Edit list page. SAIL-109 - Duplicate Row. New ScriptNode API, getTypePropertyNames
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@19422 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2010-03-20 11:02:23 +00:00
Mark Rogers
03d130e99c ALF-2031 - DR and VT can't start
- undeleted and reinstated use of org.alfresco.util.Pair
   - undeleted org.alfresco.util.PropertyCheck which is used in the deployment code.
   - undeleted other org.alfresco.util.* classes which probably should never have been moved to spring surf.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@19312 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2010-03-16 15:05:47 +00:00
Mark Rogers
0c5d02d543 Transfer Service : implementing ScriptTransferService
- functionality to find transfertargets and do a synchronous transfer of a collection of nodes

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@19225 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2010-03-11 14:14:37 +00:00
Kevin Roast
e6df53908a Merged V3.2 to HEAD
19216: ENH-506 - allow script compilation to be disabled for repository tier. Fix to unreported issue with return aspect array from a ScriptNode.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@19221 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2010-03-11 12:31:51 +00:00
Derek Hulley
7a18e7e52b Removed svn:executable tag
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@19133 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2010-03-09 00:39:21 +00:00
Mark Rogers
22f074c9ab ALF-1584 - Wrong QName usage in org.alfresco.repo.jscript.ContentAwareScriptableQNameMap.get(Object name)
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@18950 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2010-03-02 14:38:37 +00:00
Paul Holmes-Higgin
cefda8c965 Updated header to LGPL
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@18931 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2010-03-01 22:48:39 +00:00
Paul Holmes-Higgin
43e93f3c14 Updated header to LGPL
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@18926 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2010-03-01 22:09:17 +00:00
Mike Hatfield
bbbb60c3af SAIL-97 - Granular permissions.
also: DocLib webscript refactor. Fix to ScriptNode's permissions API. TemplateNode's permissions API extended.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@18910 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2010-03-01 14:37:17 +00:00
David Caruana
575c970565 Merging BRANCHES/DEV/CMIS_10 to HEAD:
17717: This check-in contains changes in Java and .NET TCK tests related to CMIS-43  and CMIS-44 JIRA tasks. Also some bugs were faced out and fixed in 
   17727: CMIS-69: Alfresco to CMIS ACL mapping: Part 1: API
   17732: Merge HEAD to DEV/CMIS10
   17756: MOB-563: SQL Tests - Lexer
   17764: CMIS-69: Alfresco to CMIS ACL mapping: get ACL support
   17802: More for CMIS-69: Alfresco to CMIS ACL mapping. Implementation for applyAcl.
   17830: Fixes for CMIS lexer and parser tests
   17838: Access fix ups for access by the WS/Rest layers
   17869: 1) remote-api:
   17874: SAIL-146: Alfresco to CMIS ACL mapping: Support to group ACEs by principal id
   17883: Adjust version properties for dev/cmis10 branch.
   17885: Update OASIS CMIS TC status.
   17889: Fix issue where objectid is not rendered correctly for CMIS private working copies.
   17890: SAIL-146: Alfresco to CMIS ACL mapping: Fixes for ACL merging when reporting and ordering of ACEs. Report full permissions and not unique short names.
   17902: Fix issue where CMIS queries via GET used incorrect defaults for paging.
   17909: Fix CMIS link relations for folder tree.
   17912: Fix CMIS type descendants atompub link
   17922: Update AtomPub binding to CMIS 1.0 CD05 XSDs.
   17924: SAIL-146: Alfresco to CMIS ACL mapping: Test set using full permissions (as opposed to short unique names)
   17927: Fix content stream create/update status to comply with CMIS 1.0 CD05.
   17934: Resolve encoding issues in CMIS AtomPub binding.
   17973: SAIL-171: CMIS Renditions REST binding
   17975: SAIL-146: Alfresco to CMIS ACL mapping: Completed AllowedAction and Permissions mapping. Added missing canDeleteTree.
   17990: Update CMIS AtomPub to CD06
   17996: Updates for cmis.alfresco.com for CD06 in prep for public review 2.
   18007: WS-Bindings were updated with CMIS 1.0 cd06 changes.
   18016: CMIS web services: Add missing generated files from WSDL
   18018: CMIS index page updates for cmis.alfresco.com
   18041: Merged HEAD to DEV/CMIS_10
   18059: SAIL-227:
   18067: SAIL-157: Strict vs Non-Strict Query Language: Enforce restrictions on the use of SCORE() and CONTAINS()
   18080: Fix for SAIL-213:Bug: Query engine does not check that select list properties are valid for selectors
   18131: SAIL-156: Query Language Compliance: Fix support for LIKE, including escaping of '%' and '_' with '\'.
   18132: SAIL-156: Query Language Compliance: Fix support for LIKE, including escaping of '%' and '_' with '\': Fix underlying lucene impl for prefix and fuzzy queries to match wildcard/like
   18143: SAIL-156: Query Language Compliance: Fix and check qualifiers in IN_TREE and IN_FOLDER. Improved scoring for CONTAINS()
   18173: SAIL-245: Exclude thumbnails from normal query results
   18179: SAIL 214: Query Language Compliance: Check for valid object ids in IN_FOLDER and IN_TREE
   18210: SAIL-156:  Query Language Compliance: Support for simple column aliases in predicates/function arguments/embedded FTS. Check property/selector binding in embedded FTS.
   18211: SAIL-156:  Query Language Compliance: Support for simple column aliases in predicates/function arguments/embedded FTS. Check property/selector binding in embedded FTS.
   18215: SAIL 156: Query Language Compliance: Fix CMIS type info to reflect the underlying settings of the Alfresco type for includeInSuperTypeQuery
   18244: SAIL 156: Query Language Compliance: includeInSuperTypeQuery -> includedInSuperTypeQuery: First cut of cmis query test model. Fixed modelSchema.xml to validate
   18255: SAIL 156: Query Language Compliance: First set of tests for predicates using properties mapped to CMIS Strings.
   18261: CMIS-49 SAIL-163: Alfresco to CMIS Change Log mapping - New CMIS Audit mapping is implemented. ChangeLogDataExtractor was added.
   18263: Build Fix
   18285: SAIL 156: Query Language Compliance: Restrictions on predicates that may be used by single-valued and multi-valued properties
   18287: SAIL-186: Changes to make CMIS Rendition REST bindings pass new TCK tests
   18291: Fix Eclipse classpath problems
   18323: CMIS-44 SAIL-187: Change Log tests (WS) – Java and .NET tests for change log were implemented.
   18325: SAIL 156: Query Language Compliance: Fixes and tests for d:mltext mappings
   18329: Updated Chemistry TCK jar including Dave W's rendition tests.
   18333: Fix compile error - spurious imports.
   18334: Fix issue where absurl web script method failed when deployed to root context.
   18339: Update CMIS index page for start of public review 2.
   18387: SAIL-147: CMIS ACL REST bindings + framework fixes
   18392: Fix typo
   18394: SAIL 156: Query Language Compliance: Fixes and tests for d:<numeric>
   18406: SAIL 156: Query Language Compliance: Remaining type/predicate combinations. Restriction of In/Comparisons for ID/Boolean
   18408: CMIS Query language - remove (pointless) multi-valued column from language definition
   18409: Formatting change for CMIS.g
   18410: Formatting change for FTS.g
   18411: CMIS TCK tests were updated to CMIS 1.0 cd06 schemas.
   18412: SAIL 156: Query Language Compliance: Tests and fixes for aliases for all data types in simple predicates (they behave as the direct column reference)
   18417: Update Chemistry TCK which now incorporates Dave W's ACL tests.
   18419: Update CMIS index page to include public review end date.
   18427: SAIL 156: Query Language Compliance: Expose multi-valued properties in queries. Tests for all accessors. Fix content length to be long.
   18435: SAIL 156: Query Language Compliance: Use queryable correctly and fix up model mappings. Add tests for baseTypeId, contentStreamId and path.
   18472: SAIL 156: Query Language Compliance: Tests and fixes for FTS/Contains expressions. Adhere strictly to the spec - no extensions available by default. Improved FTS error reporting (and stop any recovery).
   18477: SAIL-164: CMIS change log REST bindings
   18495: SAIL 156: Query Language Compliance: Tests and fixes for escaping in string literals, LIKE and FTS expressions.
   18537: SAIL 156: Query Language Compliance: Sorting support. Basic sort test for all orderable/indexed CMIS properties.
   18538: SAIL-164: CMIS change log fixes for TCK compliance
   18547: SAIL 156: Query Language Compliance: Ordering tests for all datatypes, including null values. 
   18582: Incorporate latest Chemistry TCK
   18583: Update list of supported CMIS capabilities in index page.
   18606: SAIL-156, SAIL-157, SAIL-158: Query Language Compliance: Respect all query options including locale. Fixes and tests for MLText cross language support.
   18608: SAIL-159: Java / Javascript API access to CMIS Query Language
   18617: SAIL-158: Query Tests: Check policy and relationship types are not queryable.
   18636: SAIL-184: ACL tests (WS) 
   18663: ACL tests were updated in accordance with last requirements by David Caruana.
   18680: Update to CMIS CD07
   18681: Fix CMIS ContentStreamId property when document has no content.
   18700: CMIS: Head merge problem resolution.

Phase 1: Merge up to and including revision 18700, as this the point where both AtomPub and Web Services TCK tests succeed completely on dev branch.

Note: includes CMIS rendition support ready for integration and testing with DM renditions.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@18790 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2010-02-23 17:23:42 +00:00
Nick Burch
a4d8f92c70 Remove a few uses of ServiceRegistry where dependencies on the relevant services are cleaner, and note where the ServiceRegistry really is required
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@18781 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2010-02-23 12:16:49 +00:00
Kevin Roast
bcabacb17d . Integrated fts-alfresco search syntax into Share
- Rich and flavoursome queries now possible, some exciting examples:
   quoted phrases: "alfresco book"
   bracketed elements: (bread and cheese) or chips
   property search: modifier:kevinr
   date ranges: modified:["2009-10-20" to "2009-10-21"]
   mix it all up: "alfresco book" and not modifier:kevinr and modified:["2009-10-20" to "2009-10-21"]
 - All elements are automatically expanded to search: name,title,description and TEXT property if no specific property specified
   so the search: "alfresco book" and not modifier:kevinr
   translates as - find me all items that contain the phrase "alfresco book" in the name or title or description or contents and were not modified by kevinr
. Last run search query now redisplayed in the search text box - so much easier to modify and edit the previous search
. Tag search is now truely tag specific (rather than "tag + default fields") - can be specified on the url as an argument to Share search page
. JavaScript search API expanded to allow setting of default field and error handling settings
. Empty results list now shown if query cannot be executed (rather than the text of the exception message in the UI) - debugging option to show query parse errors in log if required

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@18696 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2010-02-18 12:36:10 +00:00
Gavin Cornwell
79852d5b1b Merged DEV/GAV/AWE2 branch to HEAD and fixes for several integration issues.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@18473 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2010-02-05 14:07:24 +00:00
Kevin Roast
2ab713d0cb Merged V3.2E to HEAD
17571: ETHREEOH-1863 -  alfresco-webscript-framework.jar is not available in the alfresco-enterprise-sdk-3.1
          - although the framework jar was already part of the SDK when I looked I have done some re-organising of 
          - names and paths and added missing source files.    By no means finished but its another step forward.
   17581: Fix for ETHREEOH-3380 - upload servlet in Explorer does not handle well upload errors as no error message is displayed on the client browser.
   17582: ETHREEOH-2760 - Sealing of standard library root scope objects to prevent script potentially interfering with another scripts processing.
          - Example provided to fix ACT ticket issue against fixed codeline.
   17583: Fixed ETHREEOH-3458 "If the rss feed to display returns bad formatted data or is unavailable an ugly free marker error is displayed"
          - Rss urls pointing to a "missing resource"/"bad formated rss data" is now displayed as "Rss feed is unavailable"/"Can't read rss feed" (before they displayed freemarker error making it impossible to re-configure)
          - Title is now updated after config (therefore the change to return json instead of html) (before a page refresh was needed)
          - The new url is now updated in the "2nd" config dialog after it has been changed in the first (before page refresh was needed)
          - Removed un-internationalised string from config respons template
   17584: ALFCOM-3675 - WebDAV script does not allow inline editing for documents with name in upper case.
          - Now allows any case, as per supplied patch.
          - Also added support for Office 2007 file types so they can now be opened in write mode via webdav in IE6/7 from the Explorer client.
          - Tested in IE6/7.
   17585: Yet another fix for ETHREEOH-1733 - agenda view all days events fixed
   17586: ETHREEOH-1843:  /api/sites/*/memberships search is slow on specific query
   17587: Add cluster lock for JPBM job/timer executor (for WCM submits in a clustered env - ETHREEOH-2230 / ETHREEOH-3319)
   17590: New icons for View Original & View Working Copy actions
   17591: ETHREEOH-2879 - Alfresco + OpenLDAP: Unable to retrieve user from repository.
          - Fixed SURF to handle users without (utterly bizarely) First or Last names or even, usefully, neither.
   17592: Merged V3.2 to V3.1
      17415: Fix for ETHREEOH-3293 - Editing user details on large user repository causes Hibernate exception.
             Fix for ETHREEOH-3294 - Extreemly slow repository performance adding a new user to large user repository via the Explorer Client admin console.
   17593: Icon for doclib View In Browser action
   17594: ETHREEOH-2864 - Share - Documents cannot be deleted (in "All Documents" view)
   17595: ETHREEOH-3203:  Impossibility to add comment to any object by SiteContributor user
   17596: ETHREEOH-1469 - SMTP errors not reported when sending an invitation
            - now errors are reported.
            - may upset unit tests, i've fixed those I know about
   17598: Fixed ETHREEOH-3445 "Admin Console - Group Search sometimes never displays results list"
   17601: ETHREEOH-3382 - Share Sites menu is broken in "debug" mode. Reworked menu css. Removed unused footer component.
   17602: Share global debug flags removed from web-framework-config-application.xml. Use share-config-custom.xml instead.
   17603: Changed wording on Create/Edit Site dialogs from "Access" to "Visibility". "Access" was no longer accurate now that Moderated Sites' content is private to non-members.
   17604: ETHREEOH-1469 - SMTP error when sending an invitation does not return a failure.
          - SiteServiceTest also needed "fixing"
   17606: ETHREEOH-3475 - IE: Second search on add groups to site gets yui error but works. Related to YUI bug 2286608. YUI patched instead of all DataTable client code. (Patch removed from DocLib)
   17607: ETHREEOH-3470 - "Add" button is unavailable if the group with the name of more than 60 characters is found
   17608: Fixed invalid use of Forms validator. Validators updated to handle specific case anyway.
   17610: Fixed ETHREEOH-3445 "Admin Console - Group Search sometimes never displays results list" - missed commit of non-default theme files
   17612: Fixed ETHREEOH-3480 "Browse" button no longer works after Groups Admin console page is refreshed
   17613: ETHREEOH-3450 Fixed illegal nested comment in web-client-config-custom.xml.sample
   17616: Fix for ETHREEOH-2863 - Code cache memory leak observed in JVM 1.6 when script action calls another script which in turn calls other functions.
          - Fixed use of Rhino optimization level when executing string based scripts.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@18160 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2010-01-20 10:22:18 +00:00
Kevin Roast
86b95d1059 Merged V3.2E to HEAD
17429: Fixed ETHREEOH-2319 "Share - Sticky image or videos in web view"
   17435: Fixed EETHREEOH-3325 "Add group button is disabled on Admin Console - New User page"
   17445: Fixed ETHREEOH-3306 "Large number of root groups causes Groups admin tool to lockup the sever and Share" 
          - Search panel is now the default panel and the loading of root groups only occurs if you click the "Browse" button and change to the browse panel
   17446: Fix for unreported issue where the InMemoryTicketComponent did not check for null value from ticketsCache.
          Can occur on tomcat sesson expire and caused NPE to be logged.
   17449: Merged V3.1 to V3.2
      17257: *RECORD ONLY* Merged V3.2 to V3.1
         13685: ACT 8490 - TinyMCE fails if told to load unsupported language (interim fix only) (ETHREEOH-1615)
      17372: First part of fix for ETHREEOH-2519.
      17448: Merged DEV-TEMPORARY to V3.1
         17390: ETHREEOH-1619: Letters and special symbols can be typed in Date value of property while creation of Content Rule and it leads to error
      17391: ETHREEOH-1058: It is possible to send invite email message with no subject from Web Project Wizard Step Seven - Email Users page
             ETHREEOH-1060: It is possible to send empty invitation email from Web Project Wizard Step Seven - Email users page
   17452: Fixed ETHREEOH-3306 "Large number of root groups causes Groups admin tool to lockup the sever and Share" part 2 
          - A "no result"-message was displayed to the user even though no search had been performed, now replaced by a usage message
   17453: Fixed ETHREEOH-2329 " Search doesn't work correctly on Groups page"
   17454: Fix for ETHREEOH-3084 - Error message appears in My Web Files part of My Alfresco Dashboard after configuring of the dashboard.
          - added new JavaScript and Template APIs to retrieve child nodes of a specific type - using fast direct DB NodeService call.
   17455: Fixed ETHREEOH-2329 " Search doesn't work correctly on Groups page" part 2
          - Added the prefix "*" to admin console group search as well to make it consistent

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@18122 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2010-01-19 11:23:38 +00:00
Kevin Roast
7f24c8c4e7 Merged V3.2E to HEAD
17246: ETHREEOH-3208: User profiles for users authenticated by immutable subsystems are now read only
         - Introduced MutableAuthenticationService interface, only implemented by Alfresco native authentication service
         - Split out those methods from AuthenticationService that mutate the user store and added isAuthenticationMutable()
         - Now both Alfresco Explorer and Share user profile / password edit link rendering is conditional on isAuthenticationMutable
         - Works with authentication chain containing mixture of internally and externally authenticated users
   17247: Fix failing unit tests
         - rm-public-services-security-context.xml needed to be brought in line with public-services-security-context.xml (and will forever more!)
   17248: ETHREEOH-1593: alfUser cookie value should be base 64 encoded to allow for non-ASCII characters
   17253: *RECORD ONLY* ETHREEOH-2885: web.xml must conform to the schema to work on JBoss

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@18098 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2010-01-18 15:32:57 +00:00
Kevin Roast
8fe97f509e Merged DEV/TEMPORARY to HEAD
17804: Branch for SpringSurf integration 2 to RemoteAPI - from HEAD r17789
   17808: Part 3 of SpringSurf integration - RemoteAPI, Web-Client, Mobile and DOD5015 java code refactored to use SpringSurf Webscripts libraries, removed dependancies on existing WebScriptFramework project.
   17812: Removed web-framework and webscript-framework projects. Updated build scripts to use SpringSurf dependencies for remote API and client projects and also removal of wf and wsf projects from builds.
   17818: Various Spring app context and config changes to integration SpringSurf at the RemoteAPI and Web-Client project level.
           - Build scripts fixed up
           - Temporary web.xml changes until spring mvc dispatcher is hooked into /service urls
           - The server starts up! No nothing else works yet, you know how this goes...
   17819: Fix to incremental-webclient-tomcat-exploded build target to work on first deploy to a clean tomcat (affects HEAD also, not SpringSurf related).
   17872: Refactor Web-Client web.xml to use Spring WebScripts Dispatcher Servlet
           - servlet is configured to use the existing Spring application context instance as loaded by the ContextLoaderListener
          Share web.xml TODOs for JBoss app-server support (currently missing from SpringSurf extraction)
   17892: Upgraded Repository Spring dependant libraries to 3.0.0 release.
          Upgraded to latest SpringSurf release (also running against Spring 3.0.0)
          Various related fixes.
   17893: Additional Spring3.0.0 migration fixes and libraries.
   17899: Integrated another SpringSurf bug fix - to correctly add ClassPathStore instances to SearchPath objects.
   17901: Fixes to handling of merging of models returned from the new Script Processors.
          Share now works against a Repository that is running SpringSurf WebScripts and Spring 3.0.0.
   17904: Latest SpringSurf libraries after latest changes.

 TODO:
  - NTLM filter needs moving to Share (not present in SpringSurf)
  - MessagesWebScript - community tracking image needs adding to Share specific version (not present in SpringSurf)
  - feedController - for rss feed service urls - needs testing
  - Clustering config overrides - no longer work in SpringSurf, needs a rethink
  - Mobile project is not working
  - PHP module project
  - JBossEnabledWebApplicationContext required for Share - currently missing from SpringSurf

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@17906 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2010-01-06 17:09:10 +00:00
Kevin Roast
b726c4d6db Merged DEV/TEMPORARY to HEAD
17667: Branch for SpringSurf integration - from HEAD r17665
   17668: Fix to ensure included scripts files are not loaded from a cached classpath loader.
   17670: Part 1 of SpringSurf integration - changes relating to spring-surf-core-1.0.0.CI-SNAPSHOT.jar
   17674: Part 2 of SpringSurf integration - changes relating to spring-surf-core-configservice-1.0.0.CI-SNAPSHOT.jar

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@17788 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-12-14 13:41:05 +00:00
Kevin Roast
d7663be072 First part of ETHREEOH-3062.
- Fast NodeService.getChildAssocs(types) based API added to ScriptNode for non-xpath based retrieval of file folder child nodes
 - Optionally retrieve files, folders or both
 - Optionally ignore certain sub-types e.g. fm:forum
 - Automatically remove cm:systemfolder sub-types - equivalent to FileFolderService.list() and related methods
 - Modified Share treenode data webscript to use faster API for child folder node counts

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16980 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-10-16 10:04:05 +00:00
Dave Ward
85c1b71826 Merged V3.2 to HEAD
16662: LDAP sync: improved group association filtering, referential integrity checking, deletion strategy and performance tuning of batch sizes
   16648: ETHREEOH-2752: Improved ticket validation fix
      - Invalidate user's tickets during person deletion rather than validation or it can mess up chained validation
   16647: ETHREEOH-2534: Fixed Sharepoint NTLM authentication
      - user details were never getting cached in the session
   16579: Small improvement to LDAP error reporting
      - Committed errors counted before successes in a logging interval
   16515: LDAP sync performance
      - Improved full sync strategy - run differential queries to work out required updates/additions and full queries to work out required deletions. Saves updating unchanged nodes.
      - Use a TreeSet rather than a HashSet to gather group associations in an attempt to avoid blowing the heap size
   16498: More LDAP performance improvements
      - Uses thread pool with 4 worker threads and blocking queue to process returned results. The number of worker threads can be controlled by the synchronization.workerThreads property.
      - Switched LDAP connection pooling back on again
      - Group Associations processsed individually so that errors are collated and we get a better idea of their throughput
      - Fixed potential bug. Group membership resolution done with isolated LDAP context to avoid cookies from paging creeping in.
   16424: Try switching off LDAP connection pooling to see if it works better with our flaky server.
   16414: Further LDAP fault tolerance
      - Log causes of group member resolution failures where possible
   16413: More fault tolerance for LDAP sync
      - Always commit last sync times before overall sync is complete to avoid the 'forgetting' of differential sync information
      - DN comparisons should be case insensitive to avoid issues resolving DNs to user and group IDs
   16398: Improved monitoring and fault tolerance for LDAP sync
      - When the batch is complete a summary of the number of errors and the last error stack trace will be logged at ERROR level
      - Each individual error is logged at WARN level and progress information (including % complete) is collated and logged at INFO level after a configurable interval
      - In the Enterprise Edition all metrics can be monitored in real time through JMX
      - Sanity testing to be performed by Mike!
   16319: Merged HEAD to V3.2
      16316: ALFCOM-3397: JBoss 5 compatibility fix
         - Relative paths used by LDAP subsystem configuration weren't being resolved correctly
         - See also https://jira.jboss.org/jira/browse/JBAS-6548 and https://jira.springsource.org/browse/SPR-5120
   16272: ETHREEOH-2752: Once more with feeling!
   16261: ETHREEOH-2752: Correct exception propagation.
   16260: ETHREEOH-2752: Fix ticket validation
      - Current ticket was getting forgotten by previous fix
      - Person validation in CHECK mode now done AFTER the current user is set, so that the current ticket is remembered
   16243: ETHREEOH-2752: Improve ticket validation used by all authentication filters
      - Now takes into account whether person actually exists or not
      - Tickets for non-nonexistent persons are now considered invalid and cached session information is invalidated
      - New BaseAuthenticationFilter superclass for all authentication filters
      - Improved fix to ETHREEOH-2839: WebDAV user is cached consistently using a different session attribute from the Web Client
   16233: ETHREEOH-2754: Correction to previous checkin.
      - relogin for SSO authentication, logout for normal login page
      - logout is default
   16232: ETHREEOH-2754: Log Out Action outcome passed as a parameter
      - relogin for SSO authentication, login for normal login page
      - Means the log out link always leads to the correct place, even when the session has expired
      - Also lowered ticket validation error logging to DEBUG level to avoid unnecessary noise in the logs from expired sessions
   16220: ETHREEOH-2839: Fixed potential ClassCastExceptions when Alfresco accessed via WebDAV and Web Client links in same browser
      - WebDAV side no longer directly casts session user to a WebDAVUser
      - ContextListener no longer casts session user to web client user
      - Web client side will 'promote' session user to a web client User if necessary via AuthenticationHelper
      - All authentication filters made to use appropriate AuthenticationHelper methods
   16211: ETHREEOH-2835: LDAP sync batches user and group deletions as well as creations
      - Also improved logging of sync failures
   16197: ETHREEOH-2782: LDAP subsystems now support search-based user DN resolution
      - When ldap.authentication.userNameFormat isn't set (now the default) converts a user ID to a DN by running ldap.synchronization.personQuery with an extra condition tacked on the end to find the user by ID
      - Structured directories and authentication by attributes not in the DN such as email address now supported
   16189: ALFCOM-3283: Prevent errors when user accepts an invite when not logged in
      - new isGuest attribute propagated to user object
      - header component (used by accept-invite page) needs to avoid calling prefs and site webscripts for guest user
      - Conditional stuff in header template changed to use user.isGuest


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16896 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-10-14 09:24:13 +00:00
Kevin Roast
a2186f9662 RM Search enhancements.
- KEYWORDS macro changed to keywords
 - Added macros without cm: namespace for common cm attributes
 - Added macros without recordSearch prefix for search roll-up attributes
 - Made rma default search namespace so say "originator:someone" will work rather than "rma:originator:someone"
 - Fix to minor UI issues when empty results shown

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16781 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-10-08 20:24:18 +00:00
Andrew Hind
53fddcb5f7 RM: Fix ScriptNode to check public methods can be executed using PublicServiceAccessService (and not be based on an assumed permission check)
- rm doc details are now displayed correctly when users do not have DM read

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16415 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-09-21 20:19:29 +00:00
Kevin Roast
eab4762993 JavaScript API enhancements to support retrieval of local and inherited permissions and optional additional meta-data describing the permissions.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16286 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-09-15 20:26:03 +00:00
Dave Ward
9fc993a852 Merged V3.2 to HEAD
16092: ETHREEOH-2800: org.alfresco.repo.jscript.People should use AuthenticationService rather than the MutableAuthenticationDAO or otherwise it won't work in an authentication chain.
   16094: ETHREEOH-2800: The same for org.alfresco.repo.template.People


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@16095 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-09-04 12:32:18 +00:00
Dave Ward
1e5592c51b Merged V3.2 to HEAD
15657: ETHREEOH-2638: Admin and guest users duplicated after upgrade to v3.2. Cannot delete duplicates due to missing authentication.
      - Split out alfrescoAuthorityStoreDefaultMembers.xml, only loaded on initial bootstrap so that admin and guest users not duplicated
      - Modified org.alfresco.repo.jscript.People and org.alfresco.web.bean.users.UsersDialog so that person deletion doesn't fail if internal authentication information doesn't exist


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15658 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-08-10 11:03:36 +00:00
Kevin Roast
c1b4e119c1 Merged V3.2 to HEAD
15358: Merged V3.1 to V3.2
      15356: Fix for ETHREEOH-2561
   15417: Fix for ETHREEOH-2437 - use 'write' webscript transaction to create Calendar container on first refresh.
   15480: Merged V3.1 to V3.2
      15479: Fix to unreported issue with JS search API.
   15481: Fix to unreported XSS issue in Add As Favourite site functionality.
   15482: Maxresults value now passed into underlying search API in search lib JS for improved performance executing large searches in Share.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15483 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-30 08:46:18 +00:00
Mike Hatfield
e7e001ed69 Merged V3.2 to HEAD
15410: Fix for unreported issue where Sites menu "Add to favourites" wouldn't show site name
   15411: ScriptProcessors use non-caching load method for classpath-based scripts when log4j debug flag set
   15412: ALFCOM-3198 - file size misreported in Document Details

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15413 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-27 08:27:37 +00:00
Kevin Roast
d3b100d078 Merged V3.2 to HEAD
15328: Fix for build failure RhinoScriptTest - optimized code path called for correct QName assoc type only.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15354 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-23 09:40:31 +00:00
Kevin Roast
1d57ca9d64 Merged V3.2 to HEAD
15297: Merged V3.1 to V3.2
      15093: Merged V2.1-A to V3.1
         12428: Fix for ADB-150
         13461: Fix for ADB-163 - Generic picker now resizes but has minimum width
         13462: Fix for ADB-164 ACT 7788 - Search button label now configurable as component attribute.
         13757: Fix for ADB-155
         14113: Fix for ABD-143
         14115: Fix for ADB-144
         14493: Fixes for ADB-155 (correction) and ADB-161, ADB-184, ADB-185, ADB-186, ADB-188, ADB-189.
      15162: Fix for ETHREEOH-2278 - missed during merge of ABD-143
      15278: Fix for ETHREEOH-2474 - search regression

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15298 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-21 08:25:30 +00:00
Kevin Roast
fed100a646 Merged V3.2 to HEAD
15268: Fix to ScriptNode to return null in call to childByNamePath() when no permissions on requested child node.

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15269 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-20 10:12:06 +00:00
Kevin Roast
ef91651662 RM Search sorting by up to 3 fields now implemented in UI and data webscript - still to be implemented at the fts-alfresco query level see MOB-1179
RM Search data webscript refactoring to remove obsolete code and adding sorting parameter
RM Saved Searches list now retrieved by the RM Search UI

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15257 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-17 13:13:08 +00:00
Kevin Roast
c7bcfd00a4 Added query template support to the new JavaScript Search API.
- JavaScript search query now supports adding query templates to the query definition object:

   search
   {
      query: string,
      store: string,
      language: string,
      templates: [],          optional, Array of query language template objects (see below) 
      sort: [],
      page: object
   }
   
   template
   {
      field: string,          mandatory, custom field name for the template
      template: string        mandatory, query template replacement for the template
   }

   see http://wiki.alfresco.com/wiki/Full_Text_Search_Query_Syntax#Templates

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15221 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-16 10:27:09 +00:00
Kevin Roast
7f0e03e131 Merged V3.2 to HEAD
15182: Much improved ScriptNode childByNamePath() implementation, ScriptNode API for getParents() and getParentAssocs() and test script for the new APIs.


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15184 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-14 16:35:27 +00:00
Mike Hatfield
1adffd1e4e Pop-up with opportunity to edit metadata if Declare as Record action fails.
ScriptNode.parentAssocs() API.
Multi-parent indicator in DocLib (placeholder icon).

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15181 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-07-14 15:42:38 +00:00
Kevin Roast
b2cd89e945 Fix for ALFCOM-3086 - admin enforced to enter an old password when changing their own password.
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@15017 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-06-29 19:28:36 +00:00
Derek Hulley
5500f162b4 Merge IMAP in
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@14947 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-06-26 08:48:25 +00:00
Kevin Roast
d5c07c5646 Result skipping wired into new JavaScript query API.
- supported by all Alfresco search languages via new JS API

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@14821 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-06-22 09:36:58 +00:00
Kevin Roast
ace9e44956 Share User Console tool enhancements and fixes:
- Username and password field length checks based on config values (ALFCOM-2907, ETHREEOH-1199)
 - Password checked against Validate Password field on Create and Update of a user (ALFCOM-2913, ALFCOM-2922)
 - Fix to recently broken script People API - attempting to create a user with a username that already exists did not return null but instead throw an exception (ALFCOM-2921)
 - Field validation correctly trims fields before validation (ALFCOM-2920)

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@14663 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-06-11 14:39:03 +00:00
David Caruana
b9dd81cf3a MOB-356: CMIS Spec - deleteContentStream()
- AtomPub binding
- added testContentStreamEmpty()
- added testContentStreamDelete()
- some spec issues raised for CMIS TC

- also added delete() to ScriptContentData

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@14643 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-06-10 17:55:40 +00:00
Jan Vonka
2051b0709a MOB-690 - WCM PreviewURIService - checkpoint
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@14642 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-06-10 17:04:09 +00:00
Mike Hatfield
972d555ef4 Manage Aspects action and picker. List of available aspects in config: visible, addable and removeable. Does NOT support mandatory aspect properties with no defaults. "shortQName" added to Repo JavaScript (utils) and Freemarker APIs
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@14590 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-06-09 08:58:11 +00:00
Dave Ward
d5e0432589 Merged BRANCHES/DEV/DAVEW/LDAP to HEAD
14587: Added new node service method getNodesWithoutParentAssocsOfType to public-services-security-context.xml (or at least my best guess at it!)
   14586: Use US spelling of synchronization in filenames for consistency
   14585: Lower the default user registry sync frequency to daily instead of hourly. Now users and groups are pulled over incrementally on login of missing users.
   14583: Unit test for ChainingUserRegistrySynchronizer
   14571: Migration patch for existing authorities previously held in users store
      - Uses AuthorityService to recreate authorities in spaces store with new structure
   14555: Authority service changes for LDAP sync improvements
      - Moved sys:authorities container to spaces store
      - All authorities now stored directly under sys:authorities
      - Authorities can now be looked up directly by node service
      - Secondary child associations used to model group relationships
      - 'Root' groups for UI navigation determined dynamically by node service query
      - cm:member association used to relate both authority containers and persons to other authorities
      - New cm:inZone association relates persons and authority containers to synchronization 'zones' stored under sys:zones
      - Look up of authority zone and all authorities in a zone to enable multi-zone LDAP sync
   14524: Dev branch for finishing LDAP zones and upgrade impact

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@14588 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-06-08 16:16:32 +00:00
Kevin Roast
34cae989d9 Merged V3.1 to HEAD
14465: Fix for ALFCOM-195 - date added to WCM FreeMarker template model.
   14466: Fix for ETHREEOH-2075
   14469: Fix for ETHREEOH-2120

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@14564 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-06-05 16:29:50 +00:00
David Caruana
d8c87a5abd CMIS Relationship support in AtomPub binding
- getRelationships
- getRelationship
- createRelationship
- unit tests for above

TODO: delete relationship, includeRelationships flag

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@14461 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-05-27 22:11:31 +00:00
Mark Rogers
62c65bcfb7 Rework createPerson to receive password. (Previous interface was un-usable)
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@14343 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-05-18 12:52:11 +00:00
Kevin Roast
645327a850 New JavaScript Search API for 3.2 with support for alfresco-fts queries with a more JavaScript programmer friendly interface.
- Query, language (lucene, xpath, jcr-path and alfresco-fts etc), store (workspace or avm), multi-column sorting and paging all supported via search definition object

- A query definition object with a number of parameter objects can be as to use as:

   var results = search.query({query: "TEXT:alfresco"});

- Or as richly defined as:

   var sort1 =
   {
      column: "@{http://www.alfresco.org/model/content/1.0}modified",
      ascending: false
   };
   var sort2 =
   {
      column: "@{http://www.alfresco.org/model/content/1.0}created",
      ascending: false
   };
   var paging =
   {
      maxItems: 100,
      skipCount: 0
   };
   var def =
   {
      query: "cm:name:test*",
      store: "workspace://SpacesStore",
      language: "fts-alfresco",
      sort: [sort1, sort2],
      page: paging
   };
   var results = search.query(def);

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@14300 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-05-13 14:21:51 +00:00
Jan Vonka
31b38e0178 Fix ALFCOM-2859 - MT Share Admin Console (create new user)
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@14293 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-05-13 11:34:46 +00:00