Author: fmui
Date: Fri Nov 28 08:44:28 2014
New Revision: 1642272

URL: http://svn.apache.org/r1642272
Log:
initial Chemistry Parts code

Added:
    chemistry/parts/branches/
    chemistry/parts/tags/
    chemistry/parts/trunk/
    chemistry/parts/trunk/cmis-js/
    chemistry/parts/trunk/cmis-js/components/
    chemistry/parts/trunk/cmis-js/components/browser/
    chemistry/parts/trunk/cmis-js/components/browser/browser.css   (with props)
    chemistry/parts/trunk/cmis-js/components/browser/browser.js   (with props)
    chemistry/parts/trunk/cmis-js/components/browser/reset.css   (with props)
    chemistry/parts/trunk/cmis-js/components/browser/template.html   (with 
props)
    chemistry/parts/trunk/cmis-js/components/library/
    chemistry/parts/trunk/cmis-js/components/library/library.css   (with props)
    chemistry/parts/trunk/cmis-js/components/library/library.js   (with props)
    chemistry/parts/trunk/cmis-js/components/library/reset.css   (with props)
    chemistry/parts/trunk/cmis-js/components/library/template.html   (with 
props)
    chemistry/parts/trunk/cmis-js/lib/
    chemistry/parts/trunk/cmis-js/lib/README.md
    chemistry/parts/trunk/cmis-js/lib/cmis.js   (with props)
    chemistry/parts/trunk/cmis-js/samples/
    chemistry/parts/trunk/cmis-js/samples/browser/
    chemistry/parts/trunk/cmis-js/samples/browser/browser-01.html   (with props)
    chemistry/parts/trunk/cmis-js/samples/browser/browser-02.html   (with props)
    chemistry/parts/trunk/cmis-js/samples/bundle/
    chemistry/parts/trunk/cmis-js/samples/bundle/bundle-01.html   (with props)
    chemistry/parts/trunk/cmis-js/samples/bundle/bundle-02-1.html   (with props)
    chemistry/parts/trunk/cmis-js/samples/bundle/bundle-02-2.html   (with props)
    chemistry/parts/trunk/cmis-js/samples/bundle/bundle-02.html   (with props)
    chemistry/parts/trunk/cmis-js/samples/bundle/js/
    chemistry/parts/trunk/cmis-js/samples/bundle/js/messageBroadcaster.js   
