Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
erp5
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Léo-Paul Géneau
erp5
Commits
d97f6f80
Commit
d97f6f80
authored
Feb 01, 2021
by
Romain Courteaud
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
erp5_run_my_doc: display erp5 image url using embedded image
parent
6c013429
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
49 additions
and
10 deletions
+49
-10
bt5/erp5_run_my_doc/SkinTemplateItem/portal_skins/erp5_run_my_doc/slideeditor.gadget.js.js
...tem/portal_skins/erp5_run_my_doc/slideeditor.gadget.js.js
+16
-2
bt5/erp5_run_my_doc/SkinTemplateItem/portal_skins/erp5_run_my_doc/slideviewer.gadget.js.js
...tem/portal_skins/erp5_run_my_doc/slideviewer.gadget.js.js
+33
-8
No files found.
bt5/erp5_run_my_doc/SkinTemplateItem/portal_skins/erp5_run_my_doc/slideeditor.gadget.js.js
View file @
d97f6f80
/*global window, document, rJS, console, RSVP, domsugar*/
/*global window, document, rJS, console, RSVP, domsugar
, URL
*/
/*jslint nomen: true, maxlen:80, indent:2*/
(
function
()
{
"
use strict
"
;
...
...
@@ -31,6 +31,16 @@
'
Image Caption
'
];
function
fixupERP5UrlCompatibility
(
jio_key
,
url
)
{
if
(
!
jio_key
)
{
return
url
;
}
return
new
URL
(
url
,
new
URL
(
jio_key
+
'
/
'
,
window
.
location
.
href
).
href
).
href
;
}
///////////////////////////////////////////////////
// translation
///////////////////////////////////////////////////
...
...
@@ -465,7 +475,10 @@
edit_element
,
delete_element
,
domsugar
(
'
img
'
,
{
src
:
getSlideDictFromSlideElement
(
section_list
[
i
]).
image_url
,
src
:
fixupERP5UrlCompatibility
(
gadget
.
state
.
jio_key
,
getSlideDictFromSlideElement
(
section_list
[
i
]).
image_url
),
draggable
:
false
})
];
...
...
@@ -597,6 +610,7 @@
.
declareMethod
(
'
render
'
,
function
(
options
)
{
return
this
.
changeState
({
jio_key
:
options
.
jio_key
,
key
:
options
.
key
,
value
:
options
.
value
||
""
,
editable
:
options
.
editable
===
undefined
?
true
:
options
.
editable
...
...
bt5/erp5_run_my_doc/SkinTemplateItem/portal_skins/erp5_run_my_doc/slideviewer.gadget.js.js
View file @
d97f6f80
/*global window, rJS, RSVP, domsugar, Reveal*/
/*global window, rJS, RSVP, domsugar, Reveal
, URL
*/
/*jslint nomen: true, maxlen:80, indent:2*/
(
function
(
window
,
rJS
,
RSVP
,
domsugar
,
Reveal
)
{
(
function
(
window
,
rJS
,
RSVP
,
domsugar
,
Reveal
,
URL
)
{
"
use strict
"
;
function
fixupERP5UrlCompatibility
(
jio_key
,
url
)
{
if
(
!
jio_key
)
{
return
url
;
}
return
new
URL
(
url
,
new
URL
(
jio_key
+
'
/
'
,
window
.
location
.
href
).
href
).
href
;
}
function
getSlideElementList
(
presentation_html
)
{
// Convert to an Array so that array methods can be used to reorder slides
return
Array
.
prototype
.
slice
.
call
(
domsugar
(
'
div
'
,
{
...
...
@@ -23,7 +33,7 @@
return
fragment
;
}
function
cleanupSlide
(
slide_element
)
{
function
cleanupSlide
(
slide_element
,
jio_key
)
{
var
detail_list
=
Array
.
prototype
.
slice
.
call
(
slide_element
.
querySelectorAll
(
'
:scope > details
'
)
),
...
...
@@ -50,15 +60,29 @@
}
}
}
// Rewrite img url to support sub document ID
detail_list
=
Array
.
prototype
.
slice
.
call
(
slide_element
.
querySelectorAll
(
'
img
'
)
);
len
=
detail_list
.
length
;
for
(
i
=
0
;
i
<
len
;
i
+=
1
)
{
detail_list
[
i
].
src
=
fixupERP5UrlCompatibility
(
jio_key
,
detail_list
[
i
].
getAttribute
(
'
src
'
)
)
}
return
slide_element
;
}
function
cleanupPresentationFormat
(
presentation_html
)
{
function
cleanupPresentationFormat
(
presentation_html
,
jio_key
)
{
var
slide_list
=
getSlideElementList
(
presentation_html
),
i
,
len
=
slide_list
.
length
;
for
(
i
=
0
;
i
<
len
;
i
+=
1
)
{
cleanupSlide
(
slide_list
[
i
]);
cleanupSlide
(
slide_list
[
i
]
,
jio_key
);
}
return
domsugar
(
'
div
'
,
{
class
:
'
reveal
'
},
[
domsugar
(
'
div
'
,
{
class
:
'
slides
'
},
slide_list
)
...
...
@@ -73,7 +97,8 @@
.
declareMethod
(
'
render
'
,
function
(
options
)
{
return
this
.
changeState
({
value
:
options
.
value
||
""
value
:
options
.
value
||
""
,
jio_key
:
options
.
jio_key
});
})
...
...
@@ -82,7 +107,7 @@
return
new
RSVP
.
Queue
()
.
push
(
function
()
{
domsugar
(
gadget
.
element
,
[
cleanupPresentationFormat
(
gadget
.
state
.
value
)
cleanupPresentationFormat
(
gadget
.
state
.
value
,
gadget
.
state
.
jio_key
)
]);
return
Reveal
.
initialize
(
gadget
.
element
,
{
...
...
@@ -112,4 +137,4 @@
});
}(
window
,
rJS
,
RSVP
,
domsugar
,
Reveal
));
\ No newline at end of file
}(
window
,
rJS
,
RSVP
,
domsugar
,
Reveal
,
URL
));
\ No newline at end of file
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment