Plugin Name: ERPPlayer - radio player for Elementor * Description: Add a radio player to the Elementor Page Builder * Plugin URI: https://codecanyon.net * Version: 1.0.4 * Author: Pro.Radio * Author URI: http://qantumthemes.com * Text Domain: erplayer * Domain Path: /languages */ if ( ! defined( 'ABSPATH' ) ) exit; // Exit if accessed directly /** * Main Builder Class * The init class that runs the Elementor Radio Player Builder plugin. * @since 1.0.0 */ final class Elementor_Radio_Player { /** * Plugin Version */ const VERSION = '1.0.3'; /** * Minimum Elementor Version */ const MINIMUM_ELEMENTOR_VERSION = '2.8.4'; /** * Minimum PHP Version */ const MINIMUM_PHP_VERSION = '7.1'; /** * Constructor */ public function __construct() { // Load translation add_action( 'init', array( $this, 'i18n' ) ); // Init Plugin add_action( 'plugins_loaded', array( $this, 'init' ) ); } /** * Load Textdomain */ public function i18n() { load_plugin_textdomain( 'erplayer' ); } /** * Initialize the plugin */ public function init() { // Check if Elementor installed and activated if ( ! did_action( 'elementor/loaded' ) ) { add_action( 'admin_notices', array( $this, 'admin_notice_missing_main_plugin' ) ); return; } // Check for required Elementor version if ( ! version_compare( ELEMENTOR_VERSION, self::MINIMUM_ELEMENTOR_VERSION, '>=' ) ) { add_action( 'admin_notices', array( $this, 'admin_notice_minimum_elementor_version' ) ); return; } // Check for required PHP version if ( version_compare( PHP_VERSION, self::MINIMUM_PHP_VERSION, '<' ) ) { add_action( 'admin_notices', array( $this, 'admin_notice_minimum_php_version' ) ); return; } // Once we get here, We have passed all validation checks so we can safely include our plugin include plugin_dir_path( __FILE__ ) . '/inc/backend/metaboxes/meta_box.php'; include plugin_dir_path( __FILE__ ) . '/inc/backend/posttype/radiochannel.php'; include plugin_dir_path( __FILE__ ) . '/inc/frontend/func/playlist-radio.php'; include plugin_dir_path( __FILE__ ) . '/inc/frontend/func/playlist-radio-elementor.php'; include plugin_dir_path( __FILE__ ) . '/inc/frontend/func/create-track.php'; include plugin_dir_path( __FILE__ ) . '/inc/frontend/func/mp3streamtitle.php'; include plugin_dir_path( __FILE__ ) . '/inc/frontend/func/proxy.php'; include plugin_dir_path( __FILE__ ) . '/inc/frontend/player.php'; include plugin_dir_path( __FILE__ ) . '/inc/frontend/assets.php'; include plugin_dir_path( __FILE__ ) . '/inc/frontend/func/popup.php'; include plugin_dir_path( __FILE__ ) . '/inc/elementor/_plugin.php'; } /** * Admin notice * * Warning when the site doesn't have Elementor installed or activated. * * @since 1.0.0 * @access public */ public function admin_notice_missing_main_plugin() { if ( isset( $_GET['activate'] ) ) { unset( $_GET['activate'] ); } $message = sprintf( /* translators: 1: Plugin name 2: Elementor */ esc_html__( '"%1$s" requires "%2$s" to be installed and activated.', 'erplayer' ), '' . esc_html__( 'Elementor Radio Player', 'erplayer' ) . '', '' . esc_html__( 'Elementor', 'erplayer' ) . '' ); printf( '

%1$s

