{"id":1822,"date":"2025-11-08T12:02:29","date_gmt":"2025-11-08T12:02:29","guid":{"rendered":"https:\/\/sxolikes-katharistries.gr\/wordpress\/?page_id=1822"},"modified":"2026-03-26T19:23:48","modified_gmt":"2026-03-26T19:23:48","slug":"%cf%83%cf%89%ce%bc%ce%b1%cf%84%ce%b5%ce%af%ce%bf-%cf%83%ce%b5%ce%ba%cf%80%ce%b5%cf%80","status":"publish","type":"page","link":"https:\/\/sxolikes-katharistries.gr\/wordpress\/%cf%83%cf%89%ce%bc%ce%b1%cf%84%ce%b5%ce%af%ce%bf-%cf%83%ce%b5%ce%ba%cf%80%ce%b5%cf%80\/","title":{"rendered":"\u03a3\u03c9\u03bc\u03b1\u03c4\u03b5\u03af\u03bf \u03a3\u0395\u039a\u03a0\u0395\u03a0"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"1822\" class=\"elementor elementor-1822\">\n\t\t\t\t<div class=\"elementor-element elementor-element-903c4c7 e-flex e-con-boxed e-con e-parent\" data-id=\"903c4c7\" 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-700a216 elementor-widget elementor-widget-html\" data-id=\"700a216\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<div id=\"member-dashboard\" style=\"font-family:'Segoe UI',Arial,sans-serif; background:#f7f9fc; padding:30px; border-radius:12px;\">\r\n  <h2 style=\"text-align:center; color:#0053a0;\">\ud83d\udc65  \u03a3.\u0395.\u039a.\u03a0\u0395.\u03a0.<\/h2>\r\n  <p style=\"text-align:center; color:#333;\">\u039a\u03b1\u03bb\u03ce\u03c2 \u03ae\u03c1\u03b8\u03b5\u03c2 \u03c3\u03c4\u03b7\u03bd \u03b5\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03ae \u03c0\u03bb\u03b1\u03c4\u03c6\u03cc\u03c1\u03bc\u03b1 \u03c4\u03bf\u03c5 \u03a3\u03c5\u03bb\u03bb\u03cc\u03b3\u03bf\u03c5 \u039a\u03b1\u03b8\u03b1\u03c1\u03b9\u03c3\u03c4\u03ce\u03bd.<\/p>\r\n  <hr style=\"margin:20px 0;\">\r\n\r\n  <div style=\"display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:15px;\">\r\n\r\n    <div style=\"background:#fff; border-radius:10px; padding:15px; box-shadow:0 2px 6px rgba(0,0,0,0.1); text-align:center;\">\r\n      <h4>\ud83d\udcc7 \u039c\u03b7\u03c4\u03c1\u03ce\u03bf \u039c\u03b5\u03bb\u03ce\u03bd \u03a3.\u0395.\u039a.\u03a0\u0395.\u03a0.<\/h4>\r\n      <a href=\"https:\/\/sxolikes-katharistries.gr\/wordpress\/?page_id=679\" style=\"display:inline-block; background:#378a0e; color:white; padding:6px 12px; border-radius:6px; text-decoration:none;\">\u03a0\u03c1\u03bf\u03b2\u03bf\u03bb\u03ae<\/a>\r\n    <\/div>\r\n\r\n    <div style=\"background:#fff; border-radius:10px; padding:15px; box-shadow:0 2px 6px rgba(0,0,0,0.1); text-align:center;\">\r\n      <h4>\ud83d\udccb \u03a0\u03b1\u03c1\u03bf\u03c5\u03c3\u03af\u03b5\u03c2<\/h4>\r\n      <a href=\"https:\/\/sxolikes-katharistries.gr\/wordpress\/?page_id=861\" target=\"_blank\" style=\"display:inline-block; background:#c815e8; color:white; padding:6px 12px; border-radius:6px; text-decoration:none;\">\u0386\u03bd\u03bf\u03b9\u03b3\u03bc\u03b1<\/a>\r\n    <\/div>\r\n\r\n    <div style=\"background:#fff; border-radius:10px; padding:15px; box-shadow:0 2px 6px rgba(0,0,0,0.1); text-align:center;\">\r\n      <h4>\ud83d\udd8a\ufe0f \u039c\u03bf\u03c1\u03b9\u03b1<\/h4>\r\n      <a href=\"https:\/\/sxolikes-katharistries.gr\/wordpress\/?page_id=4436\" style=\"display:inline-block; background:#6610f2; color:white; padding:6px 12px; border-radius:6px; text-decoration:none;\">\u03a0\u03c1\u03bf\u03b2\u03bf\u03bb\u03ae<\/a>\r\n    <\/div>\r\n\r\n    <div style=\"background:#fff; border-radius:10px; padding:15px; box-shadow:0 2px 6px rgba(0,0,0,0.1); text-align:center;\">\r\n      <h4>\ud83d\udcc1 \u0388\u03b3\u03b3\u03c1\u03b1\u03c6\u03b1 \u03a3.\u0395.\u039a.\u03a0\u0395.\u03a0.<\/h4>\r\n      <a href=\"https:\/\/app.box.com\/s\/7p7kotrjt07zypfus2u0bduj2w5c2akd\" target=\"_blank\" style=\"display:inline-block; background:#ffc107; color:#000; padding:6px 12px; border-radius:6px; text-decoration:none;\">\u03a0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7<\/a>\r\n    <\/div>\r\n\r\n    <div style=\"background:#fff; border-radius:10px; padding:15px; box-shadow:0 2px 6px rgba(0,0,0,0.1); text-align:center;\">\r\n      <h4>\ud83d\udce7 \u039b\u03af\u03c3\u03c4\u03b1 Email<\/h4>\r\n      <button onclick=\"openEmailModal()\" style=\"display:inline-block; background:#f39c12; color:white; padding:6px 12px; border-radius:6px; border:none; cursor:pointer; font-family: inherit;\">\u03a0\u03c1\u03bf\u03b2\u03bf\u03bb\u03ae<\/button>\r\n    <\/div>\r\n  <\/div>\r\n<\/div>\r\n\r\n<!DOCTYPE html>\r\n<html lang=\"el\">\r\n<head>\r\n    <meta charset=\"UTF-8\">\r\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n    <title>\u0394\u03b9\u03b1\u03c7\u03b5\u03af\u03c1\u03b9\u03c3\u03b7 \u03a3\u03c9\u03bc\u03b1\u03c4\u03b5\u03af\u03bf\u03c5<\/title>\r\n    <script src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/xlsx\/0.18.5\/xlsx.full.min.js\"><\/script>\r\n    <style>\r\n        body { font-family: 'Segoe UI', Arial, sans-serif; background: #f0f2f5; padding: 20px; color: #333; }\r\n        .container { max-width: 550px; margin: auto; }\r\n        .card { background: white; padding: 20px; border-radius: 12px; box-shadow: 0 4px 10px rgba(0,0,0,0.1); margin-bottom: 20px; }\r\n        h3 { text-align: center; color: #0053a0; margin-top: 0; display: flex; align-items: center; justify-content: center; gap: 10px; }\r\n        input { width: 100%; padding: 12px; margin: 8px 0; border: 1px solid #ddd; border-radius: 8px; box-sizing: border-box; font-size: 15px; }\r\n        .btn-add { background: #28a745; color: white; border: none; padding: 14px; border-radius: 8px; width: 100%; cursor: pointer; font-weight: bold; font-size: 16px; margin-top: 10px; transition: 0.3s; }\r\n        .btn-add:hover { background: #218838; }\r\n        .grid { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }\r\n        .btn-nav { padding: 15px; border: none; border-radius: 10px; cursor: pointer; font-weight: bold; color: white; transition: 0.3s; text-align: center; font-size: 14px; }\r\n        .btn-list { background: #665CAC; }\r\n        .btn-sms { background: #007bff; }\r\n        .btn-nav:hover { opacity: 0.9; transform: translateY(-2px); }\r\n        .modal { display: none; position: fixed; z-index: 9999; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.6); backdrop-filter: blur(2px); }\r\n        .modal-content { background: white; margin: 2% auto; padding: 25px; border-radius: 15px; width: 90%; max-width: 550px; max-height: 85vh; overflow-y: auto; position: relative; }\r\n        .close { position: absolute; right: 20px; top: 15px; font-size: 28px; cursor: pointer; color: #888; }\r\n        .phone-entry { padding: 15px; border-bottom: 1px solid #eee; text-align: left; position: relative; list-style: none; }\r\n        .phone-entry:hover { background: #f9f9f9; }\r\n        .entry-name { font-weight: bold; color: #333; font-size: 16px; margin-bottom: 5px; }\r\n        .entry-phone { color: #28a745; font-weight: bold; font-size: 14px; display: flex; align-items: center; gap: 5px; }\r\n        .btn-del-mini { background: #d9534f; color: white; border: none; padding: 6px 10px; border-radius: 5px; cursor: pointer; font-size: 11px; float: right; }\r\n        .copy-btn { display: block; background: #fff; border: 2px dashed #007bff; color: #007bff; padding: 15px; margin-bottom: 12px; border-radius: 10px; cursor: pointer; text-align: center; font-weight: bold; transition: 0.2s; }\r\n        .copy-btn:hover { background: #f0f7ff; }\r\n        .btn-excel-top { background: #1D6F42; color: white; padding: 10px; border: none; border-radius: 6px; cursor: pointer; font-weight: bold; margin-bottom: 15px; width: 100%; display: flex; align-items: center; justify-content: center; gap: 8px; }\r\n    <\/style>\r\n<\/head>\r\n<body>\r\n\r\n<div class=\"container\">\r\n    <div class=\"card\">\r\n        <h3>\ud83d\udc64 \u03a0\u03c1\u03bf\u03c3\u03b8\u03ae\u03ba\u03b7 \u039d\u03ad\u03bf\u03c5 \u039c\u03ad\u03bb\u03bf\u03c5\u03c2<\/h3>\r\n        <input type=\"text\" id=\"newName\" placeholder=\"\u038c\u03bd\u03bf\u03bc\u03b1\">\r\n        <input type=\"text\" id=\"newSurname\" placeholder=\"\u0395\u03c0\u03ce\u03bd\u03c5\u03bc\u03bf\">\r\n        <input type=\"text\" id=\"newPhone\" placeholder=\"\u03a4\u03b7\u03bb\u03ad\u03c6\u03c9\u03bd\u03bf (\u03c0.\u03c7. 69...)\">\r\n        <button class=\"btn-add\" onclick=\"addMember()\">\ud83d\udce5 \u0391\u03c0\u03bf\u03b8\u03ae\u03ba\u03b5\u03c5\u03c3\u03b7 \u03c3\u03c4\u03bf \u039c\u03b7\u03c4\u03c1\u03ce\u03bf<\/button>\r\n    <\/div>\r\n\r\n    <div class=\"grid\">\r\n        <button class=\"btn-nav btn-list\" onclick=\"openPhonebook()\">\ud83d\udcde \u039b\u0399\u03a3\u03a4\u0391 & \u0394\u0399\u0391\u0393\u03a1\u0391\u03a6\u0397<\/button>\r\n        <button class=\"btn-nav btn-sms\" onclick=\"openSMSModal()\">\ud83d\udcac \u0391\u039d\u03a4\u0399\u0393\u03a1\u0391\u03a6\u0397 \u0393\u0399\u0391 SMS<\/button>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div id=\"emailModal\" class=\"modal\">\r\n    <div class=\"modal-content\">\r\n        <span class=\"close\" onclick=\"closeModal('emailModal')\">&times;<\/span>\r\n        <h3 style=\"color:#f39c12;\">\ud83d\udce7 \u0391\u03bd\u03c4\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae Emails<\/h3>\r\n        <p style=\"font-size: 13px; color: #666; text-align: center; margin-bottom: 20px;\">\u0391\u03bd\u03c4\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae \u03cc\u03bb\u03c9\u03bd \u03c4\u03c9\u03bd \u03b4\u03b9\u03b5\u03c5\u03b8\u03cd\u03bd\u03c3\u03b5\u03c9\u03bd \u03b1\u03c0\u03cc \u03c4\u03b7 \u03c3\u03c4\u03ae\u03bb\u03b7 \u0391 \u03c4\u03bf\u03c5 \u03c6\u03cd\u03bb\u03bb\u03bf\u03c5 EMAIL.<\/p>\r\n        <div id=\"emailContainer\"><\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div id=\"phoneModal\" class=\"modal\">\r\n    <div class=\"modal-content\">\r\n        <span class=\"close\" onclick=\"closeModal('phoneModal')\">&times;<\/span>\r\n        <h3 style=\"color:#665CAC; margin-bottom:20px;\">\ud83d\udcde \u039a\u03b1\u03c4\u03ac\u03bb\u03bf\u03b3\u03bf\u03c2 \u039c\u03b5\u03bb\u03ce\u03bd<\/h3>\r\n        <button onclick=\"exportToExcel()\" class=\"btn-excel-top\">\ud83d\udce5 \u0395\u03be\u03b1\u03b3\u03c9\u03b3\u03ae \u03c3\u03b5 Excel<\/button>\r\n        <input type=\"text\" id=\"phoneSearch\" onkeyup=\"searchPhone()\" placeholder=\"\ud83d\udd0d \u0391\u03bd\u03b1\u03b6\u03ae\u03c4\u03b7\u03c3\u03b7 \u03c3\u03b5 \u03bf\u03bd\u03cc\u03bc\u03b1\u03c4\u03b1 \u03ae \u03c4\u03b7\u03bb\u03ad\u03c6\u03c9\u03bd\u03b1...\">\r\n        <div id=\"pLoading\" style=\"text-align:center; display:none; padding:20px;\">\u23f3 \u03a6\u03cc\u03c1\u03c4\u03c9\u03c3\u03b7...<\/div>\r\n        <ul id=\"phoneList\" style=\"padding:0; margin:0;\"><\/ul>\r\n    <\/div>\r\n<\/div>\r\n\r\n<div id=\"smsModal\" class=\"modal\">\r\n    <div class=\"modal-content\">\r\n        <span class=\"close\" onclick=\"closeModal('smsModal')\">&times;<\/span>\r\n        <h3 style=\"color:#007bff;\">\ud83d\udccb \u0391\u03bd\u03c4\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae \u0391\u03c1\u03b9\u03b8\u03bc\u03ce\u03bd (20\u03ac\u03b4\u03b5\u03c2)<\/h3>\r\n        <p style=\"font-size: 13px; color: #666; text-align: center; margin-bottom: 20px;\">\u03a0\u03b1\u03c4\u03ae\u03c3\u03c4\u03b5 \u03bc\u03b9\u03b1 \u03bf\u03bc\u03ac\u03b4\u03b1 \u03b3\u03b9\u03b1 \u03b1\u03bd\u03c4\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae.<\/p>\r\n        <div id=\"smsButtonsContainer\"><\/div>\r\n    <\/div>\r\n<\/div>\r\n\r\n<script>\r\n    const SCRIPT_URL = \"https:\/\/script.google.com\/macros\/s\/AKfycbx8OWBEJm-S-pAmJ8w2Iy5jGc0m5q-dkYCWGBBISZeBBroE7W3YB2vU8mU4THZspnyfqA\/exec\"; \r\n    let allMembers = [];\r\n\r\n    \/\/ \u03a3\u03a5\u039d\u0391\u03a1\u03a4\u0397\u03a3\u0397 \u0393\u0399\u0391 \u03a4\u039f MODAL EMAILS: \u039d\u0391\u03a5\u03a0\u039b\u0399\u039f (3-48) & \u0391\u03a1\u0393\u039f\u03a3 (49-150)\r\nasync function openEmailModal() {\r\n    document.getElementById('emailModal').style.display = 'block';\r\n    const container = document.getElementById('emailContainer');\r\n    container.innerHTML = \"<p style='text-align:center;'>\u23f3 \u03a6\u03cc\u03c1\u03c4\u03c9\u03c3\u03b7 \u03b4\u03b9\u03b5\u03c5\u03b8\u03cd\u03bd\u03c3\u03b5\u03c9\u03bd...<\/p>\";\r\n\r\n    try {\r\n        const res = await fetch(`${SCRIPT_URL}?action=readEmails&t=${new Date().getTime()}`);\r\n        const emails = await res.json();\r\n\r\n        if (!emails || emails.length === 0) {\r\n            container.innerHTML = \"<p style='text-align:center;'>\u0394\u03b5\u03bd \u03b2\u03c1\u03ad\u03b8\u03b7\u03ba\u03b1\u03bd emails \u03c3\u03c4\u03bf \u03c6\u03cd\u03bb\u03bb\u03bf 'EMAIL'.<\/p>\";\r\n            return;\r\n        }\r\n\r\n        \/\/ --- \u0394\u0399\u0391\u03a7\u03a9\u03a1\u0399\u03a3\u039c\u039f\u03a3 \u039c\u0395 \u0392\u0391\u03a3\u0397 \u03a4\u0399\u03a3 \u0393\u03a1\u0391\u039c\u039c\u0395\u03a3 \u03a3\u039f\u03a5 ---\r\n\r\n        \/\/ \u039f\u039c\u0391\u0394\u0391 \u0391: \u039d\u0391\u03a5\u03a0\u039b\u0399\u039f (\u0393\u03c1\u03b1\u03bc\u03bc\u03ad\u03c2 3 \u03ad\u03c9\u03c2 48)\r\n        \/\/ \u03a4\u03bf slice(2, 48) \u03c0\u03b1\u03af\u03c1\u03bd\u03b5\u03b9 \u03b1\u03c0\u03cc \u03c4\u03b7 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae 3 \u03bc\u03ad\u03c7\u03c1\u03b9 \u03ba\u03b1\u03b9 \u03c4\u03b7 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae 48\r\n        const group1 = emails.slice(2, 48).filter(email => email && email.trim() !== \"\");\r\n        \r\n        \/\/ \u039f\u039c\u0391\u0394\u0391 \u0392: \u0391\u03a1\u0393\u039f\u03a3 (\u0393\u03c1\u03b1\u03bc\u03bc\u03ad\u03c2 49 \u03ad\u03c9\u03c2 150)\r\n        \/\/ \u03a4\u03bf slice(48, 150) \u03be\u03b5\u03ba\u03b9\u03bd\u03ac\u03b5\u03b9 \u03b1\u03c0\u03cc \u03c4\u03b7 \u03b3\u03c1\u03b1\u03bc\u03bc\u03ae 49\r\n        const group2 = emails.slice(48, 150).filter(email => email && email.trim() !== \"\");\r\n\r\n        const text1 = group1.join(', ');\r\n        const text2 = group2.join(', ');\r\n\r\n        container.innerHTML = `\r\n            <!-- \u03a0\u0395\u03a1\u0399\u039f\u03a7\u0397 \u039d\u0391\u03a5\u03a0\u039b\u0399\u039f\u03a5 -->\r\n            <div style=\"margin-bottom: 25px; border-bottom: 2px solid #eee; padding-bottom: 15px;\">\r\n                <h4 style=\"color:#0053a0; margin-bottom:10px; display:flex; align-items:center; gap:8px;\">\r\n                    \ud83d\udccd \u039f\u03bc\u03ac\u03b4\u03b1 \u0391: \u039d\u0391\u03a5\u03a0\u039b\u0399\u039f <span style=\"font-size:12px; font-weight:normal; color:#666;\">(\u0393\u03c1\u03b1\u03bc\u03bc\u03ad\u03c2 3-48)<\/span>\r\n                <\/h4>\r\n                <div class=\"copy-btn\" style=\"border-color:#3498db; color:#3498db;\" onclick=\"copyToClipboard('${text1}', '\u039d\u03b1\u03c5\u03c0\u03bb\u03af\u03bf\u03c5')\">\r\n                    \ud83d\udccb \u0391\u03bd\u03c4\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae ${group1.length} Emails\r\n                <\/div>\r\n                <div style=\"background:#f9f9f9; padding:10px; border-radius:8px; border:1px solid #ddd; max-height:100px; overflow-y:auto; font-size:11px; color: #555; word-break: break-all; line-height:1.4;\">\r\n                    ${text1 || '<i>\u0394\u03b5\u03bd \u03c5\u03c0\u03ac\u03c1\u03c7\u03bf\u03c5\u03bd email \u03b3\u03b9\u03b1 \u03c4\u03bf \u039d\u03b1\u03cd\u03c0\u03bb\u03b9\u03bf.<\/i>'}\r\n                <\/div>\r\n            <\/div>\r\n\r\n            <!-- \u03a0\u0395\u03a1\u0399\u039f\u03a7\u0397 \u0391\u03a1\u0393\u039f\u03a5\u03a3 -->\r\n            <div style=\"margin-bottom: 10px;\">\r\n                <h4 style=\"color:#c0392b; margin-bottom:10px; display:flex; align-items:center; gap:8px;\">\r\n                    \ud83d\udccd \u039f\u03bc\u03ac\u03b4\u03b1 \u0392: \u0391\u03a1\u0393\u039f\u03a3 <span style=\"font-size:12px; font-weight:normal; color:#666;\">(\u0393\u03c1\u03b1\u03bc\u03bc\u03ad\u03c2 49-150)<\/span>\r\n                <\/h4>\r\n                <div class=\"copy-btn\" style=\"border-color:#e67e22; color:#e67e22;\" onclick=\"copyToClipboard('${text2}', '\u0386\u03c1\u03b3\u03bf\u03c5\u03c2')\">\r\n                    \ud83d\udccb \u0391\u03bd\u03c4\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae ${group2.length} Emails\r\n                <\/div>\r\n                <div style=\"background:#f9f9f9; padding:10px; border-radius:8px; border:1px solid #ddd; max-height:100px; overflow-y:auto; font-size:11px; color: #555; word-break: break-all; line-height:1.4;\">\r\n                    ${text2 || '<i>\u0394\u03b5\u03bd \u03c5\u03c0\u03ac\u03c1\u03c7\u03bf\u03c5\u03bd email \u03b3\u03b9\u03b1 \u03c4\u03bf \u0386\u03c1\u03b3\u03bf\u03c2.<\/i>'}\r\n                <\/div>\r\n            <\/div>\r\n        `;\r\n    } catch (e) {\r\n        container.innerHTML = \"<p style='text-align:center; color:red;'>\u274c \u03a3\u03c6\u03ac\u03bb\u03bc\u03b1 \u03ba\u03b1\u03c4\u03ac \u03c4\u03b7 \u03c6\u03cc\u03c1\u03c4\u03c9\u03c3\u03b7.<\/p>\";\r\n    }\r\n}\r\n\r\n\/\/ \u03a3\u03a5\u039d\u0391\u03a1\u03a4\u0397\u03a3\u0397 \u0391\u039d\u03a4\u0399\u0393\u03a1\u0391\u03a6\u0397\u03a3\r\nfunction copyToClipboard(text, areaName) {\r\n    if (!text) return alert(\"\u0394\u03b5\u03bd \u03c5\u03c0\u03ac\u03c1\u03c7\u03bf\u03c5\u03bd \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03b1!\");\r\n    navigator.clipboard.writeText(text).then(() => {\r\n        alert(\"\u0391\u03bd\u03c4\u03b9\u03b3\u03c1\u03ac\u03c6\u03b7\u03ba\u03b1\u03bd \u03b5\u03c0\u03b9\u03c4\u03c5\u03c7\u03ce\u03c2 \u03c4\u03b1 emails \u03c4\u03bf\u03c5 \" + areaName + \"!\");\r\n    });\r\n}\r\n\r\n    \/\/ \u0392\u0395\u039b\u03a4\u0399\u03a9\u039c\u0395\u039d\u0397 \u03a3\u03a5\u039d\u0391\u03a1\u03a4\u0397\u03a3\u0397 \u0391\u039d\u03a4\u0399\u0393\u03a1\u0391\u03a6\u0397\u03a3\r\n    function copyToClipboard(text, areaName) {\r\n        if (!text) return alert(\"\u0394\u03b5\u03bd \u03c5\u03c0\u03ac\u03c1\u03c7\u03bf\u03c5\u03bd emails \u03b3\u03b9\u03b1 \u03b1\u03bd\u03c4\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae!\");\r\n        navigator.clipboard.writeText(text).then(() => {\r\n            alert(\"\u03a4\u03b1 emails \u03c4\u03b7\u03c2 \u03c0\u03b5\u03c1\u03b9\u03bf\u03c7\u03ae\u03c2 \" + areaName + \" \u03b1\u03bd\u03c4\u03b9\u03b3\u03c1\u03ac\u03c6\u03b7\u03ba\u03b1\u03bd \u03b5\u03c0\u03b9\u03c4\u03c5\u03c7\u03ce\u03c2!\");\r\n        });\r\n    }\r\n    function copyToClipboard(text) {\r\n        navigator.clipboard.writeText(text).then(() => {\r\n            alert(\"\u038c\u03bb\u03b1 \u03c4\u03b1 emails \u03b1\u03bd\u03c4\u03b9\u03b3\u03c1\u03ac\u03c6\u03b7\u03ba\u03b1\u03bd \u03b5\u03c0\u03b9\u03c4\u03c5\u03c7\u03ce\u03c2!\");\r\n        });\r\n    }\r\n\r\n    \/\/ --- \u03a5\u03a0\u039f\u039b\u039f\u0399\u03a0\u0395\u03a3 \u03a3\u03a5\u039d\u0391\u03a1\u03a4\u0397\u03a3\u0395\u0399\u03a3 ---\r\n    async function addMember() {\r\n        const n = document.getElementById('newName').value.trim();\r\n        const s = document.getElementById('newSurname').value.trim();\r\n        const p = document.getElementById('newPhone').value.trim();\r\n        if(!n || !s || !p) return alert(\"\u03a0\u03b1\u03c1\u03b1\u03ba\u03b1\u03bb\u03ce \u03c3\u03c5\u03bc\u03c0\u03bb\u03b7\u03c1\u03ce\u03c3\u03c4\u03b5 \u03cc\u03bb\u03b1 \u03c4\u03b1 \u03c0\u03b5\u03b4\u03af\u03b1!\");\r\n        const btn = document.querySelector('.btn-add');\r\n        btn.innerText = \"\u23f3 \u0393\u03af\u03bd\u03b5\u03c4\u03b1\u03b9 \u03b1\u03c0\u03bf\u03b8\u03ae\u03ba\u03b5\u03c5\u03c3\u03b7...\";\r\n        btn.disabled = true;\r\n        try {\r\n            await fetch(`${SCRIPT_URL}?action=add&name=${encodeURIComponent(n)}&surname=${encodeURIComponent(s)}&phone=${encodeURIComponent(p)}`);\r\n            alert(\"\u03a4\u03bf \u03bc\u03ad\u03bb\u03bf\u03c2 \u03c0\u03c1\u03bf\u03c3\u03c4\u03ad\u03b8\u03b7\u03ba\u03b5 \u03b5\u03c0\u03b9\u03c4\u03c5\u03c7\u03ce\u03c2!\");\r\n            location.reload();\r\n        } catch (error) {\r\n            alert(\"\u03a3\u03c6\u03ac\u03bb\u03bc\u03b1 \u03c3\u03c4\u03b7\u03bd \u03b1\u03c0\u03bf\u03b8\u03ae\u03ba\u03b5\u03c5\u03c3\u03b7.\");\r\n            btn.innerText = \"\ud83d\udce5 \u0391\u03c0\u03bf\u03b8\u03ae\u03ba\u03b5\u03c5\u03c3\u03b7 \u03c3\u03c4\u03bf \u039c\u03b7\u03c4\u03c1\u03ce\u03bf\";\r\n            btn.disabled = false;\r\n        }\r\n    }\r\n\r\n    async function openPhonebook() {\r\n        document.getElementById('phoneModal').style.display = 'block';\r\n        const loading = document.getElementById('pLoading');\r\n        const list = document.getElementById('phoneList');\r\n        loading.style.display = 'block';\r\n        list.innerHTML = \"\";\r\n        try {\r\n            const res = await fetch(`${SCRIPT_URL}?action=read&t=${new Date().getTime()}`);\r\n            allMembers = await res.json();\r\n            loading.style.display = 'none';\r\n            allMembers.forEach(m => {\r\n                const li = document.createElement('li');\r\n                li.className = \"phone-entry\";\r\n                li.innerHTML = `\r\n                    <button class=\"btn-del-mini\" onclick=\"deleteMember('${m.phone}')\">\ud83d\uddd1\ufe0f \u0394\u03b9\u03b1\u03b3\u03c1\u03b1\u03c6\u03ae<\/button>\r\n                    <div class=\"entry-name\">\ud83d\udc64 ${m.name} ${m.surname}<\/div>\r\n                    <div class=\"entry-phone\">\ud83d\udcde ${m.phone}<\/div>`;\r\n                list.appendChild(li);\r\n            });\r\n        } catch (e) { loading.innerHTML = \"\u274c \u03a3\u03c6\u03ac\u03bb\u03bc\u03b1 \u03c3\u03cd\u03bd\u03b4\u03b5\u03c3\u03b7\u03c2.\"; }\r\n    }\r\n\r\n    async function deleteMember(phone) {\r\n        if(!confirm(\"\u0395\u03af\u03c3\u03c4\u03b5 \u03c3\u03af\u03b3\u03bf\u03c5\u03c1\u03bf\u03b9;\")) return;\r\n        await fetch(`${SCRIPT_URL}?action=delete&phone=${encodeURIComponent(phone)}`, {mode:'no-cors'});\r\n        alert(\"\u0394\u03b9\u03b1\u03b3\u03c1\u03ac\u03c6\u03b7\u03ba\u03b5!\");\r\n        openPhonebook();\r\n    }\r\n\r\n    function searchPhone() {\r\n        let input = document.getElementById('phoneSearch').value.toLowerCase();\r\n        let entries = document.getElementsByClassName('phone-entry');\r\n        for (let entry of entries) {\r\n            entry.style.display = entry.innerText.toLowerCase().includes(input) ? \"\" : \"none\";\r\n        }\r\n    }\r\n\r\n    async function openSMSModal() {\r\n        document.getElementById('smsModal').style.display = 'block';\r\n        const cont = document.getElementById('smsButtonsContainer');\r\n        cont.innerHTML = \"\u23f3 \u03a0\u03c1\u03bf\u03b5\u03c4\u03bf\u03b9\u03bc\u03b1\u03c3\u03af\u03b1...\";\r\n        const res = await fetch(`${SCRIPT_URL}?action=read&t=${new Date().getTime()}`);\r\n        allMembers = await res.json();\r\n        cont.innerHTML = \"\";\r\n        const phones = allMembers.map(m => m.phone).filter(p => p);\r\n        const isIphone = \/iPhone|iPad|iPod\/i.test(navigator.userAgent);\r\n        const sep = isIphone ? ',' : ';';\r\n        for (let i = 0; i < phones.length; i += 20) {\r\n            const chunk = phones.slice(i, i + 20);\r\n            const rawNumbers = chunk.join(sep);\r\n            const btn = document.createElement('div');\r\n            btn.className = \"copy-btn\";\r\n            btn.innerHTML = `\ud83d\udccb \u039f\u03bc\u03ac\u03b4\u03b1 ${Math.floor(i\/20)+1} <br> <small>(${chunk.length} \u03b1\u03c1\u03b9\u03b8\u03bc\u03bf\u03af)<\/small>`;\r\n            btn.onclick = function() {\r\n                navigator.clipboard.writeText(rawNumbers).then(() => {\r\n                    alert(\"\u0391\u03bd\u03c4\u03b9\u03b3\u03c1\u03ac\u03c6\u03b7\u03ba\u03b1\u03bd 20 \u03b1\u03c1\u03b9\u03b8\u03bc\u03bf\u03af!\");\r\n                });\r\n            };\r\n            cont.appendChild(btn);\r\n        }\r\n    }\r\n\r\n    function exportToExcel() {\r\n        if (allMembers.length === 0) return alert(\"\u0394\u03b5\u03bd \u03c5\u03c0\u03ac\u03c1\u03c7\u03bf\u03c5\u03bd \u03b4\u03b5\u03b4\u03bf\u03bc\u03ad\u03bd\u03b1!\");\r\n        const data = allMembers.map(m => ({ \"\u038c\u03bd\u03bf\u03bc\u03b1\": m.name, \"\u0395\u03c0\u03ce\u03bd\u03c5\u03bc\u03bf\": m.surname, \"\u03a4\u03b7\u03bb\u03ad\u03c6\u03c9\u03bd\u03bf\": m.phone }));\r\n        const ws = XLSX.utils.json_to_sheet(data);\r\n        const wb = XLSX.utils.book_new();\r\n        XLSX.utils.book_append_sheet(wb, ws, \"\u039c\u03ad\u03bb\u03b7\");\r\n        XLSX.writeFile(wb, \"Katalogos.xlsx\");\r\n    }\r\n\r\n    function closeModal(id) { document.getElementById(id).style.display = 'none'; }\r\n<\/script>\r\n\r\n<\/body>\r\n<\/html>\t\t\t\t<\/div>\n\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>\ud83d\udc65 \u03a3.\u0395.\u039a.\u03a0\u0395.\u03a0. \u039a\u03b1\u03bb\u03ce\u03c2 \u03ae\u03c1\u03b8\u03b5\u03c2 \u03c3\u03c4\u03b7\u03bd \u03b5\u03c3\u03c9\u03c4\u03b5\u03c1\u03b9\u03ba\u03ae \u03c0\u03bb\u03b1\u03c4\u03c6\u03cc\u03c1\u03bc\u03b1 \u03c4\u03bf\u03c5 \u03a3\u03c5\u03bb\u03bb\u03cc\u03b3\u03bf\u03c5 \u039a\u03b1\u03b8\u03b1\u03c1\u03b9\u03c3\u03c4\u03ce\u03bd. \ud83d\udcc7 \u039c\u03b7\u03c4\u03c1\u03ce\u03bf \u039c\u03b5\u03bb\u03ce\u03bd \u03a3.\u0395.\u039a.\u03a0\u0395.\u03a0. \u03a0\u03c1\u03bf\u03b2\u03bf\u03bb\u03ae \ud83d\udccb \u03a0\u03b1\u03c1\u03bf\u03c5\u03c3\u03af\u03b5\u03c2 \u0386\u03bd\u03bf\u03b9\u03b3\u03bc\u03b1 \ud83d\udd8a\ufe0f \u039c\u03bf\u03c1\u03b9\u03b1 \u03a0\u03c1\u03bf\u03b2\u03bf\u03bb\u03ae \ud83d\udcc1 \u0388\u03b3\u03b3\u03c1\u03b1\u03c6\u03b1 \u03a3.\u0395.\u039a.\u03a0\u0395.\u03a0. \u03a0\u03c1\u03cc\u03c3\u03b2\u03b1\u03c3\u03b7 \ud83d\udce7 \u039b\u03af\u03c3\u03c4\u03b1 Email \u03a0\u03c1\u03bf\u03b2\u03bf\u03bb\u03ae \u0394\u03b9\u03b1\u03c7\u03b5\u03af\u03c1\u03b9\u03c3\u03b7 \u03a3\u03c9\u03bc\u03b1\u03c4\u03b5\u03af\u03bf\u03c5 \ud83d\udc64 \u03a0\u03c1\u03bf\u03c3\u03b8\u03ae\u03ba\u03b7 \u039d\u03ad\u03bf\u03c5 \u039c\u03ad\u03bb\u03bf\u03c5\u03c2 \ud83d\udce5 \u0391\u03c0\u03bf\u03b8\u03ae\u03ba\u03b5\u03c5\u03c3\u03b7 \u03c3\u03c4\u03bf \u039c\u03b7\u03c4\u03c1\u03ce\u03bf \ud83d\udcde \u039b\u0399\u03a3\u03a4\u0391 &#038; \u0394\u0399\u0391\u0393\u03a1\u0391\u03a6\u0397 \ud83d\udcac \u0391\u039d\u03a4\u0399\u0393\u03a1\u0391\u03a6\u0397 \u0393\u0399\u0391 SMS &times; \ud83d\udce7 \u0391\u03bd\u03c4\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae Emails \u0391\u03bd\u03c4\u03b9\u03b3\u03c1\u03b1\u03c6\u03ae \u03cc\u03bb\u03c9\u03bd \u03c4\u03c9\u03bd \u03b4\u03b9\u03b5\u03c5\u03b8\u03cd\u03bd\u03c3\u03b5\u03c9\u03bd [&hellip;]<\/p>\n","protected":false},"author":32,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":"","_members_access_role":[],"_members_access_error":""},"class_list":["post-1822","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/sxolikes-katharistries.gr\/wordpress\/wp-json\/wp\/v2\/pages\/1822","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sxolikes-katharistries.gr\/wordpress\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/sxolikes-katharistries.gr\/wordpress\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/sxolikes-katharistries.gr\/wordpress\/wp-json\/wp\/v2\/users\/32"}],"replies":[{"embeddable":true,"href":"https:\/\/sxolikes-katharistries.gr\/wordpress\/wp-json\/wp\/v2\/comments?post=1822"}],"version-history":[{"count":142,"href":"https:\/\/sxolikes-katharistries.gr\/wordpress\/wp-json\/wp\/v2\/pages\/1822\/revisions"}],"predecessor-version":[{"id":4546,"href":"https:\/\/sxolikes-katharistries.gr\/wordpress\/wp-json\/wp\/v2\/pages\/1822\/revisions\/4546"}],"wp:attachment":[{"href":"https:\/\/sxolikes-katharistries.gr\/wordpress\/wp-json\/wp\/v2\/media?parent=1822"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}