chemistry-commits mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From f...@apache.org
Subject svn commit: r1642272 [4/29] - in /chemistry/parts: branches/ tags/ trunk/ trunk/cmis-js/ trunk/cmis-js/components/ trunk/cmis-js/components/browser/ trunk/cmis-js/components/library/ trunk/cmis-js/lib/ trunk/cmis-js/samples/ trunk/cmis-js/samples/brows...
Date Fri, 28 Nov 2014 08:44:33 GMT
Added: chemistry/parts/trunk/cmis-js/components/library/template.html
URL: http://svn.apache.org/viewvc/chemistry/parts/trunk/cmis-js/components/library/template.html?rev=1642272&view=auto
==============================================================================
--- chemistry/parts/trunk/cmis-js/components/library/template.html (added)
+++ chemistry/parts/trunk/cmis-js/components/library/template.html Fri Nov 28 08:44:28 2014
@@ -0,0 +1,515 @@
+<!-- 
+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-library-template" type="text/template">
+		<div class="errors"></div>
+		<div style="display: none;" class="login">
+			<div class="cmis-form">
+				<h1>Login<span>Please fill all the texts in the fields.</span></h1>
+				<p>
+					<label>
+						<span>Username :</span>
+						<input id="username" type="text" name="username" placeholder="Your User Name" autocomplete="off">
+					</label>
+					<label>
+						<span>Password :</span>
+						<input id="password" type="password" name="password" placeholder="Your Password">
+					</label>
+					<label>
+						<span>Remember you?</span>
+						<input id="remember" type="checkbox" name="remember">
+					</label>
+					<label>
+						<span>&nbsp;</span>
+						<input type="button" class="button" value="Login" id="login">
+					</label>
+				</p>
+			</div>
+		</div>
+		<div style="display: none;" class="library">
+			<div class="action-header">
+				<div class="query">
+					<input autocomplete="off" id="queryValue" placeholder="Search document(s)..." type="text">
+					<div id="queryButton"></div>
+					<div style="display: none;" id="queryClean"></div>
+					<div class="advanced-search"></div>
+				</div>
+				<div class="item logout">Logout</div>
+				<div class="item welcome">Welcome<span class="username"></span>.</div>
+				<div class="uploadDocument">
+					<div class="addDocument">Add new document.</div>
+					<div class="uploadarea">
+						<div class="uploadform">
+							<div class="container">
+								<label for="fileselect">Files to upload:</label>
+								<input multiple="multiple" name="fileselect[]" id="fileselect" autocomplete="off" type="file">
+								<br>
+								<button type="submit">Upload Files</button>
+							</div>
+						</div>
+						<div id="filedrag">
+							<div class="container">or drop files here...</div>
+						</div>
+					</div>
+				</div>
+			</div>
+			<div class="documentlist panel">
+				<table class="table" cellspan="0">
+					<thead class="tableHeader"></thead>
+					<tbody class="tableBody"></tbody>
+				</table>
+				<div class="pagination">
+					<div class="label">Page(s): </div>
+				</div>
+			</div>
+			<div class="documentdetail panel"></div>
+			<div class="documentversion panel"></div>
+			<div class="documentpreview panel"></div>
+			<div class="advanced-search-form panel"></div>
+		</div>
+		<div style="display: none;" id="overlay"></div>
+	</script>
+
+	<script id="cmis-library-header-template" type="text/template">
+			<tr class="cmis-library-header">
+				<td class="cmis-library-cell icon"></td>
+				<td class="cmis-library-cell sortable" field="cmis:name">Name</td>
+				<td class="cmis-library-cell sortable" field="cmis:lastModificationDate">Modified</td>
+				<td class="cmis-library-cell sortable" field="cmis:lastModifiedBy">Modifier</td>
+				<td class="cmis-library-cell"></td>
+			</tr>
+		</script>
+
+	<script id="cmis-library-row-template" type="text/template">
+			<tr class="cmis-library-row" id="${cmis:objectId}" versionSeriesId="${cmis:versionSeriesId}" baseTypeId="${cmis:baseTypeId}" objectTypeId="${cmis:objectTypeId}" mimetype="${cmis:contentStreamMimeType}">
+				<td class="cmis-library-cell icon"></td>
+				<td class="cmis-library-cell cmis-name">${cmis:name}</td>
+				<td class="cmis-library-cell">${cmis:lastModificationDate}</td>
+				<td class="cmis-library-cell">${cmis:lastModifiedBy}</td>
+				<td class="cmis-library-cell actions">
+					<!-- <div class="icon icon-edit" enabled="${canUpdateProperties}" title="Edit Properties"></div> -->
+					<!-- <div class="icon icon-applyACL" enabled="${canApplyACL}" title="Manage Permissions"></div> -->
+					<div class="icon icon-download" enabled="${canGetContentStream}" title="Download"></div>
+					<div class="icon icon-preview" enabled="${canGetContentStream}" mimeType=${cmis:contentStreamMimeType} title="Preview"></div>
+				</td>
+				<td class="cmis-library-cell more-actions">
+					<span class="icon-more" title="More action(s)">...</span>
+					<div class="more-actions-popup detail-actions" style="display:none;">
+						<div class="icon icon-close" enabled="true" title="Close"></div>
+						<div class="icon icon-download" enabled="${canGetContentStream}" title="Download">Download</div>
+						<div class="icon icon-preview" enabled="${canGetContentStream}" mimeType=${cmis:contentStreamMimeType} title="Preview">Preview</div>
+						<div class="icon icon-view" enabled="${canGetProperties}" title="View Details">View Details</div>
+						<div class="icon icon-version" enabled="${canGetAllVersions}" title="Check Versions">Check Versions</div>
+						<div class="icon icon-checkin" enabled="${canCheckIn}" title="Check-In">Check-In</div>
+						<div class="icon icon-cancel-checkout" enabled="${canCancelCheckOut}" title="Cancel Check-Out">Cancel Check-Out</div>
+						<div class="icon icon-checkout" enabled="${canCheckOut}" title="Check-Out">Check-Out</div>
+						<div class="icon icon-update" enabled="${canSetContentStream}" title="Update">Update</div>
+						<div class="icon icon-delete" enabled="${canDeleteObject}" title="Delete">Delete</div>
+					</div>
+				</td>
+			</tr>
+		</script>
+
+	<script id="cmis-library-detail-template" type="text/template"
+		cmisType="_global">
+			<div class="detail">
+				<h2>Document Detail</h2>
+				<table>
+					<tr>
+						<td class="cmis-library-detail-label">Object Type Id</td>
+						<td class="cmis-library-detail-value">${cmis:objectTypeId}</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-detail-label">Object Id</td>
+						<td class="cmis-library-detail-value">${cmis:versionSeriesId}</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-detail-label">Name</td>
+						<td class="cmis-library-detail-value">${cmis:name}</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-detail-label">MIME Type</td>
+						<td class="cmis-library-detail-value">${cmis:contentStreamMimeType}</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-detail-label">Creation Date</td>
+						<td class="cmis-library-detail-value date">${cmis:creationDate}</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-detail-label">Created By</td>
+						<td class="cmis-library-detail-value">${cmis:createdBy}</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-detail-label">Last Modified Date</td>
+						<td class="cmis-library-detail-value date">${cmis:lastModificationDate}</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-detail-label">Last Modified By</td>
+						<td class="cmis-library-detail-value">${cmis:lastModifiedBy}</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-detail-label">Is Checked Out?</td>
+						<td class="cmis-library-detail-value">${cmis:isVersionSeriesCheckedOut}</td>
+					</tr>
+				</table>
+			</div>
+			<div class="detail-actions" id="${cmis:objectId}" versionSeriesId="${cmis:versionSeriesId}">
+				<div class="icon icon-back icon-back-documents" enabled="true">Back to documents list</div>
+				<div class="icon icon-download" enabled="${canGetContentStream}"><a href="${cmis:contentUrl}">Download</a></div>
+				<div class="icon icon-version" enabled="${canGetAllVersions}">Check Versions</div>
+				<!-- <div class="icon icon-applyACL" enabled="${canApplyACL}">Manage Permissions</div> -->
+				<div class="icon icon-delete" enabled="${canDeleteObject}">Delete Document</div>
+			</div>
+		</script>
+
+	<script id="cmis-library-detail-template" type="text/template"
+		cmisType="cmis:folder">
+			<div class="detail">
+				<h2>Document Detail</h2>
+				<table>
+					<tr>
+						<td class="cmis-library-detail-label">Object Type Id</td>
+						<td class="cmis-library-detail-value">${cmis:objectTypeId}</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-detail-label">Object Id</td>
+						<td class="cmis-library-detail-value">${cmis:objectId}</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-detail-label">Name</td>
+						<td class="cmis-library-detail-value">${cmis:name}</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-detail-label">Creation Date</td>
+						<td class="cmis-library-detail-value date">${cmis:creationDate}</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-detail-label">Created By</td>
+						<td class="cmis-library-detail-value">${cmis:createdBy}</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-detail-label">Last Modified Date</td>
+						<td class="cmis-library-detail-value date">${cmis:lastModificationDate}</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-detail-label">Last Modified By</td>
+						<td class="cmis-library-detail-value">${cmis:lastModifiedBy}</td>
+					</tr>
+				</table>
+			</div>
+			<div class="detail-actions" id="${cmis:objectId}" versionSeriesId="${cmis:versionSeriesId}">
+				<div class="icon icon-back icon-back-documents" enabled="true">Back to documents list</div>
+				<!-- <div class="icon icon-applyACL" enabled="${canApplyACL}">Manage Permissions</div> -->
+				<div class="icon icon-delete" enabled="${canDeleteObject}">Delete Document</div>
+			</div>
+		</script>
+
+	<script id="cmis-library-version-template" type="text/template">
+			<div class="version" id="${cmis:objectId}" versionSeriesId="${cmis:versionSeriesId}">
+				<table>
+					<tr>
+						<td class="cmis-library-detail-label">Version</td>
+						<td class="cmis-library-detail-value">${cmis:versionLabel}</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-detail-label">Name</td>
+						<td class="cmis-library-detail-value">${cmis:name}</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-detail-label">Last Modified Date</td>
+						<td class="cmis-library-detail-value date">${cmis:lastModificationDate}</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-detail-label">Last Modified By</td>
+						<td class="cmis-library-detail-value">${cmis:lastModifiedBy}</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-detail-label"></td>
+						<td class="cmis-library-detail-value download"><div class="icon-download icon">Download</td>
+					</tr>
+				</table>
+			</div>
+		</script>
+
+	<script id="cmis-library-advanced-search-template-content" class="cmis-library-advanced-search-template" type="text/template" cmisType="cmis:document" title="Content">
+			<div class="search-form">
+				<table align="center">
+					<tr>
+						<td class="cmis-library-search-form-label">Name</td>
+						<td class="cmis-library-search-form-input">
+							<input field="cmis:name" cmisPropertyType="string" />
+						</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-search-form-label">Title</td>
+						<td class="cmis-library-search-form-input">
+							<input field="cm:title" cmisPropertyType="string" />
+						</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-search-form-label">Description</td>
+						<td class="cmis-library-search-form-input">
+							<input field="cm:description" cmisPropertyType="string" />
+						</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-search-form-label">Mimetype</td>
+						<td class="cmis-library-search-form-input">
+							<select field="cmis:contentStreamMimeType" cmisPropertyType="string">
+								<option value="">Unknown</option>
+								<option value="video/3gpp">3G Video</option>
+								<option value="video/3gpp2">3G2 Video</option>
+								<option value="application/vnd.adobe.xdp+xml">Adobe Acrobat XML Data Package</option>
+								<option value="application/vnd.adobe.aftereffects.project">Adobe AfterEffects Project</option>
+								<option value="application/vnd.adobe.aftereffects.template">Adobe AfterEffects Template</option>
+								<option value="application/vnd.adobe.air-application-installer-package+zip">Adobe AIR</option>
+								<option value="image/x-raw-adobe">Adobe Digital Negative Image</option>
+								<option value="application/x-zip">Adobe Flex Project File</option>
+								<option value="application/framemaker">Adobe FrameMaker</option>
+								<option value="application/illustrator">Adobe Illustrator File</option>
+								<option value="application/x-indesign">Adobe InDesign Document</option>
+								<option value="application/pagemaker">Adobe PageMaker</option>
+								<option value="application/pdf">Adobe PDF Document</option>
+								<option value="image/vnd.adobe.photoshop">Adobe Photoshop</option>
+								<option value="image/vnd.adobe.premiere">Adobe Premiere</option>
+								<option value="audio/vnd.adobe.soundbooth">Adobe SoundBooth</option>
+								<option value="audio/x-aiff">AIFF Audio</option>
+								<option value="application/acp">Alfresco Content Package</option>
+								<option value="application/vnd.android.package-archive">Android Package</option>
+								<option value="image/x-portable-anymap">Anymap Image</option>
+								<option value="application/vnd.apple.keynote">Apple iWork Keynote</option>
+								<option value="application/vnd.apple.numbers">Apple iWork Numbers</option>
+								<option value="application/vnd.apple.pages">Apple iWork Pages</option>
+								<option value="image/vnd.dwg">AutoCAD Drawing</option>
+								<option value="image/x-dwt">AutoCAD Template</option>
+								<option value="audio/basic">Basic Audio</option>
+								<option value="application/octet-stream">Binary File (Octet Stream)</option>
+								<option value="image/bmp">Bitmap Image</option>
+								<option value="image/x-raw-canon">Canon RAW Image</option>
+								<option value="image/cgm">CGM Image</option>
+								<option value="text/csv">Comma Separated Values (CSV)</option>
+								<option value="application/dita+xml">DITA</option>
+								<option value="message/rfc822">EMail</option>
+								<option value="application/eps">EPS Type PostScript</option>
+								<option value="audio/x-flac">FLAC Audio</option>
+								<option value="application/x-fla">Flash Source</option>
+								<option value="video/x-flv">Flash Video</option>
+								<option value="image/x-raw-fuji">Fuji RAW Image</option>
+								<option value="image/gif">GIF Image</option>
+								<option value="image/x-portable-graymap">Greymap Image</option>
+								<option value="application/x-gzip">GZIP</option>
+								<option value="application/x-gtar">GZIP Tarball</option>
+								<option value="image/x-raw-hasselblad">Hasselblad RAW Image</option>
+								<option value="text/html">HTML</option>
+								<option value="application/vnd.oasis.opendocument.text-web">HTML Document Template</option>
+								<option value="text/calendar">iCalendar File</option>
+								<option value="image/ief">IEF Image</option>
+								<option value="application/java">Java Class</option>
+								<option value="application/x-javascript">Java Script</option>
+								<option value="image/jp2">JPEG 2000 Image</option>
+								<option value="image/jpeg">JPEG Image</option>
+								<option value="application/json">JSON</option>
+								<option value="image/x-raw-kodak">Kodak RAW Image</option>
+								<option value="application/x-latex">LaTeX</option>
+								<option value="image/x-raw-leica">Leica RAW Image</option>
+								<option value="application/x-troff-man">Man Page</option>
+								<option value="text/x-markdown">Markdown</option>
+								<option value="text/mediawiki">MediaWiki Markup</option>
+								<option value="application/vnd.ms-excel">Microsoft Excel</option>
+								<option value="application/vnd.openxmlformats-officedocument.spreadsheetml.sheet">Microsoft Excel 2007</option>
+								<option value="application/vnd.ms-excel.addin.macroenabled.12">Microsoft Excel 2007 add-in</option>
+								<option value="application/vnd.ms-excel.sheet.binary.macroenabled.12">Microsoft Excel 2007 binary workbook</option>
+								<option value="application/vnd.ms-excel.sheet.macroenabled.12">Microsoft Excel 2007 macro-enabled workbook</option>
+								<option value="application/vnd.ms-excel.template.macroenabled.12">Microsoft Excel 2007 macro-enabled workbook template</option>
+								<option value="application/vnd.openxmlformats-officedocument.spreadsheetml.template">Microsoft Excel template 2007</option>
+								<option value="application/vnd.ms-outlook">Microsoft Outlook Message</option>
+								<option value="application/vnd.ms-powerpoint">Microsoft PowerPoint</option>
+								<option value="application/vnd.ms-powerpoint.addin.macroenabled.12">Microsoft PowerPoint 2007 add-in</option>
+								<option value="application/vnd.ms-powerpoint.presentation.macroenabled.12">Microsoft PowerPoint 2007 macro-enabled presentation</option>
+								<option value="application/vnd.ms-powerpoint.template.macroenabled.12">Microsoft PowerPoint 2007 macro-enabled presentation template</option>
+								<option value="application/vnd.ms-powerpoint.slide.macroenabled.12">Microsoft PowerPoint 2007 macro-enabled slide</option>
+								<option value="application/vnd.ms-powerpoint.slideshow.macroenabled.12">Microsoft PowerPoint 2007 macro-enabled slide show</option>
+								<option value="application/vnd.openxmlformats-officedocument.presentationml.presentation">Microsoft PowerPoint 2007 presentation</option>
+								<option value="application/vnd.openxmlformats-officedocument.presentationml.slide">Microsoft PowerPoint 2007 slide</option>
+								<option value="application/vnd.openxmlformats-officedocument.presentationml.slideshow">Microsoft PowerPoint 2007 slide show</option>
+								<option value="application/vnd.openxmlformats-officedocument.presentationml.template">Microsoft PowerPoint 2007 template</option>
+								<option value="application/vnd.ms-project">Microsoft Project</option>
+								<option value="application/vnd.visio">Microsoft Visio</option>
+								<option value="application/msword">Microsoft Word</option>
+								<option value="application/vnd.openxmlformats-officedocument.wordprocessingml.document">Microsoft Word 2007</option>
+								<option value="application/vnd.ms-word.document.macroenabled.12">Microsoft Word 2007 macro-enabled document</option>
+								<option value="application/vnd.ms-word.template.macroenabled.12">Microsoft Word 2007 macro-enabled document template</option>
+								<option value="application/vnd.openxmlformats-officedocument.wordprocessingml.template">Microsoft Word 2007 template</option>
+								<option value="image/x-raw-minolta">Minolta RAW Image</option>
+								<option value="audio/mpeg">MPEG Audio</option>
+								<option value="video/mp2t">MPEG Transport Stream</option>
+								<option value="video/mpeg">MPEG Video</option>
+								<option value="video/mpeg2">MPEG2 Video</option>
+								<option value="audio/mp4">MPEG4 Audio</option>
+								<option value="video/mp4">MPEG4 Video</option>
+								<option value="video/x-m4v">MPEG4 Video (m4v)</option>
+								<option value="video/x-ms-asf">MS ASF Streaming Video</option>
+								<option value="video/x-msvideo">MS Video</option>
+								<option value="audio/x-ms-wma">MS WMA Streaming Audio</option>
+								<option value="video/x-ms-wmv">MS WMV Streaming Video</option>
+								<option value="image/x-raw-nikon">Nikon RAW Image</option>
+								<option value="audio/ogg">Ogg Audio</option>
+								<option value="application/ogg">Ogg Multiplex</option>
+								<option value="video/ogg">Ogg Video</option>
+								<option value="audio/vorbis">Ogg Vorbis Audio</option>
+								<option value="image/x-raw-olympus">Olympus RAW Image</option>
+								<option value="application/vnd.oasis.opendocument.chart">OpenDocument Chart</option>
+								<option value="application/vnd.oasis.opendocument.database">OpenDocument Database</option>
+								<option value="application/vnd.oasis.opendocument.graphics">OpenDocument Drawing</option>
+								<option value="application/vnd.oasis.opendocument.graphics-template">OpenDocument Drawing Template</option>
+								<option value="application/vnd.oasis.opendocument.formula">OpenDocument Formula</option>
+								<option value="application/vnd.oasis.opendocument.image">OpenDocument Image</option>
+								<option value="application/vnd.oasis.opendocument.text-master">OpenDocument Master Document</option>
+								<option value="application/vnd.oasis.opendocument.presentation">OpenDocument Presentation</option>
+								<option value="application/vnd.oasis.opendocument.presentation-template">OpenDocument Presentation Template</option>
+								<option value="application/vnd.oasis.opendocument.spreadsheet">OpenDocument Spreadsheet</option>
+								<option value="application/vnd.oasis.opendocument.spreadsheet-template">OpenDocument Spreadsheet Template</option>
+								<option value="application/vnd.oasis.opendocument.text">OpenDocument Text (OpenOffice 2.0)</option>
+								<option value="application/vnd.oasis.opendocument.text-template">OpenDocument Text Template</option>
+								<option value="application/vnd.sun.xml.calc">OpenOffice 1.0/StarOffice6.0 Calc 6.0</option>
+								<option value="application/vnd.sun.xml.calc.template">OpenOffice 1.0/StarOffice6.0 Calc 6.0 Template</option>
+								<option value="application/vnd.sun.xml.draw">OpenOffice 1.0/StarOffice6.0 Draw 6.0</option>
+								<option value="application/vnd.sun.xml.impress">OpenOffice 1.0/StarOffice6.0 Impress 6.0</option>
+								<option value="application/vnd.sun.xml.impress.template">OpenOffice 1.0/StarOffice6.0 Impress 6.0 Template</option>
+								<option value="application/vnd.sun.xml.writer">OpenOffice 1.0/StarOffice6.0 Writer 6.0</option>
+								<option value="application/vnd.sun.xml.writer.template">OpenOffice 1.0/StarOffice6.0 Writer 6.0 Template</option>
+								<option value="image/x-raw-panasonic">Panasonic RAW Image</option>
+								<option value="image/x-raw-pentax">Pentax RAW Image</option>
+								<option value="image/x-portable-pixmap">Pixmap Image</option>
+								<option value="text/plain">Plain Text</option>
+								<option value="image/png">PNG Image</option>
+								<option value="image/x-portable-bitmap">Portable Bitmap</option>
+								<option value="application/postscript">PostScript</option>
+								<option value="application/remote-printing">Printer Text File</option>
+								<option value="video/quicktime">Quicktime Video</option>
+								<option value="video/x-rad-screenplay">RAD Screen Display</option>
+								<option value="image/x-cmu-raster">Raster Image</option>
+								<option value="image/x-raw-red">RED RAW Image</option>
+								<option value="image/x-rgb">RGB Image</option>
+								<option value="text/richtext">Rich Text</option>
+								<option value="application/rtf">Rich Text Format</option>
+								<option value="application/rss+xml">RSS</option>
+								<option value="image/svg+xml">Scalable Vector Graphics Image</option>
+								<option value="video/x-sgi-movie">SGI Video</option>
+								<option value="text/sgml">SGML (Human Readable)</option>
+								<option value="application/sgml">SGML (Machine Readable)</option>
+								<option value="application/x-sh">Shell Script</option>
+								<option value="application/x-shockwave-flash">Shockwave Flash</option>
+								<option value="image/x-raw-sigma">Sigma RAW Image</option>
+								<option value="image/x-raw-sony">Sony RAW Image</option>
+								<option value="application/vnd.stardivision.chart">StaChart 5.x</option>
+								<option value="application/vnd.stardivision.calc">StarCalc 5.x</option>
+								<option value="application/vnd.stardivision.draw">StarDraw 5.x</option>
+								<option value="application/vnd.stardivision.impress">StarImpress 5.x</option>
+								<option value="application/vnd.stardivision.impress-packed">StarImpress Packed 5.x</option>
+								<option value="application/vnd.stardivision.math">StarMath 5.x</option>
+								<option value="application/vnd.stardivision.writer">StarWriter 5.x</option>
+								<option value="application/vnd.stardivision.writer-global">StarWriter 5.x global</option>
+								<option value="text/css">Style Sheet</option>
+								<option value="text/tab-separated-values">Tab Separated Values</option>
+								<option value="application/x-tar">Tarball</option>
+								<option value="application/x-tex">Tex</option>
+								<option value="application/x-texinfo">Tex Info</option>
+								<option value="image/tiff">TIFF Image</option>
+								<option value="x-world/x-vrml">VRML</option>
+								<option value="audio/x-wav">WAV Audio</option>
+								<option value="video/webm">WebM Video</option>
+								<option value="application/wordperfect">WordPerfect</option>
+								<option value="image/x-xbitmap">XBitmap Image</option>
+								<option value="application/xhtml+xml">XHTML</option>
+								<option value="text/xml">XML</option>
+								<option value="image/x-xpixmap">XPixmap Image</option>
+								<option value="image/x-xwindowdump">XWindow Dump</option>
+								<option value="application/x-compress">Z Compress</option>
+								<option value="application/zip">ZIP</option>
+							</select>
+						</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-search-form-label">Modified Date</td>
+						<td class="cmis-library-search-form-input">
+							<div><input field="cmis:lastModificationDate" cmisPropertyType="date" rangeOperator="from" placeHolder="From (YYYY-MM-DD)"/></div>
+							<div><input field="cmis:lastModificationDate" cmisPropertyType="date" rangeOperator="to" placeHolder="To (YYYY-MM-DD)" /></div>
+						</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-search-form-label">Modifier</td>
+						<td class="cmis-library-search-form-input">
+							<input field="cmis:lastModifiedBy" cmisPropertyType="string" />
+						</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-search-form-label">Content Size</td>
+						<td class="cmis-library-search-form-input">
+							<div><input field="cmis:contentStreamLength" cmisPropertyType="int" rangeOperator="from" placeHolder="From"/></div>
+							<div><input field="cmis:contentStreamLength" cmisPropertyType="int" rangeOperator="to" placeHolder="To" /></div>
+						</td>
+					</tr>
+					<tr>
+						<td colspan="2">
+							<button type="button" class="search-button">Search</button>
+						</td>
+					</tr>
+				</table>
+			</div>
+		</script>
+
+	<script id="cmis-library-advanced-search-template-folder" class="cmis-library-advanced-search-template" type="text/template" cmisType="cmis:folder" title="Folder">
+			<div class="search-form">
+				<table align="center">
+					<tr>
+						<td class="cmis-library-search-form-label">Name</td>
+						<td class="cmis-library-search-form-input">
+							<input field="cmis:name" cmisPropertyType="string" />
+						</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-search-form-label">Title</td>
+						<td class="cmis-library-search-form-input">
+							<input field="cm:title" cmisPropertyType="string" />
+						</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-search-form-label">Description</td>
+						<td class="cmis-library-search-form-input">
+							<input field="cm:description" cmisPropertyType="string" />
+						</td>
+					</tr>
+					<tr>
+						<td class="cmis-library-search-form-label">Modifier</td>
+						<td class="cmis-library-search-form-input">
+							<input field="cmis:lastModifiedBy" cmisPropertyType="string" />
+						</td>
+					</tr>
+					<tr>
+						<td colspan="2">
+							<button type="button" class="search-button">Search</button>
+						</td>
+					</tr>
+				</table>
+			</div>
+		</script>
+</div>
\ No newline at end of file

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

