array( 'en' => 'Rebrandly for Kleeja', 'ar' => 'Rebrandly لكليجا' ), # Who wrote this plugin? 'plugin_developer' => 'Kleeja.com', # This plugin version 'plugin_version' => '1.0', # Explain what is this plugin, why should I use it? 'plugin_description' => array( 'en' => 'Generate a short links using Rebrandly service', 'ar' => 'إنشاء روابط قصيرة من خدمة Rebrandly ' ), # Min version of Kleeja that's requiered to run this plugin 'plugin_kleeja_version_min' => '2.0', # Max version of Kleeja that support this plugin, use 0 for unlimited 'plugin_kleeja_version_max' => '3.9', # Should this plugin run before others?, 0 is normal, and higher number has high priority 'plugin_priority' => 0 ); //after installation message, you can remove it, it's not requiered $kleeja_plugin['rebrandly']['first_run']['ar'] = " شكراً لاستخدامك إضافة rebrandly ، قم بمراسلتنا بالأخطاء عند ظهورها على البريد:
info@kleeja.com

لاحظ:

تجد إعدادات الإضافة في : إعدادات المركز->خيارات Rebrandly

-------

معلومات قد تفيدك:

- إضغط هنا للتسجيل في Rebrandly
"; $kleeja_plugin['rebrandly']['first_run']['en'] = " Thanks for using rebrandly plugin, to report bugs contact us:
info@kleeja.com

Note:

You can find the settings at: Settings -> Rebrandly Settings

-------

Extra Info:

- Create your rebrandly account now!
"; # Plugin Installation function $kleeja_plugin['rebrandly']['install'] = function ($plg_id) { //new options $options = array( 'rebrandly_enable' => array( 'value' => '0', 'html' => configField('rebrandly_enable', 'yesno'), 'plg_id' => $plg_id, 'type' => 'rebrandly' ), 'rebrandly_domain' => array( 'value' => 'rebrand.ly', 'html' => configField('rebrandly_domain'), 'plg_id' => $plg_id, 'type' => 'rebrandly' ), 'rebrandly_api_code' => array( 'value' => '', 'html' => configField('rebrandly_api_code'), 'plg_id' => $plg_id, 'type' => 'rebrandly' ), ); add_config_r($options); //new language variables add_olang(array( 'REBRANDLY_ENABLE' => 'تفعيل Rebrandly', 'REBRANDLY_API_CODE' => 'كود الربط API لـ Rebrandly', 'REBRANDLY_DOMAIN' => 'الدومين المستخدم', 'CONFIG_KLJ_MENUS_REBRANDLY' => 'خيارات Rebrandly', ), 'ar', $plg_id); add_olang(array( 'REBRANDLY_ENABLE' => 'Enable Rebrandly', 'REBRANDLY_API_CODE' => 'Your API code of Rebrandly', 'REBRANDLY_DOMAIN' => 'Domain of Rebrandly', 'CONFIG_KLJ_MENUS_REBRANDLY' => 'Rebrandly Settings', ), 'en', $plg_id); }; //Plugin update function, called if plugin is already installed but version is different than current $kleeja_plugin['rebrandly']['update'] = function ($old_version, $new_version) { // if(version_compare($old_version, '0.5', '<')){ // //... update to 0.5 // } // // if(version_compare($old_version, '0.6', '<')){ // //... update to 0.6 // } //you could use update_config, update_olang }; # Plugin Uninstallation, function to be called at unistalling $kleeja_plugin['rebrandly']['uninstall'] = function ($plg_id) { //delete options delete_config(array( 'rebrandly_enable', 'rebrandly_api_code', 'rebrandly_domain' )); //delete language variables foreach (array('ar', 'en') as $language) { delete_olang(null, $language, $plg_id); } }; # Plugin functions $kleeja_plugin['rebrandly']['functions'] = array( 'kleeja_get_link_func2' => function ($args) { global $config; if (!$config['rebrandly_enable']) { return; } if(defined('IN_REAL_INDEX')) { $link = $args['return_link']; $current_pid = $args['pid']; if($current_pid === 'file') { $return_link = generate_rebrandly_link($link); return compact('return_link'); } } } ); /** * special functions */ if (!function_exists('genera_rebrandly_link')) { function generate_rebrandly_link($link) { global $config; if (!$config['rebrandly_enable']) { return $link; } if (empty($config['rebrandly_api_code'])) { return $link; } if (empty($config['rebrandly_domain'])) { return $link; } $post_data["destination"] = $link; $post_data["domain"] = array('fullName' => $config['rebrandly_domain']);; $ch = curl_init("https://api.rebrandly.com/v1/links"); curl_setopt($ch, CURLOPT_HTTPHEADER, array( "apikey: " . $config['rebrandly_api_code'], "Content-Type: application/json" )); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($post_data)); $result = curl_exec($ch); curl_close($ch); $response = json_decode($result, true); if(!empty($response["shortUrl"])){ return $response["shortUrl"]; } return $link; } }