From a795a90d8c45cd71b80cf7d88e53a95a5bf61c58 Mon Sep 17 00:00:00 2001 From: Nico Vermaas <vermaas@astron.nl> Date: Thu, 7 Jan 2021 10:19:40 +0100 Subject: [PATCH] adding href to http links to make it links --- src/components/query/samp/SampGrid.js | 8 ++++++-- src/components/query/samp/SampPage.js | 24 ++++-------------------- 2 files changed, 10 insertions(+), 22 deletions(-) diff --git a/src/components/query/samp/SampGrid.js b/src/components/query/samp/SampGrid.js index 0d7fdfe..81ef702 100644 --- a/src/components/query/samp/SampGrid.js +++ b/src/components/query/samp/SampGrid.js @@ -3,7 +3,6 @@ import { Table } from "react-bootstrap"; export default function SampResults(props) { - //alert('SampGrid') let fieldnames = props.fieldnames let data = props.votable_in_json['data'] @@ -27,8 +26,13 @@ export default function SampResults(props) { return ( <tr key={record}> {record.map((col) => { + let value = col.toString() + + if (value.includes('http')) { + value = <a href={value} target="_blank" rel="noopener noreferrer">{value}</a> + } return ( - <td key={col}>{col}</td> + <td key={value}>{value}</td> ) })} </tr> diff --git a/src/components/query/samp/SampPage.js b/src/components/query/samp/SampPage.js index f3f9313..01803cf 100644 --- a/src/components/query/samp/SampPage.js +++ b/src/components/query/samp/SampPage.js @@ -6,27 +6,16 @@ import SampGrid from './SampGrid' export default function SampPage(props) { const [ myVOTable, setMyVOTable] = useState([]); - const pingFunc = function (my_connection) { - my_connection.notifyAll([new window.samp.Message("samp.app.ping", {})]) - } - + // register to existing SAMP hub const register = () => { connector.register() } + + // unregister from existing SAMP hub const unregister = () => { connector.unregister() } - const handlePingClick = () => { - connector.runWithConnection(pingFunc) - } - - const handlePing = (cc, senderId, message, isCall) => { - alert('handle samp.app.ping') - if (isCall) { - return {text: "ping to you, " + cc.getName(senderId)}; - } - } const handleLoadVOTable = (cc, senderId, message, isCall) => { // alert('handle table.load.votable') @@ -75,10 +64,6 @@ export default function SampPage(props) { // attach eventhandlers var callHandler = cc.callHandler; - callHandler["samp.app.ping"] = function(senderId, message, isCall) { - handlePing(cc,senderId, message, isCall) - }; - callHandler["table.load.votable"] = function(senderId, message, isCall) { handleLoadVOTable(cc,senderId, message, isCall) }; @@ -87,7 +72,7 @@ export default function SampPage(props) { var subs = cc.calculateSubscriptions(); // initialize the connector - var connector = new window.samp.Connector("astroview", {"samp.name": "AstroView"}, cc, subs) + var connector = new window.samp.Connector("ESAP", {"samp.name": "ESAP"}, cc, subs) // only render when myVOTable has a value var renderSampGrid @@ -102,7 +87,6 @@ export default function SampPage(props) { <h2>SAMP demo</h2> <p>Start a SAMP enabled application (like Topcat), register to the hub and transmit data from Topcat.</p> <button variant="outline-warning" onClick={() => register()}>register</button> - <button variant="outline-success" onClick={() => handlePingClick()}>SAMP Ping</button> <button variant="outline-warning" onClick={() => unregister()}>unregister</button> {renderSampGrid} -- GitLab