Added: chemistry/parts/trunk/cmis-js/lib/README.md
URL: http://svn.apache.org/viewvc/chemistry/parts/trunk/cmis-js/lib/README.md?rev=1642272&view=auto
==============================================================================
--- chemistry/parts/trunk/cmis-js/lib/README.md (added)
+++ chemistry/parts/trunk/cmis-js/lib/README.md Fri Nov 28 08:44:28 2014
@@ -0,0 +1,12 @@
+CMIS 1.1 JS Library
+-------------------
+
+Version: 	1.1 (09-05-2014)
+Developer: 	Ben Chevallereau (ben.chevallereau@armedia.com / benjamin.chevallereau@gmail.com)
+
+Description
+-----------
+
+This folder contains only the file cmis.js that provides feature to connect any CMIS compliant repository based on CMIS 1.1.
+This library is used by the browser and documents UI components.
+A test suite (based on QUnit) has been developed as well to check the connectivity and the compatibility between this library and your CMIS repository. 
\ No newline at end of file

Added: chemistry/parts/trunk/cmis-js/lib/cmis.js
URL: http://svn.apache.org/viewvc/chemistry/parts/trunk/cmis-js/lib/cmis.js?rev=1642272&view=auto
==============================================================================
--- chemistry/parts/trunk/cmis-js/lib/cmis.js (added)
+++ chemistry/parts/trunk/cmis-js/lib/cmis.js Fri Nov 28 08:44:28 2014
@@ -0,0 +1,1407 @@
+/**
+ * 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.
+ */
+
+(function(root, factory) {
+	'use strict';
+	root.cmis = factory();
+}(this, function() {
+	'use strict';
+
+	/**
+	 * @class cmis global object
+	 */
+
+	var lib = {};
+
+	/**
+	 * @return {CmisSession}
+	 * 
+	 */
+	lib.createSession = function(url) {
+
+		/**
+		 * @class CmisSession
+		 * 
+		 * the session is the enrty point for all cmis requests before making
+		 * any request, session.loadRepository() must be invoked
+		 * 
+		 */
+		var session = {};
+
+		/**
+		 * sets token for authentication
+		 * 
+		 * @param {String}
+		 *            token
+		 * @return {CmisSession}
+		 */
+		session.setToken = function(token) {
+			_token = token;
+			return session;
+		};
+
+		/**
+		 * sets credentials for authentication
+		 * 
+		 * @param {String}
+		 *            username
+		 * @param {String}
+		 *            password
+		 * @return {CmisSession}
+		 */
+		session.setCredentials = function(username, password) {
+			_username = username;
+			_password = password;
+			return session;
+		};
+
+		/**
+		 * get credentials for authentication
+		 * 
+		 * @return username:password
+		 */
+		session.getCredentials = function() {
+			return _username + ":" + _password;
+		};
+
+		/**
+		 * get token for authentication
+		 * 
+		 * @return token
+		 */
+		session.getToken = function() {
+			return _token;
+		};
+
+		/**
+		 * Connects to a cmis server and retrieves repositories, token or
+		 * credentials must already be set
+		 * 
+		 */
+		session.loadRepositories = function(options) {
+			var _options;
+			if (options == null)
+				_options = {
+					request : {}
+				};
+			else
+				_options = $.extend(true, {}, options);
+
+			_options.request.success = function(data) {
+				for ( var repo in data) {
+					session.defaultRepository = data[repo];
+					break;
+				}
+				session.repositories = data;
+
+				if (options != null && options.request != null && options.request.success != null)
+					options.request.success(data);
+			};
+
+			new CmisRequest(_get(url, _options));
+		};
+
+		/**
+		 * gets an object by objectId
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {String}
+		 *            returnVersion (if set must be one of 'this', latest' or
+		 *            'latestmajor')
+		 * @param {Object}
+		 *            options (possible options: filter, renditionFilter,
+		 *            includeAllowableActions, includeRelationships, includeACL,
+		 *            includePolicyIds, succinct, token)
+		 */
+		session.getObject = function(objectId, returnVersion, options) {
+			options = _fill(options);
+			options.cmisselector = 'object';
+			options.objectId = objectId;
+			if (returnVersion && returnVersion != 'this') {
+				options.major = (returnVersion == 'latestmajor');
+			}
+			new CmisRequest(_get(session.defaultRepository.rootFolderUrl, options));
+		};
+
+		/**
+		 * gets an object by path
+		 * 
+		 * @param {String}
+		 *            path
+		 * @param {Object}
+		 *            options
+		 */
+		session.getObjectByPath = function(path, options) {
+			options = _fill(options);
+			options.cmisselector = 'object';
+
+			new CmisRequest(_get(session.defaultRepository.rootFolderUrl + path, options));
+		};
+
+		/**
+		 * creates a new folder
+		 * 
+		 * @param {String}
+		 *            parentId
+		 * @param {String/Object}
+		 *            input if `input` is a string used as the folder name, if
+		 *            `input` is an object it must contain required properties:
+		 *            {'cmis:name': 'aFolder', 'cmis:objectTypeId':
+		 *            'cmis:folder'}
+		 */
+		session.createFolder = function(parentId, input, policies, addACEs, removeACEs, options) {
+			var options = _fill(options);
+			if ('string' == typeof input) {
+				input = {
+					'cmis:name' : input
+				};
+			}
+			var properties = input || {};
+			if (!properties['cmis:objectTypeId']) {
+				properties['cmis:objectTypeId'] = 'cmis:folder';
+			}
+			options.objectId = parentId;
+			_setProps(properties, options);
+			_setACEs(addACEs, 'add', options);
+			_setACEs(removeACEs, 'remove', options);
+			options.repositoryId = session.defaultRepository.repositoryId;
+			options.cmisaction = 'createFolder';
+			new CmisRequest(_post(session.defaultRepository.rootFolderUrl, options));
+		};
+
+		/**
+		 * deletes an object
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {Boolean}
+		 *            allVersions
+		 * @param {Object}
+		 *            options (possible options: token)
+		 */
+		session.deleteObject = function(objectId, allVersions, options) {
+			var options = _fill(options);
+			options.repositoryId = session.defaultRepository.repositoryId;
+			options.cmisaction = 'delete';
+			options.objectId = objectId;
+			options.allVersions = !!allVersions;
+
+			new CmisRequest(_post(session.defaultRepository.rootFolderUrl, options));
+		};
+
+		/**
+		 * gets repository informations
+		 * 
+		 * @param {Object}
+		 *            options (possible options: token)
+		 */
+		session.getRepositoryInfo = function(options) {
+			var options = _fill(options);
+			options.cmisselector = 'repositoryInfo';
+			return new CmisRequest(_get(session.defaultRepository.repositoryUrl, options));
+		};
+
+		/**
+		 * gets the types that are immediate children of the specified typeId,
+		 * or the base types if no typeId is provided
+		 * 
+		 * @param {String}
+		 *            typeId
+		 * @param {Boolean}
+		 *            includePropertyDefinitions
+		 * @param {Object}
+		 *            options (possible options: maxItems, skipCount, token)
+		 */
+		session.getTypeChildren = function(typeId, includePropertyDefinitions, options) {
+			options = _fill(options);
+			if (typeId) {
+				options.typeId = typeId;
+			}
+			options.includePropertyDefinitions = includePropertyDefinitions;
+			options.cmisselector = 'typeChildren'
+			new CmisRequest(_get(session.defaultRepository.repositoryUrl, options));
+		};
+
+		/**
+		 * gets all types descended from the specified typeId, or all the types
+		 * in the repository if no typeId is provided
+		 * 
+		 * @param {String}
+		 *            typeId
+		 * @param {Integer}
+		 *            depth
+		 * @param {Boolean}
+		 *            includePropertyDefinitions
+		 * @param {Object}
+		 *            options (possible options: token)
+		 */
+		session.getTypeDescendants = function(typeId, depth, includePropertyDefinitions, options) {
+			options = _fill(options);
+			if (typeId) {
+				options.typeId = typeId;
+			}
+			options.depth = depth || 1;
+			options.includePropertyDefinitions = includePropertyDefinitions;
+			options.cmisselector = 'typeDescendants'
+			new CmisRequest(_get(session.defaultRepository.repositoryUrl, options));
+
+		};
+
+		/**
+		 * gets definition of the specified type
+		 * 
+		 * @param {String}
+		 *            typeId
+		 * @param {Object}
+		 *            options (possible options: token)
+		 */
+		session.getTypeDefinition = function(typeId, options) {
+			options = _fill(options);
+			options.typeId = typeId;
+			options.cmisselector = 'typeDefinition'
+			new CmisRequest(_get(session.defaultRepository.repositoryUrl, options));
+
+		};
+
+		/**
+		 * gets the documents that have been checked out in the repository
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {Object}
+		 *            options (possible options: filter, maxItems, skipCount,
+		 *            orderBy, renditionFilter, includeAllowableActions,
+		 *            includeRelationships, succinct, token)
+		 */
+		session.getCheckedOutDocs = function(objectId, options) {
+			options = _fill(options);
+			if (objectId) {
+				options.objectId = objectId;
+			}
+			options.cmisselector = 'checkedOut'
+			new CmisRequest(_get(session.defaultRepository.repositoryUrl, options));
+
+		};
+
+		/**
+		 * creates a new document
+		 * 
+		 * @param {String}
+		 *            parentId
+		 * @param {String/Buffer/Blob}
+		 *            content
+		 * @param {String/Object}
+		 *            input if `input` is a string used as the document name, if
+		 *            `input` is an object it must contain required properties:
+		 *            {'cmis:name': 'docName', 'cmis:objectTypeId':
+		 *            'cmis:document'}
+		 * @param {String}
+		 *            mimeType
+		 * @param {String}
+		 *            versioningState (if set must be one of: "none", "major",
+		 *            "minor", "checkedout")
+		 * @param {Object}
+		 *            policies
+		 * @param {Object}
+		 *            addACEs
+		 * @param {Object}
+		 *            removeACEs
+		 * @param {Object}
+		 *            options (possible options: succinct, token)
+		 */
+		session.createDocument = function(parentId, file, input, mimeType, versioningState, policies, addACEs, removeACEs, options) {
+			var options = _fill(options);
+			if ('string' == typeof input) {
+				input = {
+					'cmis:name' : input
+				};
+			}
+			var properties = input || {};
+			if (!properties['cmis:objectTypeId']) {
+				properties['cmis:objectTypeId'] = 'cmis:document';
+			}
+			if (versioningState) {
+				options.versioningState = versioningState;
+			}
+
+			options.objectId = parentId;
+			_setProps(properties, options);
+			if (addACEs) {
+				_setACEs(addACEs, 'add', options);
+			}
+			if (policies) {
+				_setPolicies(policies, options);
+			}
+			if (removeACEs) {
+				_removeACEs(removeACEs, 'remove', options);
+			}
+			options.repositoryId = session.defaultRepository.repositoryId;
+			options.cmisaction = 'createDocument';
+
+			new CmisRequest(_postMultipart(session.defaultRepository.rootFolderUrl, options, file, mimeType, properties['cmis:name']));
+		};
+
+		/**
+		 * creates a document object as a copy of the given source document
+		 * 
+		 * @param {String}
+		 *            parentId
+		 * @param {String}
+		 *            sourceId
+		 * @param {String/Buffer/Blob}
+		 *            content
+		 * @param {String/Object}
+		 *            input if `input` is a string used as the document name, if
+		 *            `input` is an object it must contain required properties:
+		 *            {'cmis:name': 'docName', 'cmis:objectTypeId':
+		 *            'cmis:document'}
+		 * @param {Stirng}
+		 *            mimeType
+		 * @param {String}
+		 *            versioningState (if set must be one of: "none", "major",
+		 *            "minor", "checkedout")
+		 * @param {Array}
+		 *            policies
+		 * @param {Object}
+		 *            addACEs
+		 * @param {Object}
+		 *            removeACEs
+		 * @param {Object}
+		 *            options (possible options: succinct, token)
+		 */
+		session.createDocumentFromSource = function(parentId, sourceId, content, input, mimeType, versioningState, policies, addACEs, removeACEs, options) {
+			var options = _fill(options);
+			if ('string' == typeof input) {
+				input = {
+					'cmis:name' : input
+				};
+			}
+			var properties = input || {};
+			if (!properties['cmis:objectTypeId']) {
+				properties['cmis:objectTypeId'] = 'cmis:document';
+			}
+			if (versioningState) {
+				options.versioningState = versioningState;
+			}
+			options.objectId = parentId;
+			options.sourceId = sourceId;
+			_setProps(properties, options);
+			if (addACEs) {
+				_setACEs(addACEs, 'add', options);
+			}
+			if (removeACEs) {
+				_removeACEs(removeACEs, 'remove', options);
+			}
+			if (policies) {
+				_setPolicies(policies, options);
+			}
+			options.repositoryId = session.defaultRepository.repositoryId;
+			options.cmisaction = 'createDocumentFromSource';
+
+			new CmisRequest(_postMultipart(session.defaultRepository.rootFolderUrl, options, content, mimeType, properties['cmis:name']));
+		};
+
+		/**
+		 * Creates a relationship
+		 * 
+		 * @param {Object}
+		 *            properties
+		 * @param {Object}
+		 *            policies
+		 * @param {Object}
+		 *            addACEs
+		 * @param {Object}
+		 *            removeACEs
+		 * @param {Object}
+		 *            options (possible options: succinct, token)
+		 */
+		session.createRelationship = function(properties, policies, addACES, removeACEs, options) {
+			options = _fill(options);
+			_setProps(properties, options);
+			if (addACEs) {
+				_setACEs(addACEs, 'add', options);
+			}
+			if (removeACEs) {
+				_removeACEs(removeACEs, 'remove', options);
+			}
+			if (policies) {
+				_setPolicies(policies, options);
+			}
+			options.cmisaction = 'createRelationship';
+			new CmisRequest(_post(session.defaultRepository.repositoryUrl, options));
+		};
+
+		/**
+		 * Creates a policy
+		 * 
+		 * @param {String}
+		 *            folderId
+		 * @param {Object}
+		 *            properties
+		 * @param {Object}
+		 *            policies
+		 * @param {Object}
+		 *            addACEs
+		 * @param {Object}
+		 *            removeACEs
+		 * @param {Object}
+		 *            options (possible options: succinct, token)
+		 */
+		session.createPolicy = function(folderId, properties, policies, addACES, removeACEs, options) {
+			options = _fill(options);
+			options.objectId = folderId;
+			_setProps(properties, options);
+			if (addACEs) {
+				_setACEs(addACEs, 'add', options);
+			}
+			if (removeACEs) {
+				_removeACEs(removeACEs, 'remove', options);
+			}
+			if (policies) {
+				_setPolicies(policies, options);
+			}
+			options.cmisaction = 'createPolicy';
+			return new CmisRequest(_post(session.defaultRepository.rootFolderUrl).send(options));
+		};
+
+		/**
+		 * Creates an item
+		 * 
+		 * @param {String}
+		 *            folderId
+		 * @param {Object}
+		 *            properties
+		 * @param {Object}
+		 *            policies
+		 * @param {Object}
+		 *            addACEs
+		 * @param {Object}
+		 *            removeACEs
+		 * @param {Object}
+		 *            options (possible options: succinct, token)
+		 */
+		session.createItem = function(folderId, properties, policies, addACEs, removeACEs, options) {
+			options = _fill(options);
+			options.objectId = folderId;
+			_setProps(properties, options);
+			if (addACEs) {
+				_setACEs(addACEs, 'add', options);
+			}
+			if (removeACEs) {
+				_removeACEs(removeACEs, 'remove', options);
+			}
+			if (policies) {
+				_setPolicies(policies, options);
+			}
+			options.cmisaction = 'createItem';
+			new CmisRequest(_post(session.defaultRepository.rootFolderUrl, options));
+		};
+
+		/**
+		 * Updates properties of specified objects
+		 * 
+		 * @param {Array}
+		 *            objectIds
+		 * @param {Object}
+		 *            properties
+		 * @param {Array}
+		 *            addSecondaryTypeIds
+		 * @param {Array}
+		 *            removeSecondaryTypeIds
+		 * @param {Options}
+		 *            options (possible options: token)
+		 */
+		session.bulkUpdateProperties = function(objectIds, properties, addSecondaryTypeIds, removeSecondaryTypeIds, options) {
+			var options = _fill(options);
+			for (var i = objectIds.length - 1; i >= 0; i--) {
+				options['objectId[' + i + ']'] = objectIds[i];
+			}
+			options.objectIds = objectIds;
+			_setProps(properties, options);
+			if (addSecondaryTypeIds) {
+				_setSecondaryTypeIds(addSecondaryTypeIds, 'add', options);
+			}
+			if (removeSecondaryTypeIds) {
+				_setSecondaryTypeIds(removeSecondaryTypeIds, 'remove', options);
+			}
+			options.cmisaction = 'bulkUpdate';
+			new CmisRequest(_post(session.defaultRepository.repositoryUrl, options));
+
+		};
+
+		/**
+		 * performs a cmis query against the repository
+		 * 
+		 * @param {String}
+		 *            statement
+		 * @param {Boolean}
+		 *            searchAllversions
+		 * @param {Object}
+		 *            options (possible options: maxItems, skipCount, orderBy,
+		 *            renditionFilter, includeAllowableActions,
+		 *            includeRelationships, succinct, token)
+		 */
+		session.query = function(statement, searchAllversions, options) {
+			options = _fill(options);
+			options.cmisaction = 'query';
+			options.q = statement;
+			options.searchAllversions = !!searchAllversions;
+			new CmisRequest(_post(session.defaultRepository.repositoryUrl, options));
+		};
+
+		/**
+		 * gets the changed objects, the list object should contain the next
+		 * change log token.
+		 * 
+		 * @param {String}
+		 *            changeLogToken
+		 * @param {Boolean}
+		 *            includeProperties
+		 * @param {Boolean}
+		 *            includePolicyIds
+		 * @param {Boolean}
+		 *            includeACL
+		 * @param {Object}
+		 *            options (possible options: maxItems, succinct, token)
+		 */
+		session.getContentChanges = function(changeLogToken, includeProperties, includePolicyIds, includeACL, options) {
+			options = _fill(options);
+			options.cmisselector = 'contentChanges';
+			if (changeLogToken) {
+				options.changeLogToken = changeLogToken;
+			}
+			options.includeProperties = !!includeProperties;
+			options.includePolicyIds = !!includePolicyIds;
+			options.includeACL = !!includeACL;
+			new CmisRequest(_get(session.defaultRepository.repositoryUrl, options));
+		};
+
+		/**
+		 * Creates a new type
+		 * 
+		 * @param {Object}
+		 *            type
+		 * @param {Object}
+		 *            options (possible options: token)
+		 * 
+		 */
+		session.createType = function(type, options) {
+			options = _fill(options);
+			options.cmisaction = 'createType';
+			options.type = JSON.stringify(type);
+			return new CmisRequest(_post(session.defaultRepository.repositoryUrl).send(options));
+		};
+
+		/**
+		 * Updates a type definition
+		 * 
+		 * @param {Object}
+		 *            type
+		 * @param {Object}
+		 *            options (possible options: token)
+		 */
+		session.updateType = function(type, options) {
+			options = _fill(options);
+			options.cmisaction = 'updateType';
+			options.type = JSON.stringify(type);
+			return new CmisRequest(_post(session.defaultRepository.repositoryUrl).send(options));
+
+		};
+
+		/**
+		 * Deletes specified type
+		 * 
+		 * @param {String}
+		 *            typeId
+		 * @param {Object}
+		 *            options (possible options: token)
+		 */
+		session.deleteType = function(typeId, options) {
+			options = _fill(options);
+			options.cmisaction = 'deleteType';
+			options.typeId = typeId;
+			return new CmisRequest(_post(session.defaultRepository.repositoryUrl).send(options));
+		};
+
+		/**
+		 * gets last result
+		 * 
+		 * @param {Object}
+		 *            options (possible options: token)
+		 */
+		session.getLastResult = function(options) {
+			options = _fill(options);
+			options.cmisaction = 'lastResult';
+			new CmisRequest(_get(session.defaultRepository.repositoryUrl, options));
+		};
+
+		/**
+		 * Returns children of object specified by id
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {Object}
+		 *            options (possible options: maxItems, skipCount, filter,
+		 *            orderBy, renditionFilter, includeAllowableActions,
+		 *            includeRelationships, includePathSegment, succinct, token)
+		 */
+		session.getChildren = function(objectId, options) {
+			options = _fill(options);
+			options.cmisselector = 'children';
+			options.objectId = objectId;
+			new CmisRequest(_get(session.defaultRepository.rootFolderUrl, options));
+		};
+
+		/**
+		 * Gets all descendants of specified folder
+		 * 
+		 * @param {String}
+		 *            folderId
+		 * @param {Integer}
+		 *            depth
+		 * @param {Object}
+		 *            options (possible options: filter, renditionFilter,
+		 *            includeAllowableActions, includeRelationships,
+		 *            includePathSegment, succinct, token)
+		 */
+		session.getDescendants = function(folderId, depth, options) {
+			options = _fill(options);
+			options.cmisselector = 'descendants';
+			if (depth) {
+				options.depth = depth;
+			}
+			options.objectId = folderId;
+			return new CmisRequest(_get(session.defaultRepository.rootFolderUrl, options));
+		};
+
+		/**
+		 * Gets the folder tree of the specified folder
+		 * 
+		 * @param {String}
+		 *            folderId
+		 * @param {Integer}
+		 *            depth
+		 * @param {Object}
+		 *            options (possible options: filter, renditionFilter,
+		 *            includeAllowableActions, includeRelationships,
+		 *            includePathSegment, succinct, token)
+		 */
+		session.getFolderTree = function(folderId, depth, options) {
+			options = _fill(options);
+			options.cmisselector = 'folderTree';
+			if (depth) {
+				options.depth = depth;
+			}
+			options.objectId = folderId;
+
+			new CmisRequest(_get(session.defaultRepository.rootFolderUrl, options));
+		};
+
+		/**
+		 * Gets the parent folder of the specified folder
+		 * 
+		 * @param {String}
+		 *            folderId
+		 * @param {Object}
+		 *            options (possible options: succinct, token)
+		 */
+		session.getFolderParent = function(folderId, options) {
+			options = _fill(options);
+			options.cmisselector = 'parent';
+			options.objectId = folderId;
+			new CmisRequest(_get(session.defaultRepository.rootFolderUrl, options));
+		};
+
+		/**
+		 * Gets the folders that are the parents of the specified object
+		 * 
+		 * @param {String}
+		 *            folderId
+		 * @param {Object}
+		 *            options (possible options: filter, renditionFilter,
+		 *            includeAllowableActions, includeRelationships,
+		 *            includePathSegment, succinct, token)
+		 */
+		session.getParents = function(objectId, options) {
+			options = _fill(options);
+			options.cmisselector = 'parents';
+			options.objectId = objectId;
+			new CmisRequest(_get(session.defaultRepository.rootFolderUrl, options));
+		};
+
+		/**
+		 * Gets the allowable actions of the specified object
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {Object}
+		 *            options (possible options: filter, maxItems, skipCount,
+		 *            orderBy, renditionFilter, includeAllowableActions,
+		 *            includeRelationships, succinct, token)
+		 */
+		session.getAllowableActions = function(objectId, options) {
+			options = _fill(options);
+			options.cmisselector = 'allowableActions';
+			options.objectId = objectId;
+			new CmisRequest(_get(session.defaultRepository.rootFolderUrl, options));
+		};
+
+		/**
+		 * Gets the properties of the specified object
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {String}
+		 *            returnVersion (if set must be one of 'this', latest' or
+		 *            'latestmajor')
+		 * @param {Object}
+		 *            options (possible options: filter, succinct, token)
+		 */
+		session.getProperties = function(objectId, returnVersion, options) {
+			options = _fill(options);
+			options.cmisselector = 'properties';
+			options.objectId = objectId;
+			if (returnVersion && returnVersion != 'this') {
+				options.major = (returnVersion == 'latestmajor');
+			}
+			new CmisRequest(_get(session.defaultRepository.rootFolderUrl, options));
+		};
+
+		/**
+		 * Gets document content, WARNING: will not work for binary files
+		 * (images, documents, ecc..)
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {Boolean}
+		 *            download
+		 * @param {Object}
+		 *            options (possible options: token)
+		 */
+		session.getContentStream = function(objectId, download, options) {
+			options = _fill(options);
+			options.cmisselector = 'content';
+			options.objectId = objectId;
+			options.download = download;
+			new CmisRequest(_get(session.defaultRepository.rootFolderUrl, options), true);
+		};
+
+		/**
+		 * Gets document content URL
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {Boolean}
+		 *            download
+		 * @param {Object}
+		 *            options (possible options: token)
+		 * @return String
+		 */
+		session.getContentStreamURL = function(objectId, download, options) {
+			options = _fill(options);
+			options.cmisselector = 'content';
+			options.objectId = objectId;
+			options.download = download;
+
+			var pairs = [];
+			for ( var key in options) {
+				pairs.push(encodeURIComponent(key) + '=' + encodeURIComponent(options[key]));
+			}
+			var query = pairs.join('&');
+			return session.defaultRepository.rootFolderUrl + '?' + query;
+		};
+
+		/**
+		 * gets document renditions
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {Object}
+		 *            options (possible options: renditionFilter, maxItems,
+		 *            skipCount, token)
+		 */
+		session.getRenditions = function(objectId, options) {
+			options = _fill(options);
+			options.cmisselector = 'renditions';
+			options.objectId = objectId;
+			options.renditionFilter = options.renditionFilter || '*';
+
+			new CmisRequest(_get(session.defaultRepository.rootFolderUrl, options));
+
+		};
+
+		/**
+		 * Updates properties of specified object
+		 * 
+		 * @param {Object}
+		 *            properties
+		 * @param {Options}
+		 *            options (possible options: changeToken, succinct, token)
+		 */
+		session.updateProperties = function(objectId, properties, options) {
+			var options = _fill(options);
+			options.objectId = objectId;
+			_setProps(properties, options);
+			options.cmisaction = 'update';
+
+			// We first need to get properties to check if there is a change
+			// token or not
+			session.getProperties(objectId, 'this', {
+				request : {
+					success : function(data) {
+						if (data["cmis:changeToken"] != null && data["cmis:changeToken"].value != null) {
+							options.changeToken = data["cmis:changeToken"].value;
+						}
+						new CmisRequest(_post(session.defaultRepository.rootFolderUrl + "?objectId=" + objectId, options));
+					}
+				}
+			});
+
+		};
+
+		/**
+		 * Moves an object
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {String}
+		 *            targeFolderId
+		 * @param {String}
+		 *            sourceFolderId
+		 * @param {Object}
+		 *            options (possible options: succinct, token)
+		 */
+		session.moveObject = function(objectId, sourceFolderId, targetFolderId, options) {
+			var options = _fill(options);
+			options.objectId = objectId;
+			options.cmisaction = 'move';
+			options.targetFolderId = targetFolderId;
+			options.sourceFolderId = sourceFolderId;
+			new CmisRequest(_post(session.defaultRepository.rootFolderUrl, options));
+		};
+
+		/**
+		 * Deletes a folfder tree
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {Boolean}
+		 *            allVersions
+		 * @param {String}
+		 *            unfileObjects (if set must be one of 'unfile',
+		 *            'deletesinglefiled', 'delete')
+		 * @param {Boolean}
+		 *            continueOnFailure
+		 * @param {Object}
+		 *            options (possible options: token)
+		 */
+		session.deleteTree = function(objectId, allVersions, unfileObjects, continueOnFailure, options) {
+			var options = _fill(options);
+			options.repositoryId = session.defaultRepository.repositoryId;
+			options.cmisaction = 'deleteTree';
+			options.objectId = objectId;
+			options.allVersions = !!allVersions;
+			if (unfileObjects) {
+				options.unfileObjects = unfileObjects;
+			}
+			options.continueOnFailure = !!continueOnFailure;
+			new CmisRequest(_post(session.defaultRepository.rootFolderUrl, options));
+
+		};
+
+		/**
+		 * Updates content of document
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {String/Buffer}
+		 *            content
+		 * @param {Boolean}
+		 *            overwriteFlag
+		 * @param {String}
+		 *            mimeType
+		 * @param changeToken
+		 * @param {Object}
+		 *            options (possible options: changeToken, succinct, token)
+		 */
+		session.setContentStream = function(objectId, content, overwriteFlag, mimeType, options) {
+			var options = _fill(options);
+			options.objectId = objectId;
+			options.overwriteFlag = !!overwriteFlag;
+			options.cmisaction = 'setContent';
+
+			// We first need to get properties to check if there is a change
+			// token or not
+			session.getProperties(objectId, 'this', {
+				request : {
+					success : function(data) {
+						if (data["cmis:changeToken"] != null && data["cmis:changeToken"].value != null) {
+							options.changeToken = data["cmis:changeToken"].value;
+							new CmisRequest(_postMultipart(session.defaultRepository.rootFolderUrl, options, content, mimeType));
+						}
+					}
+				}
+			});
+
+		};
+
+		/**
+		 * Appends content to document
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {String/Buffer}
+		 *            content
+		 * @param {Boolean}
+		 *            isLastChunk
+		 * @param {Object}
+		 *            options
+		 * @return {CmisRequest} (possible options: changeToken, succinct,
+		 *         token)
+		 */
+		session.appendContentStream = function(objectId, content, isLastChunk, options) {
+			var options = _fill(options);
+			options.objectId = objectId;
+			options.cmisaction = 'appendContent';
+			options.isLastChunk = !!isLastChunk;
+			new CmisRequest(_postMultipart(session.defaultRepository.rootFolderUrl, options, content));
+		};
+
+		/**
+		 * deletes object content
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {Object}
+		 *            options (possible options: changeToken, succinct, token)
+		 */
+		session.deleteContentStream = function(objectId, options) {
+			var options = _fill(options);
+			options.objectId = objectId;
+			options.cmisaction = 'deleteContent';
+			return new CmisRequest(_post(session.defaultRepository.rootFolderUrl).send(options));
+		};
+
+		/**
+		 * Adds specified object to folder
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {String}
+		 *            folderId
+		 * @param {Boolean}
+		 *            allVersions
+		 * @param {Object}
+		 *            options (possible options: succinct, token)
+		 */
+		session.addObjectToFolder = function(objectId, folderId, allVersions, options) {
+			var options = _fill(options);
+			options.objectId = objectId;
+			options.cmisaction = 'addObjectToFolder';
+			options.allVersions = !!allVersions;
+			options.folderId = folderId;
+			new CmisRequest(_post(session.defaultRepository.rootFolderUrl, options));
+		};
+
+		/**
+		 * Removes specified object from folder
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {String}
+		 *            folderId
+		 * @param {Object}
+		 *            options (possible options: succinct, token)
+		 */
+		session.removeObjectFromFolder = function(objectId, folderId, options) {
+			var options = _fill(options);
+			options.objectId = objectId;
+			options.cmisaction = 'removeObjectFromFolder';
+			options.folderId = folderId;
+			new CmisRequest(_post(session.defaultRepository.rootFolderUrl, options));
+		};
+
+		/**
+		 * checks out a document
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {Object}
+		 *            options
+		 */
+		session.checkOut = function(objectId, options) {
+			var options = _fill(options);
+			options.objectId = objectId;
+			options.cmisaction = 'checkOut';
+			new CmisRequest(_post(session.defaultRepository.rootFolderUrl, options));
+
+		};
+
+		/**
+		 * cancels a check out
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {Object}
+		 *            options (possible options: token)
+		 */
+		session.cancelCheckOut = function(objectId, options) {
+			var options = _fill(options);
+			options.objectId = objectId;
+			options.cmisaction = 'cancelCheckOut';
+			new CmisRequest(_post(session.defaultRepository.rootFolderUrl, options));
+
+		};
+
+		/**
+		 * checks in a document, if needed mimetype may be specified as
+		 * input['cmis:contentStreamMimeType'] or as option.mimeType
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {Boolean}
+		 *            major
+		 * @param {String/Object}
+		 *            input if `input` is a string used as the document name, if
+		 *            `input` is an object it must contain required properties:
+		 *            {'cmis:name': 'docName'}
+		 * @param {String/Buffer}
+		 *            content
+		 * @param {String}
+		 *            comment
+		 * @param {Array}
+		 *            policies
+		 * @param {Object}
+		 *            addACEs
+		 * @param {Object}
+		 *            removeACEs
+		 * @param {Object}
+		 *            options
+		 */
+		session.checkIn = function(objectId, major, input, content, comment, policies, addACEs, removeACEs, options) {
+			var options = _fill(options);
+			if ('string' == typeof input) {
+				input = {
+					'cmis:name' : input
+				};
+			}
+			var properties = input || {};
+			if (comment) {
+				options.checkInComment = comment;
+			}
+			options.major = !!major;
+			options.objectId = objectId;
+			_setProps(properties, options);
+			if (addACEs) {
+				_setACEs(addACEs, 'add', options);
+			}
+			if (removeACEs) {
+				_setACEs(removeACEs, 'remove', options);
+			}
+			if (policies) {
+				_setPolicies(policies, options);
+			}
+
+			options.cmisaction = 'checkIn';
+
+			new CmisRequest(_postMultipart(session.defaultRepository.rootFolderUrl, options, content, options.mimeType || properties['cmis:contentStreamMimeType'], properties['cmis:name']));
+
+		};
+
+		/**
+		 * gets versions of object
+		 * 
+		 * @param {Object}
+		 *            options (possible options: filter,
+		 *            includeAllowableActions, succinct, token)
+		 */
+		session.getAllVersions = function(objectId, options) {
+			var options = _fill(options);
+			options.objectId = objectId;
+			options.cmisselector = 'versions';
+			new CmisRequest(_get(session.defaultRepository.rootFolderUrl, options));
+
+		};
+
+		/**
+		 * gets object relationships
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {Boolean}
+		 *            includeSubRelationshipTypes
+		 * @param {String}
+		 *            relationshipDirection
+		 * @param {String}
+		 *            typeId
+		 * @param {Object}
+		 *            options (possible options: maxItems, skipCount,
+		 *            includeAllowableActions, filter, succinct, token)
+		 */
+		session.getObjectRelationships = function(objectId, includeSubRelationshipTypes, relationshipDirection, typeId, options) {
+			var options = _fill(options);
+			options.objectId = objectId;
+			options.includeSubRelationshipTypes = !!includeSubRelationshipTypes;
+			options.relationshipDirection = relationshipDirection || 'either';
+			if (typeId) {
+				options.typeId = typeId;
+			}
+			options.cmisselector = 'relationships';
+			new CmisRequest(_get(session.defaultRepository.rootFolderUrl, options));
+		};
+
+		/**
+		 * gets object applied policies
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {Object}
+		 *            options (possible options: filter, succinct, token)
+		 */
+		session.getAppliedPolicies = function(objectId, options) {
+			var options = _fill(options);
+			options.objectId = objectId;
+			options.cmisselector = 'policies';
+			new CmisRequest(_get(session.defaultRepository.rootFolderUrl, options));
+		};
+
+		/**
+		 * applies policy to object
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {String}
+		 *            policyId
+		 * @param {Object}
+		 *            options (possible options: succinct, token)
+		 */
+		session.applyPolicy = function(objectId, policyId, options) {
+			var options = _fill(options);
+			options.objectId = objectId;
+			options.policyId = policyId;
+			options.cmisaction = 'applyPolicy';
+			new CmisRequest(_post(session.defaultRepository.rootFolderUrl, options));
+		};
+
+		/**
+		 * removes policy from object
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {String}
+		 *            policyId
+		 * @param {Object}
+		 *            options (possible options: succinct, token)
+		 */
+		session.removePolicy = function(objectId, policyId, options) {
+			var options = _fill(options);
+			options.objectId = objectId;
+			options.policyId = policyId;
+			options.cmisaction = 'removePolicy';
+			return new CmisRequest(_post(session.defaultRepository.rootFolderUrl).send(options));
+
+		};
+
+		/**
+		 * applies ACL to object
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {Object}
+		 *            addACEs
+		 * @param {Object}
+		 *            removeACEs
+		 * @param {String}
+		 *            propagation
+		 * @param {Object}
+		 *            options (possible options: token)
+		 */
+		session.applyACL = function(objectId, addACEs, removeACEs, propagation, options) {
+			var options = _fill(options);
+			options.objectId = objectId;
+			options.propagation = propagation;
+			options.cmisaction = 'applyACL';
+			_setACEs(addACEs, 'add', options);
+			_setACEs(removeACEs, 'remove', options);
+			new CmisRequest(_post(session.defaultRepository.rootFolderUrl, options));
+		};
+
+		/**
+		 * gets object ACL
+		 * 
+		 * @param {String}
+		 *            objectId
+		 * @param {Boolean}
+		 *            onlyBasicPermissions
+		 * @param {Object}
+		 *            options (possible options: token)
+		 */
+		session.getACL = function(objectId, onlyBasicPermissions, options) {
+			var options = _fill(options);
+			options.objectId = objectId;
+			options.onlyBasicPermissions = !!onlyBasicPermissions;
+			options.cmisselector = 'acl';
+			new CmisRequest(_get(session.defaultRepository.rootFolderUrl, options));
+		};
+
+		/**
+		 * @class CmisRequest jQuery wrapper used to manage async requests
+		 */
+		function CmisRequest(req) {
+			$.ajax(req);
+		}
+
+		// Private members and methods
+		var _url = url;
+		var _token = null;
+		var _username = null;
+		var _password = null;
+		var _afterlogin;
+
+		var _http = function(method, options, url) {
+			var r = {
+				type : method,
+				dataType : "json",
+				url : url,
+				data : options,
+				crossDomain : true
+			};
+
+			// If the basic authentication is configured
+			if (_username && _password) {
+				var tok = _username + ":" + _password;
+				var hash = btoa(tok);
+				if (!r.headers)
+					r.headers = new Object();
+				r.headers["Authorization"] = "Basic " + hash;
+			}
+
+			// If we use the authentication with token
+			if (_token) {
+				var tokenName = Object.keys(_token)[0];
+				var tokenValue = _token[tokenName];
+
+				if (method == "GET")
+					r.data[tokenName] = tokenValue;
+				else {
+					// Append the ticket in the URL
+					if (r.url.indexOf("?") > -1)
+						r.url += "&" + tokenName + "=" + tokenValue;
+					else
+						r.url += "?" + tokenName + "=" + tokenValue;
+				}
+			}
+
+			// Merge with options.request
+			if (!(typeof options === 'undefined') && !(typeof options.request === 'undefined')) {
+				for ( var attrName in options.request) {
+					r[attrName] = options.request[attrName];
+				}
+
+				// Delete request options
+				delete r.data.request;
+			}
+
+			return r;
+		};
+
+		var _get = function(url, options) {
+			return _http('GET', options, url);
+		};
+
+		var _post = function(url, options) {
+			return _http('POST', options, url);
+		};
+
+		var _postMultipart = function(url, options, file, mimeType) {
+			var req = _post(url, options);
+
+			var data = new FormData();
+			if (file)
+				data.append('content', file);
+			for ( var k in options) {
+				data.append(k, options[k]);
+			}
+
+			req.data = data;
+			req.contentType = false;
+			req.processData = false;
+
+			return req;
+		}
+
+		var _defaultOptions = {
+		// succinct : true
+		};
+
+		var _fill = function(options) {
+			var o = {};
+			for ( var k in _defaultOptions) {
+				o[k] = _defaultOptions[k];
+			}
+			if (options === undefined) {
+				return o;
+			}
+			for (k in options) {
+				o[k] = options[k];
+			}
+
+			return o;
+		};
+
+		var _setProps = function(properties, options) {
+			var i = 0;
+			for ( var id in properties) {
+				options['propertyId[' + i + ']'] = id;
+				options['propertyValue[' + i + ']'] = properties[id];
+				i++;
+			}
+		};
+
+		var _setPolicies = function(policies, options) {
+			for (var i = 0; i < policies.length; i++) {
+				options['policy[' + i + ']'] = policies[i];
+			}
+		};
+
+		// action must be either 'add' or 'remove'
+		var _setACEs = function(ACEs, action, options) {
+			var i = 0;
+			for ( var id in ACEs) {
+				options[action + 'ACEPrincipal[' + i + ']'] = id;
+				var ace = ACEs[id];
+				for (var j = 0; j < ace.length; j++) {
+					options[action + 'ACEPermission[' + i + '][' + j + ']'] = ACEs[id][j];
+				}
+				i++;
+			}
+		};
+
+		// action must be either 'add' or 'remove'
+		var _setSecondaryTypeIds = function(secondaryTypeIds, action, options) {
+			for (var i = 0; i < secondaryTypeIds.length; i++) {
+				options[action + 'SecondaryTypeId[' + i + ']'] = secondaryTypeIds[i];
+			}
+		};
+
+		return session;
+	};
+
+	return lib;
+
+}));

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

