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();}r8Nվ[;DR$˱g;nn_9)DBmbYɸ Su<>n],Ϝnd 4={{lGkGze|jeO2c1D4`%f<׎GN/hHĜYCF"*|RkX O҉#Ɓ@bAԱc-[8ωj]eT؈:d$ @/fHha!T^y:1 U B︢Ćoqtj(TpP;{5Ðag:AIӸvO fX?ڎgc1w8'Ƿxr^{rTck?q<*ge*ٗ2?t~q_;ԁD\>g"VkmdƎgAd |4rY~Y{lMЈF?qvl]I(9,9bPDgQ:/霚tkЉ'NQNy+mkA]D \lWFbef \ŬTWexNڹ,߸"U8T?Xo1}^pn<볚ԣc'vN08`v^{VѠv\ l;)W(Me~a *cb*tد@S FaTVh !jZ5.| jfFGӣױ8ꐚk^6rǏ/m)/ȹe*?T1y0,u>BTޅ9)؅SOGMBGVEA*%Nƫޑ KskI܎jn5ٮVbeJg,O~vV9qwbq0G2֕-Hz ExoS |F;,f5TRLyDpԍgD -Q|z]WޗV_|ge pIBL{ `5vFĚշR%z]NY Au/̪EZtEl WeQTźWEI@?X~_=Av'vRxU?p Jw4}P-QoD.qd ttEߟi;2{^*}d2 8/@iDwE:0;F LVVV1}Ǡ}"@_J= vaF*!5J|X3̪^52O[!9ĪQ$:\"$%z$ O'Ec dPp*b]xؘQDFfPG'"Zu8 /8 +^ů8`WP@/\bZ *TD[Aƌ] 8>-LT&?W>~vz>͌SZJ'³wk ~l!IZ,CnQ# "oyW◐*?sprNi]ÿE՜ЧOgT$:t9wsZDž.ycB|܅Iv V_Zkt)r@fm?͇ ]9z +axl+溵rg b1i{sBE18L=ad(ʙ˒c\lr˕5r\/gjad^ NXUӰSo XrlMŽ[ 90"'(+B3}-9T/Vl' \>,aks/=?Ea0rECl-*3h G0mtYUo~qq@$M~ً @Pb#=2\I1<4Yī̱VG`Qպp -FHԯƣHhTn_\gVe#Fv*HdQq-hUYl 3e>$vm ,@\ߴ ﻱܓ<ҿYQH|jc;4"tQS1YNnɤM´BXl,~sN&[o?4tۂ>X,[mrOY "\ZEx)} Ac $I3UC7ax鹾u y8yצhv+xOL [R^_ǾO7eQ\LxʿY]7*ríI8Z*4T+ mT[7awkAXe_ Ryhwm\$4n(40qM5A( Џ|k F2ZYVm{lqz1 L{G+I8^kHJKIQ@jz-߄рH`rZsg@܈]sZ@Eܮ?u#z?|D@ +xnܨYE&i\CI:nD5 hɼ Xs& GA[|ͱٗebIuVM9 tV=(ZUڐ!})UKkZH *jE ;q" .gWl97!}ZGiЇB55oAtNXc'|w^e!W&F- zL3u3E[,EN8UQD׺L2cUO7;c[I#mQXo o4l{#{z=~qIh Gf7[`55mho­kc[`Jټ2N&k!R80_bEV)lW[К2t<}mHr2>lFן]\:-h#84 Ω1(]Q>8 2hpE5Cey)e( #N4?*2C3βi9LjPE E xGꑘKWTSld@^I,K.YrE?^f:х9+Sl*IGK:>G$ 7)kޱܻH ~MǍ3|9B6lȪZL̑K C? U ?K#Gu!t ceZ^ uH[:, ݵcޡB*Oبjk=8]U╾A,/=#tfu2-lJ[NQ~9)}\86(q ~oL|}@oRix@oG7[Q~%4H6H<2TpsM݄Uo&K|mSaS* 7FH/=䩉Y 6 d p=Ԡ+(3@hPvϊb3+DF)WPE)E^ID_,e9iȦF(Ƽe):6/@j_ 3o%='MD & xFǐ Xg&[՛沦J;*;!fܬo."ko{;}=w7 ŋ*[$jZ};ZƟ^SWVS3WkVk\V<{q#Z³#|u.EV!^$I a3f}}|Ű箧6N'U!;h}Yih[|]7uӼنoK-$X+ҽuqm#ߌa"qpr j?ҸKF\oFrw\qi͞x|Tw[^}7ߌ-zc唸1ptŝJYݱm%XK3٢mll+ٶYvyu}w[d{v}Bۏjg9^{hp nNܫ*a6Ó~}UK֐~T:DN>}F nrwg"u#=q5 mnqKaUsNr3V8jqG^6-`+x@xh~ ~LB,!H+PFN>,(\.VCWx` y諰R3KɌө9i$Cg0}u=CSmnjp􇘄P;KNJA1v OHPpN႔?q=@T*l; Qsz"{Ax>-n#3w@3T<K4SG-<~Օٺ.5~EvWM?801Rc8+~_߽o_?}y/ y[_J`ԆNyB|XN]v+0nxy&4} Brܼ{t>UU,X~Hz02*e"Bg0OwkG0>*9B%:<]h픥qy$4ub-.",8B`?uĞ]F~h:}F, ]F5tJͺJեκˀ})TEهi'yB`N! 3I;l9vb'1N~.3Se9녏bē_]]$E}P%6Wswɫ10zcw]tIV8SyM-Kqv]'%zHka-]E0%pEŰ 8aJg+n$m]PXܩpT"\iʳO3,02 .x k*I݅u*'3ze`EH) · M\:QJDɒ78F#A( re}m&0Ci2az!N٘[CPR}**<_Wc)JjjutD#Ȁ]kr}T]o`0,I7]UNimM[c35wBJHP=y4P@_hyg.s9;x' T )셉S}Eԁ bJ="_Y.sQD1#1'غO>1 6A|1pL>f`3B leA8aU2]!Ur:PgH =[:r"=qj9:jl)||tn7JL Re ):T#%$T5jcocQ1NcGt Q~koԅiۭ&fլ-+&U`W%Wh J.^r d 9X/`+t +-^qH>48H*MR1yA8RNn}8oO믫P4xV\-G4+4i*?4Jwѻdlf?M~ւ]jB Tcă-1*KUj$ySgjo6Z%WE <,oy myf :?f,:jV ;@߽5<^iL֛wg]HԜf¼;Ut:,݀&NL?*fV[Wml! . b}zDxv;^ ^e.Ep~ό K:ή4eF?]uyAAb=.whZrL\lFUm {:w'yeH>; 5)-<+VRpSHiMo;ӭMtA /)e k c4[@c4ӍP<'4-)}g. 6?혍t;כue*ËdbYLh2`K4H,+7CSd 6'q*{OZ1 `|(5XJ Vpkj}q鲦!]Fj $Ё7JhҘ$7c晍:__[>@QXDu!^Yy'>]8P08HIM T4ٷB*%ߧ'Sᡉ0f]9RROl#>C HtOPM~`Wޙ92(8>WP;&iԣ?A\07f8B1kzVqV3g4PsK谇N:T'W{Ú8aݞ7I o,r4c)[ oeHB_ 䰶]s/yдb5qװ#U@ U^7!鎳)ujK4jWTh4ŏ2epA<@buSf:)ePXZh[5R* 2Z"Rg kFkTaDMUl+UZ5f҇ &9z\b@{{?u|ml_Ғ!z43n{~)͹ކ1RSRĊeW >9NKjiڰ eh7I1؆nMj5Ee7~hzHv?E4]F(ﱗihH1z1A&h1q}&^4 01L_0(<:htAˉ̮|ܼ,]8 /?Aris>顲gbMMxs{襫E8:Lε{;0pyY/yOz,^ OJbYO'T*Oq5iݭp5=͸J"*2*/5MXa7-c`I )WUai/CGx;a{* bx={iS"oCaiuiO`,wV/8A ۉjuu^qBStf;q#R[YtIFŁJjBqډɫ։ d TA؉ WyZf|xzԷ+4/VYY-/ ~}C }e ]~$08#(|!?% ]:9vxX'=ܩ8: p2Q-͝Fd{Qz'nRf-t̾G+8![,#|V-x=Ti&yU ZqmUzB1IZ.yBe2"B>*x-w/^YɉK+i%꺎=:+WU]w\|x~ SBk2v_|0JTZ*w>Чg(xb<ܤG"t́] eSk东ĔDHH8 ?0c0xM(g(MI8B4ᅹs^L (/"dH.DH`4=4 +g/S + J 4c<BQrgBˬ $E#~*FZ617DR 0䓪5 D~Uk ; bn9}Fi>:% U!>iƧi^d w ]VOR+A<29\qCU%;\\aìCYG+i{VmR~´e.VSW)W"w v{ t?1Y0"l(QNS^DyXd|Q{nZq!>=ׄ)=ݏT#FuS2@9[yˍHwo+?3 |'(tmm[Xdcg@ӳ%)GI; ~_$eg#{t"<(׳@>RuF]WGB4VZ˾X8j\++QX:Jc(J9QZk ߕK]n]S|_ NY)ӏg,9E9k5J/&!c%:%#U++߳n58ux(.wG~w7=?(i?aUr,bĜjWvhɷpɷG+ ʁ.FPN;wJl?!RP JzT-jjJ)9dUm˪4?d_6nǨxU॒ ?t4A 3 (lڝmd}s wtx!\Ua+|9ar~:s ڠϵ)wR 8ԃvcL=Sf`'V [+u )5I39A,'˩lO_B⩯w*OJ e0H;ur2GRF&tx{bOjTm=h8Ђ\ډ0:(aѐ UNFQ!SB3FyhGж@L6I.T2 HFKN趤(@ Omz+t݃z_Wdo4"m4Bo͢Zk*cҚBO_6>72 C5J*WY GRP8F9NqH3lgʕ%.sIc>;bdt2]j2<<s.q?FMon lnlkMƪtG6tȗt?R%s9ОW,_AXoj͊Zܽu⾕5Iʳĕ,qឩ\8vWPro0nMBZ`Ӕ!+U"Jk$x.>>#a:CT|m!#lu#N_QDh\eU Opw,g?fsQt]ܛս?"NBk@D<6{VK}UԂ)RC>R),p R0W%{Cԣ򏖉X}324 Z^JwUXMSW+a: nKy BıTy}!CFɊq w(ݠ[)E,,+/ICG7(Ҹr\’'IOܠ0cb q;Ÿ~NeJS`W#F溴'vN]*h?Gc*n%RfwE W-*wQ 'nq;G+SnH.t(iF7T&@`3Yi*8 5Ck(Xdo3P4Rh4ۀu5i5m¸:3ӝHM4l yE6HoW,싳Æx `|v.+ji{Gڥ ft=ԠVz3fvO r ;泹<qYI@S!hY]{ً4N4I=Kꏔ_K3nSTNTs3bO# 0*\{\.SR.I, [xBD(AG!jr\7 |7yr4=LcȌNȱW@#9#Ji x5TO{+4t2,xdɤ(iX1uI}wMdI}/x#4Ӥcum*KJJXFQvB^գ`grEKa<ۥoulR2V6lt\>3o].H$ $[16&(ԡ6]JKEUe-V,!˳Ty*EO#רoK&RH `*@@̐.';AMK(O0Fp"iJ{6sj0Pa׍2JI wC{~c;z:ȊLB֐`V1 21O@oX .[ށ2 Dȟ~Pqy Uu%2uhP;t„5/!T$jX! f9\6-LYoI*_ *]$ɪ8W8mhّͩh"vL{C nfa",D f'6!Hdp[ K3)e T4 eD0I(@]8"ErReŲ)Z,(>^-72OH .q{q7*gײPAnsh|}x./̧75%ӛwT0`>57]Zӳq+1$^wn,nłƂAZX B^ w;q ns@+>`B^); zw | d@?~è . 0SpI]Nx 3r݂Xh!G.^9#fB>'w9y+Ej jA!ќhGɺ8¢]ӕv`Ew 4;f}^G&}.&g_~g v u e/\l/Կ2xl4mGmqlɆ|,6nvl< K;=ɰL͝\Xa/^nw^o/}}a,@2x?sA~uW[ڛl x"ZE@Y@RAT>wto5A~(k-Pv2-UL߲o h繷a83`4?^n/..{< CF@G_y> `&R.E.{=2_û>$lȕq.}\1B@6Z dHN tj֬`"q,ߏ [!Z?%-Cőpr@Hg9h҃D/u T$NIO}rͷ ]}pwŀm}9E+'1nq~ڏ% ^&%P'rz{[eC?xʚJ)XZ?E[ydM 2KM`3cѾ8W3][Ui ga|CAdZ}Bis rE:}4B?q"'Y ~21/*^WgE YUao g<[d#xT!RUYeVd]"=!\KHuqDG_W`bkFGE oGyz2d,qK؆S69.8w!75u,WBqS<"-.TF"ktM ]&;{ rVEZfG%q#LFOub;ĵ`K73⊛RD!u { -҈An*H7#HxD8Du^}HS`z2- UtCR f³ @9>::aۺi #j:L} Tu (H"f'=yeC0Fr43 >Pw+&9ȗt=?T8:]@F)&&ՉxL_x\(Auzl'Rw,yCZ.AmU;Y[vnT*Qkc ](d0^:m\LN6d1G,mHգ iaV{%@]#ut]AR\@D>7ISOQLF2UW旮Xٻ\#7?rdx9 GВ3WRgUn4L"\+{dywۥ Nw暺{[ʛtQqv@1X鯡: ?$*2S'jOY)d[HO+ZƿVK*ƙ33Ǥ2-=jZ ĩ-*pcŨFq:Ovrl_j![LD'n}W7ܵSw*Iݯ >uBT|,; /zzqY˃q]`Q?.`cng8哇jG[XS1}PAYLe~2'i9#-g ,4tfIV},zAM-Iɧ*)Od"#2DI >{W_2n,^foްIcTJNuC#68r7S Hg1n̓R }?^C"Tviډ e8@ P0<Ԋ=_ҋҎ^5~:`11vgxWUΘ&i!kj^#]P15i؈,oU"NWUrwdg*;e%?YsbOIu Huք}U{Kt,~K`{vdg$Ê3=ZKFETH|1 , Co]>0 |Y%.op܅%n 6e@85<؇Ʉvr/0ߴHmD㺸-O( Q.#"pA8!lB`Nc(K'Elj݊KJ,OJ(kzK3q+ 6yW)vapaE#uk@|PI%x4OLۓו7_!b}^oxE } jE:袣p̀Lv+Hu[4(]0ebl_W&0ßxD_}<)|K|>lqར~9" ? hM@L@}+lbg \D9w :/S+/ z:G'l.]1K3 {#鞽$bKحH퐌#^z05r݌6ġ8# L s"MORCd)6YdD\* q$@*Z1u΀T 'A"79;t YXjzJEzJ=EQɞiHtNfY2fJ\V] J!w/N_>TQ"V}"bHMр9s/J,FA< uWS,%Wɣ÷~ w{F1A ^gZFDJL/CuR/nk¹7RA)·Laΐ4x5 cgd8s9tTOR< aQ1+J^i~:bBy˻t. ̓xxys "OIn6~Lґht+*0XSE^QȑZu?d!2=Ŗ"|Z$oyppޮlcmleՉLv4i:sg;m1ܘlZfWf(;!A{|Il/f`d'ƺZ 4 .?hpq> 8bA~ ܉jq=.3#C¬vt]Nv-\4`5k<40nfEjo{^[@@ɜthAj-ՆپF.,94LOQA+.D,l<.5hM MĻr<\:T}zrV}Ʀb6Uo!,⤞H"Z9 y4^fNA n~iֺXm_7enq4ALv=i9ߗH Mhu0ւ9vݍ؉4 t,IXo'ŅaKvb8;&*^nR:F뢃.&NcޅQc8cT6C㭜P-Չ(/="{,px;FIo䐡gx.!j_n=W`ryhG(oGSAcboS-NR "zuъ8Ҋ̬4oP! }ul.-nya.fAKwxC4E%KeNg$}o eXEh F P2ғJ2.H۵$0@׉FtT?(_CU͗(ն:+K@Xf$".iM?DuRsit҃ͅ™~! nv> R> n(ynGsE?񓈭W˪[ʹ?,JeA_1y+˾Ãs#=ϟwG{zi 49~W↔*{MwxN';e,bktL7pJ /"Q#0>RXÊBntfasGw,K