Mental Health Awareness: Free database of services available in SA



/* ===== Scope all styles to this embed ===== */
#mh-sa * font-family: system-ui, -apple-system, BlinkMacSystemFont, “Segoe UI”, Roboto, “Helvetica Neue”, Arial, sans-serif;
#mh-sa .mh-container max-width: 900px; margin: 0 auto; padding: 16px;
@media (min-width: 640px) #mh-sa .mh-container padding: 24px;

/* Header */
#mh-sa .mh-header text-align: center; margin-bottom: 40px;
#mh-sa .mh-title font-size: 2rem; font-weight: 800; color: #1e40af; margin: 0 0 8px;
@media (min-width: 640px) #mh-sa .mh-title font-size: 2.25rem;
#mh-sa .mh-subtitle font-size: 1.125rem; color: #4b5563; margin: 0;
#mh-sa .mh-crisis background-color: #fee2e2; color: #b91c1c; font-weight: 600; padding: 8px 12px; border-radius: 8px; margin-top: 12px; font-size: 0.875rem; display: inline-block;

/* Controls */
#mh-sa .mh-controls background: #ffffff; padding: 16px; border-radius: 12px; border: 1px solid #f3f4f6;
position: sticky; top: 0; z-index: 10;
box-shadow: 0 10px 15px -3px rgba(0,0,0,0.1), 0 4px 6px -4px rgba(0,0,0,0.1);
margin-bottom: 32px;
#mh-sa .mh-search width: 100%; padding: 12px; border: 2px solid #d1d5db; border-radius: 8px; margin-bottom: 12px; box-sizing: border-box; font-size: 1rem;
#mh-sa .mh-search:focus outline: none; border-color: #1d4ed8; box-shadow: 0 0 0 1px #1d4ed8;
#mh-sa .mh-filters display: flex; flex-wrap: wrap; gap: 8px; justify-content: center;
#mh-sa .mh-filter-btn padding: 8px 14px; border-radius: 9999px; font-size: 0.875rem; font-weight: 600; border: none; cursor: pointer; white-space: nowrap; background: #f3f4f6; color: #4b5563;
#mh-sa .mh-filter-btn:not(.is-active):hover background: #e5e7eb;
#mh-sa .mh-filter-btn.is-active background: #1d4ed8; color: #ffffff;

/* List + cards */
#mh-sa .mh-list display: flex; flex-direction: column; gap: 24px;
#mh-sa .mh-card background: #ffffff; border-radius: 12px; padding: 20px;
box-shadow: 0 4px 6px -1px rgba(0,0,0,0.1), 0 2px 4px -2px rgba(0,0,0,0.06);
border-left: 4px solid #e5e7eb;
#mh-sa .mh-head display: flex; flex-direction: column; align-items: flex-start; justify-content: space-between; gap: 8px; margin-bottom: 12px;
@media (min-width: 640px) #mh-sa .mh-head flex-direction: row; align-items: center;
#mh-sa .mh-name font-size: 1.25rem; font-weight: 700; color: #1f2937; margin: 0;
#mh-sa .mh-tag font-size: 0.75rem; font-weight: 700; padding: 4px 12px; border-radius: 9999px; display: inline-block; white-space: nowrap;

#mh-sa .mh-focus color: #4b5563; margin: 0;
#mh-sa .mh-focus strong color: #6b7280;

#mh-sa .mh-foot display: flex; flex-direction: column; gap: 12px; margin-top: 12px; padding-top: 12px; border-top: 1px solid #f3f4f6; font-size: 0.95rem;
@media (min-width: 640px) #mh-sa .mh-foot flex-direction: row; align-items: center; gap: 20px;

#mh-sa .mh-row display: flex; align-items: center; gap: 8px; font-weight: 600;
#mh-sa .mh-contact color: #16a34a;
#mh-sa .mh-province color: #6b7280;
#mh-sa .mh-link color: #1d4ed8; font-weight: 600; text-decoration: none; display: inline-flex; align-items: center; gap: 4px;
#mh-sa .mh-link:hover color: #1e40af; text-decoration: underline;