Added: chemistry/parts/trunk/cmis-js/samples/browser/browser-01.html
URL: http://svn.apache.org/viewvc/chemistry/parts/trunk/cmis-js/samples/browser/browser-01.html?rev=1642272&view=auto
==============================================================================
--- chemistry/parts/trunk/cmis-js/samples/browser/browser-01.html (added)
+++ chemistry/parts/trunk/cmis-js/samples/browser/browser-01.html Fri Nov 28 08:44:28 2014
@@ -0,0 +1,60 @@
+<!-- 
+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.
+ -->
+ <!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>Browser</title>
+<style>
+body {
+	font-family: "Segoe UI", "Segoe", Tahoma, Helvetica, Arial, sans-serif;
+	font-size: 0.8em;
+	color: #444444;
+}
+
+.cmisbrowser {
+	width: 400px;
+	margin: 10px;
+}
+</style>
+<!-- jQuery Dependency -->
+<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
+<!-- CMIS Library -->
+<script src="../../lib/cmis.js"></script>
+<!-- Browser component -->
+<script src="../../components/browser/browser.js"></script>
+<link rel="stylesheet" href="../../components/browser/browser.css" />
+<!-- Config file -->
+<script src="../config.js"></script>
+<script type="text/javascript">
+	$(document).ready(function() {
+		var options = {
+			cmis : cmisOptions
+		};
+
+		var browser = $("#browser").cmisbrowser(options);
+	});
+</script>
+</head>
+<body>
+
+	<div id="browser" class="cmisbrowser"></div>
+
+</body>
+</html>
\ No newline at end of file

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