(with props)
    chemistry/parts/trunk/cmis-js/samples/config.js   (with props)
    chemistry/parts/trunk/cmis-js/samples/config.js.sample
    chemistry/parts/trunk/cmis-js/samples/library/
    chemistry/parts/trunk/cmis-js/samples/library/library-01.html   (with props)
    chemistry/parts/trunk/cmis-js/samples/library/library-02.html   (with props)
    chemistry/parts/trunk/cmis-js/samples/library/library-03.html   (with props)
    chemistry/parts/trunk/cmis-js/samples/library/library-04.html   (with props)
    chemistry/parts/trunk/cmis-js/test/
    chemistry/parts/trunk/cmis-js/test/css/
    chemistry/parts/trunk/cmis-js/test/css/prettyprint.css   (with props)
    chemistry/parts/trunk/cmis-js/test/index.html   (with props)
    chemistry/parts/trunk/cmis-js/test/lib/
    chemistry/parts/trunk/cmis-js/test/lib/library.js   (with props)
    chemistry/parts/trunk/cmis-js/test/tests.js   (with props)
    chemistry/parts/trunk/sharepoint-projects/
    chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps.sln
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/AppManifest.xml
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Browser/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Browser/Elements.xml
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Browser/SharePointProjectItem.spdata
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps.csproj
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Connections/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Connections/Elements.xml
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Connections/SharePointProjectItem.spdata
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Content/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Content/App.css
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Content/Elements.xml
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Content/SharePointProjectItem.spdata
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Documents/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Documents/Elements.xml
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Documents/SharePointProjectItem.spdata
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Features/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Features/Components/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Features/Components/Components.Template.xml
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Features/Components/Components.feature
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Images/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Images/AppIcon.png
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Images/Elements.xml
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Images/SharePointProjectItem.spdata
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Package/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Package/Package.Template.xml
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Package/Package.package
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Pages/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Pages/Browser.aspx
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Pages/Connections.aspx
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Pages/Default.aspx
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Pages/Documents.aspx
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Pages/Elements.xml
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Pages/SharePointProjectItem.spdata
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Scripts/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Scripts/App.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Scripts/Elements.xml
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Scripts/SharePointProjectItem.spdata
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Scripts/_references.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Scripts/jquery-1.7.1.intellisense.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Scripts/jquery-1.7.1.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/Scripts/jquery-1.7.1.min.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.Apps/CMIS.Sharepoint.Apps/packages.config
   (with props)
    chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/CMIS.Sharepoint.SiteAssets.csproj
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/CMIS.Sharepoint.SiteAssets.sln
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/Features/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/Package/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/Package/Package.Template.xml
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/Package/Package.package
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/Properties/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/Properties/AssemblyInfo.cs
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/Elements.xml
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/SharePointProjectItem.spdata
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/browser/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/browser/browser.css
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/browser/browser.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/browser/reset.css
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/browser/template.html
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/credentials/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/credentials/MicrosoftAjax.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/credentials/aes.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/credentials/jquery.SPServices-2014.01.min.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/credentials/siteusercredentials.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/dependencies/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/dependencies/cmiswebparts.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/dependencies/jquery-1.11.1.min.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/lib/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/lib/README.md
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/lib/cmis.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/library/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/library/library.css
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/library/library.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/library/reset.css
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/SiteAssets/library/template.html
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/_UpgradeReport_Files/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/_UpgradeReport_Files/UpgradeReport.css
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/_UpgradeReport_Files/UpgradeReport.xslt
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/_UpgradeReport_Files/UpgradeReport_Error.png
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/_UpgradeReport_Files/UpgradeReport_Information.png
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/_UpgradeReport_Files/UpgradeReport_Success.png
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/_UpgradeReport_Files/UpgradeReport_Warning.png
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.SiteAssets/key.snk   
(with props)
    chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts.sln
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Browser/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Browser/Browser.ascx
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Browser/Browser.ascx.cs
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Browser/Browser.ascx.g.cs
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Browser/Browser.webpart
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Browser/BrowserEditorWebPart.cs
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Browser/Elements.xml
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Browser/SharePointProjectItem.spdata
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/CMIS
 Connections/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/CMIS
 Connections/CMIS Connections Instance/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/CMIS
 Connections/CMIS Connections Instance/Elements.xml   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/CMIS
 Connections/CMIS Connections Instance/SharePointProjectItem.spdata
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/CMIS
 Connections/Elements.xml   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/CMIS
 Connections/Schema.xml   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/CMIS
 Connections/SharePointProjectItem.spdata
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts.csproj
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/ControlTemplates/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/ControlTemplates/CMIS.Sharepoint.WebParts/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/ControlTemplates/SharePointProjectItem.spdata
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/CredentialScripts/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/CredentialScripts/MicrosoftAjax.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/CredentialScripts/aes.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/CredentialScripts/jquery-1.11.1.min.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/CredentialScripts/jquery.SPServices-2014.01.min.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/CredentialScripts/siteusercredentials.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Documents/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Documents/DocumentEditorWebPart.cs
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Documents/Documents.ascx
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Documents/Documents.ascx.cs
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Documents/Documents.ascx.g.cs
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Documents/Documents.webpart
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Documents/Elements.xml
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Documents/SharePointProjectItem.spdata
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Features/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Features/Components/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Features/Components/Components.Template.xml
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Features/Components/Components.feature
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Layouts/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Layouts/CMIS.Sharepoint.WebParts/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Layouts/SharePointProjectItem.spdata
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Package/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Package/Package.Template.xml
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Package/Package.package
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Properties/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Properties/AssemblyInfo.cs
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Service
 References/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/Utility.cs
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint.WebParts/CMIS.Sharepoint.WebParts/key.snk
   (with props)
    chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets.sln
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets.csproj
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/Features/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/Package/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/Package/Package.Template.xml
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/Package/Package.package
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/Properties/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/Properties/AssemblyInfo.cs
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/Elements.xml
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/SharePointProjectItem.spdata
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/browser/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/browser/browser.css
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/browser/browser.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/browser/reset.css
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/browser/template.html
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/credentials/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/credentials/MicrosoftAjax.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/credentials/aes.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/credentials/jquery.SPServices-2014.01.min.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/credentials/siteusercredentials.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/dependencies/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/dependencies/cmiswebparts.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/dependencies/jquery-1.11.1.min.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/lib/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/lib/README.md
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/lib/cmis.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/library/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/library/library.css
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/library/library.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/library/reset.css
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/SiteAssets/library/template.html
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.SiteAssets/CMIS.Sharepoint2010.SiteAssets/key.snk
   (with props)
    chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts.sln
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Browser/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Browser/Browser.cs
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Browser/Browser.webpart
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Browser/BrowserEditorWebPart.cs
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Browser/BrowserUserControl.ascx
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Browser/BrowserUserControl.ascx.cs
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Browser/BrowserUserControl.ascx.designer.cs
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Browser/Elements.xml
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Browser/SharePointProjectItem.spdata
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/CMIS
 Connections/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/CMIS
 Connections/CMIS Connections Instance/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/CMIS
 Connections/CMIS Connections Instance/Elements.xml   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/CMIS
 Connections/CMIS Connections Instance/SharePointProjectItem.spdata
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/CMIS
 Connections/Elements.xml   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/CMIS
 Connections/Schema.xml   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/CMIS
 Connections/SharePointProjectItem.spdata
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts.csproj
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/CredentialScripts/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/CredentialScripts/MicrosoftAjax.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/CredentialScripts/aes.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/CredentialScripts/jquery-1.11.1.min.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/CredentialScripts/jquery.SPServices-2014.01.min.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/CredentialScripts/siteusercredentials.js
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Documents/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Documents/DocumentEditorWebPart.cs
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Documents/Documents.cs
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Documents/Documents.webpart
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Documents/DocumentsUserControl.ascx
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Documents/DocumentsUserControl.ascx.cs
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Documents/DocumentsUserControl.ascx.designer.cs
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Documents/Elements.xml
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Documents/SharePointProjectItem.spdata
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Features/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Features/Components/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Features/Components/Components.Template.xml
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Features/Components/Components.feature
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Package/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Package/Package.Template.xml
   (with props)
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Package/Package.package
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Properties/
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Properties/AssemblyInfo.cs
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/Utility.cs
    
chemistry/parts/trunk/sharepoint-projects/CMIS.Sharepoint2010.WebParts/CMIS.Sharepoint2010.WebParts/key.snk
   (with props)

