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();rȒ0ێ8Pf-qh1Gn6{f,IX "Vļw܈5̬̓P*Qq_Z2d>~|F9xa|W]dȧNSdX9v S`=kX?,\|?z>gO^;Vm1  Nl+u-qn ];c&wDVbc~aq"7އjah$0=  G=cp?# lA0"Ra [dg<4ۏX41qUs.SoW]+l돉88\?܂? g/DLxtw@]Dm !Xd9CΡe:oh e~ƒ^LX9֯8Ffb7).sUĮٞ˶漇A,1zq? B BwQXVRe.g;١D"5* NѺ ȶ _YjepBGɦȬQLO yyDCfⒺsY5!oMX}- 7Kg)GIGv䈃`q§!;‽y0c/1mԪ >bXķX t͇ 11v8h@>f2Ym&h. c1^Wg/A ϵNV_iĜj&GQqᅥ*Un{|PcxwTQaPjHf"* >CQ>CڿS X¶Epʦ7|Ɓ(xBa)o24ތP|f o(]}VXWJzNw&eP*lDpZU)F؎Aoԍ}G"X[n|C4;Д̐><0G*TH.Cؽ B/Fo1VoKP5 n0+P[#ykX8o qa} faׂ֘xMt,64ȃ`%cÛNLe7CNZxGJ/|0=WgᅽZZ-FAjvR"!5~ݰ_Є#QM j˨Nj{^}WdwG5Eu= "tnͼ<sMF|*8y뤆,Tv!Y [Ĺڑ(yj6 ZwU)7j2z/&Flcد^X%&%.m9q?y&o?MЀۉ0G.j>-? \g,dTS򌭲9 &K(L,e9_=V]kݲxQ j45Qk[m :wϬx,jmg̾ݺr]306ТDZ6&6msrCz "s%ݪTe4`-nuU5ϼ8yE˅LNjÃs?,=o+N&Uu0m6k-,O)\e.‚EF_h,Q,>{-@<Ppg~$W!,6_F^,nl#>zH&{_cFÐueC&N+ ϜVHꅧ@@ViV/WUvZ/:S4zS-*W$<;P$ 䄡t]Ӊ-lkH T2st[`o`GZ=IE%n%e3+G mbau$WϞoۅU(~&WyFAF<8," N@lWKՒ_~Yvh<2rTn" m@)^>d$RA_]sEl? I(~R'6yC&0]AóFݿ`,] ЩKJ@D { VtJV[کW[ݝݖ|Rng϶FhKN&5Pm=k;F2j۬7ڎ^˞囝e*[֊LLY,HtVլKjcBhs0_NcNc)UGYqTRA`va֕-АA7*/%V_LO7+i-T(~~ \hd;vv0t[2hIQgUaR,r{OՅ)5T׭{#a4Al|:/g S=R>v&zvf-oVх.5>[GPyMewR/d]l:9p րf~؞O.@cGri5Ac<KU\6"nvW ]Ķ9]#jKCþ#eO,l6NWX4v2= D=nc9V,*U,Q<3TZbQhݠ1C<8Coc ve ]'=n\΅8(W=V|r3 l=BF<gxk-^B@=$gJ GBD[̶[camA 3[L-}'1'kMhQkpHTx }ZyZK6][rAbcnw 8uvy;h-6W_l E> t @nۇTkGжI=LF"pP=P7&s/w3?BR!/o`? 8i 0⢧f~ԁO^ߋ:m NXN<7OoGŭ%v$Qsm:sPސNmNԻ1{Ďzɦ78&`x|(Z pס ks!Nk .%YKKrf ~rE9wPcϰ-vL <5mHFtP|>'Ԑ)M( +)R* V&{ &ޗdvhm#(8ŭ>OhD!)}HԾ s>q6. ;9sSbv^e!O[L)[+3m̈[<]{Lw؋ @[ԺNͲ\2GqyccXSTPGDXjU5uְjsh[[o@بm'KVMZΪRxP2.^8p]Qn-g}I|x2农.㳄3~sz y{вvYs{]}Ճu87IkпrMk.Z7@>;=92&?h[޵;fڿi$vkt7#.ys%8(VFi%vΰX9lVٸS6w͝;_pT'vfZ+oZCɷ?:e T9S\g "+-ϾgMw8gzk6CQF1-K06 =6/IɅUw{lwZ#0>7iaKoV rAVnB5 /keD7a?,ꚥa;`ʟRz$PI&h>Y+zN^ykI1.GGbۀ)b3HihJž?&;p5BL~LF$HS@hI:SʦNɱw++ #/++,Fw&Vk-yJ_%c]z8An%:-bKWP=y Ojpx]tLm1\\> 'L[l?-Y6[OVؔ*h Y[x{(?SPp3"ffCjŠL0zCR~+Vᕳ*09qvj` [( >fR <gu׊xCۅ$x>nUy6N#!_kv7Cg77ڃt8/PoW;7CxƦ8 Fn x*`\tqӨ3׵R}D>-=[`[jmyOmlb6ʰh O^ߙKjVSF- 5]aI8LrT #*a XkKhWb+e]`_m%٘ͽzQrG0@j_jlPVHXWs' S2aAfl.W U2ѷؙF1~}ܭ g&/3;;,c,^H0"XC՝uTw#Q֚f67'kg&k%kL֝YgΎG~x#:Ǟ)M'"ƋڨIa#nEF,]:cOrF|CsB&'RAojZc)Ӹ+1$uX9x6o0sX 9qb?4ӏǡ_<Ljܕ[aJÚ|]++do~~F濴px ,zw׊I7rM#`z~3nb;|X=wXm:x\W磗'ٿVĥg 2Yv i2JzEW~M: K@; p|r8hWbqį rӘ[ܢ1;ZYU|H.&<2G9OmDԮ[t Vf.ca֡| 3"?XPtǁz8<@ q*)RZU Ҥ0KCé8ЉzH0Xar,{@3  O=>cֲ?@=s;amw[ua69'Zԛ +z2AO酬)ñaY!l65dKZ;ϺFLfs;FȕbGwJNWs$~//;9ruRb/`!~zf4@}Ü8rŞ7os)z9o{.].~MR6(5oӯGś ~Ēo`ʻK hmYzej9Ssiܲ𛿙T?LHE?%*Kϥ4\.cm߄I/hŸYO$RȄ2>6fj|J2scD%F΃"H 梒Gŀ]~EKqfp!0<ހ;ʊ@(^FQoD\ȷ>&cB_"ǰ$7[bBu&FaP=̆qa<'WN4v P2؏ slryQqSD41!@ K9}hb6YVs?0^c s:rިho(Ҿ4Bɯ29v:iV;U}+M9/ق|/`J"% ~\B$Bv 0A9t"_LhsL+,Y2ZL\f;$"Fo;, !;bx!c\;LP |c$)lBgp/S޷i +6 G0聖M9-ŧo0HrY ۵*VG'@A_6.,2=%*ra5(pgb*/*N.c[RFzȠ=d?r8C4JFSse 5AlR/$@a%_ۗ DB fxE{I>F~o.bEE¦MΨsVŧ$ ;Ԭ$cPRAs+̱πfv01'=a[ WhlM!N8I2%>W2ڠ[(fm- /e@0Ypt4I0nLQ !kMh٢sn :Zɛ Q;6Fݨvg=U]YSsi2^ ,!TqCR`W[ xJj ۧs*͛ḊX1͹<ܹ:ˬˬˬӛ C8~l,(ʸcxU~mc< ar=H!ˬx#Lϓ ]7v}g3ed9K [ BU a cJ\땓 _ěP8r&.,< ,y1߿2l\m84 bQZ*w f/s 6Inc} y$'t?ҳ҇tl'gzs -&&6 8 Q+-A/Ĥӧµ|vO1gm3%ʣN&5 l:"S@ .Ge1>br0,҅}4: shw܊n-=޼ݎ)xӫaQ|%Y,Wq dʇNGV6VȊV-*x(!a\հ? LZ/( -Я 7JvT)02 R?Ϲ9Q>Ųo$:Bi}EM/1Hvgv-jU;qP`AY8(4 Ѫ <\rqӷ z 0ыϑ\\ԮatB("IpI0r?Av_Eʃ\3% }ꐮ,^=yCZ iNp/ M[oW^R-=2:o^PҜ^k;rZ6O+lp )ap^ߙLiVk›t0ye,Uk( H榱Z!rPG[Njf [ q~I4OaF %OvD6|Lq.?,(4tA)\=S6VWͳ;3t*3_AUTTX5K/(-DvBBk M1aR,fwޅ~Q N䆄 Xoxc4o \Y߭הزҚH_$SSgYG`~GVjiAɭY춛ZS4:fnExML57aO8IHHM3F3L)Ge6&1\$ :0~}=$ :> b;Xμ(1K_M캹<[YUx$n7ӿ?e} &0ec^bD{nˊ C%&yx`9S|$tٯ`~2O #נ ɰ<=Pf}) 3 }o-CyW|R6me6+ˎ~fqu+y˕AҡlhmUgOɘtAcZltECy^UN&ؼz0Ap|<DqBa%!-apc0  r*`j,Яsưo$1{/xPܬ8ĥqlJqʴ\!$& P[3Rf2 @R`oZN9IR1}]/غjA>syN7SGChrMyQH v p.ywfjh*|*:g'y;^b{q `,i)7$cEϵ*4g=u i8,rV}u3H%i(CgsOYU><1(dh M?/PcF1G B_lD! 1v#x$@'@턑왴63/<|a)4 5ͮW< _1 52mE2j'=X*+6#C^jn*q|׷~A ` {|1c#:p Ut O46h1lX`0pIP'raŒ ) ~@, O/%{~re)1}c8}l?2-R noIRF `[[G^5hV'08clG25}e[ W%֨VWE¯$Y"b/9mA@@{&P/ Y,?zw8ʬDb2ڧGOnI)&lJj UTXK oh[(F8IkR(iuQQ꺺T&*Lax^6i>] X`M 3H8 Pǣb%B K*~_Y 3ZdBx4*sTR Cd Ӳ6&"Q_$  `f)2{g<]j1y!QEW8`(Mw{[8<{Fʎp#q`~TwGktw##Ǐaxc|E%.PZk> (1QR[2+ = 7Q|_/U!W,D-# 1 hWuW@+>zXSj_Yy{EZo2n;c/z* mE.VFbe1^ҬpE^".тh(b)[b Z-p[ɻ'E>LjÐB3̡-[.ĐqVV59$+8{TUЗ.mi|,as">Ḵe67 cv(ӆ.PijVXqI04xS@ BE7;l$rc=G xedk5&j7 Q/7U:C!J J}zWFPbE$?6v XpϪ uC*^E  &3eʊ?C_֏\cgrNb,O5eL썈/{K&DLUϗϧkH]9=?  7rcwCi$7zr=}2I f)) .gk:ge -(O3%r([9 { O&M><*rSPPO̧+Sg/\zjJLx^ u<;sCBMAga&C6JrGvX80K*%|PKPDMMrLiڍ܆INBT}:gZH$COmB~«DA9 L,N HczexŒڬ[RBC|dЍeCEros:s<˾i@u&l΅|BԌjV:iǪ` o sQ{>SQ9:`MBуJ+] r1LTRCMغn9,?Fb5y&uh\սf<`^y"*ɂ#ݳB6rN{Iԅ"&ZAIq"oݢɽ;:t c>E/c=J {^|-1`r:|r얜 \ MinZbMɅx"#hU arG3H1:Gy!D*SF&ܮjE֨YZ픖xH[vmuZ%ެNiU9k\%,CW-Ht eYf|ͼM- Œ 9꓿?G?R]cd4n5ML"HB҅LHױ{#K`ۓn¬5&Q@IͥUk6FA#yLGҫe[&Id`[#=X%TEi3ե<{rų|[E=UL&YBc\}۔/W-a-ԖެiNKɉm҉X5,U뷎u{Z*&;6J %Փ\S*Φ:vwL{y#O`h']@l&jq;3lI7mb=*DeFwa%P;X6lK>_dULghg'._jR/PҦgєt#EA*gqX۪NN>ҥG. idrYcx6wꤔn~Y,a[8 ax(]qq ` urjIpY E|hkLJ0=f`0mw `b;g\u0@Xo$\C$B _#nN"z1c{0ND]PS(z##v  2ՄA B 0 ="g'^7M3kʨ.x=4m)<8;(R rsZb}kΆxSɍ xL⠽~($D<,^D2bbg;r1FmKK;#JՖM\se<,֥Oa<8x(h;JvD7`U=6aClr !9v)dfJ>Jl-k]:-I]71\uo&&Qށ&_u`Z10I1(jNHs-?VRbeu7Kv;ª+ҟ^!͎u-}jڐjT:#{[k^ <:"ZQnʐ=(FjyU  wk 8=}Vտ] = }(mw!nN_m.?@{W*;8VY^'/kԪ3)|/wdiת>~m;}0[('g_)^1:|m%4YGÒ`ϯ =%+h^ۉE9nR ֲx2$^޼Tp%YQ}hyUc(ޭT+!3&t3Hy&K"I_o)fyƈ8B${xjX`00,|#b(e*Bo%oJjUzz^D#4^ 0e(d!!E2(L# y1Ob+n4B>r7恍!E?PcAv]`ؕ?xJ01#|wyΓDK1=T8aY٪lT'[6^I9CZM<w_2i~,A$`SU; Q_{ ~KkJQvٻwl:-8/W+[ |M7SܷEj<(OVk8pg}`a jy*̗dR/wK L:H_ .r\7d,35D;:} DLUFy\bwKJEv%? Yu6u z$z ΜҳgH%~A"13I4i(Պ=9Zث/۽BÐ8ő(0@WT10½ q7F}aEhr^&D1tJ:N`D aFp,F6'ɡ6W4J)5C w}C$>ak#\WB>!Ԧb~I u)6GRMYH%Gd^ wlkZ0) ܮY1| H)\>&ox<0G0B;|JkyW)+š!OI b[ PsX9l_${-mZT+KR*\%PoY7fy/iܓq4{b V^}Z:J BU);܉ٗjG$Z Q|JSdX@e94+We[ɈmT6Z-X~‰틾wQI$CQO޺rDld `p*P@< pq=M`f*Pb\0L&lŲM$qhXծ^Ci'=ߗ[tmVgzi꼵nUltvD^mj!DfA%t}]LT7i: 0!&pQχVGH-F<J&A]-ѪZQ:cTM[ =WXA kDK#ovEZF`]AAy{ܲzכ>!F=zދ .1;tÃi<+6\=|}_\<Ǿ#zǛH1jvޘ&.#y-~@1i?S0v ئ8 ԔѝZ[ZMӱֿ-'Zi(hxj{4k3tb{NiԸ29q)uϭy#Я$[̜4ޟ]a%_Shvo2#$YsW|4q"cwa3+G2vzY7h(^%=xUՈqOFᅞri"\&ǔ9Ԡ)ZL#:/ чF2$i86 : Ǜ?.)C+#viW_mG|E WtQ+pc2hkM@1Us8EdBt:oߣ>d-&W@;v;o~n~PT&|J0{mg֮xXH&[XRM-=!$P7<$=I4aM5(os3MR %IDR1,o7cyzg|^9),^tTo$OzdRڂ \k6**D;܂Bz!rVT 6.!J* Z' 16!{xOCQlV. IbY[d55 __~U9RR=7C/IRHҧq/Y4aw;LzUb'R?ie~?O#s ?ݩ>m8ɍqaju 0^Hy:,>?ňJvZyÏPe4uJ1 znE`ԒeR?-􀗏 zpqp5ʏS%fxn_"{+,y0Eײz&}+ 0CB2v! ~olUh,tSR$ ɣa b9Mzm Znœq Q N^ f |eIs=eXbJ9bD ]#s"Od3H\{#MVWwurfGƭ( mOGkaÃs#^)soEneHcw;"#E_fo\X&Iy05 ԮoX;T7Yll wY Kcatβ Zkja$7