Added: chemistry/parts/trunk/cmis-js/samples/browser/browser-02.html
URL: http://svn.apache.org/viewvc/chemistry/parts/trunk/cmis-js/samples/browser/browser-02.html?rev=1642272&view=auto
==============================================================================
--- chemistry/parts/trunk/cmis-js/samples/browser/browser-02.html (added)
+++ chemistry/parts/trunk/cmis-js/samples/browser/browser-02.html Fri Nov 28 08:44:28 2014
@@ -0,0 +1,65 @@
+<!-- 
+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.
+ -->
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>Browser</title>
+<style>
+body {
+	font-family: "Segoe UI", "Segoe", Tahoma, Helvetica, Arial, sans-serif;
+	font-size: 0.8em;
+	color: #444444;
+}
+
+.cmisbrowser {
+	width: 400px;
+	margin: 10px;
+}
+</style>
+<!-- jQuery Dependency -->
+<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
+<!-- CMIS Library -->
+<script src="../../lib/cmis.js"></script>
+<!-- Browser component -->
+<script src="../../components/browser/browser.js"></script>
+<link rel="stylesheet" href="../../components/browser/browser.css" />
+<!-- Config file -->
+<script src="../config.js"></script>
+<script type="text/javascript">
+	$(document).ready(function() {
+
+		$.extend(cmisOptions, {
+			initPath : "/Sites/swsdp/documentLibrary"
+		});
+
+		var options = {
+			cmis : cmisOptions,
+		};
+
+		var browser = $("#browser").cmisbrowser(options);
+	});
+</script>
+</head>
+<body>
+
+	<div id="browser" class="cmisbrowser"></div>
+
+</body>
+</html>
\ No newline at end of file

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