Added: chemistry/parts/trunk/cmis-js/components/browser/browser.css
URL: 
http://svn.apache.org/viewvc/chemistry/parts/trunk/cmis-js/components/browser/browser.css?rev=1642272&view=auto
==============================================================================
--- chemistry/parts/trunk/cmis-js/components/browser/browser.css (added)
+++ chemistry/parts/trunk/cmis-js/components/browser/browser.css Fri Nov 28 
08:44:28 2014
@@ -0,0 +1,152 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+.cmisbrowser {
+       position: relative;
+       font-size: 13px;
+}
+
+.cmisbrowser ul,.cmisbrowser ol {
+       list-style-type: none;
+       list-style-position: inside;
+       padding-left: 20px;
+}
+
+.cmisbrowser li.static>.menu-item {
+       display: block;
+       padding: 2px 0;
+}
+
+.cmisbrowser .menu-item {
+       color: #666666;
+       text-decoration: none;
+}
+
+.cmisbrowser .folderName .label {
+       line-height: 20px;
+       display: inline;
+}
+
+.cmisbrowser .menu-item.selected .folderName .label {
+       color: rgb(221, 75, 57);
+}
+
+.cmisbrowser .actions {
+       float: right;
+       margin-right: 5px;
+       display: table;
+}
+
+.cmisbrowser .icons {
+       float: left;
+       display: table;
+}
+
+.cmisbrowser .icon {
+       background-position: 2px;
+       height: 20px;
+       width: 20px;
+       display: table-cell;
+}
+
+.cmisbrowser .icon-open {
+       padding-right: 5px;
+       width: 13px;
+}
+
+.cmisbrowser .icon-open.closed {
+       background:
+               
url(data:image/png;base64,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)
+               no-repeat;
+       background-position: 0 3px;
+}
+
+.cmisbrowser .icon-open.opened {
+       background:
+               
url(data:image/png;base64,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)
+               no-repeat;
+       background-position: 0 3px;
+}
+
+.cmisbrowser .icon-delete {
+       background:
+               
url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA80lEQVQ4jbXSQUrDYBAF4E/xAiqCqBcSBZeiXkEXXQgKbUEQ3Ok53NZdj1BBwW1PIIhSrBspiZsJjiGxuPDBgz9v5r1/Mgn/gBX0McJzcIQelueZd/CKsoUv2G4z72H2i7niDLt18xom0VBg2GAcRq3EG1ZzwEVqvAutm7RuaIOk9XPAQyoUOAn9DOdxPk4TlLjPAe8NI+cbeg31CSzWl5Gw1HKusJAfnlpuPw0KLfc85oCrVBiE1klaJ7S8xMscsIEP39/51s+FFaFV/8kU6/V3OqqZ2ljgoGEn4DBN0sQp9tvMFbZwgzE+g2NcY3Oe+c/4Ahp7duByKVzVAAAAAElFTkSuQmCC)
+               no-repeat;
+}
+
+.cmisbrowser .icon-add {
+       background:
+               
url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAAyElEQVQ4jbXTwUqCQRQF4E9x0SoU0X2071UEQYSewda5qpbt7UV8iDY+g7RvVaZSK3UzQ5ef335/pAOHuXPmngMz3OEf0McjFnhPXOABvSrzLTbYH+Ea42PmEXZ/mDN3GBbNPaxKmp8Si/oHutBMAXe4rLpfQBuTGDCoYc4YQCttrsLBNNSvaf0O2nNar2NAIzR0Qn1RomU0YsAbblJ9H5p+SrSMJb9vMC9pqMI8BszwVcP8iZeieNYgZZw1yhnxM20TT/5MtXEA6JlHnYj7OLoAAAAASUVORK5CYII=)
+               no-repeat;
+       display: none;
+}
+
+.cmisbrowser .icon-edit {
+       background:
+               
url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAAsElEQVQ4jdXSMWrCQRDF4Q8RwZsoIgQUSZNKbbyQV0gZj2HlRWwsUiRNGg2ENNHOai1ciPrfzZpG8MHC7vzmvZliuTeN8IFhCr4iJM5z5E94ibV1KiCgmZk8wR4rzDDOBaT0iF3kW/QzfcmAQTQFfOMhZ04F9PAT659ox/r0moBOnBiwQauwaQXM4/sL3cKmSbDEwu/a/w74S2d9tQvYKJgrvH5yf3f8LCW9XdFzQx0AXpUtzwRG26MAAAAASUVORK5CYII=)
+               no-repeat;
+}
+
+#cmisbrowser-templates {
+       display: none;
+}
+
+.cmisbrowser input:focus {
+       border: 1px solid black;
+}
+
+.cmisbrowser #overlay {
+       position: absolute;
+       left: 0;
+       right: 0;
+       top: 0;
+       bottom: 0;
+       background-color: #FFFFFF;
+       -moz-opacity: .80;
+       filter: alpha(opacity = 80);
+       opacity: .80;
+       z-index: 10000000;
+       display: none;
+}
+
+.cmisbrowser .errors {
+       padding: 5px;
+}
+
+.cmisbrowser .errors .error {
+       background: 
url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABmJLR0QA/wD/AP+gvaeTAAAA80lEQVQ4jbXSQUrDYBAF4E/xAiqCqBcSBZeiXkEXXQgKbUEQ3Ok53NZdj1BBwW1PIIhSrBspiZsJjiGxuPDBgz9v5r1/Mgn/gBX0McJzcIQelueZd/CKsoUv2G4z72H2i7niDLt18xom0VBg2GAcRq3EG1ZzwEVqvAutm7RuaIOk9XPAQyoUOAn9DOdxPk4TlLjPAe8NI+cbeg31CSzWl5Gw1HKusJAfnlpuPw0KLfc85oCrVBiE1klaJ7S8xMscsIEP39/51s+FFaFV/8kU6/V3OqqZ2ljgoGEn4DBN0sQp9tvMFbZwgzE+g2NcY3Oe+c/4Ahp7duByKVzVAAAAAElFTkSuQmCC)
 no-repeat
+               rgb(254, 215, 214);
+       background-position: 5px 5px;
+       border: 1px solid rgb(222, 143, 142);
+       border-radius: 10px;
+       padding: 10px 30px 10px;
+}
+
+.cmisbrowser .button {
+       border: 1px solid #CCC;
+       padding: 10px 25px 10px 25px;
+       color: #333;
+       border-radius: 4px;
+       text-align: center;
+}
+
+.cmisbrowser .button:hover {
+       color: #333;
+       background-color: #EBEBEB;
+       border-color: #ADADAD;
+}
\ No newline at end of file

Propchange: chemistry/parts/trunk/cmis-js/components/browser/browser.css
------------------------------------------------------------------------------
    svn:eol-style = native

