Вход Регистрация
Файл: upload/module/video/include/component/controller/add.class.php
Строк: 111
<?php
/**
 * [PHPFOX_HEADER]
 */

defined('PHPFOX') or exit('NO DICE!');

/**
 * 
 * 
 * @copyright        [PHPFOX_COPYRIGHT]
 * @author          Raymond_Benc
 * @package         Phpfox_Component
 * @version         $Id: add.class.php 4523 2012-07-19 07:20:55Z Raymond_Benc $
 */
class Video_Component_Controller_Add extends Phpfox_Component
{
    
/**
     * Class process method wnich is used to execute this component.
     */
    
public function process()
    {
        
Phpfox::isUser(true);
        
Phpfox::getUserParam('video.can_upload_videos'true);
        
        
$sModule $this->request()->get('module'false);
        
$iItem =  $this->request()->getInt('item'false);        
        
        
$aCallback false;
        if (
$sModule !== false && $iItem !== false && Phpfox::hasCallback($sModule'getVideoDetails'))
        {            
            if ((
$aCallback Phpfox::callback($sModule '.getVideoDetails', array('item_id' => $iItem))))
            {            
                
$this->template()->setBreadcrumb($aCallback['breadcrumb_title'], $aCallback['breadcrumb_home']);
                
$this->template()->setBreadcrumb($aCallback['title'], $aCallback['url_home']);    
                if (
$sModule == 'pages' && !Phpfox::getService('pages')->hasPerm($iItem'video.share_videos'))
                {
                    
$sPhrase Phpfox::getPhrase('video.unable_to_view_this_item_due_to_privacy_settings');
                    if ( (
$sPlugin Phpfox_Plugin::get('video.component_controller_add_sphrase'))){ eval($sPlugin); }
                    return 
Phpfox_Error::display($sPhrase);
                }
                else
                {
                    
$sPhrase '';
                    if ( (
$sPlugin Phpfox_Plugin::get('video.component_controller_add_sphrase_2'))){ eval($sPlugin); }
                    if (!empty(
$sPhrase))
                    {
                        return 
Phpfox_Error::display($sPhrase);
                    }
                }
            }
        }        
        
        if ((
$aVals $this->request()->get('val')))
        {
            if ((
$iFlood Phpfox::getUserParam('video.flood_control_videos')) !== 0)
            {
                
$aFlood = array(
                    
'action' => 'last_post'// The SPAM action
                    
'params' => array(
                        
'field' => 'time_stamp'// The time stamp field
                        
'table' => Phpfox::getT('video'), // Database table we plan to check
                        
'condition' => 'user_id = ' Phpfox::getUserId(), // Database WHERE query
                        
'time_stamp' => $iFlood 60 // Seconds);    
                    
)
                );
                                         
                
// actually check if flooding
                
if (Phpfox::getLib('spam')->check($aFlood))
                {
                    
Phpfox_Error::set(Phpfox::getPhrase('video.you_are_sharing_a_video_a_little_too_soon') . ' ' Phpfox::getLib('spam')->getWaitTime());    
                }
            }                    
                    
            if (
Phpfox_Error::isPassed())
            {            
                if (
Phpfox::getService('video.grab')->get($aVals['url']))
                {            
                    if (
$iId Phpfox::getService('video.process')->addShareVideo($aVals))
                    {
                        
$aVideo Phpfox::getService('video')->getForEdit($iId);
                        
                        if (
Phpfox::getService('video.grab')->hasImage())
                        {                    
                            if (isset(
$aVals['module']) && isset($aVals['item']) && Phpfox::hasCallback($aVals['module'], 'uploadVideo'))
                            {
                                
$aCallback Phpfox::callback($aVals['module'] . '.uploadVideo'$aVals['item']);
                    
                                if (
$aCallback !== false)
                                {
                                    
$this->url()->send($aCallback['url_home'], array('video'$sTitle), Phpfox::getPhrase('video.video_successfully_added'));
                                }
                            }
                            
                            
$this->url()->permalink('video'$aVideo['video_id'], $aVideo['title'], truePhpfox::getPhrase('video.video_successfully_added'));
                        }
                        else 
                        {
                            
$this->url()->send('video.edit.photo', array('id' => $aVideo['video_id']), Phpfox::getPhrase('video.video_successfull_added_however_you_will_have_to_manually_upload_a_photo_for_it'));
                        }
                    }
                }
            }
            
            
$sModule = (isset($aVals['module']) ? $aVals['module'] : false);
            
$iItem =  (isset($aVals['item']) ? $aVals['item'] : false);
        }
        
        
$sMethod Phpfox::getParam('video.video_enable_mass_uploader') && $this->request()->get('method','') != 'simple' 'massuploader' 'simple';
        
$sMethodUrl str_replace(array('method_simple/','method_massuploader/'), '',$this->url()->getFullUrl()) . 'method_' . ($sMethod == 'simple' 'massuploader' 'simple') . '/';                
    
        if (
$sMethod == 'massuploader')
        {
            
$iMaxFileSize = (Phpfox::getUserParam('video.video_file_size_limit') === null : ((Phpfox::getUserParam('video.video_file_size_limit') / 1) * 1048576));
            if (
Phpfox::isModule('photo'))
            {
                
$this->template()->setPhrase(array('photo.you_can_upload_a_jpg_gif_or_png_file'));
            }
            
$this->template()->setPhrase(array(                            
                        
'core.name',
                        
'core.status',
                        
'core.in_queue',
                        
'core.upload_failed_your_file_size_is_larger_then_our_limit_file_size',
                        
'core.more_queued_than_allowed'
                    
)
                )
                ->
setHeader(array(
                
'massuploader/swfupload.js' => 'static_script',
                
'massuploader/upload.js' => 'static_script',
                
'<script type="text/javascript">
                    $oSWF_settings =
                    {
                        object_holder: function()
                        {
                            return '
swf_video_upload_button_holder';
                        },
                        
                        div_holder: function()
                        {
                            return '
swf_video_upload_button';
                        },
                        
                        get_settings: function()
                        {        
                            swfu.setUploadURL("' 
$this->url()->makeUrl('video.frame') . '");
                            swfu.setFileSizeLimit("'
.$iMaxFileSize .' B");
                            swfu.setFileUploadLimit(1);
                            swfu.setFileQueueLimit(1);
                            swfu.customSettings.flash_user_id = '
.Phpfox::getUserId() .';
                            swfu.customSettings.sHash = "'
.Phpfox::getService('core')->getHashForUpload().'";
                            swfu.setFileTypes("*.mpg; *.mpeg; *.wmv; *.avi; *.mov; *.flv","Video files (mpg, mpeg, wmv, avi, mov or flv)");
                            swfu.atFileQueue = function()
                            {
                                $('
#js_upload_actual_inner_form').slideUp();
                            
                                
$('#js_video_form :input').each(function(iKeyoObject)
                                {                                    
                                    
swfu.addPostParam($(oObject).attr('name'), $(oObject).val());
                                });
                            }
                        }
                    }
                </
script>',
                )
            );            
        }        
        
        $aMenus = array();        
        if (Phpfox::getParam('
video.allow_video_uploading'))
        {
            $aMenus['
file'] = Phpfox::getPhrase('video.file_upload');
        }
        $aMenus['
url'] = Phpfox::getPhrase('video.paste_url');
        
        $this->template()->buildPageMenu('
js_upload_video', $aMenus);
        
        if (Phpfox::getParam('
video.video_upload_service'))
        {
            Phpfox::getService('
video.process')->createVidlyToken();
            $aVidlyParams = array(
                '
phrases' => array(
                    '
select_video' => Phpfox::getPhrase('video.select_video')
                )
            );
            $this->template()->assign('
sVidlyParams', urlencode(json_encode($aVidlyParams)));
            $this->template()->setHeader('
<script type="text/javascript">$Behavior.checkOnVideo = function(){setInterval("$('#js_video_form').ajaxCall('video.checkOnVideo');"5000);}</script>');
        }
        
        $this->template()->setTitle(Phpfox::getPhrase('
video.upload_share_a_video'))
            ->setBreadcrumb(Phpfox::getPhrase('
video.video'), ($aCallback === false ? $this->url()->makeUrl('video') : $aCallback['url_home_photo']))
            ->setBreadcrumb(Phpfox::getPhrase('
video.upload_share_a_video'), ($aCallback === false ? $this->url()->makeUrl('video.add') : $this->url()->makeUrl('video.add', array('module' => $sModule, 'item' => $iItem))), true)
            ->setFullSite()            
            ->assign(array(
                    '
sModule' => $sModule,
                    '
iItem' => $iItem,                
                    '
sMethod' => $sMethod,
                    '
sMethodUrl' => $sMethodUrl            
                )
            )
            ->setHeader('
cache', array(
                    '
upload.js' => 'module_video',
                    '
video.js' => 'module_video'
                )
            );
    }
    
    /**
     * Garbage collector. Is executed after this class has completed
     * its job and the template has also been displayed.
     */
    public function clean()
    {
        (($sPlugin = Phpfox_Plugin::get('
video.component_controller_add_clean')) ? eval($sPlugin) : false);
    }
}

?>
Онлайн: 1
Реклама