/* Category colours (tags + left borders) */
#mh-sa .is-crisis border-left-color: #f59e0b;
#mh-sa .is-crisis .mh-tag background: #fef3c7; color: #92400e;

#mh-sa .is-ngo border-left-color: #10b981;
#mh-sa .is-ngo .mh-tag background: #d1fae5; color: #065f46;

#mh-sa .is-public border-left-color: #ef4444;
#mh-sa .is-public .mh-tag background: #fee2e2; color: #991b1b;

#mh-sa .is-substance border-left-color: #a855f7;
#mh-sa .is-substance .mh-tag background: #ede9fe; color: #6b21a8;

/* Public-sector info box */
#mh-sa .mh-public margin-top: 40px; padding: 20px; background: #eff6ff; border-left: 4px solid #3b82f6; border-radius: 8px;
#mh-sa .mh-public h3 font-size: 1.25rem; font-weight: 700; color: #1e40af; margin: 0 0 10px;
#mh-sa .mh-public p color: #374151; font-size: 0.95rem; margin: 0 0 8px;
#mh-sa .mh-public ul list-style: disc; margin: 10px 0 0 20px; color: #374151; font-size: 0.95rem; padding-left: 0;
#mh-sa .mh-public li margin: 4px 0;
#mh-sa .mh-public li span font-weight: 700;

Mental Health Support SA

Free and subsidised resources for South Africans without medical aid.

🚨 Crisis? Call 0800 567 567 (SADAG 24/7 Suicide Helpline).





