cq.screens.dcc.properties.js
1.88 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
/*
* ADOBE CONFIDENTIAL
*
* Copyright 2016 Adobe Systems Incorporated
* All Rights Reserved.
*
* NOTICE: All information contained herein is, and remains
* the property of Adobe Systems Incorporated and its suppliers,
* if any. The intellectual and technical concepts contained
* herein are proprietary to Adobe Systems Incorporated and its
* suppliers and may be covered by U.S. and Foreign Patents,
* patents in process, and are protected by trade secret or copyright law.
* Dissemination of this information or reproduction of this material
* is strictly forbidden unless prior written permission is obtained
* from Adobe Systems Incorporated.
*/
(function(window, $, URITemplate, HTTP) {
'use strict';
// Opens the properties of a given page
var PROPERTIES_PATH = '/screens/properties.html{?item*}&returnPage={+returnPage}';
$(window).adaptTo('foundation-registry').register('foundation.collection.action.action', {
name: 'cq.screens.dcc.properties',
handler: function(name, el, config, collection, selections) {
var paths = selections.map(function(v) {
return $(v).data('foundationCollectionItemId');
});
if (paths.length !== 1) {
return;
}
var returnPage = config.data ? HTTP.internalize(config.data.returnPage) : null;
// if the path is alreayd pointing to "jcr:content"
// we will point it to the parent page
if (paths[0].match('.*/jcr:content|/_jcr_content[./]?$')) {
paths[0] = paths[0].substr(0, paths[0].lastIndexOf('/'));
}
var url = URITemplate.expand(PROPERTIES_PATH, {
item: paths[0],
returnPage: returnPage
});
location.href = HTTP.externalize(url);
}
});
}(window, Granite.$, Granite.URITemplate, Granite.HTTP));