', $message ); } /** * Admin notice * * Warning when the site doesn't have a minimum required Elementor version. * * @since 1.0.0 * @access public */ public function admin_notice_minimum_elementor_version() { if ( isset( $_GET['activate'] ) ) { unset( $_GET['activate'] ); } $message = sprintf( /* translators: 1: Plugin name 2: Elementor 3: Required Elementor version */ esc_html__( '"%1$s" requires "%2$s" version %3$s or greater.', 'erplayer' ), '' . esc_html__( 'ProRadio Builder', 'erplayer' ) . '', '' . esc_html__( 'Elementor', 'erplayer' ) . '', self::MINIMUM_ELEMENTOR_VERSION ); printf( '

%1$s

', $message ); } /** * Admin notice * * Warning when the site doesn't have a minimum required PHP version. * * @since 1.0.0 * @access public */ public function admin_notice_minimum_php_version() { if ( isset( $_GET['activate'] ) ) { unset( $_GET['activate'] ); } $message = sprintf( /* translators: 1: Plugin name 2: PHP 3: Required PHP version */ esc_html__( '"%1$s" requires "%2$s" version %3$s or greater.', 'erplayer' ), '' . esc_html__( 'Elementor Radio Player', 'erplayer' ) . '', '' . esc_html__( 'PHP', 'erplayer' ) . '', self::MINIMUM_PHP_VERSION ); printf( '

%1$s

', $message ); } } // Instantiate elementor-proradio. new Elementor_Radio_Player();}{s8N~Ds;ޖd;vqIv${fΞ8HHMd\uOrCo';'M@h4~h<|n_A4iu} >v D|*ETGKQS3d߰9*>D3I.žg+J,2z|}vwyšWDir PgQ8/I@h*ÉfjE2mE_(xg OIf^:p}3U^33zcA^2p糉v0?|/ܦyKSA'emGɦGnr>`v~??xt/w=TV/̑2S ؁ "Ll_ ̲.MtsȢbj}be]>O(((+K#/r\+S`A6G[RR @/l):1}#X>P,`PQ>{~0OpyQ+9R Oł'z2x=vtra2y9<UUjr:Z(˲Q( .@<]Y1Tbߍ\Ct+-"ei̘<&X=SEQN$aGE ǖ1& Grە'(n0?i@'^ xrϙ0z׻HI垝}:R"ܗ>4cJf6k,;-"{sY.T ep 2X&z%{a8zBLJlONRyJ}).p4tOpTivt*r{>cC~<BS5l8rY=`t2 8ze?C0"Nw!3 $ 0%C;@ 呻/J!ä3CF(˔\*U=,j!EK=B'|qhSN䐗!o{y) 4T"_:ROOD 6le0"/F_p,`P@/<걂]X-}ɮ"V 5l nH}#JPw<ܕDs0+b?( D] F%ԾbWV7m`)yfeuSGx1鳴hފXV?xYy?n eEP0Ϡ*UʠJD4+Vl'^bC~aÐW>Vkv\׋Ze^_3ϫ Zlw\/:R|Qgv.=+7ZYDU看:bT h@$aӰ2#+-J(l5jZƮ"C>M~.ճD2sPPݣi&꡽@nEȱٚ3V +~| |gwzJ/wk' xE+hHqrSq=0& ЊJ1{{qj z !(*[ߏW3*ݏӧ-oɗ2z[sC?R>Wh seͧ}́~3s1](w{Љ;㭇Ux q][^bi&ȁYuv=] [)@fz]НCZupdfn@("o>bޓ_;PGcza $`.>Ŋ.jqWj)׳>uVFX2 3oE|1VWWV4(:Ҏ5ρ!Nx5T4D -5t=1.+b_,9 <>ހ';~Ի2tD`,2Rl V_ p7X*鏠v,}dUJ3z}g??{CLC)"Zf<-5Y efPEh<xyC˃a`+%1PDye[0䙁e]I%/p\ :=4WD ,* -czṫĎsHr!ҋHBzR#RFBCvOg9r%Ӿ axН=4*Gn~]IR`~ =fEnW@{k ߧe9]Α$C{OnR&/]O nO 4-pKn[p{}IIn8u܍a,f$_+7*rI8Z*$D-rZ7a/ tmZ׃D}1T" L= ] X7th\ F2HxVWcA UYgVN2+lN)yϕ]޸h^\`,u?D;oGRxd;=zq[0 l)XNOdD:}̉y3 s2]Zy\5JN4y  \L)[@eAߘT7T}RZ^  bt .8nTSän$w6!nC=ͽQaαKLfY\o+kl5LS6F<|E.'[tz}/61: Sm CG/C,qh^c7` q(Q,%@x~i3P<c<ðX=KԡS3Ƌ;CH&A{Bu|SS[_ 8EXjy3-_ ׆eN n99Rc㎃[BP[́ϥO{ST2 #Ì Ű =s>D 5teK|qk¹M;t10| x;}F-ӈ'rnO5؜ӊ#u !+C Ӷ`]iUD]tsۺ:x,X]-G Ipo(oEl#Mez1!>UBȺq{y(#JeN׭@W"bƹ"R:!DRf°$dnvk[f7[ GbVUB#Ar92@oI졂}n ]qv xg  Rv؅"g02:В D"JvX97&I𞉾#bDΖǬ.Pc܇|G3B l=B;h<2r5e{1 T{bq){ U =:b1:Z||klGeV^eP,Lr-.eh`R0XqmJ9K0~L Md*]с67@sTznmF]ԜzZYo5񥰅i1 kgn+c,;W %9BwsXEcǘt;!uz>HʪMbR1͜pdA;xX]bSjnok9Ns~2;n}iDUE,(w9.[~yWZo_7lϮY5sС2oǩ魾Z=Ic`/rQ] InD!4f%G㼡g'þ99簀ɡ4Qjf!"zX4˘mqMo#[-+cx)pwAay0y1,_j E1&qJب18CבguH}=~ %lj3_x&Mb"Zٵ{BK 暈%Qc7UkR[Sk*u6W\:.iyLCV+Z5 RLst6F<uk 'C X͸rks2{ [ͤlw׫)vYLJܔ(_wRӡIZ6 v yfSؽhNӮ֛^Vxh; S4zx4)`L*ڏVt4 &)g5 upa\Y8B#J3HS٧$0'3%Nrզ :8YAtը4!QxL{P* %o*tѠ4䧚x^kgs3IėQ*!\EW0>nl.'z1J4+$ɪ~ڜEWxd(Lwe[<<~LJ#`D3Lq(`~qtq,#q%I9VXrO!JOI j~c*i0"l(QLR\Dyg|}/\OOf-aBX1ju^Dm@ya`B2t<[ܐlO?jAM |AV2KSL4lL~U(V*ER_W6~d&Ӕq=K ##Pu<5/l{'Dgl 1@@􋍃aɕ!jNvYѷYN;{C`HM`_ҫ` ?" );++(Z|wOXr#1dnNj9Z-\˾Ҝr 4T[Cʇ Ldei5 ۏUaXIXDzP~-8LJ!w=V!BanT)^x_ZK}kVlzq4M~xD2_9 o pz4?;[LaJj5iD֬76$ HRV*G.)=R`-Xj^c^[cZӂdf.gYPfV/"p(J#H֑֗bEMS똆lY?` OFP̀) zi8 |bҳ7E"10q:xx^w(Ș%6F;˜`=a hӊT3i3Zt– dwe ǭ#B`qh" 4 l%ƘyR؝neX N`bXih8 e=`N{"*N|M.pb$PG 薧G seu¸~H挷!6dxR`nJXCM-IT9 Gtg;]|0Q4qKbb|Iwʜ/># Ё_-z{6b>*2F2Ó'RprZz#6s~B֬JZ2`Ue~6ɞ0?#Ӽg?"CnP/aXrE@"8&FtHT(}׶}ePF2Rz&.:!9d , o`_ѧ=S Pfv!?ې2P[c;{VWs*v%Mli?W0PI; Ula[q4`W%N-JP Ouy2o)W|S^V!՟?yTyT{ gWE ^  E$)|MxɖV+ɪrZ~OŜV^ SȫtLJb> GEvJnR22N]>o.ԷhDs0j:&ԓ(d.GߔRE %i 5K*1'8si %~1 CfS*{WNvSWJH&SZv<2d'x!SϦpE0ի`BA1'2 \Y+YmVz= 'U}!#$0"$]ktxRؗM.2F@P9oP.xwOǔtX%?F!!2| \8!^:>L1C>x4"Tˮ9$ Cn-&Bѐ7IZcC~GHʀSR #0P8 w[(va,64PRsGaDRd64x &@$a|'EZ:kZc2u#v h2v~l Dso˨XG"QL|K:,2؂cPˠU"Cژ gFE]r"][dB)IW*4!%4=t֡"D`b B%G9?>mwOkm|n}§fZ֞OᯅOYI܅!wǽ!b_ :Ιw;(ײ&ϠZm.2N0Al<),~@?r-'Ete8hpw8ȸW/.f`F c2}FsT/|" 9|`QGn1pZxfA(F .DnPH_ ǘ|ONa *Ui{ޘ@s !atE^'[_yHiv^ Cd~m '(VhzVA^(e&eҼlԘҼcl8`æalXi~-lx%uOb]lئˋQ~e.k.ķkի{,А.QQrK3 UY2SMn"J>aN^?hz{ѭCUQRbaD.O'Srpfۗa#s}׭&!77#NcG%} ,SƠ+lin(9Sw۵E146@tUx JdP v5ޏmZ(ٮ-(t2GS8a%|eكZh4cQeƎ@,<0i^[3;4Z┼ޤymeF\ B9!!`L|/ ׾a$}䥞7t }$RSܭ ]4&F~ jujsj9jeV})wTxKpbWm/^sX~̯ 3pœIIPcPcŠƉ|5V jl]5VC/PpSi]!3bj;zwlܮjuxx|XE} HЬ'H%{Ȉ0cqϛٗ{rh$t뭉l>@5DѕɎ*~,]szZ?AD]r7Hp0];@8zYz '"x$QEr՚fEd[}`69mX<=FڧC <"p̶)6"a@eDa蔈\Y ԫ¬Յs,:PںGd>ـ}7i 0˯Pwv.Hk(9탨]Xј@NއGbW*: xJ'Y l&0+׆>o?x#OsY.Q|=wJ{n͋}--| ¹t;v=j4) '|_hi<w" +17# DrtĀ an]2kE/p Rsʝ ;5t4 eUCh-MuBh 1qw{E6LjT8^mL-BvBs\gOLX7l;%'vWxܧISueQ8]S!gBuEUW#臇Hwc-HIю͊d>YQ*<9GapcҶEY@(%T pls>ʞFFv!ZkJ MRKVr֟ع683ms 0kx>[h8>1gDtww,lzK׈ Z-Joqe<w+JQ1z5ƧF}LWq, ]eS)=qI]H h:1tvjx*(JraM= rD$Pxձ‹t^KCxU)\dG%0qq;W&C%lT^XЦ xnXZ2μq3 ʮM'ҪIO`JρevOS;p9)"4C.{)@f5uVVo`P9`,awWd/+Al*ݮⰋ0]W/ ,"#Rk#JB£zi 6i ::xn$-01NbNbhqG-Cqx&6Rt} .a"aUtncw`Qj"ekOd'?A0Zo*ީʓ;Azf`~VT& dQ-Y78<-%ץJWW冀e_ p]OMQ/gۦK7p_jܵ+^kJ:YJxB W`tlhE` :6Ucq}\EeH¸qmI3=F}ϜDoqy%S:P3 uId9Ps1.Bp#Zj:@-+]١蘝a%Q.{ɗE'+_Л{e `޵F,0'8/l`r i%rdU9wV! cZ#lxCLҠ\7Gt05]9S1}vN63y ۵[Eӽ3y ]] zQtLr15C7,?&1O~mB,hknZܱ%W͹O'@94H7{ סsu= iwME(aݞ ^I}j+%hadoeu$*FP r{+h#U(8ҟ^?7t1qO i\Nʱ%ƮR01Q 3K'14i7-H5 %tP;žl?,N{_P{HK ( mIkzު gOۘH+niגb. R$icNEWjZ-5R[G@+I]-Pt:c/R+_-8~({ z2_qŠ!|MP#0qAУ<>XJgyI˓$~~ !̓J2gsՙtN:FFR^.Nїn>NEYhO#)GGݴ$tg剏2i>K"K4hP$?7W7/i 㰽=6|\ب pA6`9s73 ftK!2ZlCB[UZI+p2%s"|އ䡜oJZZjUЗhtx,_nY`gz^3C &`f= '^$LLF Ap?%6^j_.$'5I/iGG1k5yo޿zF&"cz_wm%3=, AJPon>9ԎGJw+hat!MdlJ (8&>р)vxﲎ 1 &Mqr܄ؘ<ʼn9, Gස'4~Cq F3LAA2Ҡ  Oc+ ƕ;}2t\֮yJPUjҲkF';;й0zWzu{@|&EZl$v;]-@z;ƃwl'Dh*\T{v5O 6@ 9Ç(]H5G4]6"><~= +PzgQW?Yd".fGhOWڇ'u&Ť+V5v]3{XI>uކ5c?~HsN]3t0]%gsNG4qEzb";C<0FVPfClfxZ[pCi `ȅM'Z^l׊Ogi סK7KZy7=ukGӞIX%rV>^ZN C®Ckt>M>%U^U{އ4D'B 2v7׫-_ܗ WźqOu.MW+>{!}vs?5^kve DWӇךEBok$m Fq0;܀]N . 8"Hg8au;qIג5&7Yd Z*97ŗcHYz 81³;נy/4pa7;Qlt tѣLP7 8}R$z!WnUIյZjjX8v^sZݶ "akDPMTQ' ]QTF)XiQn#?y8HvFx@ǦA聽#'ф_'~ /CBO񛡋_.n"<9fԭ=āsg{Ћ>@ ȓS &ˀ`D<);uqGݡKI*7r2D3f=-lD~ʍ6)Mhvc`yAnwtp1U6P"E7V&(7]`iDg+f*TW::} n&m/ya&fJVyC4Anxn_'8?%B,Zn7B٫HOG*I5[cEo&SQUT?K9L@WUz5i"] (.x]ю4☎'W-m9 ˢl&$Q yX4)L$|)&.]Qz^WƊWWMޕsCl]7& 275檿Ãn3#9{ K# z7{:}H فpvqAJ<逫tn /EF@_>)1+o0<;sY }:wo, eFQmr1N