Added: chemistry/parts/trunk/cmis-js/samples/bundle/bundle-01.html
URL: http://svn.apache.org/viewvc/chemistry/parts/trunk/cmis-js/samples/bundle/bundle-01.html?rev=1642272&view=auto
==============================================================================
--- chemistry/parts/trunk/cmis-js/samples/bundle/bundle-01.html (added)
+++ chemistry/parts/trunk/cmis-js/samples/bundle/bundle-01.html Fri Nov 28 08:44:28 2014
@@ -0,0 +1,145 @@
+<!-- 
+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.
+ -->
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CMIS Library</title>
+<!-- jQuery Dependency -->
+<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
+<!-- CMIS Library -->
+<script src="../../lib/cmis.js"></script>
+<!-- Library component -->
+<script src="../../components/library/library.js"></script>
+<link rel="stylesheet" href="../../components/library/library.css" />
+<!-- Browser Component -->
+<script src="../../components/browser/browser.js"></script>
+<link rel="stylesheet" href="../../components/browser/browser.css" />
+<!-- Configuration -->
+<script src="../config.js"></script>
+<script type="text/javascript">
+	$(document).ready(function() {
+		var browserOptions = {
+			cmis : cmisOptions
+		};
+
+		var documentsOptions = {
+			cmis : cmisOptions,
+			autoLoad : false,
+			display : {
+				search : {
+					"cmis:lastModificationDate" : function(HTMLElement) {
+						$(HTMLElement).datepicker();
+						$(HTMLElement).datepicker("option", "dateFormat", "yy-mm-dd");
+					}
+				},
+				type : {
+					"datetime" : function(value, data) {
+						var options = {
+							weekday : "long",
+							year : "numeric",
+							month : "short",
+							day : "numeric",
+							hour : "2-digit",
+							minute : "2-digit"
+						};
+						return (new Date(parseInt(value))).toLocaleDateString("en-US", options);
+					}
+				}
+			},
+			events : {
+				complete : function(library) {
+					console.log("Loaded!");
+
+					// Override the clean credentials function
+					library._cleanCredentials = function() {
+						// Just store the credentials as a cookie
+						document.cookie = "cmiscredentials=; expires=" + (new Date(0)).toGMTString() + "; path=/";
+					};
+
+					// Override the store credentials function
+					library._storeCredentials = function(type, credentials) {
+						// Just store the credentials as a cookie
+						var exdays = 1;
+						var d = new Date();
+						d.setTime(d.getTime() + (exdays * 24 * 60 * 60 * 1000));
+						var expires = "expires=" + d.toUTCString();
+						document.cookie = "cmiscredentials=" + type + "$$" + credentials + ";" + expires + "; path=/";
+					};
+
+					// Override the store credentials function
+					library._retrieveCredentials = function() {
+						var credentials = null;
+
+						// Just search the cookie
+						var ca = document.cookie.split(';');
+						var name = "cmiscredentials=";
+						for (var i = 0; i < ca.length; i++) {
+							var c = ca[i];
+							while (c.charAt(0) == ' ')
+								c = c.substring(1);
+							if (c.indexOf(name) != -1)
+								credentials = c.substring(name.length, c.length);
+						}
+
+						return credentials;
+					};
+
+				}
+			}
+		};
+
+		var browser = $("#browser").cmisbrowser(browserOptions);
+		var library = $("#library").cmislibrary(documentsOptions);
+	});
+</script>
+<!-- Custom CSS -->
+<style>
+body {
+	font-family: "Segoe UI", "Segoe", Tahoma, Helvetica, Arial, sans-serif;
+	font-size: 0.8em;
+	color: #444444;
+}
+
+.cmisbrowser {
+	width: 400px;
+	margin: 10px;
+	float: left;
+}
+
+.cmislibrary {
+	width: 900px;
+	margin: 10px;
+	min-height: 300px;
+	padding: 20px;
+	float: left;
+}
+</style>
+
+<!-- JQUERY UI -->
+
+<link rel="stylesheet" href="//code.jquery.com/ui/1.11.0/themes/smoothness/jquery-ui.css">
+<script src="//code.jquery.com/ui/1.11.0/jquery-ui.js"></script>
+
+</head>
+<body>
+	<div id="browser" class="cmisbrowser"></div>
+	<div id="library" class="cmislibrary"></div>
+</body>
+</html>
\ No newline at end of file