Added: chemistry/parts/trunk/cmis-js/components/browser/browser.js
URL: 
http://svn.apache.org/viewvc/chemistry/parts/trunk/cmis-js/components/browser/browser.js?rev=1642272&view=auto
==============================================================================
--- chemistry/parts/trunk/cmis-js/components/browser/browser.js (added)
+++ chemistry/parts/trunk/cmis-js/components/browser/browser.js Fri Nov 28 
08:44:28 2014
@@ -0,0 +1,771 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with this
+ * work for additional information regarding copyright ownership. The ASF
+ * licenses this file to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ * 
+ * http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+ * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
+ * License for the specific language governing permissions and limitations 
under
+ * the License.
+ * 
+ * Browser UI component based on the CMIS 1.1 JS Connector
+ * 
+ * Developer(s): - Ben Chevallereau ([email protected] /
+ * [email protected])
+ * 
+ * Version: 1.1 (05-09-2014)
+ * 
+ * This JS library can be used to any CMIS 1.1 compliant repository.
+ */
+
+;
+(function($, window, document, undefined) {
+
+       // Plugin name
+       var pluginName = 'cmisbrowser';
+
+       // Default options
+       var defaults = {
+               cmis : {
+                       // Server URL
+                       serverUrl : null,
+                       // Server username
+                       username : null,
+                       // Server password
+                       password : null,
+                       // Session: can be provided or created by this library 
(Optional)
+                       session : null,
+                       // Object ID of the root folder (Optional)
+                       initObjectId : null,
+                       // Path of the root folder (Optional)
+                       initPath : null
+               },
+               // List of types to do not display
+               excludingFilter : [],
+               // Expand the root node during the first loading (Optional)
+               openRootNode : true,
+               // Use messages for the communication between UI components 
(Optional)
+               useMessages : false
+       };
+
+       // Pluging constructor
+       function Browser(element, options) {
+               this.element = element;
+
+               this.options = $.extend({}, defaults, options);
+
+               this._defaults = defaults;
+               this._name = pluginName;
+
+               this.init();
+       }
+
+       /**
+        * Initialisation method.
+        */
+       Browser.prototype.init = function() {
+               var browser = this;
+
+               // Register the UI component
+               browser._register();
+
+               // Check if templates have been loaded or not
+               var body = $(this.element).closest("body");
+               if (body.find(".cmisBrowserTemplates").length == 0)
+                       $(body).append("<div 
class='cmisBrowserTemplates'></div)");
+               var path = "";
+
+               // Search the script tag related to this library
+               $("script").each(function() {
+                       var src = $(this).attr("src");
+                       if (src) {
+                               var fileName = src.slice(src.lastIndexOf("/") + 
1);
+                               if (fileName.lastIndexOf("?") != -1)
+                                       fileName = fileName.slice(0, 
fileName.lastIndexOf("?"));
+                               if (fileName === "browser.js")
+                                       path = src.substring(0, 
src.lastIndexOf("/"));
+                       }
+               });
+
+               // Load dinamycally the file templates.html
+               body.find(".cmisBrowserTemplates").load(path + 
"/template.html", null, function complete(responseText, textStatus, jqXHR) {
+                       // Load the main component
+                       
$(browser.element).html($(".cmisBrowserTemplates").find("#cmis-browser-template").html());
+
+                       // Attach action on the load check out docs
+                       
$(browser.element).find(".getCheckedOutDocs").click(function() {
+                               // Send a broadcasting message
+                               
browser._broadcastMessage("cmis-getCheckedOutDocs", "");
+                       });
+
+                       if (browser.options.cmis.username == null || 
browser.options.cmis.username.length == 0 || browser.options.cmis.password == 
null || browser.options.cmis.password.length == 0) {
+                               // Display the login message
+                               $(browser.element).find(".login").fadeIn();
+                       } else {
+                               // Display the browser
+                               $(browser.element).find(".browser").fadeIn();
+                               // Load the UI component
+                               browser._load();
+                       }
+               });
+
+       };
+
+       /**
+        * Register the UI component to allow communication between components.
+        */
+       Browser.prototype._register = function() {
+               var browser = this;
+
+               // By default, events are registered in jQuery
+               var container = $;
+
+               // If the component is stored in an Iframe
+               if (top != self) {
+                       // Create the container object that will be local to 
this component
+                       container = new Object();
+                       // Identify that we'll use messages to communicate
+                       browser.useMessages = true;
+
+                       // Define the listener used for messages
+                       function listener(event) {
+                               console.log("Received event: " + event.data);
+                               // Get event information
+                               var eventData = JSON.parse(event.data);
+                               if (browser.register.cmis.components)
+                                       // For each component
+                                       
$(browser.register.cmis.components).each(function() {
+                                               // If this component has a 
subscribe eveny
+                                               if 
(this.subscribe[eventData.name])
+                                                       // Call the function 
related to this event
+                                                       
this.subscribe[eventData.name](eventData.params[0])
+                                       });
+                       }
+
+                       // Register listener to be able to receive messages
+                       if (window.addEventListener) {
+                               addEventListener("message", listener, false)
+                       } else {
+                               attachEvent("onmessage", listener)
+                       }
+               }
+
+               // Initialize the component
+               if (container.cmis == null)
+                       container.cmis = new Object();
+
+               if (container.cmis.components == null)
+                       container.cmis.components = new Array();
+
+               // Declare this component
+               container.cmis.components.push({
+                       type : 'browser',
+                       // This component will trigger 4 kind of events
+                       events : [ 'cmis-clickFolder', 'cmis-createFolder', 
'cmis-deleteFolder', 'cmis-getCheckedOutDocs' ],
+                       subscribe : {
+                               // The browser component will listen if the 
user is logging in
+                               // and out
+                               "cmis-login" : function(credentials) {
+
+                                       // If credentials is an object, it's a 
token
+                                       try {
+                                               var token;
+                                               if (typeof credentials === 
"object")
+                                                       token = credentials;
+                                               else
+                                                       token = 
JSON.parse(credentials);
+                                               browser.options.cmis.token = 
token;
+                                       } catch (e) {
+                                               // So if it's not an object, 
it's username:password
+                                               browser.options.cmis.username = 
credentials.split(":")[0];
+                                               browser.options.cmis.password = 
credentials.split(":")[1];
+                                       }
+
+                                       // Load the browser
+                                       
$(browser.element).find(".login").fadeOut(400, function() {
+                                               // Display the browser
+                                               
$(browser.element).find(".browser").fadeIn();
+                                               // Load the UI component
+                                               browser._load();
+                                       });
+                               },
+                               // The browser component will receive only 
events when a node
+                               // has been deleted
+                               "cmis-deleteChildren" : function(folderId) {
+                                       // Refresh the folder
+                                       var folderItem = $("div.menu-item[id='" 
+ folderId + "']");
+                                       browser._openFolder(folderItem, false);
+                               },
+                               "cmis-logout" : function() {
+                                       // Reset all authentication parameters
+                                       browser.options.cmis.session = null;
+                                       browser.options.cmis.token = null;
+                                       browser.options.cmis.username = null;
+                                       browser.options.cmis.password = null;
+
+                                       // Clean the browser element
+                                       
$(browser.element).find("ul.root").empty();
+
+                                       // Hide the browser
+                                       
$(browser.element).find(".browser").fadeOut();
+                               }
+                       }
+               });
+
+               // Store the container
+               browser.register = container;
+       };
+
+       /**
+        * Load the browser tree
+        */
+       Browser.prototype._load = function() {
+               var browser = this;
+
+               // If the component is not correctly configured
+               if (null === this.options.cmis.serverUrl || (null == 
this.options.cmis.username && null == this.options.cmis.password && null == 
this.options.cmis.token)) {
+                       browser._addError("Please configure the browser before 
to initialize it.");
+               } else {
+                       // Test if the session already exists
+                       if (null == browser.options.cmis.session) {
+                               // Initialize the session
+                               var session = 
cmis.createSession(browser.options.cmis.serverUrl);
+
+                               // If we use username password
+                               if (browser.options.cmis.username && 
browser.options.cmis.password)
+                                       
session.setCredentials(browser.options.cmis.username, 
browser.options.cmis.password);
+                               else
+                                       
session.setToken(browser.options.cmis.token);
+
+                               session.loadRepositories({
+                                       request : {
+                                               success : function(data) {
+                                                       // Save the current 
session
+                                                       
browser.options.cmis.session = session;
+                                                       // Display root folder
+                                                       
browser._displayRootFolder();
+                                               },
+                                               error : function(jqXHR, 
textStatus, errorThrown) {
+                                                       // Display an error
+                                                       var msg = "Error during 
the connexion: ";
+                                                       if (null === textStatus)
+                                                               msg += 
textStatus;
+                                                       browser._addError(msg);
+                                               }
+                                       }
+                               });
+                       } else
+                               // If the session already exists
+                               this._displayRootFolder();
+               }
+       };
+
+       /**
+        * Display the root folder
+        */
+       Browser.prototype._displayRootFolder = function() {
+               var session = this.options.cmis.session;
+               var browser = this;
+
+               // If the initial path is configured
+               if (null != this.options.cmis.initPath) {
+
+                       // Get the object corresponding to this path
+                       session.getObjectByPath(this.options.cmis.initPath, {
+                               includeAllowableActions : true,
+                               request : {
+                                       success : function(data) {
+                                               // Append the root node
+                                               browser._appendItem(null, data);
+                                               // If we have to expand the 
root node
+                                               if 
(browser.options.openRootNode)
+                                                       // Click on the root 
node
+                                                       
$(browser.element).find("div[id='" + data.properties['cmis:objectId'].value + 
"'] div.icon.icon-open").click();
+                                       },
+                                       error : function(jqXHR, textStatus, 
errorThrown) {
+                                               // Display an error message
+                                               browser._addError("Can't get 
the object " + rootFolderId + " in the repository.");
+                                       }
+                               }
+                       });
+
+               } else {
+                       // Define the root folder id as root of the repository
+                       var rootFolderId = 
session.defaultRepository.rootFolderId;
+
+                       // If the initial object ID has been specified
+                       if (null != this.options.cmis.initObjectId)
+                               rootFolderId = this.options.cmis.initObjectId;
+
+                       // Get the object corresponding to this ID
+                       session.getObject(rootFolderId, 'latest', {
+                               includeAllowableActions : true,
+                               request : {
+                                       success : function(data) {
+                                               // Append the root node
+                                               browser._appendItem(null, data);
+                                               // If we have to expand the 
root node
+                                               if 
(browser.options.openRootNode)
+                                                       // Click on the root 
node
+                                                       
$(browser.element).find("div[id='" + data.properties['cmis:objectId'].value + 
"'] div.icon.icon-open").click();
+                                       },
+                                       error : function(jqXHR, textStatus, 
errorThrown) {
+                                               // Display an error message
+                                               browser._addError("Can't get 
the object " + rootFolderId + " in the repository.");
+                                       }
+                               }
+                       });
+               }
+       };
+
+       /**
+        * Append item to an existing item in the browser component
+        * 
+        * @ulElem: reference to the UL tag corresponding to the parent node
+        * @data: JSON Object retrieved from CMIS
+        */
+       Browser.prototype._appendItem = function(ulElem, data) {
+               var browser = this;
+               var parentItem;
+
+               // If the UL element has not been defined
+               if (ulElem == null)
+                       // We search the root UL tag
+                       parentItem = $(this.element).find("ul");
+               else
+                       parentItem = ulElem;
+
+               // Check the type
+               if 
(this.options.excludingFilter.indexOf(data.properties["cmis:objectTypeId"].value)
 == -1) {
+                       // Get the template related to a new item
+                       var browserItemTemplate = 
$("#cmis-browser-item-template");
+                       var newItem = browserItemTemplate.html();
+
+                       // Replace properties
+                       $(Object.keys(data.properties)).each(function(index, 
argName) {
+                               var regexp = new RegExp('\\$\\{' + argName + 
'\\}', 'g');
+                               newItem = newItem.replace(regexp, 
data.properties[argName].value);
+                       });
+
+                       // Replace allowable actions
+                       
$(Object.keys(data.allowableActions)).each(function(index, argName) {
+                               newItem = newItem.replace('${' + argName + '}', 
data.allowableActions[argName]);
+                       });
+
+                       newItem = $(newItem);
+
+                       // Hide useless icon
+                       newItem.find(".icon[enabled='false']").hide();
+
+                       // Attach actions
+                       newItem.find(".icon-open, 
.label").click(function(event, index) {
+                               browser._onClickFolder(this);
+                       });
+                       
newItem.find(".icon-delete[enabled='true']").click(function(event, index) {
+                               browser._onClickDeleteFolder(this);
+                       });
+                       
newItem.find(".icon-edit[enabled='true']").click(function(event, index) {
+                               browser._onClickEditFolder(this);
+                       });
+                       
newItem.find(".icon-add[enabled='true']").click(function(event, index) {
+                               browser._onClickAddFolder(this);
+                       });
+
+                       // Append the new item
+                       $(parentItem).append(newItem);
+               }
+       };
+
+       /**
+        * Click action handler
+        * 
+        * @elem: HTML element clicked
+        */
+       Browser.prototype._onClickFolder = function(elem) {
+               // Get the fodler item
+               var folderItem = $(elem).closest(".menu-item");
+               // Get the open icon
+               var icon = $(folderItem).find(".icon-open");
+               // If the folder is opened
+               if ($(icon).hasClass("opened") && 
$(folderItem).hasClass("selected"))
+                       this._closeFolder(folderItem[0]);
+               else
+                       this._openFolder(folderItem[0], true);
+       };
+
+       /**
+        * Open a folder
+        * 
+        * @folderItem: LI tag corresponding to a folder item
+        * @propagate: If equals to true, a message will be sent to other 
components
+        */
+       Browser.prototype._openFolder = function(folderItem, propagate) {
+               var session = this.options.cmis.session;
+               var browser = this;
+
+               $(this.element).find("#overlay").fadeIn(400, function() {
+
+                       // Get the folder id
+                       var objectId = $(folderItem).attr("id");
+                       // Get the list
+                       var list = $(folderItem).closest("li").find("ul");
+
+                       
$(browser.element).find(".menu-item").removeClass("selected");
+                       $(folderItem).addClass("selected");
+                       $(folderItem).find(".icon-open").addClass("opened");
+
+                       // If we have to propagate the event
+                       if (propagate)
+                               // Send a broadcasting message
+                               browser._broadcastMessage("cmis-clickFolder", 
objectId);
+
+                       // Search all folder contained in this folder
+                       session.query('select * from cmis:folder where 
IN_FOLDER(\'' + objectId + '\') order by cmis:name', false, {
+                               includeAllowableActions : true,
+                               request : {
+                                       success : function(data) {
+                                               // Empty the list of child 
folder
+                                               $(list).empty();
+                                               // Add all sub folders
+                                               
$(data.results).each(function(index) {
+                                                       
browser._appendItem(list, this);
+                                               });
+                                               // Allow to add new sub-folder
+                                               
$(folderItem).find(".icon-add[enabled='true']").show();
+                                               
$(browser.element).find("#overlay").fadeOut();
+                                       },
+                                       error : function(jqXHR, textStatus, 
errorThrown) {
+                                               // Display an error
+                                               browser._addError("Can't get 
the children from the object " + objectId + " in the repository.");
+                                               
$(browser.element).find("#overlay").fadeOut();
+                                       }
+                               }
+                       });
+               });
+       };
+
+       /**
+        * Close a folder
+        * 
+        * @folderItem: LI tag corresponding to a folder item
+        */
+       Browser.prototype._closeFolder = function(folderItem) {
+               var browser = this;
+               $(browser.element).find("#overlay").fadeIn(400, function() {
+                       // Get the list
+                       var list = $(folderItem).closest("li").find("ul");
+                       // Empty the list of children
+                       list.empty();
+
+                       $(folderItem).find(".icon-open").addClass("closed");
+                       $(folderItem).find(".icon-open").removeClass("opened");
+                       $(folderItem).find(".icon-add[enabled='true']").hide();
+
+                       $(browser.element).find("#overlay").fadeOut();
+               });
+       };
+
+       /**
+        * Delete action handler
+        * 
+        * @elem: HTML element clicked
+        */
+       Browser.prototype._onClickDeleteFolder = function(icon) {
+               var item = $(icon).closest(".menu-item");
+               var list = $(item).closest("li");
+               var session = this.options.cmis.session;
+               var browser = this;
+
+               $(browser.element).find("#overlay").fadeIn(400, function() {
+                       // Delete the object
+                       session.deleteTree($(item).prop('id'), true, 
'deletesinglefiled', true, {
+                               request : {
+                                       complete : function(e, textStatus, 
errorThrown) {
+                                               if (e.status == 200) {
+                                                       if (null != 
e.responseJSON) {
+
+                                                               // Display an 
error
+                                                               var ids = "";
+                                                               
$(e.responseJSON.ids).each(function() {
+                                                                       if 
(ids.length > 0)
+                                                                               
ids += "; ";
+                                                                       ids += 
this;
+                                                               });
+
+                                                               
browser._addError("Can't delete these object(s): " + ids + ".");
+                                                               
$(browser.element).find("#overlay").fadeOut();
+                                                       } else {
+
+                                                               var objectId = 
$(list).closest(".cmisbrowser").find("div.menu-item.selected").attr("id");
+                                                               // Send a 
broadcasting message
+                                                               
browser._broadcastMessage("cmis-deleteFolder", objectId);
+
+                                                               
$(list).remove();
+                                                               
$(browser.element).find("#overlay").fadeOut();
+                                                       }
+                                               } else {
+                                                       // Display an error
+                                                       
browser._addError("Can't delete the object " + folderItem.id + ".");
+                                                       
$(browser.element).find("#overlay").fadeOut();
+                                               }
+                                       }
+                               }
+                       });
+               });
+       };
+
+       /**
+        * Edit action handler
+        * 
+        * @elem: HTML element clicked
+        */
+       Browser.prototype._onClickEditFolder = function(icon) {
+               var item = $(icon).closest(".menu-item");
+               var name = $(item).find(".editText");
+               // Enable the edit input field
+               this._editFolderName(name[0]);
+       },
+
+       /**
+        * Create the input text for renaming
+        * 
+        * @actual: HTML tag to transform to editable input
+        */
+       Browser.prototype._editFolderName = function(actual) {
+               var browser = this;
+               var width = $(actual).width() + 20;
+               var height = $(actual).height() + 2;
+
+               // Create the input text field
+               if (width < 100)
+                       width = 150;
+               actual.innerHTML = "<input id=\"" + actual.id + "_field\" 
style=\"width: " + width + "px; height: " + height + "px;\" maxlength=\"254\" 
type=\"text\" value=\"" + actual.innerHTML + "\"/>";
+
+               // Attach the focus handler
+               $(actual).find("input").focus(function() {
+                       $(this).select();
+               });
+
+               // Attach the keypress handler
+               $(actual).find("input").keypress(function(event) {
+                       var objectId = $(actual).attr("id");
+                       browser._onFolderKeyPress(event, this, objectId);
+               });
+
+               // Attach the blur handler
+               $(actual).find("input").blur(function(event) {
+                       var objectId = $(actual).attr("id");
+                       browser._onFolderBlur(event, this, objectId);
+               });
+
+               // Focus and select the text
+               actual.firstChild.focus(function() {
+                       browser._onFolderKeyPress(this);
+                       $(this).select();
+               });
+       };
+
+       /**
+        * Key press event handler
+        * 
+        * @event: Event
+        * @field: Input text
+        * @objectId: Folder ID
+        */
+       Browser.prototype._onFolderKeyPress = function(event, field, objectId) {
+               var evt = (event) ? event : window.event;
+               // If the user pressed enter
+               if (evt.keyCode == 13 && field.value != "") {
+                       event.preventDefault();
+                       // We save the folder name
+                       this._onFolderUpdate(field, objectId);
+                       return false;
+               } else {
+                       return true;
+               }
+       };
+
+       /**
+        * Blur event handler
+        * 
+        * @event: Event
+        * @field: Input text
+        * @objectId: Folder ID
+        */
+       Browser.prototype._onFolderBlur = function(event, field, objectId) {
+               var elem = document.getElementById(objectId);
+               // We replace the input field by the old name
+               var oldName = field.attributes['value'].value;
+               $(elem).html(oldName);
+       };
+
+       /**
+        * Update the folder's name in the repository
+        * 
+        * @field: Input text
+        * @objectId: Folder ID
+        */
+       Browser.prototype._onFolderUpdate = function(field, objectId) {
+               var session = this.options.cmis.session;
+               var browser = this;
+               var elem = document.getElementById(objectId);
+               var objectId = elem.id.replace("/name", "");
+               var newName = field.value;
+               var oldName = field.attributes['value'].value;
+
+               // Send a request to the repository
+               session.updateProperties(objectId, {
+                       'cmis:name' : newName
+               }, {
+                       request : {
+                               success : function(data) {
+                                       // Replace the input field by the new 
name
+                                       $(elem).html(newName);
+                                       // Re-order sub-folders because of the 
renaming
+                                       var parentId = 
$(elem).closest("ul").closest("li").find("div.menu-item.selected").attr("id");
+                                       
browser._reorderFolders($(elem).closest("ul"));
+                                       // Send a broadcasting message
+                                       
browser._broadcastMessage("cmis-editFolder", parentId);
+                               },
+                               error : function(e) {
+                                       // Display an error message
+                                       browser._addError("Error during the 
update: " + e.responseJSON.message);
+                                       $(elem).html(oldName);
+                                       
browser._reorderFolders($(elem).closest("ul"));
+                               }
+                       }
+               });
+
+               return false;
+       };
+
+       /**
+        * Reorder a list of child-folders
+        * 
+        * @ulElement: UL element of the parent item
+        */
+       Browser.prototype._reorderFolders = function(ulElement) {
+               var items = $(ulElement).find("li");
+               items = items.sort(function(a, b) {
+                       var nameA = $(a).find(".label").html().toLowerCase();
+                       var nameB = $(b).find(".label").html().toLowerCase();
+                       if (nameA < nameB)
+                               return -1;
+                       else if (nameA > nameB)
+                               return 1;
+                       else
+                               return 0;
+               });
+               $(ulElement).append(items);
+       }
+
+       /**
+        * Add folder event handler
+        * 
+        * @icon: icon clicked
+        */
+       Browser.prototype._onClickAddFolder = function(icon) {
+               var item = $(icon).closest(".menu-item");
+               var list = $(item).closest("li");
+               // Get the parent ID
+               var objectId = $(item).prop('id');
+               var session = this.options.cmis.session;
+               var browser = this;
+
+               // Define the name of the new folder
+               var folderName = "New Folder";
+               var i = 1;
+               while ($(list).find("div.label:contains('" + folderName + 
"')").length > 0) {
+                       folderName = "New Folder (" + i + ")";
+                       i++;
+               }
+
+               $(browser.element).find("#overlay").fadeIn(400, function() {
+                       // Create the folder with the default name
+                       session.createFolder($(item).prop('id'), folderName, 
null, null, null, {
+                               request : {
+                                       success : function(data) {
+
+                                               // Get the new folder Id
+                                               var newFolderId = 
data.properties["cmis:objectId"].value;
+                                               session.getObject(newFolderId, 
'latest', {
+                                                       includeAllowableActions 
: true,
+                                                       request : {
+                                                               success : 
function(data) {
+                                                                       
$(browser.element).find("#overlay").fadeOut(400, function() {
+                                                                               
// Append the new item
+                                                                               
browser._appendItem($(list).find("ul:first"), data);
+                                                                               
// Edit the newly created folder
+                                                                               
$(browser.element).find(".menu-item[id='" + newFolderId + 
"']").find(".icon-edit[enabled='true']").click();
+                                                                               
// Send a broadcasting message
+                                                                               
browser._broadcastMessage("cmis-createFolder", objectId);
+                                                                       });
+                                                               },
+                                                               error : 
function(e) {
+                                                                       // 
Display error
+                                                                       
browser._addError("Can't get properties of " + newFolderId + ".");
+                                                                       
$(browser.element).find("#overlay").fadeOut();
+                                                               }
+                                                       }
+                                               });
+                                       },
+                                       error : function(e) {
+                                               // Display error
+                                               browser._addError("Can't create 
new folder " + folderName + ".");
+                                               
$(browser.element).find("#overlay").fadeOut();
+                                       }
+
+                               }
+                       });
+               });
+       };
+
+       /**
+        * Displays an error message
+        * 
+        * @msg: Error message
+        */
+       Browser.prototype._addError = function(msg) {
+               var browser = this;
+               // Add a new DIV element containing the error message
+               var newElem = $(browser.element).find(".errors").append("<div 
class='error'>" + msg + "</div>");
+               $(newElem).find(".error").click(function() {
+                       $(this).fadeOut(500, function() {
+                               $(this).remove();
+                       });
+               });
+       };
+
+       /**
+        * Publish messages
+        */
+       Browser.prototype._broadcastMessage = function(fn, data) {
+               var browser = this;
+
+               // Check if a component is registered
+               if (!browser.useMessages)
+                       $(browser.register.cmis.components).each(function() {
+                               if (this.subscribe && this.subscribe[fn])
+                                       this.subscribe[fn](data);
+                       });
+               else
+                       // Send a broadcasting message
+                       parent.postMessage('{"name":"' + fn + '", "params":["' 
+ data + '"]}', "*");
+       }
+
+       // Define the plugin
+       $.fn[pluginName] = function(options) {
+               return this.each(function() {
+                       if (!$.data(this, 'plugin_' + pluginName)) {
+                               $.data(this, 'plugin_' + pluginName, new 
Browser(this, options));
+                       }
+               });
+       }
+
+})(jQuery, window, document);

Propchange: chemistry/parts/trunk/cmis-js/components/browser/browser.js
------------------------------------------------------------------------------
    svn:eol-style = native

Added: chemistry/parts/trunk/cmis-js/components/browser/reset.css
URL: 
http://svn.apache.org/viewvc/chemistry/parts/trunk/cmis-js/components/browser/reset.css?rev=1642272&view=auto
==============================================================================
--- chemistry/parts/trunk/cmis-js/components/browser/reset.css (added)
+++ chemistry/parts/trunk/cmis-js/components/browser/reset.css Fri Nov 28 
08:44:28 2014
@@ -0,0 +1,28 @@
+/**
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License.  You may obtain a copy of the License at
+ * 
+ *   http://www.apache.org/licenses/LICENSE-2.0
+ * 
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied.  See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+ html,body,table,caption,tbody,tfoot,thead,tr,th,td
+       {
+       margin: 0;
+       padding: 0;
+       border: 0;
+       outline: 0;
+       font-size: 100%;
+       vertical-align: baseline;
+       background: transparent;
+}

Propchange: chemistry/parts/trunk/cmis-js/components/browser/reset.css
------------------------------------------------------------------------------
    svn:eol-style = native

Added: chemistry/parts/trunk/cmis-js/components/browser/template.html
URL: 
http://svn.apache.org/viewvc/chemistry/parts/trunk/cmis-js/components/browser/template.html?rev=1642272&view=auto
==============================================================================
--- chemistry/parts/trunk/cmis-js/components/browser/template.html (added)
+++ chemistry/parts/trunk/cmis-js/components/browser/template.html Fri Nov 28 
08:44:28 2014
@@ -0,0 +1,53 @@
+<!-- 
+Licensed to the Apache Software Foundation (ASF) under one
+or more contributor license agreements.  See the NOTICE file
+distributed with this work for additional information
+regarding copyright ownership.  The ASF licenses this file
+to you under the Apache License, Version 2.0 (the
+"License"); you may not use this file except in compliance
+with the License.  You may obtain a copy of the License at
+
+  http://www.apache.org/licenses/LICENSE-2.0
+
+Unless required by applicable law or agreed to in writing,
+software distributed under the License is distributed on an
+"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+KIND, either express or implied.  See the License for the
+specific language governing permissions and limitations
+under the License.
+ -->
+ 
+ <div id="cmisbrowser-templates">
+
+       <script id="cmis-browser-template" type="text/template">
+               <div class="errors"></div>
+               <div style="display: none;" class="login">
+               </div>
+               <div style="display: none;" class="browser">
+                       <div class="button getCheckedOutDocs">Show my 
checked-out documents</div>
+                       <ul class="root static">
+                       </ul>
+               </div>
+               <div id="overlay"></div>
+       </script>
+
+       <script id="cmis-browser-item-template" type="text/template">
+                       <li class="static"><div class="static menu-item"
+                                       id="${cmis:objectId}">
+                                       <div class="folderName">
+                                               <div class="icons">
+                                                       <div class="icon 
icon-open closed" enabled="${canGetChildren}"></div>
+                                               </div>
+                                               <div class="editText label" 
id="${cmis:objectId}/name">${cmis:name}</div>
+                                               <div class="actions">
+                                                       <div class="icon 
icon-add" enabled="${canCreateFolder}"></div>
+                                                       <div class="icon 
icon-edit" enabled="${canUpdateProperties}"></div>
+                                                       <div class="icon 
icon-delete" enabled="${canDeleteObject}"></div>
+                                               </div>
+                                       </div>
+                               </div>
+                               <ul class="static">
+                               </ul></li>
+               </script>
+
+</div>
\ No newline at end of file

Propchange: chemistry/parts/trunk/cmis-js/components/browser/template.html
------------------------------------------------------------------------------
    svn:eol-style = native


Reply via email to