0
OverviewApproach to Application Design with ShareSome tips picked up along the wayRepository Tier CustomizationsWeb Tier C...
Approach to Designing SolutionsStart with the Information Architecture•  Content Model•  Folder Structure•  Security/Permi...
A Bit About ShareShare is a collaboration Application with the following  –  An Information Architecture  –  Some core fun...
Some Things That I Picked Up Along the Way•  Do not lock yourself into the Collaboration Information   Architecture if it ...
Coding Example•  We will cover some common customizations.•  We have an example that we will use in this talk and in   tom...
Repository ExtensionsDocument Library Custom Response  –  This allows the repository tier to return additional custom meta...
Web Tier ExtensionsStatus Indicators  –  Gives the developer control over the icons that get displayed based     upon each...
About The ExampleThis example implements a simple customization that allows documents to be tagged as sendable.Each docume...
Key Files/alfresco/extension/*-context.xml  A set of repository tier webscripts (slingshot)  A SURF application (separate ...
Repository TierDocument Library Custom Response   –  Override the slingshotDocLibCustomResponse Bean   –  Populate the cus...
Status IndicatorsSteps  –  Add the indicators to the share-custom-config.xml file  –  Add any graphical elements needed to...
Metadata TemplatesSteps  –  Add the template in share-custom-config.xml file  –  Use an evaluator to indicate when the tem...
ActionsSteps  –  Add the actions to the share-custom-config.xml file.  –  You can limit various actions based upon permiss...
DEMO
Additional ResourcesMike Hatfield’s blog post that this was the inspiration for this  talk.http://blogs.alfresco.com/wp/mi...
Contact InformationRichard McKnightRichard.McKnight@alfresco.com@rmknightstarhttp://www.oldschooltechie.com/
Other considerationsDM is about.....Really simple to configure crud screensUI actions to assist in managing content
AbstractShare was originally build as a collaboration application on top of the Alfresco Platform. Because of the compelli...
OverviewRepository tierWeb tierStatus indicatorsMetadata templatesActionsClient-side extension pointsDo we have to edit th...
CUST-3 Document Management with Share
CUST-3 Document Management with Share
CUST-3 Document Management with Share
CUST-3 Document Management with Share
Upcoming SlideShare
Loading in...5
×

CUST-3 Document Management with Share

822

Published on

Share was originally built as a collaboration application on top of the Alfresco Platform. Because Share is a more modern interface than Alfresco Explorer, many customers have adopted customizing Share as their strategy for building solutions on Alfresco. To be successful, such solutions need to understand that Share is a complete collaboration application with a specific Information Architecture. This session will explore leveraging the Share UI while creating your own Information Architecture, including for non-collaborative use cases. Topics covered include: • Create your Information Architecture (folder structure, content model etc…) • Create the necessary screens • Using the underlying framework to wire in the functionality needed to complete the application

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
822
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
50
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

Transcript of "CUST-3 Document Management with Share"

  1. 1. OverviewApproach to Application Design with ShareSome tips picked up along the wayRepository Tier CustomizationsWeb Tier Customizations•  Indicators•  Metadata Templates•  ActionsDemo
  2. 2. Approach to Designing SolutionsStart with the Information Architecture•  Content Model•  Folder Structure•  Security/Permission ModelDefine functionality•  Define Webscripts•  Build out Services•  Expose Javascript APIs•  Build workflowsBuild the UI•  CRUD Screens•  Dashlets•  Forms
  3. 3. A Bit About ShareShare is a collaboration Application with the following –  An Information Architecture –  Some core functionality –  A user interfaceShare some key components…. –  A content model (siteModel.xml) –  A security model (sitePermissionDefinitions.xml) –  A set of repository tier webscripts (slingshot) –  A SURF application (separate web tier webapp).Share also allows you to access content that is outside of the sites folder structure using its UI..
  4. 4. Some Things That I Picked Up Along the Way•  Do not lock yourself into the Collaboration Information Architecture if it is not appropriate•  Share is not easy – Allocate time to learn it if you are using it as a UI•  Remember that the Slingshot Webscripts are internal, do not write client code against them.•  Take the time to understand the configuration•  Learn how to Write YUI components.•  A lot of significant improvements were added in 4.0.
  5. 5. Coding Example•  We will cover some common customizations.•  We have an example that we will use in this talk and in tomorrow’s talk•  There are some missing pieces (YUI code).
  6. 6. Repository ExtensionsDocument Library Custom Response –  This allows the repository tier to return additional custom metadata about the repositoryProperty Decorators –  This alters the JSON format returned for nodes.Permissions List –  This allows you to control the list of permissions that are sent back for each document.
  7. 7. Web Tier ExtensionsStatus Indicators –  Gives the developer control over the icons that get displayed based upon each statusMetadata Templates –  Gives the developer the ability to define custom templates for each content typeActions –  This gives the developer the ability to control what actions are allowed for each document/folder. –  The actions can be filtered based upon permissionsClient dependencies –  Provides an easy way to add JavaScript and CSS to the web tier.
  8. 8. About The ExampleThis example implements a simple customization that allows documents to be tagged as sendable.Each document has a status and a document ID The document ID does not have to be the object ID and is guaranteed to be unique in the repository. The valid statuses are staged, effective and retired.Users must have ManageSendable Permission to change the sendable status.
  9. 9. Key Files/alfresco/extension/*-context.xml A set of repository tier webscripts (slingshot) A SURF application (separate web tier webapp)./META-INF/share-config-custom.xml This file contains much of the custom configslingshot-documentlibrary-context.xml This file contains the status evaluator and other beans that are necessary in the repository tier to support share. These beans and webscritps are for share only. They can be used as examples to make your own customizations (which can be in any *- context.xml file.
  10. 10. Repository TierDocument Library Custom Response –  Override the slingshotDocLibCustomResponse Bean –  Populate the customResponses property with a map of beans that implement org.alfresco.repo.jscript.app.CustomResponse interface.Property Decorators –  Override the applicationScriptUtils Bean –  Populate the decoratedProperties with a map of beans that implement the org.alfresco.repo.jscript.app.PropertyDecorator interface.Permissions List –  Override the applicationScriptUtils Bean. –  Populate the userPermissions list with the relevant permissions.All of these customizations can be done in a custom *-context.xml file
  11. 11. Status IndicatorsSteps –  Add the indicators to the share-custom-config.xml file –  Add any graphical elements needed to support the status. –  Add any Evaluator Beans needed (should go into a *-context.xml file in the web-extensions folder
  12. 12. Metadata TemplatesSteps –  Add the template in share-custom-config.xml file –  Use an evaluator to indicate when the template is used. –  Add any Evaluator Beans needed (should go into a *-context.xml file in the web-extensions folder
  13. 13. ActionsSteps –  Add the actions to the share-custom-config.xml file. –  You can limit various actions based upon permission. –  Add add the references to the actions in any of the appropriate actionGroups
  14. 14. DEMO
  15. 15. Additional ResourcesMike Hatfield’s blog post that this was the inspiration for this talk.http://blogs.alfresco.com/wp/mikeh/2011/09/26/share- document-library-extensions-in-v4-0/
  16. 16. Contact InformationRichard McKnightRichard.McKnight@alfresco.com@rmknightstarhttp://www.oldschooltechie.com/
  17. 17. Other considerationsDM is about.....Really simple to configure crud screensUI actions to assist in managing content
  18. 18. AbstractShare was originally build as a collaboration application on top of the Alfresco Platform. Because of the compelling nature of the user interface when compared to Alfresco Explorer, many customers have opted to customize share as their strategy for building solutions built on Alfresco. Unfortunately, Share is not just a UI on top of Alfresco, but it is a complete collaboration application with its own inherent Information Architecture. This session will walk explore leveraging the Share UI while creating your own Information Architecture. Specifically the approach is: 1. Create your Information Architecture (folder structure, content model etc...) 2. Create the necessary screens 3. Using the underlying framework to wire in the functionality needed to complete the application.
  19. 19. OverviewRepository tierWeb tierStatus indicatorsMetadata templatesActionsClient-side extension pointsDo we have to edit the original files or are there extension files?Jeff – Will this also include steps like customizing the advanced search page, maybe search results, and maybe workflow? Is it really about the steps/methodology used when using Share for DM? If so, that sounds pretty good. I just want to make sure we do a good job differentiating between this and the Share customization best practices talk.
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×