Propchange: chemistry/parts/trunk/cmis-js/samples/bundle/bundle-01.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: chemistry/parts/trunk/cmis-js/samples/bundle/bundle-02-1.html
URL: http://svn.apache.org/viewvc/chemistry/parts/trunk/cmis-js/samples/bundle/bundle-02-1.html?rev=1642272&view=auto
==============================================================================
--- chemistry/parts/trunk/cmis-js/samples/bundle/bundle-02-1.html (added)
+++ chemistry/parts/trunk/cmis-js/samples/bundle/bundle-02-1.html Fri Nov 28 08:44:28 2014
@@ -0,0 +1,60 @@
+<!-- 
+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.
+ -->
+ <!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>Browser</title>
+<style>
+body {
+	font-family: "Segoe UI", "Segoe", Tahoma, Helvetica, Arial, sans-serif;
+	font-size: 0.8em;
+	color: #444444;
+}
+
+.cmisbrowser {
+	width: 400px;
+	margin: 10px;
+}
+</style>
+<!-- jQuery Dependency -->
+<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
+<!-- CMIS Library -->
+<script src="../../lib/cmis.js"></script>
+<!-- Browser component -->
+<script src="../../components/browser/browser.js"></script>
+<link rel="stylesheet" href="../../components/browser/browser.css" />
+<!-- Config file -->
+<script src="../config.js"></script>
+<script type="text/javascript">
+	$(document).ready(function() {
+		var options = {
+			cmis : cmisOptions
+		};
+
+		var browser = $("#browser").cmisbrowser(options);
+	});
+</script>
+</head>
+<body>
+
+	<div id="browser" class="cmisbrowser"></div>
+
+</body>
+</html>
\ No newline at end of file