(function ()
/* Keep variables function-scoped to avoid global collisions in CMS/LLM reruns */
var root = document.getElementById(‘mh-sa’);
if (!root) return;

var listEl = root.querySelector(‘#mh-list’);
var searchEl = root.querySelector(‘#mh-search’);
var filterBtns = root.querySelectorAll(‘.mh-filter-btn’);
var activeCategory = ‘All’;

/* Data */
var resources = [
// Crisis Lines
category: “Crisis Line”, name: “SADAG Suicide Crisis Helpline”, contact: “0800 567 567”, focus: “24/7 Crisis Intervention, Suicide Prevention”, province: “National”, link: “https://www.sadag.org/” ,
category: “Crisis Line”, name: “Adcock Ingram Depression & Anxiety Helpline”, contact: “0800 70 80 90”, focus: “24/7 Toll-Free Support Line”, province: “National”, link: “https://blog.opencounseling.com/hotlines-za/” ,
category: “Crisis Line”, name: “Lifeline South Africa”, contact: “0861 322 322”, focus: “24-hour Crisis Intervention and Counselling”, province: “National”, link: “https://blog.opencounseling.com/hotlines-za/” ,
category: “Crisis Line”, name: “Childline South Africa”, contact: “0800 055 555”, focus: “For children and adolescents in distress”, province: “National”, link: “https://blog.opencounseling.com/hotlines-za/” ,

// Substance Abuse
category: “Substance Abuse”, name: “Dept of Social Development Substance Abuse Line”, contact: “0800 12 13 14”, focus: “24/7 Rehabilitation and Helpline”, province: “National”, link: “https://blog.opencounseling.com/hotlines-za/” ,
category: “Substance Abuse”, name: “Alcoholics Anonymous SA (AA)”, contact: “0861 HELPAA (435 722)”, focus: “Fellowship support for alcohol issues”, province: “National”, link: “https://blog.opencounseling.com/hotlines-za/” ,
category: “Substance Abuse”, name: “Narcotics Anonymous SA (NA)”, contact: “0881 30 03 27”, focus: “Fellowship support for drug addiction”, province: “National”, link: “https://blog.opencounseling.com/hotlines-za/” ,

// NGO / Low-Cost
category: “NGO/Low-Cost”, name: “SADAG (Support Groups and Referrals)”, contact: “011 234 4837 (08:00–20:00)”, focus: “Largest mental health NGO; free support groups, referrals, national resources”, province: “National”, link: “https://www.sadag.org/” ,
category: “NGO/Low-Cost”, name: “The Counselling Hub”, contact: “021 462 3902 / 067 235 0019”, focus: “Donation-based counselling (suggested R50) and online options”, province: “Western Cape (Cape Town)”, link: “https://counsellinghub.org.za/” ,
category: “NGO/Low-Cost”, name: “HEAL SA”, contact: “WhatsApp via website/socials”, focus: “Culturally appropriate, free online services for Black women and youth”, province: “Gauteng (Online-first)”, link: “https://heal-sa.org.za/” ,
category: “NGO/Low-Cost”, name: “Cape Mental Health”, contact: “+27 21 447 9040”, focus: “Community-based services; assessment, treatment, rehabilitation”, province: “Western Cape”, link: “https://capementalhealth.co.za/” ,
category: “NGO/Low-Cost”, name: “Central Gauteng Mental Health”, contact: “+27 11 614 6855/6”, focus: “Frontline community services (Johannesburg/Gauteng)”, province: “Gauteng”, link: “https://www.safmh.org/help-desk/” ,
category: “NGO/Low-Cost”, name: “Durban and Coastal Mental Health”, contact: “+27 31 207 2717”, focus: “Frontline community services (Durban/KZN)”, province: “KwaZulu-Natal”, link: “https://www.safmh.org/help-desk/” ,
category: “NGO/Low-Cost”, name: “Southern Free State Mental Health”, contact: “+27 51 444 0212/3”, focus: “Frontline community services (Bloemfontein/Free State)”, province: “Free State”, link: “https://www.safmh.org/help-desk/” ,

// Public Hospitals (Referral)
category: “Public Hospital”, name: “Valkenberg Hospital”, contact: “021 826 5805”, focus: “Tertiary Psychiatric Hospital (Referral required). Cost income-based”, province: “Western Cape (Cape Town)”, link: “https://d7.westerncape.gov.za/service/mental-health-hospital-services” ,
category: “Public Hospital”, name: “Stikland Hospital”, contact: “021 940 4400”, focus: “Tertiary Psychiatric Hospital (Referral required). Cost income-based”, province: “Western Cape (Cape Town)”, link: “https://d7.westerncape.gov.za/service/mental-health-hospital-services” ,
category: “Public Hospital”, name: “Groote Schuur Hospital (Psychiatry)”, contact: “021 404 9111”, focus: “Psychiatric Outpatient/Inpatient services (Referral required)”, province: “Western Cape (Cape Town)”, link: “https://health.uct.ac.za/department-psychiatry/clinical-services/groote-schuur-hospital”
];

function categoryClass(cat)
if (cat === ‘Crisis Line’) return ‘is-crisis’;
if (cat === ‘NGO/Low-Cost’) return ‘is-ngo’;
if (cat === ‘Public Hospital’) return ‘is-public’;
if (cat === ‘Substance Abuse’) return ‘is-substance’;
return ”;

function render() ”).toLowerCase();

var filtered = resources.filter(function (r) r.category === activeCategory;
var okSearch = !term );

if (!filtered.length)
listEl.innerHTML = ‘

No resources found matching your search and filters.

‘;
return;

listEl.innerHTML = filtered.map(function (r)
var cClass = categoryClass(r.category);
return (

‘ +

‘ +

‘ + r.name + ‘

‘ +
‘ + r.category + ‘‘ +

‘ +

Focus: ‘ + r.focus + ‘

‘ +

‘ +

‘ +
‘ + r.contact + ‘

‘ +

‘ +
‘ + r.province + ‘

‘ +
(r.link ? ‘Visit website‘ : ”) +

‘ +


);
).join(”);

function setActive(button)
filterBtns.forEach(function (b) b.classList.remove(‘is-active’); b.setAttribute(‘aria-selected’, ‘false’); );
button.classList.add(‘is-active’);
button.setAttribute(‘aria-selected’, ‘true’);

/* Events */
filterBtns.forEach(function (btn)
btn.addEventListener(‘click’, function ()
activeCategory = btn.getAttribute(‘data-category’) );
);

if (searchEl)
searchEl.addEventListener(‘input’, function () render(); );

/* Initialise */
var first = root.querySelector(‘.mh-filter-btn[data-category=”All”]’) )();

Get your news on the go.

Download the latest IOL App for Android and IOS now. 



Source link

Leave comment

Your email address will not be published. Required fields are marked with *.