230 Commits

Author SHA1 Message Date
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
Kevin Roast
0825764cc9 Addition of password update/set API for JavaScript People object:
- changePassword(string oldpw, string newpw) - changes password for the current user only,  old password must be supplied
 - setPassword(string userName, string password) - set the password for the given user - only executable by an admin user
Fix up and clean up of my-sites.get.js so that IMAP favorites are only retrieved if the IMAP server is enabled

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@14280 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-05-12 14:23:09 +00:00
Gavin Cornwell
3cc38f4289 Initial cut of IMAP support (disabled by default, to enable move imap sample files into extension folder)
git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@14279 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-05-12 13:41:08 +00:00
Kevin Roast
f122157dce Added isSubType(qname) to ScriptNode API.
- Example:   var isType = node.isSubType("abc:someqname");

git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@14225 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
2009-05-07 07:47:26 +00:00