{"id":7,"date":"2024-03-18T13:19:52","date_gmt":"2024-03-18T13:19:52","guid":{"rendered":"https:\/\/life.com.mk\/?page_id=7"},"modified":"2026-02-17T13:54:09","modified_gmt":"2026-02-17T13:54:09","slug":"life-radio","status":"publish","type":"page","link":"https:\/\/life.com.mk\/","title":{"rendered":"Life Radio"},"content":{"rendered":"\t\t<div data-elementor-type=\"wp-page\" data-elementor-id=\"7\" class=\"elementor elementor-7\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8bc0d7d e-con-full e-flex e-con e-parent\" data-id=\"8bc0d7d\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t<div class=\"elementor-element elementor-element-f2e380c e-flex e-con-boxed e-con e-child\" data-id=\"f2e380c\" 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-a65f956 elementor-widget elementor-widget-spacer\" data-id=\"a65f956\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0bc6371 elementor-widget elementor-widget-image\" data-id=\"0bc6371\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img fetchpriority=\"high\" decoding=\"async\" width=\"300\" height=\"177\" src=\"https:\/\/life.com.mk\/wp-content\/uploads\/2024\/03\/LIFEradio-300x177.jpg\" class=\"attachment-medium size-medium wp-image-61\" alt=\"\" srcset=\"https:\/\/life.com.mk\/wp-content\/uploads\/2024\/03\/LIFEradio-300x177.jpg 300w, https:\/\/life.com.mk\/wp-content\/uploads\/2024\/03\/LIFEradio-1024x603.jpg 1024w, https:\/\/life.com.mk\/wp-content\/uploads\/2024\/03\/LIFEradio-768x452.jpg 768w, https:\/\/life.com.mk\/wp-content\/uploads\/2024\/03\/LIFEradio.jpg 1506w\" sizes=\"(max-width: 300px) 100vw, 300px\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1afd993 elementor-widget elementor-widget-image\" data-id=\"1afd993\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"image.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<img decoding=\"async\" width=\"300\" height=\"150\" src=\"https:\/\/life.com.mk\/wp-content\/uploads\/2026\/02\/ezgif-40ada3f6c2dd86e7.gif\" class=\"attachment-full size-full wp-image-1068\" alt=\"\" \/>\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6b0dd67 elementor-widget elementor-widget-heading\" data-id=\"6b0dd67\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">liferadio89.1@gmail.com<\/h2>\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<div class=\"elementor-element elementor-element-e9562d8 e-grid e-con-full e-con e-child\" data-id=\"e9562d8\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1ba5656 elementor-widget elementor-widget-heading\" data-id=\"1ba5656\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h5 class=\"elementor-heading-title elementor-size-default\">\u041b\u0438\u043d\u043a-1<\/h5>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-517f26a elementor-widget elementor-widget-html\" data-id=\"517f26a\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"life-radio-button-shoutcast\" data-widget_type=\"html.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<style>\r\n  .radio-button {\r\n    background-color: red;\r\n    color: white;\r\n    font-size: 1.0rem;\r\n    padding: 15px 30px;\r\n    border: none;\r\n    cursor: pointer;\r\n    border-radius: 8px;\r\n    transition: background-color 0.3s ease;\r\n    display: inline-block; \/* Ensures it doesn\u2019t take up the full width *\/\r\n    text-align: center;\r\n  }\r\n\r\n  .radio-button:hover {\r\n    background-color: darkred;\r\n  }\r\n<\/style>\r\n\r\n<button class=\"radio-button\" id=\"life-radio-button-shoutcast\" onclick=\"openRadioPlayer()\">\u0421\u043b\u0443\u0448\u0430\u0458 Life Radio<\/button>\r\n\r\n<script>\r\n  function openRadioPlayer() {\r\n    var playerWindow = window.open('https:\/\/stream.life.com.mk', '_blank', 'width=400,height=300,scrollbars=yes,resizable=yes');\r\n\r\n    if (!playerWindow) {\r\n      alert('Please allow pop-ups for this site to open the radio player.');\r\n    }\r\n  }\r\n<\/script>\r\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-9faf85a e-grid e-con-full e-con e-child\" data-id=\"9faf85a\" data-element_type=\"container\" data-e-type=\"container\" id=\"radio-life-com-mk\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3d35799 elementor-widget elementor-widget-heading\" data-id=\"3d35799\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h5 class=\"elementor-heading-title elementor-size-default\">\u041b\u0438\u043d\u043a-2<\/h5>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2eef4d1 elementor-widget elementor-widget-shortcode\" data-id=\"2eef4d1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><div class=\"radio_player\" data-player-type=\"shortcode\" data-data=\"eyJpZCI6MywidGl0bGUiOiJyYWRpby5saWZlLmNvbS5tayIsInN0aWNreSI6ZmFsc2UsInN0YXR1cyI6dHJ1ZSwic2tpbiI6InNraW4zIiwic3RhdGlvbnMiOlt7InRpdGxlIjoiTGlmZSBSYWRpbyIsInN0cmVhbSI6Imh0dHBzOlwvXC9yYWRpby5saWZlLmNvbS5tayIsInRodW1ibmFpbCI6IiIsInNvdXJjZV90eXBlIjoic3RyZWFtIn1dLCJwb3B1cF9pY29uIjpmYWxzZSwicGxheWxpc3RfaWNvbiI6ZmFsc2UsImhpc3RvcnlfaWNvbiI6ZmFsc2UsInZvbHVtZV9jb250cm9sIjp0cnVlLCJwbGF5ZXJfc3RhdHVzIjp0cnVlLCJzaG93X2FydGlzdCI6ZmFsc2UsInNob3dfYXJ0d29yayI6ZmFsc2UsInBsYXllcl90ZXh0IjoiTGlzdGVuIExpdmUiLCJ3aWR0aCI6MzAwLCJ3aWR0aF9tb2JpbGUiOjMwMCwiYm9yZGVyX3JhZGl1cyI6NSwiYmdfY29sb3IiOiIjZjRmN2Y5IiwiYmdfaW1hZ2UiOiJodHRwczpcL1wvbGlmZS5jb20ubWtcL3dwLWNvbnRlbnRcL3BsdWdpbnNcL3JhZGlvLXBsYXllclwvYXNzZXRzXC9pbWFnZXNcL3BsYXllci1iZy5wbmciLCJiZ190eXBlIjoiY29sb3IiLCJjb2xvcl90eXBlIjoic29saWQiLCJ0ZXh0X2NvbG9yIjoiIzVDNjM3RSIsImJveF9zaGFkb3ciOmZhbHNlLCJib3hfc2hhZG93X2giOjAsImJveF9zaGFkb3dfdiI6MCwiYm94X3NoYWRvd19ibHVyIjowLCJib3hfc2hhZG93X3NwcmVhZCI6MCwiYm94X3NoYWRvd19jb2xvciI6InJnYmEoMCwgMCwgMCwgLjUpIiwiYm94X3NoYWRvd190eXBlIjoiIiwid2lkdGhfZGV2aWNlIjoiZGVza3RvcCIsInNob3dfcHJvZ3Jlc3NiYXIiOmZhbHNlLCJzaG93X3RpdGxlIjp0cnVlfQ==\"><\/div><\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-542bc9a e-grid e-con-full e-con e-child\" data-id=\"542bc9a\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3e1d25e elementor-widget elementor-widget-heading\" data-id=\"3e1d25e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h5 class=\"elementor-heading-title elementor-size-default\">\u041b\u0438\u043d\u043a-3<\/h5>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-f328c9b elementor-widget elementor-widget-shortcode\" data-id=\"f328c9b\" data-element_type=\"widget\" data-e-type=\"widget\" id=\"stream-life-com-mk\" data-widget_type=\"shortcode.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-shortcode\"><div class=\"radio_player\" data-player-type=\"shortcode\" data-data=\"eyJpZCI6MSwidGl0bGUiOiJQbGF5ZXIgVGl0bGUiLCJzdGlja3kiOmZhbHNlLCJzdGF0dXMiOnRydWUsInNraW4iOiJza2luMyIsInN0YXRpb25zIjpbeyJ0aXRsZSI6IkxpZmUgUmFkaW8iLCJzdHJlYW0iOiJodHRwOlwvXC9saWZlcmFkaW8uZGRucy5uZXQ6ODAwMFwvc3RyZWFtIiwidGh1bWJuYWlsIjoiaHR0cHM6XC9cL2xpZmUuY29tLm1rXC93cC1jb250ZW50XC91cGxvYWRzXC8yMDI0XC8wM1wvTElGRXJhZGlvLmpwZyIsInNvdXJjZV90eXBlIjoic3RyZWFtIn1dLCJwb3B1cF9pY29uIjpmYWxzZSwicGxheWxpc3RfaWNvbiI6ZmFsc2UsImhpc3RvcnlfaWNvbiI6ZmFsc2UsInZvbHVtZV9jb250cm9sIjp0cnVlLCJwbGF5ZXJfc3RhdHVzIjp0cnVlLCJzaG93X2FydGlzdCI6ZmFsc2UsInNob3dfYXJ0d29yayI6ZmFsc2UsInBsYXllcl90ZXh0IjoiTGlzdGVuIExpdmUiLCJ3aWR0aCI6MzAwLCJ3aWR0aF9tb2JpbGUiOjMwMCwiYm9yZGVyX3JhZGl1cyI6NSwiYmdfY29sb3IiOiIjZjRmN2Y5IiwiYmdfaW1hZ2UiOiJodHRwczpcL1wvbGlmZS5jb20ubWtcL3dwLWNvbnRlbnRcL3BsdWdpbnNcL3JhZGlvLXBsYXllclwvYXNzZXRzXC9pbWFnZXNcL3BsYXllci1iZy5wbmciLCJiZ190eXBlIjoiY29sb3IiLCJjb2xvcl90eXBlIjoic29saWQiLCJ0ZXh0X2NvbG9yIjoiIzVDNjM3RSIsInNob3dfdGl0bGUiOmZhbHNlLCJib3hfc2hhZG93IjpmYWxzZSwiYm94X3NoYWRvd19oIjowLCJib3hfc2hhZG93X3YiOjAsImJveF9zaGFkb3dfYmx1ciI6MCwiYm94X3NoYWRvd19zcHJlYWQiOjAsImJveF9zaGFkb3dfY29sb3IiOiJyZ2JhKDAsIDAsIDAsIC41KSIsImJveF9zaGFkb3dfdHlwZSI6IiJ9\"><\/div><\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c8ae9cc e-grid e-con-full e-con e-child\" data-id=\"c8ae9cc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-4e39dec elementor-widget elementor-widget-html\" data-id=\"4e39dec\" 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<!DOCTYPE html>\n<html lang=\"en\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <title>Life Radio Player<\/title>\n    <style>\n        * {\n            margin: 0;\n            padding: 0;\n            box-sizing: border-box;\n        }\n\n        body {\n            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;\n            background: #f3f4f6;\n        }\n\n        .radio-player {\n            background: white;\n            border-radius: 16px;\n            padding: 24px;\n            max-width: 600px;\n            margin: 20px auto;\n            box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);\n            position: relative;\n            overflow: hidden;\n            border: 1px solid #e5e7eb;\n        }\n\n        @keyframes pulse {\n            0%, 100% { opacity: 0.3; }\n            50% { opacity: 0.6; }\n        }\n\n        .header-row {\n            display: flex;\n            justify-content: space-between;\n            align-items: center;\n            margin-bottom: 16px;\n        }\n\n        .popup-button {\n            background: #6b7280;\n            color: white;\n            border: none;\n            padding: 8px 16px;\n            border-radius: 8px;\n            font-size: 13px;\n            font-weight: 600;\n            cursor: pointer;\n            display: flex;\n            align-items: center;\n            gap: 6px;\n            transition: all 0.3s ease;\n            box-shadow: 0 2px 8px rgba(107, 114, 128, 0.3);\n        }\n\n        .popup-button:hover {\n            background: #4b5563;\n            transform: translateY(-1px);\n            box-shadow: 0 4px 12px rgba(107, 114, 128, 0.4);\n        }\n\n        .popup-button:active {\n            transform: translateY(0);\n        }\n\n        .popup-button svg {\n            width: 16px;\n            height: 16px;\n            fill: white;\n        }\n\n        .player-content {\n            position: relative;\n            z-index: 1;\n        }\n\n        .live-indicator {\n            display: inline-flex;\n            align-items: center;\n            gap: 8px;\n            background: rgba(255, 0, 0, 0.9);\n            padding: 6px 14px;\n            border-radius: 20px;\n            font-size: 12px;\n            font-weight: bold;\n            color: white;\n            margin-bottom: 16px;\n            text-transform: uppercase;\n            letter-spacing: 1px;\n        }\n\n        .live-dot {\n            width: 8px;\n            height: 8px;\n            background: white;\n            border-radius: 50%;\n            animation: blink 1.5s infinite;\n        }\n\n        @keyframes blink {\n            0%, 100% { opacity: 1; }\n            50% { opacity: 0.3; }\n        }\n\n        .track-info {\n            background: #f9fafb;\n            border: 1px solid #e5e7eb;\n            border-radius: 12px;\n            padding: 20px;\n            margin-bottom: 24px;\n            min-height: 80px;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n        }\n\n        .track-name {\n            font-size: 20px;\n            font-weight: 600;\n            color: #1f2937;\n            text-align: center;\n            line-height: 1.4;\n        }\n\n        .loading {\n            color: #6b7280;\n            font-style: italic;\n        }\n\n        .controls {\n            display: flex;\n            align-items: center;\n            gap: 20px;\n            margin-bottom: 20px;\n        }\n\n        .play-button {\n            width: 60px;\n            height: 60px;\n            border-radius: 50%;\n            background: #6b7280;\n            border: none;\n            cursor: pointer;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            transition: all 0.3s ease;\n            box-shadow: 0 4px 15px rgba(107, 114, 128, 0.3);\n            flex-shrink: 0;\n        }\n\n        .play-button:hover {\n            background: #4b5563;\n            transform: scale(1.05);\n            box-shadow: 0 6px 20px rgba(107, 114, 128, 0.4);\n        }\n\n        .play-button:active {\n            transform: scale(0.95);\n        }\n\n        .play-button svg {\n            width: 28px;\n            height: 28px;\n            fill: white;\n        }\n\n        .volume-control {\n            flex: 1;\n            display: flex;\n            align-items: center;\n            gap: 12px;\n        }\n\n        .volume-icon {\n            width: 24px;\n            height: 24px;\n            fill: #6b7280;\n            flex-shrink: 0;\n        }\n\n        .volume-slider {\n            flex: 1;\n            height: 6px;\n            border-radius: 3px;\n            background: #e5e7eb;\n            outline: none;\n            -webkit-appearance: none;\n            cursor: pointer;\n        }\n\n        .volume-slider::-webkit-slider-thumb {\n            -webkit-appearance: none;\n            appearance: none;\n            width: 18px;\n            height: 18px;\n            border-radius: 50%;\n            background: #6b7280;\n            cursor: pointer;\n            box-shadow: 0 2px 8px rgba(107, 114, 128, 0.3);\n            transition: all 0.2s ease;\n        }\n\n        .volume-slider::-webkit-slider-thumb:hover {\n            background: #4b5563;\n            transform: scale(1.2);\n        }\n\n        .volume-slider::-moz-range-thumb {\n            width: 18px;\n            height: 18px;\n            border-radius: 50%;\n            background: #6b7280;\n            cursor: pointer;\n            border: none;\n            box-shadow: 0 2px 8px rgba(107, 114, 128, 0.3);\n        }\n\n        .volume-value {\n            color: #6b7280;\n            font-size: 14px;\n            font-weight: 600;\n            min-width: 40px;\n            text-align: right;\n        }\n\n        .station-name {\n            text-align: center;\n            color: #6b7280;\n            font-size: 14px;\n            font-weight: 500;\n        }\n\n        @media (max-width: 480px) {\n            .radio-player {\n                padding: 20px;\n                margin: 10px;\n            }\n\n            .track-name {\n                font-size: 18px;\n            }\n\n            .play-button {\n                width: 50px;\n                height: 50px;\n            }\n\n            .play-button svg {\n                width: 24px;\n                height: 24px;\n            }\n        }\n    <\/style>\n<\/head>\n<body>\n    <div class=\"radio-player\">\n        <div class=\"player-content\">\n            <div class=\"header-row\">\n                <div class=\"live-indicator\">\n                    <div class=\"live-dot\"><\/div>\n                    <span>LIVE<\/span>\n                <\/div>\n                \n                <button class=\"popup-button\" id=\"popupButton\" aria-label=\"Open in new window\">\n                    <svg viewBox=\"0 0 24 24\">\n                        <path d=\"M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z\"\/>\n                    <\/svg>\n                    Open Stream\n                <\/button>\n            <\/div>\n\n            <div class=\"track-info\">\n                <div class=\"track-name loading\">Loading track info...<\/div>\n            <\/div>\n\n            <div class=\"controls\">\n                <button class=\"play-button\" id=\"playButton\" aria-label=\"Play\/Pause\">\n                    <svg id=\"playIcon\" viewBox=\"0 0 24 24\">\n                        <path d=\"M8 5v14l11-7z\"\/>\n                    <\/svg>\n                    <svg id=\"pauseIcon\" viewBox=\"0 0 24 24\" style=\"display: none;\">\n                        <path d=\"M6 4h4v16H6V4zm8 0h4v16h-4V4z\"\/>\n                    <\/svg>\n                <\/button>\n\n                <div class=\"volume-control\">\n                    <svg class=\"volume-icon\" viewBox=\"0 0 24 24\">\n                        <path d=\"M3 9v6h4l5 5V4L7 9H3zm13.5 3c0-1.77-1.02-3.29-2.5-4.03v8.05c1.48-.73 2.5-2.25 2.5-4.02zM14 3.23v2.06c2.89.86 5 3.54 5 6.71s-2.11 5.85-5 6.71v2.06c4.01-.91 7-4.49 7-8.77s-2.99-7.86-7-8.77z\"\/>\n                    <\/svg>\n                    <input type=\"range\" min=\"0\" max=\"100\" value=\"70\" class=\"volume-slider\" id=\"volumeSlider\" aria-label=\"Volume\">\n                    <div class=\"volume-value\" id=\"volumeValue\">70%<\/div>\n                <\/div>\n            <\/div>\n\n            <div class=\"station-name\">Life Radio 89.1 FM<\/div>\n        <\/div>\n    <\/div>\n\n    <script>\n        const audio = new Audio('https:\/\/radio.life.com.mk');\n        const playButton = document.getElementById('playButton');\n        const playIcon = document.getElementById('playIcon');\n        const pauseIcon = document.getElementById('pauseIcon');\n        const volumeSlider = document.getElementById('volumeSlider');\n        const volumeValue = document.getElementById('volumeValue');\n        const trackNameElement = document.querySelector('.track-name');\n        const popupButton = document.getElementById('popupButton');\n\n        let isPlaying = false;\n\n        \/\/ Set initial volume\n        audio.volume = 0.7;\n\n        \/\/ Popup button functionality\n        popupButton.addEventListener('click', () => {\n            window.open('https:\/\/radio.life.com.mk', '_blank', 'width=400,height=300,menubar=no,toolbar=no,location=no,status=no');\n        });\n\n        \/\/ Play\/Pause functionality\n        playButton.addEventListener('click', () => {\n            if (isPlaying) {\n                audio.pause();\n                playIcon.style.display = 'block';\n                pauseIcon.style.display = 'none';\n                isPlaying = false;\n            } else {\n                audio.play();\n                playIcon.style.display = 'none';\n                pauseIcon.style.display = 'block';\n                isPlaying = true;\n            }\n        });\n\n        \/\/ Volume control\n        volumeSlider.addEventListener('input', (e) => {\n            const volume = e.target.value \/ 100;\n            audio.volume = volume;\n            volumeValue.textContent = e.target.value + '%';\n        });\n\n        \/\/ Fetch current track info\n        async function updateTrackInfo() {\n            try {\n                const response = await fetch('https:\/\/stream.life.com.mk:8443\/status-json.xsl');\n                const data = await response.json();\n                \n                if (data.icestats && data.icestats.source) {\n                    const source = Array.isArray(data.icestats.source) ? data.icestats.source[0] : data.icestats.source;\n                    const title = source.title || source.server_name || 'Life Radio 89.1 FM';\n                    trackNameElement.textContent = title;\n                    trackNameElement.classList.remove('loading');\n                }\n            } catch (error) {\n                console.log('Could not fetch track info');\n                trackNameElement.textContent = 'Life Radio 89.1 FM - \u0421\u043b\u0443\u0448\u0430\u0458 \u041e\u043d\u043b\u0430\u0458\u043d';\n                trackNameElement.classList.remove('loading');\n            }\n        }\n\n        \/\/ Update track info every 10 seconds\n        updateTrackInfo();\n        setInterval(updateTrackInfo, 10000);\n\n        \/\/ Handle audio errors\n        audio.addEventListener('error', () => {\n            console.error('Error loading audio stream');\n            if (isPlaying) {\n                playIcon.style.display = 'block';\n                pauseIcon.style.display = 'none';\n                isPlaying = false;\n            }\n        });\n    <\/script>\n<\/body>\n<\/html>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-9fc40cb e-grid e-con-full e-con e-child\" data-id=\"9fc40cb\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e1a99d3 elementor-widget__width-inherit elementor-widget elementor-widget-html\" data-id=\"e1a99d3\" 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<!DOCTYPE html>\n<html lang=\"mk\">\n<head>\n    <meta charset=\"UTF-8\">\n    <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\n    <style>\n        .life-history-widget {\n            width: 100%;\n            font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;\n        }\n\n        .life-history-container {\n            background: rgba(255, 255, 255, 0.08);\n            backdrop-filter: blur(12px);\n            border-radius: 16px;\n            padding: 24px;\n            box-shadow: 0 4px 24px rgba(0, 0, 0, 0.15);\n            border: 1px solid rgba(255, 255, 255, 0.12);\n        }\n\n        .life-history-header {\n            display: flex;\n            align-items: center;\n            gap: 12px;\n            margin-bottom: 24px;\n            padding-bottom: 16px;\n            border-bottom: 1px solid rgba(255, 255, 255, 0.15);\n        }\n\n        .life-header-icon {\n            font-size: 24px;\n        }\n\n        .life-header-title {\n            color: #fff;\n            font-size: 1.4em;\n            font-weight: 600;\n            margin: 0;\n            text-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);\n        }\n\n        .life-live-badge {\n            margin-left: auto;\n            display: flex;\n            align-items: center;\n            gap: 6px;\n            background: rgba(255, 51, 102, 0.2);\n            padding: 4px 12px;\n            border-radius: 20px;\n            border: 1px solid rgba(255, 51, 102, 0.4);\n        }\n\n        .life-live-dot {\n            width: 8px;\n            height: 8px;\n            background: #ff3366;\n            border-radius: 50%;\n            animation: life-pulse 2s ease-in-out infinite;\n        }\n\n        @keyframes life-pulse {\n            0%, 100% {\n                opacity: 1;\n                box-shadow: 0 0 0 0 rgba(255, 51, 102, 0.7);\n            }\n            50% {\n                opacity: 0.7;\n                box-shadow: 0 0 0 4px rgba(255, 51, 102, 0);\n            }\n        }\n\n        .life-live-text {\n            color: #ff3366;\n            font-weight: 600;\n            font-size: 0.75em;\n            text-transform: uppercase;\n            letter-spacing: 0.5px;\n        }\n\n        .life-song-list {\n            display: flex;\n            flex-direction: column;\n            gap: 12px;\n        }\n\n        .life-song-item {\n            display: flex;\n            align-items: center;\n            gap: 16px;\n            padding: 14px;\n            background: rgba(255, 255, 255, 0.05);\n            border-radius: 12px;\n            transition: all 0.3s ease;\n            border: 1px solid rgba(255, 255, 255, 0.08);\n            opacity: 0;\n            animation: life-fadeIn 0.5s ease forwards;\n        }\n\n        .life-song-item:hover {\n            background: rgba(255, 255, 255, 0.1);\n            transform: translateX(4px);\n            border-color: rgba(255, 255, 255, 0.15);\n        }\n\n        @keyframes life-fadeIn {\n            to {\n                opacity: 1;\n            }\n        }\n\n        .life-song-item:nth-child(1) { animation-delay: 0.1s; }\n        .life-song-item:nth-child(2) { animation-delay: 0.2s; }\n        .life-song-item:nth-child(3) { animation-delay: 0.3s; }\n        .life-song-item:nth-child(4) { animation-delay: 0.4s; }\n        .life-song-item:nth-child(5) { animation-delay: 0.5s; }\n\n        .life-song-artwork {\n            width: 56px;\n            height: 56px;\n            border-radius: 8px;\n            object-fit: cover;\n            background: rgba(255, 255, 255, 0.1);\n            box-shadow: 0 2px 8px rgba(0, 0, 0, 0.2);\n            flex-shrink: 0;\n        }\n\n        .life-song-info {\n            flex-grow: 1;\n            min-width: 0;\n        }\n\n        .life-song-title {\n            color: #fff;\n            font-weight: 600;\n            font-size: 1em;\n            margin: 0 0 4px 0;\n            white-space: nowrap;\n            overflow: hidden;\n            text-overflow: ellipsis;\n        }\n\n        .life-song-artist {\n            color: rgba(255, 255, 255, 0.7);\n            font-size: 0.9em;\n            margin: 0;\n            white-space: nowrap;\n            overflow: hidden;\n            text-overflow: ellipsis;\n        }\n\n        .life-song-time {\n            color: rgba(255, 255, 255, 0.5);\n            font-size: 0.85em;\n            font-weight: 500;\n            flex-shrink: 0;\n            text-align: right;\n        }\n\n        .life-expand-btn {\n            width: 100%;\n            margin-top: 16px;\n            padding: 12px 24px;\n            background: rgba(255, 255, 255, 0.1);\n            border: 1px solid rgba(255, 255, 255, 0.2);\n            border-radius: 10px;\n            color: #fff;\n            font-weight: 600;\n            font-size: 0.95em;\n            cursor: pointer;\n            transition: all 0.3s ease;\n            display: flex;\n            align-items: center;\n            justify-content: center;\n            gap: 8px;\n        }\n\n        .life-expand-btn:hover {\n            background: rgba(255, 255, 255, 0.15);\n            border-color: rgba(255, 255, 255, 0.3);\n            transform: translateY(-2px);\n            box-shadow: 0 4px 12px rgba(0, 0, 0, 0.2);\n        }\n\n        .life-expand-btn:active {\n            transform: translateY(0);\n        }\n\n        .life-expand-icon {\n            transition: transform 0.3s ease;\n        }\n\n        .life-expand-btn.expanded .life-expand-icon {\n            transform: rotate(180deg);\n        }\n\n        .life-loading {\n            text-align: center;\n            padding: 32px;\n            color: rgba(255, 255, 255, 0.6);\n            font-size: 0.95em;\n        }\n\n        .life-error {\n            text-align: center;\n            padding: 32px;\n            color: rgba(255, 100, 100, 0.8);\n            font-size: 0.95em;\n        }\n\n        @media (max-width: 768px) {\n            .life-history-container {\n                padding: 16px;\n            }\n\n            .life-header-title {\n                font-size: 1.2em;\n            }\n\n            .life-song-artwork {\n                width: 48px;\n                height: 48px;\n            }\n\n            .life-song-item {\n                gap: 12px;\n                padding: 12px;\n            }\n\n            .life-song-time {\n                font-size: 0.75em;\n            }\n        }\n    <\/style>\n<\/head>\n<body>\n    <div class=\"life-history-widget\">\n        <div class=\"life-history-container\">\n            <div class=\"life-history-header\">\n                <span class=\"life-header-icon\">\ud83c\udfb5<\/span>\n                <h3 class=\"life-header-title\">\u0418\u0441\u0442\u043e\u0440\u0438\u0458\u0430 \u043d\u0430 \u043f\u0435\u0441\u043d\u0438<\/h3>\n                <div class=\"life-live-badge\">\n                    <div class=\"life-live-dot\"><\/div>\n                    <span class=\"life-live-text\">Live<\/span>\n                <\/div>\n            <\/div>\n\n            <div id=\"songList\" class=\"life-song-list\">\n                <div class=\"life-loading\">\u0421\u0435 \u0432\u0447\u0438\u0442\u0443\u0432\u0430...<\/div>\n            <\/div>\n\n            <button id=\"expandBtn\" class=\"life-expand-btn\" style=\"display: none;\">\n                <span id=\"btnText\">\u041f\u0440\u0438\u043a\u0430\u0436\u0438 \u043f\u043e\u0432\u0435\u045c\u0435<\/span>\n                <span class=\"life-expand-icon\">\u25bc<\/span>\n            <\/button>\n        <\/div>\n    <\/div>\n\n    <script>\n        let allSongs = [];\n        let isExpanded = false;\n        const initialCount = 5;\n\n        async function fetchSongHistory() {\n            try {\n                const response = await fetch('https:\/\/radio.life.com.mk:10443\/api\/nowplaying\/life_radio');\n                const data = await response.json();\n                \n                \/\/ Get song history from the API response\n                allSongs = data.song_history || [];\n                \n                renderSongs();\n            } catch (error) {\n                document.getElementById('songList').innerHTML = \n                    '<div class=\"life-error\">\u0413\u0440\u0435\u0448\u043a\u0430 \u043f\u0440\u0438 \u0432\u0447\u0438\u0442\u0443\u0432\u0430\u045a\u0435 \u043d\u0430 \u043f\u0435\u0441\u043d\u0438\u0442\u0435. \u0412\u0435 \u043c\u043e\u043b\u0438\u043c\u0435 \u043e\u0431\u0438\u0434\u0435\u0442\u0435 \u0441\u0435 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e.<\/div>';\n            }\n        }\n\n        function formatTime(timestamp) {\n            const date = new Date(timestamp * 1000);\n            const now = new Date();\n            const diff = Math.floor((now - date) \/ 1000);\n\n            if (diff < 60) return '\u041f\u0440\u0435\u0434 \u043c\u0430\u043b\u043a\u0443';\n            if (diff < 3600) return `\u041f\u0440\u0435\u0434 ${Math.floor(diff \/ 60)} \u043c\u0438\u043d`;\n            if (diff < 86400) return `\u041f\u0440\u0435\u0434 ${Math.floor(diff \/ 3600)} \u0447`;\n            \n            return date.toLocaleTimeString('mk-MK', { hour: '2-digit', minute: '2-digit' });\n        }\n\n        function isValidSong(song) {\n            const title = song.song?.title || '';\n            const artist = song.song?.artist || '';\n            \n            \/\/ Skip if artist is unknown\/empty and title is \"Not Available Right Now\" or less than 4 characters\n            const isUnknownArtist = !artist.trim() || \n                                   artist.toLowerCase() === 'unknown' || \n                                   artist.toLowerCase() === 'unknown artist';\n            \n            if (isUnknownArtist) {\n                if (title === 'Not Available Right Now' || title.trim().length < 4) {\n                    return false;\n                }\n            }\n            \n            return true;\n        }\n\n        function renderSongs() {\n            const songList = document.getElementById('songList');\n            const expandBtn = document.getElementById('expandBtn');\n            const btnText = document.getElementById('btnText');\n\n            \/\/ Filter out invalid songs\n            const validSongs = allSongs.filter(isValidSong);\n\n            if (validSongs.length === 0) {\n                songList.innerHTML = '<div class=\"life-loading\">\u041d\u0435\u043c\u0430 \u0434\u043e\u0441\u0442\u0430\u043f\u043d\u0438 \u043f\u043e\u0434\u0430\u0442\u043e\u0446\u0438<\/div>';\n                expandBtn.style.display = 'none';\n                return;\n            }\n\n            const songsToShow = isExpanded ? validSongs : validSongs.slice(0, initialCount);\n            \n            songList.innerHTML = songsToShow.map(song => {\n                const artwork = song.song?.art || 'https:\/\/via.placeholder.com\/56x56?text=\ud83c\udfb5';\n                const title = song.song?.title || 'Unknown Title';\n                const artist = song.song?.artist || 'Unknown Artist';\n                const time = formatTime(song.played_at);\n\n                return `\n                    <div class=\"life-song-item\">\n                        <img decoding=\"async\" src=\"${artwork}\" alt=\"${title}\" class=\"life-song-artwork\" onerror=\"this.src='https:\/\/via.placeholder.com\/56x56?text=\ud83c\udfb5'\">\n                        <div class=\"life-song-info\">\n                            <p class=\"life-song-title\">${title}<\/p>\n                            <p class=\"life-song-artist\">${artist}<\/p>\n                        <\/div>\n                        <div class=\"life-song-time\">${time}<\/div>\n                    <\/div>\n                `;\n            }).join('');\n\n            \/\/ Show\/hide expand button\n            if (validSongs.length > initialCount) {\n                expandBtn.style.display = 'flex';\n                btnText.textContent = isExpanded ? '\u041f\u0440\u0438\u043a\u0430\u0436\u0438 \u043f\u043e\u043c\u0430\u043b\u043a\u0443' : '\u041f\u0440\u0438\u043a\u0430\u0436\u0438 \u043f\u043e\u0432\u0435\u045c\u0435';\n                expandBtn.classList.toggle('expanded', isExpanded);\n            } else {\n                expandBtn.style.display = 'none';\n            }\n        }\n\n        document.getElementById('expandBtn').addEventListener('click', function() {\n            isExpanded = !isExpanded;\n            renderSongs();\n        });\n\n        \/\/ Initial fetch\n        fetchSongHistory();\n\n        \/\/ Refresh every 30 seconds\n        setInterval(fetchSongHistory, 30000);\n    <\/script>\n<\/body>\n<\/html>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-5035724 e-grid e-con-full e-con e-child\" data-id=\"5035724\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-9d8441f elementor-widget elementor-widget-spacer\" data-id=\"9d8441f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"spacer.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t\t\t<div class=\"elementor-spacer\">\n\t\t\t<div class=\"elementor-spacer-inner\"><\/div>\n\t\t<\/div>\n\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-0b711dc e-grid e-con-full elementor-hidden-desktop e-con e-child\" data-id=\"0b711dc\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-d220e87 elementor-widget elementor-widget-heading\" data-id=\"d220e87\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h5 class=\"elementor-heading-title elementor-size-default\">e-mail: liferadio89.1@gmail.com<\/h5>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e9f8e26 elementor-widget elementor-widget-heading\" data-id=\"e9f8e26\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h5 class=\"elementor-heading-title elementor-size-default\">\u041c\u0430\u0440\u043a\u0435\u0442\u0438\u043d\u0433: +389 70 303 960<\/h5>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-51aebc4 e-grid e-con-full elementor-hidden-tablet elementor-hidden-mobile e-con e-child\" data-id=\"51aebc4\" data-element_type=\"container\" data-e-type=\"container\" data-settings=\"{&quot;background_background&quot;:&quot;classic&quot;}\">\n\t\t\t\t<div class=\"elementor-element elementor-element-b7799de elementor-widget elementor-widget-heading\" data-id=\"b7799de\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h5 class=\"elementor-heading-title elementor-size-default\">e-mail: liferadio89.1@gmail.com<\/h5>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-4c29a5a elementor-widget elementor-widget-heading\" data-id=\"4c29a5a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t<div class=\"elementor-widget-container\">\n\t\t\t\t\t<h5 class=\"elementor-heading-title elementor-size-default\">\u041c\u0430\u0440\u043a\u0435\u0442\u0438\u043d\u0433: +389 70 303 960<\/h5>\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\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>liferadio89.1@gmail.com \u041b\u0438\u043d\u043a-1 \u0421\u043b\u0443\u0448\u0430\u0458 Life Radio \u041b\u0438\u043d\u043a-2 \u041b\u0438\u043d\u043a-3 Life Radio Player LIVE Open Stream Loading track info&#8230; 70% Life Radio 89.1 FM \ud83c\udfb5 \u0418\u0441\u0442\u043e\u0440\u0438\u0458\u0430 \u043d\u0430 \u043f\u0435\u0441\u043d\u0438 Live \u0421\u0435 \u0432\u0447\u0438\u0442\u0443\u0432\u0430&#8230; \u041f\u0440\u0438\u043a\u0430\u0436\u0438 \u043f\u043e\u0432\u0435\u045c\u0435 \u25bc e-mail: liferadio89.1@gmail.com \u041c\u0430\u0440\u043a\u0435\u0442\u0438\u043d\u0433: +389 70 303 960 e-mail: liferadio89.1@gmail.com \u041c\u0430\u0440\u043a\u0435\u0442\u0438\u043d\u0433: +389 70 303 960<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_canvas","meta":{"footnotes":""},"class_list":["post-7","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/life.com.mk\/index.php\/wp-json\/wp\/v2\/pages\/7","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/life.com.mk\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/life.com.mk\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/life.com.mk\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/life.com.mk\/index.php\/wp-json\/wp\/v2\/comments?post=7"}],"version-history":[{"count":400,"href":"https:\/\/life.com.mk\/index.php\/wp-json\/wp\/v2\/pages\/7\/revisions"}],"predecessor-version":[{"id":1071,"href":"https:\/\/life.com.mk\/index.php\/wp-json\/wp\/v2\/pages\/7\/revisions\/1071"}],"wp:attachment":[{"href":"https:\/\/life.com.mk\/index.php\/wp-json\/wp\/v2\/media?parent=7"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}