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>&nbsp;
-                <button variant="outline-success" onClick={() => handlePingClick()}>SAMP Ping</button>&nbsp;
                 <button variant="outline-warning" onClick={() => unregister()}>unregister</button>&nbsp;
 
                 {renderSampGrid}
-- 
GitLab