
{"id":1800,"date":"2025-05-13T11:51:37","date_gmt":"2025-05-13T11:51:37","guid":{"rendered":"https:\/\/peopleinfo.ir\/?page_id=1800"},"modified":"2025-07-01T15:36:45","modified_gmt":"2025-07-01T15:36:45","slug":"arzha","status":"publish","type":"page","link":"https:\/\/peopleinfo.ir\/?page_id=1800","title":{"rendered":"arzha"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"1800\" class=\"elementor elementor-1800\" data-elementor-post-type=\"page\">\n\t\t\t\t\t\t<section class=\"elementor-section elementor-top-section elementor-element elementor-element-05aa1bd elementor-section-boxed elementor-section-height-default elementor-section-height-default\" data-id=\"05aa1bd\" data-element_type=\"section\">\n\t\t\t\t\t\t<div class=\"elementor-container elementor-column-gap-default\">\n\t\t\t\t\t<div class=\"elementor-column elementor-col-100 elementor-top-column elementor-element elementor-element-ef502a2\" data-id=\"ef502a2\" data-element_type=\"column\">\n\t\t\t<div class=\"elementor-widget-wrap elementor-element-populated\">\n\t\t\t\t\t\t<div class=\"elementor-element elementor-element-1fa1645 elementor-widget elementor-widget-html\" data-id=\"1fa1645\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!DOCTYPE html>\r\n<html lang=\"fa\">\r\n<head>\r\n  <meta charset=\"UTF-8\" \/>\r\n  <meta name=\"viewport\" content=\"width=device-width, initial-scale=1\" \/>\r\n  <title>\u0686\u0627\u0631\u062a \u0627\u0631\u0632\u0647\u0627<\/title>\r\n  <style>\r\n    body {\r\n      font-family: Tahoma, sans-serif;\r\n      direction: rtl;\r\n      margin: 20px;\r\n      background: #f4f6f9;\r\n    }\r\n    .top-info {\r\n      display: flex;\r\n      justify-content: flex-end;\r\n      font-size: 0.95rem;\r\n      color: #555;\r\n      margin-bottom: 20px;\r\n    }\r\n    .grid {\r\n      display: grid;\r\n      grid-template-columns: repeat(2, 1fr); \/* \u062f\u0648 \u0633\u062a\u0648\u0646 \u062f\u0631 \u062f\u0633\u06a9\u062a\u0627\u067e *\/\r\n      gap: 24px;\r\n      max-width: 800px; \/* \u0645\u062d\u062f\u0648\u062f\u06cc\u062a \u0639\u0631\u0636 \u06a9\u0644 \u06a9\u0627\u0631\u062a\u200c\u0647\u0627 *\/\r\n      margin: 0 auto; \/* \u0645\u0631\u06a9\u0632 \u0686\u06cc\u0646 \u06a9\u0631\u062f\u0646 *\/\r\n      padding: 0 10px;\r\n    }\r\n    .card {\r\n      background: white;\r\n      border-radius: 12px;\r\n      box-shadow: 0 4px 12px rgba(0,0,0,0.08);\r\n      overflow: hidden;\r\n      display: flex;\r\n      flex-direction: column;\r\n      height: 100%;\r\n    }\r\n    .card-header {\r\n      background-color: #007bff;\r\n      color: white;\r\n      padding: 14px 20px;\r\n      font-weight: bold;\r\n      font-size: 1.1rem;\r\n    }\r\n    .card-body {\r\n      padding: 15px 20px;\r\n      font-size: 0.95rem;\r\n      color: #444;\r\n      flex-grow: 1;\r\n      display: flex;\r\n      flex-direction: column;\r\n    }\r\n    .contract {\r\n      direction: ltr;\r\n      display: flex;\r\n      justify-content: space-between;\r\n      align-items: center;\r\n      background: #f1f1f1;\r\n      padding: 6px 10px;\r\n      font-size: 0.85rem;\r\n      border-radius: 6px;\r\n      margin-bottom: 12px;\r\n      word-break: break-all;\r\n    }\r\n    .copy-btn {\r\n      cursor: pointer;\r\n      color: #007bff;\r\n      font-size: 1rem;\r\n      border: none;\r\n      background: none;\r\n    }\r\n    .chart {\r\n      width: 100%;\r\n      height: 300px;\r\n      flex-grow: 1;\r\n    }\r\n    .pagination {\r\n      text-align: center;\r\n      margin-top: 30px;\r\n    }\r\n    .pagination button {\r\n      margin: 0 5px;\r\n      padding: 10px 20px;\r\n      font-size: 0.9rem;\r\n      cursor: pointer;\r\n      border: none;\r\n      border-radius: 5px;\r\n      background: #007bff;\r\n      color: white;\r\n      transition: background-color 0.3s ease;\r\n    }\r\n    .pagination button:hover {\r\n      background-color: #0056b3;\r\n    }\r\n    .page-size {\r\n      margin-top: 20px;\r\n      text-align: center;\r\n      font-size: 1rem;\r\n    }\r\n    .page-size select {\r\n      font-size: 1rem;\r\n      padding: 5px 10px;\r\n    }\r\n\r\n    \/* \u0648\u0627\u06a9\u0646\u0634\u200c\u06af\u0631\u0627\u06cc\u06cc *\/\r\n    @media (max-width: 768px) {\r\n      .grid {\r\n        grid-template-columns: 1fr; \/* \u06cc\u06a9 \u0633\u062a\u0648\u0646 \u062f\u0631 \u0645\u0648\u0628\u0627\u06cc\u0644 *\/\r\n        max-width: 100%;\r\n        padding: 0 5px;\r\n      }\r\n    }\r\n  <\/style>\r\n<\/head>\r\n<body>\r\n\r\n<div class=\"top-info\" id=\"datetime\"><\/div>\r\n\r\n<div id=\"cards\" class=\"grid\"><\/div>\r\n\r\n<div class=\"pagination\">\r\n  <button id=\"prevPage\">\u0642\u0628\u0644\u06cc<\/button>\r\n  <span id=\"pageInfo\">\u0635\u0641\u062d\u0647 1<\/span>\r\n  <button id=\"nextPage\">\u0628\u0639\u062f\u06cc<\/button>\r\n<\/div>\r\n\r\n<div class=\"page-size\">\r\n  \u0646\u0645\u0627\u06cc\u0634 \u062f\u0631 \u0647\u0631 \u0635\u0641\u062d\u0647:\r\n  <select id=\"pageSize\">\r\n    <option value=\"16\">16<\/option>\r\n    <option value=\"20\">20<\/option>\r\n    <option value=\"30\">30<\/option>\r\n    <option value=\"50\">50<\/option>\r\n  <\/select>\r\n<\/div>\r\n\r\n<script src=\"https:\/\/s3.tradingview.com\/tv.js\"><\/script>\r\n<script>\r\n  const sheetURL = 'https:\/\/docs.google.com\/spreadsheets\/d\/1XH_Fold9L2nzU7KPpeNzq_xYGDSpHXNuG6_3V_-thFM\/gviz\/tq?tqx=out:json&gid=1776781108';\r\n  let allItems = [];\r\n  let currentPage = 0;\r\n  let pageSize = 16;\r\n\r\n  function parseGoogleSheetData(responseText) {\r\n    const jsonData = JSON.parse(responseText.substring(47).slice(0, -2));\r\n    const table = jsonData.table;\r\n    return table.rows\r\n      .map(row => ({\r\n        name: row.c[0]?.v || '',\r\n        contract: row.c[1]?.v || '',\r\n        nametr: row.c[2]?.v || ''\r\n      }))\r\n      .filter(item => item.nametr && item.nametr.trim() !== '' && item.nametr.toLowerCase() !== 'nametr');\r\n  }\r\n\r\n  function shuffleArray(array) {\r\n    for (let i = array.length - 1; i > 0; i--) {\r\n      const j = Math.floor(Math.random() * (i + 1));\r\n      [array[i], array[j]] = [array[j], array[i]];\r\n    }\r\n  }\r\n\r\n  function createCard(item, index) {\r\n    const card = document.createElement('div');\r\n    card.className = 'card';\r\n\r\n    const header = document.createElement('div');\r\n    header.className = 'card-header';\r\n    header.textContent = `${item.name} (${item.nametr})`;\r\n\r\n    const body = document.createElement('div');\r\n    body.className = 'card-body';\r\n\r\n    const contractDiv = document.createElement('div');\r\n    contractDiv.className = 'contract';\r\n    const contractText = document.createElement('span');\r\n    contractText.textContent = item.contract;\r\n    const copyButton = document.createElement('button');\r\n    copyButton.className = 'copy-btn';\r\n    copyButton.innerHTML = '\ud83d\udccb';\r\n    copyButton.onclick = () => {\r\n      navigator.clipboard.writeText(item.contract);\r\n      alert('\u0622\u062f\u0631\u0633 \u06a9\u067e\u06cc \u0634\u062f!');\r\n    };\r\n    contractDiv.appendChild(contractText);\r\n    contractDiv.appendChild(copyButton);\r\n\r\n    const chartDiv = document.createElement('div');\r\n    chartDiv.className = 'chart';\r\n    chartDiv.id = `chart-${index}`;\r\n\r\n    body.appendChild(contractDiv);\r\n    body.appendChild(chartDiv);\r\n\r\n    card.appendChild(header);\r\n    card.appendChild(body);\r\n\r\n    setTimeout(() => {\r\n      new TradingView.widget({\r\n        autosize: true,\r\n        symbol: item.nametr,\r\n        interval: \"15\",\r\n        timezone: \"Asia\/Tehran\",\r\n        theme: \"light\",\r\n        style: \"1\",\r\n        locale: \"fa\",\r\n        toolbar_bg: \"#f1f3f6\",\r\n        enable_publishing: false,\r\n        hide_top_toolbar: true,\r\n        container_id: `chart-${index}`\r\n      });\r\n    }, 300);\r\n\r\n    return card;\r\n  }\r\n\r\n  function renderPage() {\r\n    const container = document.getElementById('cards');\r\n    container.innerHTML = '';\r\n\r\n    const start = currentPage * pageSize;\r\n    const end = start + pageSize;\r\n    const pageItems = allItems.slice(start, end);\r\n\r\n    pageItems.forEach((item, index) => {\r\n      const card = createCard(item, index);\r\n      container.appendChild(card);\r\n    });\r\n\r\n    document.getElementById('pageInfo').textContent = `\u0635\u0641\u062d\u0647 ${currentPage + 1} \u0627\u0632 ${Math.ceil(allItems.length \/ pageSize)}`;\r\n  }\r\n\r\n  document.getElementById('prevPage').onclick = () => {\r\n    if (currentPage > 0) {\r\n      currentPage--;\r\n      renderPage();\r\n    }\r\n  };\r\n\r\n  document.getElementById('nextPage').onclick = () => {\r\n    const maxPage = Math.ceil(allItems.length \/ pageSize) - 1;\r\n    if (currentPage < maxPage) {\r\n      currentPage++;\r\n      renderPage();\r\n    }\r\n  };\r\n\r\n  document.getElementById('pageSize').onchange = (e) => {\r\n    pageSize = parseInt(e.target.value);\r\n    currentPage = 0;\r\n    renderPage();\r\n  };\r\n\r\n  function updateDateTimeTop() {\r\n    const now = new Date();\r\n    const timeStr = `${now.toLocaleDateString('en-CA')} | \u0633\u0627\u0639\u062a: ${now.toLocaleTimeString('fa-IR', {hour: '2-digit', minute: '2-digit'})}`;\r\n    document.getElementById('datetime').textContent = timeStr;\r\n  }\r\n\r\n  fetch(sheetURL)\r\n    .then(res => res.text())\r\n    .then(data => {\r\n      allItems = parseGoogleSheetData(data);\r\n      shuffleArray(allItems);\r\n      renderPage();\r\n      updateDateTimeTop();\r\n    })\r\n    .catch(err => {\r\n      alert(\"\u062e\u0637\u0627 \u062f\u0631 \u0628\u0627\u0631\u06af\u0630\u0627\u0631\u06cc \u062f\u0627\u062f\u0647\u200c\u0647\u0627\");\r\n      console.error(err);\r\n    });\r\n<\/script>\r\n\r\n<\/body>\r\n<\/html>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3fcb1f4 elementor-hidden-desktop elementor-hidden-tablet elementor-hidden-mobile elementor-widget elementor-widget-html\" data-id=\"3fcb1f4\" data-element_type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<!DOCTYPE html>\r\n<html lang=\"fa\" dir=\"rtl\">\r\n<head>\r\n  <meta charset=\"UTF-8\" \/>\r\n  <title>\u0627\u0631\u0632\u0647\u0627\u06cc \u062f\u06cc\u062c\u06cc\u062a\u0627\u0644<\/title>\r\n  <link href=\"https:\/\/cdn.fontcdn.ir\/Font\/Persian\/Vazir\/Vazir.css\" rel=\"stylesheet\" \/>\r\n  <style>\r\n    body { font-family: 'Vazir', sans-serif; background: #f9f9f9; margin: 20px; }\r\n    #container {\r\n      max-width: 900px;\r\n      margin: auto;\r\n      text-align: center;\r\n    }\r\n    #header {\r\n      display: flex;\r\n      justify-content: space-between;\r\n      align-items: center;\r\n      margin-bottom: 10px;\r\n      font-size: 13px;\r\n      color: #444;\r\n      gap: 10px;\r\n      flex-wrap: wrap;\r\n    }\r\n    #dateContainer {\r\n      text-align: left;\r\n      min-width: 180px;\r\n      font-weight: 600;\r\n      font-size: 14px;\r\n    }\r\n    #persianDate { font-weight: 700; }\r\n    #gregorianDate { font-size: 12px; color: #666; }\r\n    #searchContainer {\r\n      flex-grow: 1;\r\n      min-width: 180px;\r\n      text-align: center;\r\n    }\r\n    #searchContainer input {\r\n      width: 100%;\r\n      max-width: 250px;\r\n      padding: 6px 10px;\r\n      font-size: 13px;\r\n      border-radius: 6px;\r\n      border: 1px solid #ccc;\r\n    }\r\n    #btcPriceContainer {\r\n      background: #7b1fa2;\r\n      padding: 8px 15px;\r\n      border-radius: 10px;\r\n      box-shadow: 0 0 10px rgb(123 31 162 \/ 0.3);\r\n      min-width: 140px;\r\n      color: #fff;\r\n      font-weight: 700;\r\n      text-align: center;\r\n      user-select: none;\r\n      font-size: 14px;\r\n    }\r\n    #btcPriceContainer div {\r\n      margin: 3px 0;\r\n    }\r\n    .card-row {\r\n      display: flex;\r\n      justify-content: center;\r\n      gap: 15px;\r\n      flex-wrap: wrap;\r\n    }\r\n    .card {\r\n      background: #fff;\r\n      border-radius: 10px;\r\n      box-shadow: 0 0 10px rgb(123 31 162 \/ 0.3);\r\n      width: 420px;\r\n      margin-bottom: 20px;\r\n      padding: 12px 18px;\r\n      text-align: left;\r\n      font-size: 14px;\r\n    }\r\n    .card-title {\r\n      background: #7b1fa2;\r\n      color: white;\r\n      font-size: 20px;\r\n      font-weight: bold;\r\n      text-align: center;\r\n      border-radius: 8px;\r\n      padding: 6px 0;\r\n      margin-bottom: 12px;\r\n      user-select: none;\r\n    }\r\n    table {\r\n      width: 100%;\r\n      border-collapse: collapse;\r\n      user-select: none;\r\n      font-size: 13px;\r\n    }\r\n    th {\r\n      background: #c39bd3;\r\n      padding: 5px 7px;\r\n      font-weight: 600;\r\n      text-align: right;\r\n      border: 1px solid #ddd;\r\n      user-select: none;\r\n    }\r\n    td {\r\n      background: #fff;\r\n      padding: 5px 7px;\r\n      border: 1px solid #ddd;\r\n      text-align: right;\r\n      user-select: none;\r\n    }\r\n    .profit-usd, .profit-irr {\r\n      font-weight: bold;\r\n      color: green;\r\n    }\r\n    #pagination {\r\n      margin-top: 10px;\r\n      text-align: center;\r\n    }\r\n    #pagination button {\r\n      background: #7b1fa2;\r\n      color: white;\r\n      border: none;\r\n      margin: 2px;\r\n      padding: 5px 9px;\r\n      border-radius: 4px;\r\n      cursor: pointer;\r\n      font-size: 13px;\r\n    }\r\n    #pagination button:disabled {\r\n      background: #ccc;\r\n      cursor: default;\r\n    }\r\n    #manualRefreshBtn {\r\n      background: #7b1fa2;\r\n      color: white;\r\n      border: none;\r\n      padding: 8px 12px;\r\n      margin-top: 15px;\r\n      border-radius: 6px;\r\n      cursor: pointer;\r\n      font-size: 14px;\r\n      user-select: none;\r\n    }\r\n    .hide-1h-change {\r\n      display: none;\r\n    }\r\n    @media (max-width: 768px) {\r\n      #header {\r\n        flex-direction: column;\r\n        gap: 6px;\r\n        align-items: stretch;\r\n      }\r\n      #dateContainer {\r\n        text-align: center;\r\n        min-width: auto;\r\n        font-size: 13px;\r\n      }\r\n      #btcPriceContainer {\r\n        min-width: auto;\r\n      }\r\n      .card {\r\n        width: 100%;\r\n      }\r\n    }\r\n  <\/style>\r\n<\/head>\r\n<body data-rsssl=1 data-rsssl=1 data-rsssl=1>\r\n  <div id=\"container\">\r\n    <div id=\"header\">\r\n      <div id=\"dateContainer\">\r\n        <div id=\"persianDate\"><\/div>\r\n        <div id=\"gregorianDate\"><\/div>\r\n      <\/div>\r\n\r\n      <div id=\"searchContainer\">\r\n        <input type=\"text\" id=\"searchName\" placeholder=\"\u062c\u0633\u062a\u062c\u0648 \u0646\u0627\u0645 \u0627\u0631\u0632...\" oninput=\"applyFilters()\" \/>\r\n      <\/div>\r\n\r\n      <div id=\"btcPriceContainer\">\r\n        <div>\u0642\u06cc\u0645\u062a \u0628\u06cc\u062a\u200c\u06a9\u0648\u06cc\u0646<\/div>\r\n        <div id=\"btcPriceUSD\">\u062f\u0631 \u062d\u0627\u0644 \u062f\u0631\u06cc\u0627\u0641\u062a...<\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"card-row\" id=\"cardsContainer\"><\/div>\r\n    <div id=\"pagination\"><\/div>\r\n    <button id=\"manualRefreshBtn\" onclick=\"manualRefresh()\">\u0628\u0647\u200c\u0631\u0648\u0632\u0631\u0633\u0627\u0646\u06cc \u062f\u0633\u062a\u06cc<\/button>\r\n  <\/div>\r\n\r\n  <script>\r\n    const backupKey = \"cryptoBackup\";\r\n    let allData = [];\r\n    let filteredData = [];\r\n    let currentPage = 1;\r\n    const rowsPerPage = 6;\r\n    const dollarToToman = 80000;\r\n\r\n    function formatPersianDate(date) {\r\n      try {\r\n        const parts = new Intl.DateTimeFormat('fa-IR-u-ca-persian', {\r\n          year: 'numeric', month: '2-digit', day: '2-digit'\r\n        }).formatToParts(date);\r\n        let day, month, year;\r\n        parts.forEach(p => {\r\n          if (p.type === 'day') day = p.value;\r\n          else if (p.type === 'month') month = p.value;\r\n          else if (p.type === 'year') year = p.value;\r\n        });\r\n        return `${day}\/${month}\/${year}`;\r\n      } catch {\r\n        return \"\u062a\u0627\u0631\u06cc\u062e \u0634\u0645\u0633\u06cc \u0642\u0627\u0628\u0644 \u0646\u0645\u0627\u06cc\u0634 \u0646\u06cc\u0633\u062a\";\r\n      }\r\n    }\r\n\r\n    function updateDates() {\r\n      const now = new Date();\r\n      document.getElementById('gregorianDate').textContent = now.toLocaleDateString('en-US', { year: 'numeric', month: 'long', day: 'numeric' });\r\n      document.getElementById('persianDate').textContent = formatPersianDate(now);\r\n    }\r\n\r\n    async function fetchBTCPrice() {\r\n      try {\r\n        const res = await fetch('https:\/\/api.coingecko.com\/api\/v3\/simple\/price?ids=bitcoin&vs_currencies=usd');\r\n        const data = await res.json();\r\n        if(data.bitcoin && data.bitcoin.usd) {\r\n          const priceUSD = data.bitcoin.usd;\r\n          document.getElementById('btcPriceUSD').textContent = priceUSD.toLocaleString('en-US', {style: 'currency', currency: 'USD'});\r\n        } else {\r\n          document.getElementById('btcPriceUSD').textContent = \"\u062e\u0637\u0627 \u062f\u0631 \u062f\u0631\u06cc\u0627\u0641\u062a \u0642\u06cc\u0645\u062a\";\r\n        }\r\n      } catch(e) {\r\n        document.getElementById('btcPriceUSD').textContent = \"\u062e\u0637\u0627 \u062f\u0631 \u062f\u0631\u06cc\u0627\u0641\u062a \u0642\u06cc\u0645\u062a\";\r\n      }\r\n    }\r\n\r\n    async function fetchData() {\r\n      let fetched = false;\r\n      let tempData = [];\r\n\r\n      for (let page = 1; page <= 2; page++) {\r\n        const url = `https:\/\/api.coingecko.com\/api\/v3\/coins\/markets?vs_currency=usd&order=market_cap_desc&per_page=100&page=${page}&sparkline=false`;\r\n        try {\r\n          const res = await fetch(url);\r\n          const data = await res.json();\r\n          tempData.push(...data.filter(coin => coin.current_price < 100));\r\n          fetched = true;\r\n        } catch (error) {\r\n          console.error(\"\u062e\u0637\u0627 \u062f\u0631 \u062f\u0631\u06cc\u0627\u0641\u062a \u062f\u0627\u062f\u0647 \u0627\u0632 API\", error);\r\n          break;\r\n        }\r\n      }\r\n\r\n      if (fetched && tempData.length > 0) {\r\n        allData = tempData;\r\n        localStorage.setItem(backupKey, JSON.stringify(allData));\r\n      } else {\r\n        console.warn(\"\u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u062f\u0627\u062f\u0647 \u067e\u0634\u062a\u06cc\u0628\u0627\u0646 \u0630\u062e\u06cc\u0631\u0647\u200c\u0634\u062f\u0647\");\r\n        const backup = localStorage.getItem(backupKey);\r\n        if (backup) {\r\n          allData = JSON.parse(backup);\r\n        } else {\r\n          allData = [];\r\n        }\r\n      }\r\n      filteredData = allData.slice();\r\n      currentPage = 1;\r\n      renderCards();\r\n      renderPagination();\r\n    }\r\n\r\n    function manualRefresh() {\r\n      fetchData();\r\n      fetchBTCPrice();\r\n      updateDates();\r\n    }\r\n\r\n    function applyFilters() {\r\n      const searchName = document.getElementById(\"searchName\").value.trim().toLowerCase();\r\n\r\n      filteredData = allData.filter(coin => {\r\n        const nameMatch = coin.name.toLowerCase().includes(searchName);\r\n        return nameMatch;\r\n      });\r\n\r\n      currentPage = 1;\r\n      renderCards();\r\n      renderPagination();\r\n    }\r\n\r\n    function renderCards() {\r\n      const container = document.getElementById(\"cardsContainer\");\r\n      container.innerHTML = \"\";\r\n\r\n      const start = (currentPage - 1) * rowsPerPage;\r\n      const end = start + rowsPerPage;\r\n      const pageData = filteredData.slice(start, end);\r\n\r\n      pageData.forEach(coin => {\r\n        const price = coin.current_price;\r\n        const change1hRaw = coin.price_change_percentage_1h_in_currency;\r\n        const change1h = (change1hRaw !== null && change1hRaw !== undefined) ? change1hRaw : 0;\r\n\r\n        const initialCapital = price < 1 ? 10 : price <= 5 ? 30 : price <= 10 ? 50 : 100;\r\n        const buy1 = +(price * 0.98).toFixed(4);\r\n        const buy2 = +(price * 0.95).toFixed(4);\r\n        const target1 = +(price * 1.05).toFixed(4);\r\n        const target2 = +(price * 1.10).toFixed(4);\r\n        const tokens = initialCapital \/ price;\r\n\r\n        const profitUSDRaw = (price - coin.ath) * tokens;\r\n        const profitUSD = Math.abs(Math.floor(profitUSDRaw));\r\n        const profitIRR = profitUSD * dollarToToman;\r\n\r\n        const cardHTML = `\r\n          <div class=\"card\">\r\n            <div class=\"card-title\">${coin.name} (${coin.symbol.toUpperCase()})<\/div>\r\n            <table>\r\n              <tbody>\r\n                <tr><th>\u0642\u06cc\u0645\u062a \u0631\u0648\u0632 (\u062f\u0644\u0627\u0631)<\/th><td>${price.toLocaleString()}<\/td><\/tr>\r\n                <tr class=\"hide-1h-change\"><th>\u062a\u063a\u06cc\u06cc\u0631\u0627\u062a 1 \u0633\u0627\u0639\u062a\u0647<\/th><td>${change1h.toFixed(2)}%<\/td><\/tr>\r\n                <tr><th>\u0633\u0631\u0645\u0627\u06cc\u0647 \u0627\u0648\u0644\u06cc\u0647 \u0628\u0647 \u062f\u0644\u0627\u0631<\/th><td>${initialCapital}<\/td><\/tr>\r\n                <tr><th>\u062a\u0627\u0631\u06af\u062a \u0648\u0631\u0648\u062f \u0627\u0648\u0644<\/th><td>${buy1}<\/td><\/tr>\r\n                <tr><th>\u062a\u0627\u0631\u06af\u062a \u0648\u0631\u0648\u062f \u062f\u0648\u0645<\/th><td>${buy2}<\/td><\/tr>\r\n                <tr><th>\u062a\u0627\u0631\u06af\u062a \u062e\u0631\u0648\u062c \u0627\u0648\u0644<\/th><td>${target1}<\/td><\/tr>\r\n                <tr><th>\u062a\u0627\u0631\u06af\u062a \u062e\u0631\u0648\u062c \u062f\u0648\u0645<\/th><td>${target2}<\/td><\/tr>\r\n                <tr><th>\u062a\u0639\u062f\u0627\u062f \u0627\u0631\u0632 \u062f\u0631\u06cc\u0627\u0641\u062a\u06cc<\/th><td>${tokens.toFixed(3)}<\/td><\/tr>\r\n                <tr><th>\u0628\u0627\u0644\u0627\u062a\u0631\u06cc\u0646 \u0642\u06cc\u0645\u062a (\u0633\u0642\u0641 \u0642\u06cc\u0645\u062a)<\/th><td>${coin.ath.toLocaleString()}<\/td><\/tr>\r\n                <tr><th>\u0633\u0648\u062f \u0628\u0647 \u062f\u0644\u0627\u0631<\/th><td class=\"profit-usd\">$${profitUSD.toLocaleString()}<\/td><\/tr>\r\n                <tr><th>\u0633\u0648\u062f \u0628\u0647 \u062a\u0648\u0645\u0627\u0646<\/th><td class=\"profit-irr\">${profitIRR.toLocaleString()}<\/td><\/tr>\r\n              <\/tbody>\r\n            <\/table>\r\n          <\/div>\r\n        `;\r\n        container.insertAdjacentHTML('beforeend', cardHTML);\r\n      });\r\n\r\n      if (pageData.length === 0) {\r\n        container.innerHTML = \"<p>\u0645\u0648\u0631\u062f\u06cc \u0628\u0631\u0627\u06cc \u0646\u0645\u0627\u06cc\u0634 \u0648\u062c\u0648\u062f \u0646\u062f\u0627\u0631\u062f.<\/p>\";\r\n      }\r\n    }\r\n\r\n    function renderPagination() {\r\n      const pagination = document.getElementById(\"pagination\");\r\n      pagination.innerHTML = \"\";\r\n\r\n      const totalPages = Math.ceil(filteredData.length \/ rowsPerPage);\r\n\r\n      const prevBtn = document.createElement(\"button\");\r\n      prevBtn.textContent = \"\u0642\u0628\u0644\u06cc\";\r\n      prevBtn.disabled = currentPage === 1;\r\n      prevBtn.onclick = () => {\r\n        currentPage--;\r\n        renderCards();\r\n        renderPagination();\r\n        window.scrollTo({top: 0, behavior: \"smooth\"});\r\n      };\r\n      pagination.appendChild(prevBtn);\r\n\r\n      for (let i = 1; i <= totalPages; i++) {\r\n        const btn = document.createElement(\"button\");\r\n        btn.textContent = i;\r\n        btn.disabled = i === currentPage;\r\n        btn.onclick = () => {\r\n          currentPage = i;\r\n          renderCards();\r\n          renderPagination();\r\n          window.scrollTo({top: 0, behavior: \"smooth\"});\r\n        };\r\n        pagination.appendChild(btn);\r\n      }\r\n\r\n      const nextBtn = document.createElement(\"button\");\r\n      nextBtn.textContent = \"\u0628\u0639\u062f\u06cc\";\r\n      nextBtn.disabled = currentPage === totalPages;\r\n      nextBtn.onclick = () => {\r\n        currentPage++;\r\n        renderCards();\r\n        renderPagination();\r\n        window.scrollTo({top: 0, behavior: \"smooth\"});\r\n      };\r\n      pagination.appendChild(nextBtn);\r\n    }\r\n\r\n    \/\/ \u0622\u067e\u062f\u06cc\u062a \u0627\u0648\u0644\u06cc\u0647\r\n    updateDates();\r\n    fetchBTCPrice();\r\n    fetchData();\r\n\r\n    \/\/ \u0622\u067e\u062f\u06cc\u062a \u0647\u0631 5 \u062f\u0642\u06cc\u0642\u0647 \u0627\u062a\u0648\u0645\u0627\u062a\u06cc\u06a9\r\n    setInterval(() => {\r\n      updateDates();\r\n      fetchBTCPrice();\r\n      fetchData();\r\n    }, 5 * 60 * 1000);\r\n  <\/script>\r\n<\/body>\r\n<\/html>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t<\/section>\n\t\t\t\t<\/div>\n\t\t    <div class=\"masteqr-postwarpper\" id=\"masteqr-wrap6a8dccb988567\"><div style=\"text-align:left\" id=\"masteqr-post6a8dccb988567\" class=\"masteqr-post\"  data-size=\"300\" data-content=\"https:\/\/peopleinfo.ir\"><\/div><div class =\"mqrbtnalign\" style=\"    display: flex;justify-content:left\"><div style=\"width:300px;display:flex;align-items: center;justify-content: center;font-size: small\"><a class=\"mqrdownload\" data-download=\"arzha.png\"><span style=\"color:#fff;background:#e53463\" class=\"mqrdospan\">Download QR<\/span><\/a><span class=\"mqrprints\" id=\"printButtoncont6a8dccb988567\" style=\"margin-left:10px;color:#fff;background:#e53463\";>Print QR<\/span>\n                <\/div><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>\u0686\u0627\u0631\u062a \u0627\u0631\u0632\u0647\u0627 \u0642\u0628\u0644\u06cc \u0635\u0641\u062d\u0647 1 \u0628\u0639\u062f\u06cc \u0646\u0645\u0627\u06cc\u0634 \u062f\u0631 \u0647\u0631 \u0635\u0641\u062d\u0647: 16203050 \u0627\u0631\u0632\u0647\u0627\u06cc \u062f\u06cc\u062c\u06cc\u062a\u0627\u0644 \u0642\u06cc\u0645\u062a \u0628\u06cc\u062a\u200c\u06a9\u0648\u06cc\u0646 \u062f\u0631 \u062d\u0627\u0644 \u062f\u0631\u06cc\u0627\u0641\u062a&#8230; \u0628\u0647\u200c\u0631\u0648\u0632\u0631\u0633\u0627\u0646\u06cc \u062f\u0633\u062a\u06cc Download QRPrint QR<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_rtcl_gb_attr":"","site-sidebar-layout":"no-sidebar","site-content-layout":"page-builder","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"disabled","ast-breadcrumbs-content":"","ast-featured-img":"disabled","footer-sml-layout":"","theme-transparent-header-meta":"default","adv-header-id-meta":"","stick-header-meta":"default","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","footnotes":""},"class_list":["post-1800","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/peopleinfo.ir\/index.php?rest_route=\/wp\/v2\/pages\/1800","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/peopleinfo.ir\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/peopleinfo.ir\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/peopleinfo.ir\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/peopleinfo.ir\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=1800"}],"version-history":[{"count":394,"href":"https:\/\/peopleinfo.ir\/index.php?rest_route=\/wp\/v2\/pages\/1800\/revisions"}],"predecessor-version":[{"id":2801,"href":"https:\/\/peopleinfo.ir\/index.php?rest_route=\/wp\/v2\/pages\/1800\/revisions\/2801"}],"wp:attachment":[{"href":"https:\/\/peopleinfo.ir\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=1800"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}