summaryrefslogtreecommitdiff
path: root/frontend/app/views/tile/handles/tile.script.js
diff options
context:
space:
mode:
authorJules Laplace <julescarbon@gmail.com>2021-03-23 16:31:07 +0100
committerJules Laplace <julescarbon@gmail.com>2021-03-23 16:31:07 +0100
commit7a3ec205e001e4c071a67ecc5c375612fa72afdc (patch)
tree02d8483dfe47803525b926a43c582dcfbf61c5db /frontend/app/views/tile/handles/tile.script.js
parent3b1d8d3416b27744287c7dc85ceede31e56e4dce (diff)
avoid executing embedded scripts multiple times. click to hide
Diffstat (limited to 'frontend/app/views/tile/handles/tile.script.js')
-rw-r--r--frontend/app/views/tile/handles/tile.script.js58
1 files changed, 30 insertions, 28 deletions
diff --git a/frontend/app/views/tile/handles/tile.script.js b/frontend/app/views/tile/handles/tile.script.js
index 47d83a1..e844adf 100644
--- a/frontend/app/views/tile/handles/tile.script.js
+++ b/frontend/app/views/tile/handles/tile.script.js
@@ -1,34 +1,36 @@
-import React from 'react'
+import React, { Component } from 'react'
import { generateTransform } from 'app/views/tile/tile.utils'
-export default function TileScript({ tile, box, bounds, videoBounds, viewing, onMouseDown, onDoubleClick }) {
- // console.log(tile)
- const style = {
- transform: generateTransform(tile, box, bounds, videoBounds),
- opacity: tile.settings.opacity,
- }
- // console.log(generateTransform(tile))
- let content;
- let className = ['tile', tile.type].join(' ')
- if (tile.target_page_id || (viewing && tile.href)) {
- className += ' ' + (tile.settings.cursor || 'hand_up')
+export default class TileScript extends Component {
+ componentDidMount(){
+ const { viewing, tile } = this.props
+ if (viewing) {
+ eval(tile.settings.content)
+ }
}
+ render() {
+ if (viewing) {
+ return <div style={{ display: 'none' }} />
+ }
- content = ""
- if (viewing) {
- eval(tile.settings.content)
- } else {
- content = "SCRIPT"
- }
+ const { tile, box, bounds, videoBounds, viewing, onMouseDown, onDoubleClick } = this.props
+ // console.log(tile)
+ const style = {
+ transform: generateTransform(tile, box, bounds, videoBounds),
+ opacity: tile.settings.opacity,
+ }
+ // console.log(generateTransform(tile))
+ let className = ['tile', tile.type, 'hand_up'].join(' ')
- return (
- <div
- className={className}
- onMouseDown={onMouseDown}
- onDoubleClick={onDoubleClick}
- style={style}
- >
- {content}
- </div>
- )
+ return (
+ <div
+ className={className}
+ onMouseDown={onMouseDown}
+ onDoubleClick={onDoubleClick}
+ style={style}
+ >
+ {"SCRIPT"}
+ </div>
+ )
+ }
}