{"id":102,"date":"2026-06-15T22:57:07","date_gmt":"2026-06-15T22:57:07","guid":{"rendered":"https:\/\/chaseemobile.xyz\/?page_id=102"},"modified":"2026-06-15T22:58:45","modified_gmt":"2026-06-15T22:58:45","slug":"portfolio","status":"publish","type":"page","link":"https:\/\/chaseemobile.xyz\/?page_id=102","title":{"rendered":"Portfolio"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"102\" class=\"elementor elementor-102\">\n\t\t\t\t<div class=\"elementor-element elementor-element-2bf7f8f e-flex e-con-boxed e-con e-parent\" data-id=\"2bf7f8f\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-fedf217 elementor-widget elementor-widget-html\" data-id=\"fedf217\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div style=\"background: #0d0620; padding: 20px; border-radius: 15px; font-family: Inter; color: white;\">\r\n\r\n  <h2 style=\"margin:0 0 20px; font-size:24px;\">My Portfolio<\/h2>\r\n\r\n  <!-- Summary Cards -->\r\n  <div style=\"display: flex; gap: 15px; margin-bottom: 25px; flex-wrap: wrap;\">\r\n    <div style=\"background: #6b21a8; padding: 20px; border-radius: 12px; flex: 1; min-width: 150px;\">\r\n      <p style=\"margin:0; font-size:12px; opacity:0.8;\">Virtual Balance<\/p>\r\n      <h2 id=\"portfolio-balance\" style=\"margin:5px 0; font-size:28px;\">Loading...<\/h2>\r\n    <\/div>\r\n    <div style=\"background: #1a0a2e; padding: 20px; border-radius: 12px; flex: 1; min-width: 150px; border: 1px solid #6b21a8;\">\r\n      <p style=\"margin:0; font-size:12px; opacity:0.8;\">Total Invested<\/p>\r\n      <h2 id=\"total-invested\" style=\"margin:5px 0; font-size:28px;\">$0.00<\/h2>\r\n    <\/div>\r\n    <div style=\"background: #1a0a2e; padding: 20px; border-radius: 12px; flex: 1; min-width: 150px; border: 1px solid #6b21a8;\">\r\n      <p style=\"margin:0; font-size:12px; opacity:0.8;\">Assets Owned<\/p>\r\n      <h2 id=\"total-assets\" style=\"margin:5px 0; font-size:28px;\">0<\/h2>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <!-- Assets Table -->\r\n  <div style=\"background: #1a0a2e; border-radius: 12px; padding: 20px; border: 1px solid #6b21a8;\">\r\n    <h3 style=\"margin:0 0 15px;\">Assets Owned<\/h3>\r\n    <table style=\"width:100%; border-collapse:collapse;\">\r\n      <tr style=\"border-bottom:1px solid #6b21a8;\">\r\n        <th style=\"padding:12px; text-align:left; opacity:0.7;\">Asset<\/th>\r\n        <th style=\"padding:12px; text-align:left; opacity:0.7;\">Units Owned<\/th>\r\n        <th style=\"padding:12px; text-align:left; opacity:0.7;\">Total Invested<\/th>\r\n        <th style=\"padding:12px; text-align:left; opacity:0.7;\">Avg Price<\/th>\r\n      <\/tr>\r\n      <tbody id=\"portfolio-list\">\r\n        <tr><td colspan=\"4\" style=\"padding:20px; text-align:center; opacity:0.5;\">Loading...<\/td><\/tr>\r\n      <\/tbody>\r\n    <\/table>\r\n  <\/div>\r\n\r\n<\/div>\r\n\r\n<script>\r\nfunction loadPortfolio() {\r\n    fetch(ajaxurl + '?action=get_user_balance')\r\n    .then(r => r.json())\r\n    .then(data => {\r\n        if (data.success) {\r\n            document.getElementById('portfolio-balance').innerHTML = '$' + parseFloat(data.data.balance).toLocaleString();\r\n        }\r\n    });\r\n\r\n    fetch(ajaxurl + '?action=get_user_portfolio')\r\n    .then(r => r.json())\r\n    .then(data => {\r\n        if (data.success) {\r\n            var portfolio = data.data;\r\n            var tbody = document.getElementById('portfolio-list');\r\n            \r\n            if (portfolio.length === 0) {\r\n                tbody.innerHTML = '<tr><td colspan=\"4\" style=\"padding:20px; text-align:center; opacity:0.5;\">No assets yet \u2014 start trading!<\/td><\/tr>';\r\n                document.getElementById('total-assets').innerHTML = '0';\r\n                document.getElementById('total-invested').innerHTML = '$0.00';\r\n                return;\r\n            }\r\n\r\n            var totalInvested = 0;\r\n            tbody.innerHTML = portfolio.map(p => {\r\n                totalInvested += parseFloat(p.invested);\r\n                var avgPrice = p.amount > 0 ? (p.invested \/ p.amount).toFixed(2) : 0;\r\n                return `\r\n                <tr style=\"border-bottom:1px solid #2d1054;\">\r\n                    <td style=\"padding:12px;\">\r\n                        <div style=\"display:flex; align-items:center; gap:10px;\">\r\n                            <div style=\"background:#6b21a8; width:35px; height:35px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-weight:700; font-size:12px;\">${p.coin.substring(0,3).toUpperCase()}<\/div>\r\n                            <span style=\"font-weight:600;\">${p.coin.toUpperCase()}<\/span>\r\n                        <\/div>\r\n                    <\/td>\r\n                    <td style=\"padding:12px;\">${parseFloat(p.amount).toFixed(4)}<\/td>\r\n                    <td style=\"padding:12px; color:#00C896;\">$${parseFloat(p.invested).toLocaleString()}<\/td>\r\n                    <td style=\"padding:12px;\">$${parseFloat(avgPrice).toLocaleString()}<\/td>\r\n                <\/tr>`;\r\n            }).join('');\r\n\r\n            document.getElementById('total-assets').innerHTML = portfolio.length;\r\n            document.getElementById('total-invested').innerHTML = '$' + totalInvested.toLocaleString();\r\n        }\r\n    });\r\n}\r\n\r\nloadPortfolio();\r\n<\/script>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t","protected":false},"excerpt":{"rendered":"<p>My Portfolio Virtual Balance Loading&#8230; Total Invested $0.00 Assets Owned 0 Assets Owned Asset Units Owned Total Invested Avg Price [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"_acf_changed":false,"site-sidebar-layout":"no-sidebar","site-content-layout":"","ast-site-content-layout":"full-width-container","site-content-style":"default","site-sidebar-style":"default","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":"","ast-breadcrumbs-content":"","ast-featured-img":"disabled","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"class_list":["post-102","page","type-page","status-publish","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/chaseemobile.xyz\/index.php?rest_route=\/wp\/v2\/pages\/102","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/chaseemobile.xyz\/index.php?rest_route=\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/chaseemobile.xyz\/index.php?rest_route=\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/chaseemobile.xyz\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/chaseemobile.xyz\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=102"}],"version-history":[{"count":4,"href":"https:\/\/chaseemobile.xyz\/index.php?rest_route=\/wp\/v2\/pages\/102\/revisions"}],"predecessor-version":[{"id":106,"href":"https:\/\/chaseemobile.xyz\/index.php?rest_route=\/wp\/v2\/pages\/102\/revisions\/106"}],"wp:attachment":[{"href":"https:\/\/chaseemobile.xyz\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=102"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}