Cookie Consent Update Instructions - TermsFeed

Use Osisko development as refrence 

- Place the site on hold
- Open ClientShare
- Under Companies, open the domain you would like to edit
- Open the front template
- Remove the current cookie consent script/code from the template entirely.
- Add the TermsFeed loader script
<!-- Cookie Consent by TermsFeed https://www.TermsFeed.com -->
<script type="text/javascript" src="https://www.termsfeed.com/public/cookie-consent/4.2.0/cookie-consent.js" charset="UTF-8"></script>

- Add the following config

3546. Equal Sum Grid Partition I

You are given an m x n matrix grid of positive integers. Your task is to determine if it is possible to make either one horizontal or one vertical cut on the grid such that: Each of the two resulting sections formed by the cut is non-empty. The sum of the elements in both sections is equal. Return true if such a partition exists; otherwise return false.
/**
 * @param {number[][]} grid
 * @return {boolean}
 */
var canPartitionGrid = function(grid) {
    const m = grid.length;
    const n = grid[0].length;

    // 1. Compute total sum
    let total = 0;
    for (let r = 0; r < m; r++) {
        for (let c = 0; c < n; c++) {
            total += grid[r][c];
        }
    }

    // If total is odd, impossible
    if (total % 2 !== 0) return false;
    const target = total / 2;

    // 2. Check horizontal cuts
    let running = 0;
    for (let r = 0

Project documentation

Shopify Layer

- Shopify plan (Basic / Plus / Enterprise)
- Theme engine (Dawn, custom, or third-party base theme + version)
- Shopify CLI version
- Online Store 2.0 vs legacy

Frontend

- CSS approach (Tailwind, custom, theme defaults)
- JS framework if any (Alpine.js, React via Hydrogen, vanilla)
- Build tools (Vite, Webpack, esbuild)
- Component library

Integrations & Apps

- Public apps (name, purpose, plan tier)
- Private/custom apps (repo link, purpose, auth method)
- Third-party APIs (Kl

Count of Items in Row / Transpose List to Rows

- Count of items in a row:
- where `C2` is row containing the list of items
```
=COUNTA(FILTER(TRIM(SPLIT(C2, ",")), TRIM(SPLIT(C2, ","))<>""))
```

### Split items to rows
- Add this `js` to transpose list of items to rows
- `Extensions` -> `App Script`
- Ensure that the tab you want to write to exists
```
function explodeSpareParts() {
  const ss = SpreadsheetApp.getActiveSpreadsheet();
  const srcSheet = ss.getSheetByName("derivative-mapped-to-spare-parts-list");

  let destSheet = ss.getShee

Turn off auto domain from selection - AW

<?php 
$tableStructure = $this->connection->getStructure()->getTableStructure($table);
$tableStructure['domain_id']->setDomainFilter($bcId === self::ALL_BC ? false : ($bcId ?? $this->getCurrentBrandCloudId()));
$selection =  $this->connection->table($table, $tableStructure);

SQL optimization

-- Shows the query execution plan
EXPLAIN SELECT * FROM your_table WHERE condition;

-- Actually runs the query and shows real execution statistics
EXPLAIN ANALYZE SELECT * FROM your_table WHERE condition;

-- More detailed output with buffers, timing, etc.
EXPLAIN (ANALYZE, BUFFERS, VERBOSE, TIMING) 
SELECT * FROM your_table WHERE condition;

multi-domain-uri

<mvt:comment> ============================================= </mvt:comment>
<mvt:comment> Load URL Contexts (each context = a domain)   </mvt:comment>
<mvt:comment> ============================================= </mvt:comment>

<mvt:do file="g.Module_Feature_URI_UT" name="l.success" 
        value="Store_URL_Context_List( l.settings:contexts )" />

<mvt:comment> Get the current domain's context for reference </mvt:comment>
<mvt:do file="g.Module_Feature_URI_UT" name="g.current_context_id" 

2906. Construct Product Matrix

Given a 0-indexed 2D integer matrix grid of size n * m, we define a 0-indexed 2D matrix p of size n * m as the product matrix of grid if the following condition is met: Each element p[i][j] is calculated as the product of all elements in grid except for the element grid[i][j]. This product is then taken modulo 12345. Return the product matrix of grid.
/**
 * @param {number[][]} grid
 * @return {number[][]}
 */
var constructProductMatrix = function(grid) {
    const MOD = 12345;
    const n = grid.length;
    const m = grid[0].length;
    const N = n * m;   // total number of elements in the matrix

    // ------------------------------------------------------------
    // 1. FLATTEN THE MATRIX
    // ------------------------------------------------------------
    // We convert the 2D grid into a 1D array so we can treat the
    // problem ex

Telegram:@lazarustoolz Bank To Bank Drop Wire Logs PayPal Zelle Venmo Apple Pay Skrill WU Transfer Bug MoneyGram Transfer


LAZARUS GROUP ETHICAL HACKING CASH TEAM SERVICE WORLDWIDE(GET RICH NOW/SOLVE ALL PROBLEM NOW)
CONTACT!!!!!
📧 Email: jeansonancheta2@gmail.com
📟 Signal: +1 347-903-4645
🕵️‍♂️ Telegram handle: @lazarustoolz   
Group: https://t.me/+LE893Ma2vIwyYWNk
Group: https://t.me/+2__ynBAtFP00M2Fk
WELCOME TO THE BIG LEAGUE
I'm LAZARUS GROUP Professional anonymous Darknet Financial Hacker and funds Service provider based in the USA ,If you are reading this context  i want you to understand regardless of our bi

Get request from GSM

#include <Arduino.h>

// ⚠️ ВАЖНО ЗА СВЪРЗВАНЕТО ⚠️
// ESP32 Pin 16 (RX) <---свържи към---> SIM800L TX
// ESP32 Pin 17 (TX) <---свържи към---> SIM800L RX
#define SIM_RX_PIN 16 
#define SIM_TX_PIN 17 

#define BAUD_RATE 9600

// 🌍 GPRS Настройки
const char* apn = "internet"; 

// 🔗 URL на твоя Backend
// Трябва да е HTTP! Пример: http://abc.serveo.net/api/data
const char* serverUrl = "http://237f0f968bc9d0b6-149-62-206-7.serveousercontent.com/api/data";
HardwareSerial sim(1);

// ════════════════

gsm module server setup

#include <Arduino.h>

// ⚠️ ВАЖНО ЗА СВЪРЗВАНЕТО ⚠️
// ESP32 Pin 16 (RX) <---свържи към---> SIM800L TX
// ESP32 Pin 17 (TX) <---свържи към---> SIM800L RX
// Ако не тръгва, размени кабелите!
#define SIM_RX_PIN 16 
#define SIM_TX_PIN 17 

#define BAUD_RATE 9600

// 🌍 GPRS Настройки (За А1, Yettel, Vivacom обикновено е "internet")
const char* apn = "internet"; 

// 🔗 URL на твоя Backend
// Временно го сменям на публичен тестов сървър (httpbin), който приема всичко и връща 200 OK.
// Това ще потвърд

GSM Setup for SMS

#include <Arduino.h>

// ⚠️ ВАЖНО ЗА СВЪРЗВАНЕТО ⚠️
// ESP32 Pin 16 (RX) <---свържи към---> SIM800L TX
// ESP32 Pin 17 (TX) <---свържи към---> SIM800L RX
// Ако не тръгва, опитай да размениш кабелите на 16 и 17!

#define SIM_RX_PIN 16 // Този пин приема данни (свържи към TX на модула)
#define SIM_TX_PIN 17 // Този пин праща данни (свържи към RX на модула)

#define BAUD_RATE 9600

HardwareSerial sim(1);

// ═══════════════════════════════════════
//  AT помощни функции
// ════════════════════════

GSM Setup for SMS

#include <Arduino.h>

// ⚠️ ВАЖНО ЗА СВЪРЗВАНЕТО ⚠️
// ESP32 Pin 16 (RX) <---свържи към---> SIM800L TX
// ESP32 Pin 17 (TX) <---свържи към---> SIM800L RX
// Ако не тръгва, опитай да размениш кабелите на 16 и 17!

#define SIM_RX_PIN 16 // Този пин приема данни (свържи към TX на модула)
#define SIM_TX_PIN 17 // Този пин праща данни (свържи към RX на модула)

#define BAUD_RATE 9600

HardwareSerial sim(1);

// ═══════════════════════════════════════
//  AT помощни функции
// ════════════════════════

Checking the role of the user

import { GetUserDetails } from "../../services/userDetails.js";

export ... {
  const [userRole, setUserRole] = useState(null);
  
   {userRole == "ADMIN" ? (
     ...
    ) : (
      ...
    )}
    
    
    -----------------------------
    
    
    { name: 'Updates',  route: 'Updates', adminOnly: true },
    { name: 'Users',    route: 'Users',   adminOnly: true },
    
    const visibleTabs = allTabs.filter(tab => {
        if (tab.adminOnly) return isLoggedIn && userDetails?.role === 'ADMIN

The data of the user

import { useUser } from '../../context/UserContext.jsx';

export ... {
  const { user: userDetails } = useUser();
  
   {userDetails?.username || mockUser.name}
   {userDetails?.email || mockUser.email}
   {userDetails?.role || mockUser.role}
   
   
   
   
}

Is The User Logged In

import { useAuth } from '../../context/AuthContext.jsx';

export ... {
  

  const { user } = useAuth();
  const isLoggedIn = !!user;
  
   {!isLoggedIn && (
      ...
    )}

    {isLoggedIn && (
      ...                     
    )}
  
}