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();r8(wR5(_bk#J]#zd&涱gۍS*$!)N)~{$o(DF4^?ׇl݇'gm~ZEM>ӧNϻv [`A(Y]lW*0(EŋA>2?d=*q9Gz-(1/~0aY." 7,Gg;ϒn݇E̙5a$nWF*<>|N1 0ľ @8u,aK9;5"[-1?sƓq0DHofa6 " wP뱨:/Tv#+tI,S.C} lV<;T|s>|O˷r'^|orxQqʱM:Ca72k.73tgKshXGfx?-;Sù$ &;6ƼJ,1z{ ` bQNYePDQXSeh]fx=w#c/!XS"S= b\Q `/߳ jY !HX//{E!2>U;vUm}f4iÍ-$  ,o~xO BO"*0? p#ʊk?;G 9^vNyŅm`^(> y0*lPp!/B8;Cn;~Ǖ~t@!9iAPA{Tp_x=C,x rePLvT5b6Wuʁ참BTpi]rhBFHB]m:5 Р,Y̌CkKe_#JЃ;Eqx HDL?&N(lS2|- o )'ǘډ>0~?Xärm4!qx.1\*xhU4+Ņj4Kp#`{4MlqM9G$`y,>5v0i$[Gmfٮw}lWi/2鯩|+RO2;Ea{,[ uR9dAIo] m\b\^!QyCW.p:tO3VzܢB2Œk~ Ꙇn&Ӑ1w+-oU3j GAdh.sC4*@Y3]|Ҥ{@c@1t쯅>į$9%=P/ PU(QZ+eӨUڵv>})Q"r K s9:Bx;1(&㕏OEmz6EW%䗜Re+KW`Ulfaۗӧff; 50Vx};ua¦Y2KAY^e)!qCDΥ"-nwl )_fqGy)fEZ4wS:Gѷo2}:$}+t2s # Ʌ"xL o!>sMewl]ӷo^>M5h ?n·m }quq1U** q̭m|OE1| QK`#8p(! ,b̖X,mb'o_/emd vXVӧa9MSo(bx)Վ[M%jHܺLBWh7`hD}}v۠x9cmŀs1gF4@֢X9n#h\3m3l$4w!fyV0'_<!p$ӛ)f]"` ˀFAqu)z<2p'P2$ Z 2l.Lo+<h-% ̔ YI%o݀:; XT H,ȉ9V i7-CnԞTnVGZcÔ;4!DlbY^ndrB^ ,^h,~pNλo1^?5LIm ~ߏ}R`SF;jm[00r*L@+8VECIL{Onfv['~KQ,/]}ĕ9 .TnZtZ7ӒYeQ?xB,WoT[1plUTm@@RXFO#$A6~Udf$1m8wlrEbhzI#c~1{ De$( p|?#rKD7!4 ASe9\?!K`ZIHە㧶ۻnwROaۣ1zԉA{ɬMq(,x5)Pĕ9)ղ ֑F ssrMOD.%¨iK(Krf }rE9hcH`o86L`4䩪HkA ) ;Wሮ(VHYKP`eB醯ԉz|vΩѨvH>jljLɆs:uE]:ϧN4rJfukEB R qW#g7y{ΘoN1WZy|ueW!?9,&Q쏍bfS5;fFQFvG1"W뫋 Ѻ]?jUr6vu6[[pPl47֎/X=K\6qiZ׆i~gz isEEZۀq-7\ۗ+2% !dsG{Tlg &|>2pq3jضCPm6p΄AJ62&H```r1<cT*#4Q?,ΕQ T(cRD0/KR(erw',l$8}޵-]oY¯"fՔF&]f!j& *OZo{~Y{x[ jGKBqʖZ ?ו ? x›쟈'_6 nFJJhU}:s4("4 Clh/D- te2chNp{LJ9z {hsвk[͚MB(Z;^N?/ꛃ[)|Rb khC։-;7Oж$rfW-dmt]ӓ7z. }C+~vOM#LaS? `w_z _7~Go?0{wۯ>è =KYHL̢lXN,Z!\m:xX!~{t݄}H2 ,=?5X02JH& Q6'0$YyDEG "LSko1`D?c%DȼIp"n](:u0N]x\kߕuW2h~Pmg d 9u AV\5mBp֠A)ىѪt-R|aav.n</\Ղ'f~=@RvIzU"Y6G=DY3[9Wkvהb fau2X!ݞL|mu;ݰ̶)o:%C_zXc`I0%CQ/D G!!)MyhFFևKcxmQVf8C-C.~.BJi|N*u 9ADS JA{hi I>YDǬ[͇sf1Kŧd,K 5 p êѮaBUr:'3DL+4[`WdY9v8qO$iF)a6~S[Ra?Lȷ- $>& ܛPS(NEݦF7BqT~oF]zZUof芰ISɕ6%ʟk-JXz5K ǁ1 un(ڹr*mKCYzy3^zPKn*1r#ε>*?ҁoLDH@zÈe w.,D׬L(oXw{:WxNq$޺UUD<^uMfir${kZ}-ܦ684qvW[Ԣ'³'OT?CxfLjIr\U%)09xh "7Sa\\u=6bcbe0, ts/CqDPLbR73)ei7QcC|őcFeA  |ӍndГpSnx%&@")lL7Ci}…oq#1(c]~pC\{˃Caפ%YLWq ѤGVGUVHVfc%NJ`~Ȑ1Lj؈G*rqH$wF0>r(Y)RP l$99 Hs%=#riKD,"Jhx${?VɛMP  t"ETcf .WgGW~]~NP(&,3Wis pRJMjh$Yh_f_a:c%tn#:#;~j#7ԁ}񥇓c+$qIU"Mr {4{(3_ Bn!hi-3s{0oYcdsgnv>TTf~K)^=uK{d<}l;;rqm } &nnDnf2OKQsC%IxSVw/}G~y}x0pˏ_R_~\Z6QzSKA~M&KS,m➝*?|%]~;`'VlH_5[O>vN~^I!@ v! P eW3%Z<>Sx 9@u xAȓ>dʑN*!űn/2'Zd_.Ke^:m+ל=K4x̫L2mnH+/F(Ơ<ׇ QK Xx3ԉ*<Ȑ~ ,~1/JnHËYw TIƭ u!|P) U,p`Im-ȕBLݮɾ}cf0-"mL&^0|iZDHFoJbn4')qMZ)j\GksseKK0\h&Ev"t4cYqz6V(d0Ob0u">LլJ]4z5qL^uOVscݻ}~&,@gnlY)%4pAOZdS?D38\.0ol =cJ&ӌpH #0]t"GB\yOcfΣW(r8l6Ozoߐܶzhe4[$yVE!,=XA917 NB7Py-5Kn->T }1ЦbG[՚Yy{ʎQo:^c?{u oAvPV{[&}㧬L>@3<FE+q},!^54?NR !;Q0VDW[>]#R)% 26W2]g\Rɿ*:Wh4Yi3JQƥ(7!bf}sopY)TimNaJj:VGT$ Y^J' ;<~A>@6@a|f-{H<HM ұjZܔWZ#1cJ(K-.9VnM: F|Sν$NR}OB3bSfD09+@ rJ#d0L$Cng 3qrrcb#Ӟ@L$gY(F;|Ġ%!Tf&7Z9V1PH_\LC]PUu0F lXZӇz5(L=D\eVOkK-[LZ(H.d(){9OM =S XON0LS'N ;|@fHd kY'&+NØG19֩jPopsF2R2b$vd(})6Tw(\ޔvESӆCKlcn&{?B#胮~ :ٝ(Zl%!T^3NaH^:^ ,,PUcPlòr$aK",J8rHTBMW~sJrs^FOVH%Er{FZ]4RQ~ٰ\RE8WmgREN aO֠B81eb δ}9D"ZD.*OWi?t-I)!?_-oq#0w2σWU۵ūsYz}H((D ی^ѕUy~P|N]#jeoݜ# џ#~_kBQ?,W28}@;S]'-;r@[]vmt=RdY-|4y-hxqN"(C8A| _Vc"c+d|U V}d Hbtl^s$d/R9jWC#s Z} uam-W,aEfnSXVP_G]FaN6͵RUaXe xľ̽[zq%ҹZX}@RQE(DT{FH=5AZ/wȚU:5wZ7DMe@4hA5ϸ{ f5v'\)0\޴4&{z2h: }rC4ZcX-NZM;B*W DbDvpshA#TKXh鶘F7{:۬j2> Àdo5o|+9lL.M=huaWӟ~@7m2"z-ѐR^U:#Ij1Qkx~gINQ0؇z`k*mεӰ B#9z_v'Q!u2{Mθ뽐nI7t`~ýDY!.r&00DF.EHsÃ}T>?1g@) aI$~r8r?I@rUP#cCs{җb8 l]'ط})nfۨ6CKVj/I{ӽ7`knm!~QKҶjV'`Y՗S^zۭw0a|nrk\TNU3@o{䦸]HlziF [CBG '1ܫ£9J_e;8D_%48G#3A!sdJ>Bmn҃LxʷkwSS'W?Kݓ>T΁ 1?% Gs|J-ce0Xc@.=z] ¿C9]!]Z D 0AT0/GE ib7.mgs/s(@'IBrOHXO0}vʈ2CrJY(P(PZ2F04":NNNmF2YTN'. “)LE;k1w+z#}l'd+A)%2 >#U17G%bZzݲ$yFdnF }9LKF o^t)"{'5_U.P88Ѿ($W|Te6RA s&n *]MBu1 #ZA ~329zOg.hBA~h7MpBsP 1]GL!ϖ`|f)ޒ$,͇4pqPΥ(C8?֎8zRēq3Or^?i B8a.߱zOȿzq@ _Ι-"Ȃ^$ #CgrF!~lNfY2G $QބT?ZZE{LoUNVqs=0t^dSr9yn:h!'#5}x#apCWuֽ249Yݻvb_~f \A{v!4NA4v͛i!M-d& {2/p٩u 0%A4ȽNqa }Acyzg|cPD0vSbi!xVEс1Hv0Ȥل3H\m4[#6x"t :xWU}lBr'UnH$tx9 [\Փ_e-p=z0Up4H ` {n~ED9w7 -9A4 Hu4u F51)36=E.6*c#y7?01kfL]W=n=AN<ɝ%HԓΚާy ebHЩ}|c/#$UQ ( ?`i}j=I z^{W΅-ټdA1 ~xAt$F0Z;_:;c}<^fo=ǶY2 Lnh$PKQO11!(Z6Bq x ;N]2mv