working on hyperlinked images
This commit is contained in:
+27
-1
@@ -443,6 +443,12 @@
|
|||||||
style="width: 100%;"
|
style="width: 100%;"
|
||||||
type="text"
|
type="text"
|
||||||
/>
|
/>
|
||||||
|
<input
|
||||||
|
id="newImageContainerHyperlinkInput"
|
||||||
|
placeholder="(optional) URL to hyperlink image"
|
||||||
|
style="width: 100%;"
|
||||||
|
type="text"
|
||||||
|
/>
|
||||||
<button id="newImageContainerCreateButton" onclick="createNewImageContainer(this)">
|
<button id="newImageContainerCreateButton" onclick="createNewImageContainer(this)">
|
||||||
place image
|
place image
|
||||||
</button>
|
</button>
|
||||||
@@ -551,6 +557,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
todo:
|
todo:
|
||||||
|
<br />add check for youtube container in border functions
|
||||||
<br />rename stuff | better function names | imageUrl -> mediaUrl | etc.
|
<br />rename stuff | better function names | imageUrl -> mediaUrl | etc.
|
||||||
</body>
|
</body>
|
||||||
|
|
||||||
@@ -642,6 +649,7 @@
|
|||||||
sections;
|
sections;
|
||||||
clockIntervalId;
|
clockIntervalId;
|
||||||
youtubeId;
|
youtubeId;
|
||||||
|
imageHyperlink;
|
||||||
|
|
||||||
constructor(
|
constructor(
|
||||||
id,
|
id,
|
||||||
@@ -653,7 +661,8 @@
|
|||||||
imageUrl,
|
imageUrl,
|
||||||
settings,
|
settings,
|
||||||
sections,
|
sections,
|
||||||
youtubeId
|
youtubeId,
|
||||||
|
imageHyperlink
|
||||||
) {
|
) {
|
||||||
/* check if id is already used
|
/* check if id is already used
|
||||||
if (containerDataMap.has(name.replace(" ", "-").toLowerCase())) {
|
if (containerDataMap.has(name.replace(" ", "-").toLowerCase())) {
|
||||||
@@ -683,6 +692,7 @@
|
|||||||
this.settings = settings;
|
this.settings = settings;
|
||||||
this.imageUrl = imageUrl;
|
this.imageUrl = imageUrl;
|
||||||
this.youtubeId = youtubeId;
|
this.youtubeId = youtubeId;
|
||||||
|
this.imageHyperlink = imageHyperlink;
|
||||||
}
|
}
|
||||||
|
|
||||||
else {
|
else {
|
||||||
@@ -713,6 +723,7 @@
|
|||||||
|
|
||||||
this.id = findLowestAvailableId();
|
this.id = findLowestAvailableId();
|
||||||
this.imageUrl = imageUrl;
|
this.imageUrl = imageUrl;
|
||||||
|
this.imageHyperlink = imageHyperlink.length == 0 ? undefined : imageHyperlink ;
|
||||||
|
|
||||||
// deep copy default settings
|
// deep copy default settings
|
||||||
this.settings = JSON.parse(JSON.stringify(defaultImageContainerSettings));
|
this.settings = JSON.parse(JSON.stringify(defaultImageContainerSettings));
|
||||||
@@ -775,6 +786,9 @@
|
|||||||
document.body.insertAdjacentHTML(
|
document.body.insertAdjacentHTML(
|
||||||
"beforeend",
|
"beforeend",
|
||||||
`
|
`
|
||||||
|
${this.imageHyperlink ?
|
||||||
|
`<a class="imageHyperlink hidden" href="` + this.imageHyperlink + `">`
|
||||||
|
: ``}
|
||||||
<img
|
<img
|
||||||
class="movable youtubeEmbed"
|
class="movable youtubeEmbed"
|
||||||
id="${this.id}"
|
id="${this.id}"
|
||||||
@@ -782,6 +796,7 @@
|
|||||||
src="${this.imageUrl}"
|
src="${this.imageUrl}"
|
||||||
draggable=false
|
draggable=false
|
||||||
/>
|
/>
|
||||||
|
${this.imageHyperlink ? `</a>` : ``}
|
||||||
`
|
`
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
@@ -2179,6 +2194,12 @@
|
|||||||
movableElements[i].style.cursor = cursors.grab ? 'url("' + cursors.grab + '"), grab' : "grab";
|
movableElements[i].style.cursor = cursors.grab ? 'url("' + cursors.grab + '"), grab' : "grab";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// disable any hyperlinks on images to enable movement
|
||||||
|
let hyperlinkedImages = document.getElementsByClassName("imageHyperlink");
|
||||||
|
|
||||||
|
// TODO todo : finish this / re-enable hyperlinks
|
||||||
|
|
||||||
|
|
||||||
// cover any youtube iframes to enable moving/resizing
|
// cover any youtube iframes to enable moving/resizing
|
||||||
let embeddedVideos = document.getElementsByClassName("youtubeEmbedCover");
|
let embeddedVideos = document.getElementsByClassName("youtubeEmbedCover");
|
||||||
for (let i = 0; i < embeddedVideos.length; i++) {
|
for (let i = 0; i < embeddedVideos.length; i++) {
|
||||||
@@ -2275,8 +2296,12 @@
|
|||||||
let imageUrl = document.getElementById(
|
let imageUrl = document.getElementById(
|
||||||
"newImageContainerUrlInput"
|
"newImageContainerUrlInput"
|
||||||
).value;
|
).value;
|
||||||
|
let imageHyperlink = document.getElementById(
|
||||||
|
"newImageContainerHyperlinkInput"
|
||||||
|
).value;
|
||||||
document.getElementById("newImageContainerNameInput").value = "";
|
document.getElementById("newImageContainerNameInput").value = "";
|
||||||
document.getElementById("newImageContainerUrlInput").value = "";
|
document.getElementById("newImageContainerUrlInput").value = "";
|
||||||
|
document.getElementById("newImageContainerHyperlinkInput").value = "";
|
||||||
|
|
||||||
let container = new Container(
|
let container = new Container(
|
||||||
undefined,
|
undefined,
|
||||||
@@ -2289,6 +2314,7 @@
|
|||||||
undefined,
|
undefined,
|
||||||
undefined,
|
undefined,
|
||||||
undefined,
|
undefined,
|
||||||
|
imageHyperlink
|
||||||
);
|
);
|
||||||
|
|
||||||
container.createImageContainerMenuListing();
|
container.createImageContainerMenuListing();
|
||||||
|
|||||||
Reference in New Issue
Block a user