Propchange: chemistry/parts/trunk/cmis-js/samples/bundle/bundle-02-1.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: chemistry/parts/trunk/cmis-js/samples/bundle/bundle-02-2.html
URL: http://svn.apache.org/viewvc/chemistry/parts/trunk/cmis-js/samples/bundle/bundle-02-2.html?rev=1642272&view=auto
==============================================================================
--- chemistry/parts/trunk/cmis-js/samples/bundle/bundle-02-2.html (added)
+++ chemistry/parts/trunk/cmis-js/samples/bundle/bundle-02-2.html Fri Nov 28 08:44:28 2014
@@ -0,0 +1,62 @@
+<!-- 
+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.
+ -->
+ <!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>Library</title>
+<style>
+body {
+	font-family: "Segoe UI", "Segoe", Tahoma, Helvetica, Arial, sans-serif;
+	font-size: 0.8em;
+	color: #444444;
+}
+
+.cmislibrary {
+	width: 900px;
+	margin: 10px;
+	min-height: 300px;
+	padding: 20px;
+}
+</style>
+<!-- jQuery Dependency -->
+<script src="http://code.jquery.com/jquery-1.11.1.min.js"></script>
+<!-- CMIS Library -->
+<script src="../../lib/cmis.js"></script>
+<!-- Library component -->
+<script src="../../components/library/library.js"></script>
+<link rel="stylesheet" href="../../components/library/library.css" />
+<!-- Config file -->
+<script src="../config.js"></script>
+<script type="text/javascript">
+	$(document).ready(function() {
+		var options = {
+			cmis : cmisOptions
+		};
+
+		var library = $("#library").cmislibrary(options);
+	});
+</script>
+</head>
+<body>
+
+	<div id="library" class="cmislibrary"></div>
+
+</body>
+</html>
\ No newline at end of file

