clipbucket/upload/admin_area/upload_thumbs.php

261 lines
No EOL
8.5 KiB
PHP

<?php
/*
**************************************************************
| Copyright (c) 2007-2010 Clip-Bucket.com. All rights reserved.
| @ Author : ArslanHassan
| @ Software : ClipBucket , © PHPBucket.com
***************************************************************
*/
require'../includes/admin_config.php';
$userquery->admin_login_check();
$userquery->login_check('video_moderation');
$pages->page_redir();
if(@$_GET['msg']){
$msg[] = clean($_GET['msg']);
}
$video = mysql_clean($_GET['video']);
//Check Video Exists or Not
if($myquery->VideoExists($video)){
# Setting Default thumb
if(isset($_POST['update_default_thumb']))
{
$myquery->set_default_thumb($video,$_POST['default_thumb']);
}
$data = get_video_details($video);
#pr($data,true);
$vid_file = VIDEOS_DIR.'/'.$data['file_directory'].'/'.get_video_file($data,false,false);
# Uploading Thumbss
if(isset($_POST['upload_thumbs'])){
if($data['files_thumbs_path']!=''){
$files_thumbs_path= $data['files_thumbs_path'];
$serverApi = str_replace('/files/thumbs', '', $files_thumbs_path);
$serverApi = $serverApi.'/actions/custom_thumb_upload.php';
$file_thumb = $_FILES['vid_thumb']['tmp_name'][0];
$postvars['mode'] = 'add';
$postvars['file_thumb'] = "@".$file_thumb;
$postvars['files_thumbs_path'] = $files_thumbs_path;
$postvars['file_directory'] = $data['file_directory'];
$postvars['file_name'] = $data['file_name'];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $serverApi);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_POSTFIELDS, $postvars);
/* Tell cURL to return the output */
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
/* Tell cURL NOT to return the headers */
curl_setopt($ch, CURLOPT_HEADER, false);
$response = curl_exec($ch);
/* Check HTTP Code */
$status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if(!$response)
e(lang($response),'w');
elseif((int)($response)){
e(lang(' remote upload successfully'),'m');
$query = "UPDATE " . tbl("video") . " SET file_thumbs_count = ".(int)($response)." WHERE videoid = ".$data['videoid'];
$db->Execute($query);
$data['file_thumbs_count'] = (int)($response);
}
else
e(lang($response),'e');
}
else{
$Upload->upload_thumbs($data['file_name'],$_FILES['vid_thumb'],$data['file_directory'],$data['thumbs_version']);
}
}
# Delete Thumb
if(isset($_GET['delete'])){
if($data['files_thumbs_path']!=''){
$file_name_num = explode('-', $_GET['delete']);
$num = get_thumb_num($_GET['delete']);
$files_thumbs_path= $data['files_thumbs_path'];
$serverApi = str_replace('/files/thumbs', '', $files_thumbs_path);
$serverApi = $serverApi.'/actions/custom_thumb_upload.php';
$postvars['total_count'] = $data['file_thumbs_count'];
$postvars['mode'] = 'delete';
$postvars['thum_num'] = $num;
$postvars['files_thumbs_path'] = $files_thumbs_path;
$postvars['file_directory'] = $data['file_directory'];
$postvars['delete_file_name'] = $_GET['delete'];
$postvars['file_name'] = $data['file_name'];
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $serverApi);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_POSTFIELDS, $postvars);
/* Tell cURL to return the output */
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
/* Tell cURL NOT to return the headers */
curl_setopt($ch, CURLOPT_HEADER, false);
$response = curl_exec($ch);
/* Check HTTP Code */
$status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
$response = json_decode($response,true);
// pr($response,true);
if(isset($response['success'])&&isset($response['rem'])){
e($response['success'],'w');
$query = "UPDATE " . tbl("video") . " SET file_thumbs_count = ".(int)($response['rem'])." WHERE videoid = ".$data['videoid'];
// pr($query,true);
$data['file_thumbs_count'] = (int)($response['rem']);
$db->Execute($query);
}
else
{
e($response['message'],'e');
pr($response,true);
}
}else
{
$file_name_num = explode('-', $_GET['delete']);
$num = get_thumb_num($_GET['delete']);
$file_name = $file_name_num[0];
delete_video_thumb($data['file_directory'],$file_name,$num);
}
}
//echo $data['file_directory'].$data['file_name'];
# Generating more thumbs
if(isset($_GET['gen_more']))
{
if($data['file_server_path'])
{
$api_path = $data['file_server_path'];
$api_path = explode('/', $api_path);
$c = count($api_path);
unset($api_path[($c-1)]);
$api_path = implode('/',$api_path);
$api_path.= '/actions/custom_thumb_upload.php';
if(isset($data['duration']))
{
$duration = $data['duration'];
}
else
{
$duration = 20;
}
$num = 3;
$file_name = $data['file_name'];
$request = curl_init($api_path);
$video_post = array(
'file_directory' =>$data['file_directory'],
'file_name' =>$file_name,
'duration' => $duration,
'dim' => $dimension,
'numbers'=>$num,
'mode'=>'gen_thumbs'
);
// send a file
curl_setopt($request, CURLOPT_POST, true);
curl_setopt(
$request,
CURLOPT_POSTFIELDS,$video_post);
// output the response
curl_setopt($request, CURLOPT_RETURNTRANSFER, true);
curl_setopt($request, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($request, CURLOPT_SSL_VERIFYPEER, false);
$returnCode = (int)curl_getinfo($request, CURLINFO_HTTP_CODE);
$results = curl_exec($request);
$decoded_results = json_decode($results,true);
// pr($decoded_results,true);
if(isset($decoded_results['total']))
{
$thumb_count = (int)$decoded_results['total'];
$update_thumb_query = "UPDATE ".tbl("video")." SET file_thumbs_count={$thumb_count}, aspect_ratio='seaweed' WHERE file_name='".$file_name."'";
$db->execute($update_thumb_query);
$data['file_thumbs_count'] = $num;
}
elseif ($decoded_results['error'])
{
e($decoded_results['error']);
}
else
{
e("Something went wrong. Note : {$results} ");
}
curl_close($request);
}
else
{
$thumbs_settings_28 = thumbs_res_settings_28();
$vid_file = get_high_res_file($data,true);
$thumbs_num = config('num_thumbs');
$thumbs_input['vid_file'] = $vid_file;
$thumbs_input['num'] = $thumbs_num;
$thumbs_input['duration'] = $data['duration'];
$thumbs_input['file_directory'] = $data['file_directory'];
$thumbs_input['file_name'] = $data['file_name'];
require_once(BASEDIR.'/includes/classes/sLog.php');
$log = new SLog();
$configs = array();
require_once(BASEDIR.'/includes/classes/conversion/ffmpeg.class.php');
$ffmpeg = new FFMpeg($configs, $log);
//pr($thumbs_settings_28,true);
foreach ($thumbs_settings_28 as $key => $thumbs_size) {
$height_setting = $thumbs_size[1];
$width_setting = $thumbs_size[0];
$thumbs_input['dim'] = $width_setting.'x'.$height_setting;
if($key == 'original'){
$thumbs_input['dim'] = $key;
$thumbs_input['size_tag'] = $key;
}else{
$thumbs_input['size_tag'] = $width_setting.'x'.$height_setting;
}
$ffmpeg->generateThumbs($thumbs_input);
}
e(lang('Video thumbs has been regenrated successfully'),'m');
$db->update(tbl('video'), array("thumbs_version"), array("2.8"), " file_name = '".$data['file_name']."' ");
}
}
Assign('data',$data);
Assign('rand',rand(44,444));
}else{
$msg[] = lang('class_vdo_del_err');
}
subtitle("Video Thumbs Manager");
template_files('upload_thumbs.html');
display_it();
?>