Файл: includes/Functions.php
Строк: 235
<?php
/**
* ====================================================================================
* PremiumMediaScript (c) KBRmedia
* ----------------------------------------------------------------------------------
* @copyright This software is exclusively sold at CodeCanyon.net. If you have downloaded this
* from another site or received it from someone else than me, then you are engaged
* in an illegal activity. You must delete this software immediately or buy a proper
* license from http://gempixel.com/buy/short.
*
* Thank you for your cooperation and don't hesitate to contact me if anything :)
* ====================================================================================
*
* @author KBRmedia (http://gempixel.com)
* @link http://gempixel.com
* @package PremiumMediaScript
* @subpackage PHP_Functions
*/
/**
* Allowable Types:: Alias
*/
function types($type = NULL, $html = FALSE, $plural = FALSE, $class = 'type'){
return Main::types($type, $html, $plural, $class);
}
/**
* [types_icon description]
* @author KBRmedia <http://gempixel.com>
* @version 1.6
* @param [type] $type [description]
* @param [type] $type2 [description]
* @param boolean $html [description]
* @return [type] [description]
*/
function types_icon($type = NULL, $type2 = NULL, $html = FALSE){
$icons = array(
"video" => "youtube-play",
"music" => "music",
"picture" => "photo",
"vine" => "vine",
"post" => "pencil-square",
"trending" => "fire",
"staff" => "star"
);
if($html == TRUE && isset($icons[$type])) return '<i class="fa fa-'.$icons[$type].'"></i>';
if($html == TRUE && isset($icons[$type2])) return '<i class="fa fa-'.$icons[$type2].'"></i>';
return isset($icons[$type]) ? $icons[$type] : NULL;
}
/**
* Allowable Formats
*/
function formats($format = NULL, $extensions_only = FALSE){
// Array of allowed extensions
$formats = array(
'image/jpeg' => 'jpg',
'image/gif' => 'gif',
'image/png' => 'png',
'video/mp4' => 'mp4',
"audio/mp3" => 'mp3'
);
if($extensions_only) return implode(", ", $formats);
if(is_null($format)) return $formats;
if(isset($formats[$format])) return $formats[$format];
return FALSE;
}
/**
* Max Upload size
* @since 1.0
**/
function max_size(){
$value = ini_get( 'upload_max_filesize' );
if ( is_numeric( $value ) ) {
return $value;
} else {
$value_length = strlen( $value );
$qty = substr( $value, 0, $value_length - 1 );
$unit = strtolower( substr( $value, $value_length - 1 ) );
switch ( $unit ) {
case 'k':
$qty *= 1024;
break;
case 'm':
$qty *= 1048576;
break;
case 'g':
$qty *= 1073741824;
break;
}
return $qty/(1024*1024);
}
return $value;
}
/**
* Detect Mobile
* @author KBRmedia
* @since 1.0
*/
function mobile(){
return (bool)preg_match('#b(ip(hone|od)|androidb.+bmobile|opera m(ob|in)i|windows (phone|ce)|blackberry'.
'|s(ymbian|eries60|amsung)|p(alm|rofile/midp|laystation portable)|nokia|fennec|htc[-_]'.
'|up.browser|[1-4][0-9]{2}x[1-4][0-9]{2})b#i', $_SERVER['HTTP_USER_AGENT'] );
}
/**
* Plugin Aliases
*/
function plug($area, $param = array()){
return Main::plug($area, $param = array());
}
function hook($area, $fn){
return Main::hook($area, $fn);
}
/**
* Build menu item
* @author KBRmedia
* @since 1.2
* @param array $menus
*/
function build_menu($menus = array(), $custom = FALSE){
return Main::menu($menus, $custom);
}
/**
* Translate strings: Two functions
* @since 1.0
* @author KBRmedia
*/
if(!function_exists("_")){
function _($text){
return Main::e($text);
}
}
if(!function_exists("e")){
function e($text){
return Main::e($text);
}
}
/**
* Ad Type
*/
function ad_type($type = null, $format = FALSE){
$types = array(
"728" => array("name" => "728x90", "format" => "primary"),
"300" => array("name" => "300x250","format" => "danger"),
"468" => array("name" => "468x60", "format" => "info"),
"resp" => array("name" => "Responsive", "format" => "warning"),
"preroll" => array("name" => "Pre-Roll", "format" => "success"),
);
if(!isset($types[$type])) return FALSE;
if($format){
return "<span class='label label-{$types[$type]["format"]}'>{$types[$type]["name"]}</span>";
}
return $types[$type]["name"];
}
/**
* [filter description]
* @param [type] $type [description]
* @return [type] [description]
*/
function filter($type){
if($type == "trending") return FALSE;
echo ' <select class="filter" data-key="filter" style="display: none">
<optgroup label="'.e("Sort by").'">
<option value="date" '.(Main::is_set('filter','date') ? 'selected': '').'>'.e("Date").'</option>
<option value="views" '.(Main::is_set('filter','views') ? 'selected': '').'>'.e("Views").'</option>
<option value="likes" '.(Main::is_set('filter','likes') ? 'selected': '').'>'.e("Likes").'</option>
<option value="comments" '.(Main::is_set('filter','comments') ? 'selected': '').'>'.e("Comments").'</option>
</optgroup>
</select>';
}
/**
* [providers description]
* @return [type] [description]
*/
function providers(){
include(ROOT."/includes/Media.class.php");
$list = get_class_methods(new Media());
unset($list[0],$list[1],$list[2],$list[3],$list[4]);
foreach ($list as $key) {
if($key == "import_web") continue;
$providers[] = ucfirst(str_replace("import_","", $key));
}
return implode(", ", $providers);
}
/**
* [get_plugins description]
* @return [type] [description]
*/
function get_plugins(){
$return = array();
foreach (new RecursiveDirectoryIterator(PLUGINS."/") as $path){
if(!$path->isDir() && $path->getFilename()!=="." && $path->getFilename()!==".." && $path->getFilename()!=="index.php"){
$file=explode(".", $path->getFilename());
$file=$file[0];
$code=strtolower($file);
$data=token_get_all(file_get_contents($path));
$data=isset($data[1][1])?$data[1][1]:FALSE;
if(strlen($data) > 5){
if(preg_match("~Language:s(.*)~", $data,$name)){
$name=Main::truncate(strip_tags(trim($name[1])),10);
}
if(preg_match("~Author:s(.*)~", $data,$author)){
$author=strip_tags(trim($author[1]));
}
if(preg_match("~Date:s(.*)~", $data,$date)){
$date=strip_tags(trim($date[1]));
}
}
}
}
return $return;
}
/**
* To Seconds
*/
function toseconds($time){
$time = explode(":", $time);
if(isset($time[2])){
return $time[0]*24 + $time[1]*60 + $time[2];
}else{
return $time[0]*60 + $time[1];
}
}
/**
* To Time
*/
function totime($time){
if($time == "0") return "0";
if($time >= 3600) return date("G:i:s",$time);
if($time < 60) return "0:".date("s",$time);
return date("i:s",$time);
}