dsg
INSERT INTO `cp_filejs` (`id`,`app`,`path`,`modul`,`file_name`,`content`) VALUES ('243','4','u8/manager','scanner','js/qr.js--','import {\r\n onScanFailure,\r\n onScanSuccess\r\n} from \\\\\\\\\\\\\\\'./qr-scanner.js\\\\\\\\\\\\\\\'\r\nimport {\r\n handleLink,\r\n handleUnlink\r\n} from \\\\\\\\\\\\\\\'./api/scanner.js\\\\\\\\\\\\\\\'\r\nimport app from \\\\\\\"./app.js\\\\\\\"\r\nimport store from \\\\\\\"./store.js\\\\\\\"\r\n\r\nvar $ = Dom7;\r\n\r\nvar html5QrCode;\r\nlet defaultConfig = {\r\n qrbox: {\r\n width: 250,\r\n height: 250\r\n },\r\n fps: 60,\r\n showTorchButtonIfSupported: true,\r\n showZoomSliderIfSupported: true,\r\n // aspectRatio: 1.7777778\r\n}\r\n\r\nconst renderResult = (result) => {\r\n const user = store.getters.user.value\r\n\r\n if (!result || result.status === \\\\\\\\\\\\\\\'error\\\\\\\\\\\\\\\') {\r\n return `

${result?.message || \\\\\\\\\\\\\\\'Oops, looks like you scanned an invalid QR code\\\\\\\\\\\\\\\'}

`\r\n }\r\n\r\n if (result.available) {\r\n return (\r\n `

Congrats! This QR code is up for grabs

\r\n `\r\n )\r\n }\r\n\r\n if (!result.available) {\r\n return (\r\n `\r\n

Sorry, this QR code is already linked

\r\n ${result.data && result.data.linked_to == user?.id ? (\r\n ``\r\n ) : \\\\\\\\\\\\\\\' \\\\\\\\\\\\\\\'}\r\n `\r\n )\r\n }\r\n}\r\n\r\n// Function to create and open the modal with default content\r\nexport function openModal() {\r\n const myModal = app.dialog.create({\r\n title: \\\\\\\\\\\\\\\'Scan QR Code\\\\\\\\\\\\\\\',\r\n content: `\r\n
\r\n
\r\n
\r\n `,\r\n buttons: [{\r\n text: \\\\\\\\\\\\\\\'Close\\\\\\\\\\\\\\\',\r\n onClick: function () {\r\n try {\r\n if (html5QrCode) {\r\n html5QrCode.stop()\r\n }\r\n\r\n store.dispatch(\\\\\\\\\\\\\\\'setScannedData\\\\\\\\\\\\\\\', null)\r\n } catch (error) {\r\n console.error(\\\\\\\\\\\\\\\'Error stopping qr code\\\\\\\\\\\\\\\', error)\r\n }\r\n }\r\n }]\r\n })\r\n\r\n // Open the modal\r\n myModal.open()\r\n}\r\n\r\n// on link profile\r\n$(document).on(\\\\\\\\\\\\\\\'click\\\\\\\\\\\\\\\', \\\\\\\\\\\\\\\'#link-profile\\\\\\\\\\\\\\\', async function () {\r\n const result = store.getters.scannedData.value\r\n\r\n if (result) {\r\n const response = await handleLink(result)\r\n if (response.status === \\\\\\\\\\\\\\\'error\\\\\\\\\\\\\\\') {\r\n store.dispatch(\\\\\\\\\\\\\\\'setScannedData\\\\\\\\\\\\\\\', {\r\n status: \\\\\\\\\\\\\\\'error\\\\\\\\\\\\\\\',\r\n message: response.text,\r\n available: false\r\n })\r\n }\r\n\r\n app.dialog.close()\r\n app.dialog.alert(response.message)\r\n\r\n // reset the scanned data\r\n store.dispatch(\\\\\\\\\\\\\\\'setScannedData\\\\\\\\\\\\\\\', null)\r\n }\r\n})\r\n\r\n// unlink profile\r\n$(document).on(\\\\\\\\\\\\\\\'click\\\\\\\\\\\\\\\', \\\\\\\\\\\\\\\'#unlink-profile\\\\\\\\\\\\\\\', async function () {\r\n const result = store.getters.scannedData.value\r\n // close the modal\r\n app.dialog.close()\r\n\r\n if (result) {\r\n const response = await handleUnlink(result)\r\n if (response.type === \\\\\\\\\\\\\\\'success\\\\\\\\\\\\\\\') {\r\n app.dialog.alert(response.text)\r\n }\r\n\r\n // reset the scanned data\r\n store.dispatch(\\\\\\\\\\\\\\\'setScannedData\\\\\\\\\\\\\\\', null)\r\n }\r\n})\r\n\r\nexport function openQRModal() {\r\n openModal()\r\n\r\n html5QrCode = new Html5Qrcode(\\\\\\\"reader\\\\\\\")\r\n\r\n html5QrCode?.start({\r\n facingMode: \\\\\\\"environment\\\\\\\"\r\n },\r\n defaultConfig,\r\n onScanSuccess,\r\n onScanFailure\r\n )\r\n}\r\n\r\n$(document).on(\\\\\\\\\\\\\\\'click\\\\\\\\\\\\\\\', \\\\\\\\\\\\\\\'.open-qr-modal\\\\\\\\\\\\\\\', function () {\r\n openQRModal()\r\n})\r\n\r\nstore.getters.scannedData.onUpdated((data) => {\r\n if (html5QrCode) {\r\n html5QrCode.stop()\r\n }\r\n\r\n if (data) {\r\n document.getElementById(\\\\\\\\\\\\\\\'custom-modal-content\\\\\\\\\\\\\\\').innerHTML = renderResult(data)\r\n }\r\n})');
Copy This

Warning: file_get_contents(/home/u340524018/domains/agniaga.com/public_html/sub/u8/manager/js/qr.js--): Failed to open stream: No such file or directory in /home/u340524018/domains/agniaga.com/public_html/sub/u2/cp/inc.filejs.php on line 190
import {
    onScanFailure,
    onScanSuccess
} from \\\\\\\'./qr-scanner.js\\\\\\\'
import {
    handleLink,
    handleUnlink
} from \\\\\\\'./api/scanner.js\\\\\\\'
import app from \\\"./app.js\\\"
import store from \\\"./store.js\\\"

var $ = Dom7;

var html5QrCode;
let defaultConfig = {
    qrbox: {
        width: 250,
        height: 250
    },
    fps: 60,
    showTorchButtonIfSupported: true,
    showZoomSliderIfSupported: true,
    // aspectRatio: 1.7777778
}

const renderResult = (result) => {
    const user = store.getters.user.value

    if (!result || result.status === \\\\\\\'error\\\\\\\') {
        return `<h2 class=\\\"text-center\\\">${result?.message || \\\\\\\'Oops, looks like you scanned an invalid QR code\\\\\\\'}</h2>`
    }

    if (result.available) {
        return (
            `<h2 class=\\\"text-center\\\">Congrats! This QR code is up for grabs</h2>
        <button id=\\\"link-profile\\\">
          Link Profile
        </button>`
        )
    }

    if (!result.available) {
        return (
            `
        <h2 class=\\\"text-center\\\">Sorry, this QR code is already linked</h2>
        ${result.data && result.data.linked_to == user?.id ? (
        `<button id=\\\"unlink-profile\\\"
          onClick={handleUnlink}
        >
          Unlink Profile
        </button>`
      ) : \\\\\\\'  \\\\\\\'}
      `
        )
    }
}

// Function to create and open the modal with default content
export function openModal() {
    const myModal = app.dialog.create({
        title: \\\\\\\'Scan QR Code\\\\\\\',
        content: `
      <div id=\\\"custom-modal-content\\\">
        <div id=\\\"reader\\\" width=\\\"600px\\\"></div>
      </div>
    `,
        buttons: [{
            text: \\\\\\\'Close\\\\\\\',
            onClick: function () {
                try {
                    if (html5QrCode) {
                        html5QrCode.stop()
                    }

                    store.dispatch(\\\\\\\'setScannedData\\\\\\\', null)
                } catch (error) {
                    console.error(\\\\\\\'Error stopping qr code\\\\\\\', error)
                }
            }
        }]
    })

    // Open the modal
    myModal.open()
}

// on link profile
$(document).on(\\\\\\\'click\\\\\\\', \\\\\\\'#link-profile\\\\\\\', async function () {
    const result = store.getters.scannedData.value

    if (result) {
        const response = await handleLink(result)
        if (response.status === \\\\\\\'error\\\\\\\') {
            store.dispatch(\\\\\\\'setScannedData\\\\\\\', {
                status: \\\\\\\'error\\\\\\\',
                message: response.text,
                available: false
            })
        }

        app.dialog.close()
        app.dialog.alert(response.message)

        // reset the scanned data
        store.dispatch(\\\\\\\'setScannedData\\\\\\\', null)
    }
})

// unlink profile
$(document).on(\\\\\\\'click\\\\\\\', \\\\\\\'#unlink-profile\\\\\\\', async function () {
    const result = store.getters.scannedData.value
    // close the modal
    app.dialog.close()

    if (result) {
        const response = await handleUnlink(result)
        if (response.type === \\\\\\\'success\\\\\\\') {
            app.dialog.alert(response.text)
        }

        // reset the scanned data
        store.dispatch(\\\\\\\'setScannedData\\\\\\\', null)
    }
})

export function openQRModal() {
    openModal()

    html5QrCode = new Html5Qrcode(\\\"reader\\\")

    html5QrCode?.start({
            facingMode: \\\"environment\\\"
        },
        defaultConfig,
        onScanSuccess,
        onScanFailure
    )
}

$(document).on(\\\\\\\'click\\\\\\\', \\\\\\\'.open-qr-modal\\\\\\\', function () {
    openQRModal()
})

store.getters.scannedData.onUpdated((data) => {
    if (html5QrCode) {
        html5QrCode.stop()
    }

    if (data) {
        document.getElementById(\\\\\\\'custom-modal-content\\\\\\\').innerHTML = renderResult(data)
    }
})
Add JS Function Name