Propchange: chemistry/parts/trunk/cmis-js/samples/bundle/bundle-02-2.html
------------------------------------------------------------------------------
    svn:eol-style = native

Added: chemistry/parts/trunk/cmis-js/samples/bundle/bundle-02.html
URL: http://svn.apache.org/viewvc/chemistry/parts/trunk/cmis-js/samples/bundle/bundle-02.html?rev=1642272&view=auto
==============================================================================
--- chemistry/parts/trunk/cmis-js/samples/bundle/bundle-02.html (added)
+++ chemistry/parts/trunk/cmis-js/samples/bundle/bundle-02.html Fri Nov 28 08:44:28 2014
@@ -0,0 +1,38 @@
+<!-- 
+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.
+ -->
+<!DOCTYPE html>
+<html>
+<head>
+<meta charset="utf-8">
+<title>CMIS Library Using IFrame</title>
+<script type="text/javascript" src="js/messageBroadcaster.js"></script>
+</head>
+<body>
+	<table>
+		<tr>
+			<td style="vertical-align: top"><iframe
+					src="./bundle-02-1.html"
+					style="width: 450px; min-height: 500px; border: none;"></iframe></td>
+			<td style="vertical-align: top"><iframe
+					src="./bundle-02-2.html"
+					style="width: 1000px; min-height: 500px; border: none;"></iframe></td>
+		</tr>
+	</table>
+</body>
+</html>
\ No newline at end of file

Propchange: chemistry/parts/trunk/cmis-js/samples/bundle/bundle-02.html
------------------------------------------------------------------------------
    svn:eol-style = native



Mime
View raw message