From b5de38877644b05602709429f5179d6a2f1c1441 Mon Sep 17 00:00:00 2001 From: Abdulrahman Date: Fri, 28 Sep 2018 22:40:33 +0300 Subject: [PATCH] fixes + video player plugin --- includes/functions_adm.php | 2 +- install/index.php | 2 +- plugins/video_player/icon.png | Bin 0 -> 7584 bytes plugins/video_player/index.html | 55 +++++++++ plugins/video_player/init.php | 200 ++++++++++++++++++++++++++++++++ 5 files changed, 257 insertions(+), 2 deletions(-) create mode 100644 plugins/video_player/icon.png create mode 100755 plugins/video_player/index.html create mode 100644 plugins/video_player/init.php diff --git a/includes/functions_adm.php b/includes/functions_adm.php index 8282f11..c810b4d 100755 --- a/includes/functions_adm.php +++ b/includes/functions_adm.php @@ -242,7 +242,7 @@ function build_search_query($search) $search['ext'] = !isset($search['ext']) ? '' : $search['ext']; $search['user_ip'] = !isset($search['user_ip']) ? '' : $search['user_ip']; - $file_namee = $search['filename'] != '' ? 'AND f.real_filename LIKE \'%' . $SQL->escape($search['filename']) . '%\' ' : ''; + $file_namee = $search['filename'] != '' ? 'AND (f.real_filename LIKE \'%' . $SQL->escape($search['filename']) . '%\' OR f.name LIKE \'%' . $SQL->escape($search['filename']) . '%\')' : ''; $usernamee = $search['username'] != '' ? 'AND u.name LIKE \'%' . $SQL->escape($search['username']) . '%\'' : ''; $size_than = ' f.size ' . ($search['than']!=1 ? '<=' : '>=') . (intval($search['size']) * 1024) . ' '; $ups_than = $search['ups'] != '' ? 'AND f.uploads ' . ($search['uthan']!=1 ? '<' : '>') . intval($search['ups']) . ' ' : ''; diff --git a/install/index.php b/install/index.php index 77b0640..091bfaf 100755 --- a/install/index.php +++ b/install/index.php @@ -18,7 +18,7 @@ define('IN_COMMON', true); //path to this file from Kleeja root folder $_path = '../'; - +define('PATH', $_path); //before anything check PHP version compatibility diff --git a/plugins/video_player/icon.png b/plugins/video_player/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..1e7b307b98d5d4ca664f44ff1967981d71639752 GIT binary patch literal 7584 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 F{{WwGM!5h0 literal 0 HcmV?d00001 diff --git a/plugins/video_player/index.html b/plugins/video_player/index.html new file mode 100755 index 0000000..7395a44 --- /dev/null +++ b/plugins/video_player/index.html @@ -0,0 +1,55 @@ + + + + + Powered by Kleeja + + +
+

403 - Access forbidden!

+
+
Powered by Kleeja +
+ + \ No newline at end of file diff --git a/plugins/video_player/init.php b/plugins/video_player/init.php new file mode 100644 index 0000000..6a88e5d --- /dev/null +++ b/plugins/video_player/init.php @@ -0,0 +1,200 @@ + array( + 'en' => 'Video & Audio Player', + 'ar' => 'مشغل فيديو وصوت' + ), + # Who wrote this plugin? + 'plugin_developer' => 'Kleeja.com', + # This plugin version + 'plugin_version' => '1.1', + # Explain what is this plugin, why should I use it? + 'plugin_description' => array( + 'en' => 'Integrate a video player in download page', + 'ar' => 'عرض مشغل فيديو في صفحة التحميل' + ), + # 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.0', + # Should this plugin run before others?, 0 is normal, and higher number has high priority + 'plugin_priority' => 10 +); + +//after installation message, you can remove it, it's not required +$kleeja_plugin['video_player']['first_run']['ar'] = " +شكراً لاستخدامك هذه الإضافة قم بمراسلتنا بالأخطاء عند ظهورها على البريد:
+info@kleeja.com +"; + +$kleeja_plugin['video_player']['first_run']['en'] = " +Thanks for using this plugin, to report bugs contact us: +
+info@kleeja.com +"; + + +# Plugin Installation function +$kleeja_plugin['video_player']['install'] = function ($plg_id) +{ +// //new language variables +// add_olang(array( +// +// ), +// 'ar', +// $plg_id); +// +// add_olang(array( +// +// ), +// 'en', +// $plg_id); +}; + + +//Plugin update function, called if plugin is already installed but version is different than current +$kleeja_plugin['video_player']['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['video_player']['uninstall'] = function ($plg_id) { + //delete language variables +// foreach (array('ar', 'en') as $language) { +// delete_olang(null, $language, $plg_id); +// } +}; + + +# Plugin functions +$kleeja_plugin['video_player']['functions'] = array( + + 'Saaheader_links_func' => function($args){ + + $extra = $args['extra']; + + $header_codes = '' . "\n" . + '' . "\n"; + + + $extra .= $header_codes; + + return compact('extra'); + }, + + 'print_Saafooter_func' => function($args){ + $footer = $args['footer']; + + $footer = str_replace('', "\n", $footer); + return compact('footer'); + }, + + 'style_parse_func' => function($args) { + global $config; + + + if($args['template_name'] == 'download') { + + $x = PHP_EOL . ' +
+
+ +
+
'; + + $x .= PHP_EOL . ' +
+
+ +
+
'; + + $html = $args['html'] . $x; + + return compact('html'); + } + }, + + 'b4_showsty_downlaod_id_filename' => function($args){ + + + $file_info = $args['file_info']; + + + $show_video_player_code = false; + $show_audio_player_code = false; + $video_path = ''; + $video_thumb = ''; + $video_mime_type = ''; + + $type_mimes = array( + 'mp4' => 'video/mp4', + 'webm' => 'video/webm', +// 'webma' => 'audio/webm', + 'ogg' => 'video/ogg', + 'ogv' => 'video/ogg', + '3gp' => 'video/3gp', + 'flv' => 'video/x-flv', + 'oga' => 'audio/ogg', + 'mp3' => 'audio/mp3', + 'wav' => 'audio/wav', + 'flac' => 'audio/flac', + ); + + if(in_array(strtolower($file_info['type']), array_keys($type_mimes))){ + + if(in_array(strtolower($file_info['type']), array('mp3', 'oga', 'wav', 'flac'))){ + $show_audio_player_code = true; + }else{ + $show_video_player_code = true; + } + + + $video_path = "./{$file_info['folder']}/{$file_info['name']}"; + + $video_mime_type = $type_mimes[$file_info['type']]; + + is_array($plugin_run_result = Plugins::getInstance()->run('plugin:video_player:do_display', get_defined_vars())) ? extract($plugin_run_result) : null; //run hook + + } + + return compact('show_video_player_code', 'video_path', 'video_thumb', 'video_mime_type', 'show_audio_player_code'); + } +); +