Ejemplo n.º 1
0
 /**
  * 同步视频模型栏目
  */
 public function video_category_tb()
 {
     if (module_exists('video')) {
         $setting = getcache('video', 'video');
         pc_base::load_app_class('ku6api', 'video', 0);
         $ku6api = new ku6api($setting['sn'], $setting['skey']);
         $ku6api->get_categorys();
     }
     return true;
 }
Ejemplo n.º 2
0
 function video($field, $value)
 {
     $post_f = $field . '_video';
     if (isset($_POST[$post_f]) && !empty($_POST[$post_f])) {
         $value = 1;
         $video_store_db = pc_base::load_model('video_store_model');
         $setting = getcache('video', 'video');
         pc_base::load_app_class('ku6api', 'video', 0);
         $ku6api = new ku6api($setting['sn'], $setting['skey']);
         pc_base::load_app_class('v', 'video', 0);
         $v_class = new v($video_store_db);
         $GLOBALS[$field] = '';
         foreach ($_POST[$post_f] as $_k => $v) {
             if (!$v['vid'] && !$v['videoid']) {
                 unset($_POST[$post_f][$_k]);
             }
             $info = array();
             if (!$v['title']) {
                 $v['title'] = safe_replace($this->data['title']);
             }
             if ($v['vid']) {
                 $info = array('vid' => $v['vid'], 'title' => $v['title'], 'cid' => intval($this->data['catid']));
                 $info['channelid'] = intval($_POST['channelid']);
                 if ($this->data['keywords']) {
                     $info['tag'] = addslashes($this->data['keywords']);
                 }
                 if ($this->data['description']) {
                     $info['description'] = addslashes($this->data['description']);
                 }
                 $get_data = $ku6api->vms_add($info);
                 if (!$get_data) {
                     continue;
                 }
                 $info['vid'] = $get_data['vid'];
                 $info['addtime'] = SYS_TIME;
                 $info['keywords'] = $info['tag'];
                 unset($info['cid'], $info['tag']);
                 $info['userupload'] = 1;
                 $videoid = $v_class->add($info);
                 $GLOBALS[$field][] = array('videoid' => $videoid, 'listorder' => $v['listorder']);
             } else {
                 $v_class->edit(array('title' => $v['title']), $v['videoid']);
                 $GLOBALS[$field][] = array('videoid' => $v['videoid'], 'listorder' => $v['listorder']);
             }
         }
     } else {
         $value = 0;
     }
     return $value;
 }
Ejemplo n.º 3
0
    function video($field, $value, $fieldinfo)
    {
        $value_data = '';
        //获取flash上传属性
        pc_base::load_app_class('ku6api', 'video', 0);
        $setting = getcache('video', 'video');
        if (empty($setting)) {
            return L('please_input_video_setting');
        }
        $ku6api = new ku6api($setting['sn'], $setting['skey']);
        $flash_info = $ku6api->flashuploadparam();
        //获取上传的视频
        $key = 0;
        $list_str = "<div style='padding:1px'><ul class=\"tbsa\" id=\"video_{$field}_list\">";
        if ($value) {
            $video_content_db = pc_base::load_model('video_content_model');
            $video_store_db = pc_base::load_model('video_store_model');
            $videos = $video_content_db->select(array('contentid' => $this->id), 'videoid, listorder', '', '`listorder` ASC', '', 'videoid');
            if (!empty($videos)) {
                $videoids = '';
                foreach ($videos as $v) {
                    $videoids .= $v['videoid'] . ',';
                }
                $videoids = substr($videoids, 0, -1);
                $result = $video_store_db->select("`videoid` IN({$videoids})", '`videoid`, `title`, `picpath`', '', '', '', 'videoid');
                if (is_array($result)) {
                    //首先对$result按照$videos的videoid排序
                    foreach ($videos as $_vid => $v) {
                        $new_result[] = $result[$_vid];
                    }
                    unset($result, $_vid, $v);
                    foreach ($new_result as $_k => $r) {
                        $key = $_k + 1;
                        $picpath = $r['picpath'] ? $r['picpath'] : IMG_PATH . 'nopic.gif';
                        $list_str .= "<li class=\"ac\" id=\"video_{$field}_{$key}\"><div class=\"r1\"><img src=\"{$r['picpath']}\" onerror=\"" . IMG_PATH . "nopic.jpg\" width=\"132\" height=\"75\"><input type='text' name='{$field}_video[{$key}][title]' value='" . $r['title'] . "' class=\"input-text ipt_box\"><input type='hidden' name='{$field}_video[{$key}][videoid]' value='{$r[videoid]}'><div class=\"r2\"><span class=\"l\"><label>" . L('listorder') . "</label><input type='text' name='{$field}_video[{$key}][listorder]' value='" . $videos[$r['videoid']]['listorder'] . "' class=\"input-text\"></span><span class=\"r\"> <a href=\"javascript:remove_div('video_{$field}_{$key}')\">" . L('delete') . "</a></span></li>";
                    }
                }
            }
        }
        $list_str .= "</ul></div>";
        $data = '';
        if (!defined('SWFOBJECT_INIT')) {
            $data .= '<script type="text/javascript" src="' . JS_PATH . 'video/swfobject2.js"></script>';
            $data .= '<script type="text/javascript" src="' . JS_PATH . 'video/vod2ckedit.js"></script>';
            define('SWFOBJECT_INIT', 1);
            $data .= '<SCRIPT LANGUAGE="JavaScript">

<!--

var js4swf = {

    onInit: function(list)

    {

        // 初始化时调用, 若 list.length > 0 代表有可续传文件

        // [{file}, {file}]

if(list.length > 0) {

    var length = list.length-1;

$("#list_name").html("' . L('file', '', 'video') . '"+list[length].name+"' . L('failed_uplaod_choose_again', '', 'video') . '");

}

        this.showMessage("init", list);

    },

    onSelect: function(files)

    {

        // 选中文件后调用, 返回文件列表

        // [{file}, {file}]

        this.showMessage("select", files);

    },

    onSid: function(evt)

    {

        // 获得 sid 后返回, 更新 sid 用 (key, sid, name, type, size)

$("#video_title").val(evt.name);
		var ku6vid = evt.vid;
		$.get(\'index.php\', {m:\'video\', c:\'vid\', a:\'check\', vid:ku6vid});
        this.showMessage("sid", evt);

    },

    onStart: function()

    {

        // 开始上传 (选择文件后自动开始)

        this.showMessage("start");

    },

    onCancel: function()

    {

        // 上传取消事件



        this.showMessage("cancel");

    },

    onProgress: function(evt)

    {

        // 上传进度事件 (bytesLoaded, bytesTotal, speed) m=1 时没有这事件

        this.showMessage("progress", evt);

    },

    onComplete: function(evt)

    {

        // 上传完成事件 (包含文件信息和完成后返回数据(data))
$("#vid").val(evt.vid);
var video_num = parseInt($("#key").val()) + 1;
var title = $("#video_title").val();
var vid = $("#vid").val();
var html = "<li id=\\"video_' . $field . '_"+video_num+"\\"><div class=\\"r1\\"><img src=\\"' . IMG_PATH . 'nopic.jpg\\" width=\\"132\\" height=\\"75\\"><input type=\\"text\\" name=\\"' . $field . '_video["+video_num+"][title]\\" value=\\""+title+"\\" class=\\"input-text\\"><input type=\\"hidden\\" name=\\"' . $field . '_video["+video_num+"][vid]\\" value=\\""+vid+"\\"><div class=\\"r2\\"><span class=\\"l\\"><label>' . L('listorder') . '</label><input type=\\"text\\" class=\\"input-text\\" name=\\"' . $field . '_video["+video_num+"][listorder]\\" value=\\""+video_num+"\\" ></span><span class=\\"r\\"> <a href=\\"javascript:remove_div(\'video_' . $field . '_"+video_num+"\')\\">' . L('delete') . '</a></span></li>";

$("#video_' . $field . '_list").append(html);
$("#key").val(video_num);
$("#video_title").val("");

swfobject.embedSWF("' . $flash_info['flashurl'] . '", "ku6uploader", "450", "45", "10.0.0", null, flashvars, params, attributes);


//document.getElementById("frm").submit();

        this.showMessage("complete", evt);

        

    },

    onWarn: function(evt)

    {

        // 报错事件 (key, message)

        //this.showMessage("warn", evt);

alert(evt.msg);

    },

    showMessage: function()

    {

        console.log(arguments);

    }

};

//-->

</SCRIPT>
<script type="text/javascript">
var flashvars = { m: "1", u: "' . $flash_info['userid'] . '", ctime: "' . $flash_info['passport_ctime'] . '", sig:"' . $flash_info['passport_sig'] . '", c: "vms", t: "1", n: "js4swf", k: "190000" ,ms:"39",s: "8000000"};
var params = { allowScriptAccess: "always" , wmode: "transparent"};
var attributes = { };
//swfobject.embedSWF("http://player.ku6cdn.com/default/podcast/upload/201104261840/ku6uploader.swf", "ku6uploader", "450", "45", "10.0.0", null, flashvars, params, attributes);
swfobject.embedSWF("' . $flash_info['flashurl'] . '", "ku6uploader", "450", "45", "10.0.0", null, flashvars, params, attributes);
</script>';
        }
        $authkey = upload_key("{$upload_number},{$upload_allowext},{$isselectimage}");
        $video_store_sel = defined('IN_ADMIN') ? '<div class="picBut cu video_btn" style="float:right; margin-top:10px;"><a herf="javascript:void(0);" onclick="javascript:video_store_select(\'' . $field . '_videoes\', \'' . L('choose_videoes') . '\',\'video_' . $field . '_list\',change_videoes, \'' . $_GET['pc_hash'] . '\')"> ' . L('videoes_store') . ' </a></div>' : '';
        $vms_str = $flash_info['allow_upload_to_vms'] ? '<label class="ib cu" style="width:125px"><input type="radio" name="channelid" value="2">' . L('upload_to_ku6vms', '', 'video') . ' </label>' : '';
        return $data . '<input name="info[' . $field . ']" type="hidden" value="1"><input type="hidden" id="key" value="' . $key . '"><fieldset class="blue pad-10">
        <legend>' . L('videoes_lists') . '</legend><center><div class="onShow" id="nameTip">' . L('videoes_num') . '</center><div id="videoes" class="picList">' . $list_str . '</div>
		</fieldset>
		
		<table width="100%" border="0" cellspacing="1" class="tbb">
    <tbody><tr>
      <td width="15%" height="40">' . L('select_upload_channel', '', 'video') . '</td>
      <td height="40"><label class="ib cu" style="width:125px"><input type="radio" name="channelid" value="1" checked> ' . L('upload_to_ku6') . ' </label>' . $vms_str . '
	  </td>
    </tr>
	<tr>
      <td width="15%" height="40"><div align="right" ><input class="input_style" type="text" value="' . L('video_title', '', 'video') . '" name="video_title" id="video_title" size="10"></div></td>
      <td height="40">
	  ' . $video_store_sel . '
	  <div id="ku6uploader"></div><BR><span id="list_name" style="color:red"></span></td><input type="hidden" id="vid" name="vid" value="">
    </tr>
  </tbody></table>';
    }
Ejemplo n.º 4
0
 /**
  * Function UPLOAD_VIDEO
  * 用户上传视频
  */
 public function upload_video()
 {
     $memberinfo = $this->memberinfo;
     $grouplist = getcache('grouplist');
     //判断会员组是否允许投稿
     if (!$grouplist[$memberinfo['groupid']]['allowpost']) {
         showmessage(L('member_group') . L('publish_deny'), HTTP_REFERER);
     }
     //判断每日投稿数
     $this->content_check_db = pc_base::load_model('content_check_model');
     $todaytime = strtotime(date('y-m-d', SYS_TIME));
     $_username = $this->memberinfo['username'];
     $allowpostnum = $this->content_check_db->count("`inputtime` > {$todaytime} AND `username`='{$_username}'");
     if ($grouplist[$memberinfo['groupid']]['allowpostnum'] > 0 && $allowpostnum >= $grouplist[$memberinfo['groupid']]['allowpostnum']) {
         showmessage(L('allowpostnum_deny') . $grouplist[$memberinfo['groupid']]['allowpostnum'], HTTP_REFERER);
     }
     //加载视频库配置信息
     pc_base::load_app_class('ku6api', 'video', 0);
     $setting = getcache('video', 'video');
     if (empty($setting)) {
         showmessage('上传功能还在开发中,请稍后重试!');
     }
     $ku6api = new ku6api($setting['sn'], $setting['skey']);
     if (isset($_POST['dosubmit'])) {
         $_POST['info']['catid'] = isset($_POST['info']['catid']) ? intval($_POST['info']['catid']) : showmessage('请选择栏目!');
         $_POST['info']['title'] = isset($_POST['info']['title']) ? safe_replace($_POST['info']['title']) : showmessage('标题不能为空!');
         $_POST['info']['keywords'] = isset($_POST['info']['keywords']) ? safe_replace($_POST['info']['keywords']) : '';
         $_POST['info']['description'] = isset($_POST['info']['description']) ? safe_replace($_POST['info']['description']) : '';
         //查询此模型下的视频字段
         $field = get_video_field($_POST['info']['catid']);
         if (!$field) {
             showmessage('上传功能还在开发中,请稍后重试!');
         }
         $_POST['info'][$field] = 1;
         $_POST[$field . '_video'] = array(1 => array('title' => $_POST['info']['title'], 'vid' => $_POST['vid'], 'listorder' => 1));
         unset($_POST['vid']);
         $this->publish();
     } else {
         $categorys = video_categorys();
         if (is_array($categorys) && !empty($categorys)) {
             $cat = array();
             $priv_db = pc_base::load_model('category_priv_model');
             //加载栏目权限表数据模型
             foreach ($categorys as $cid => $c) {
                 if ($c['child'] == 0 && $c['type'] == 0 && !$priv_db->get_one(array('catid' => $cid, 'roleid' => $memberinfo['groupid'], 'is_admin' => 0, 'action' => 'add'))) {
                     unset($categorys[$cid]);
                 }
             }
             if (empty($categorys)) {
                 showmessage(L('category') . L('publish_deny'), APP_PATH . 'index.php?m=member');
             }
             foreach ($categorys as $cid => $c) {
                 if ($c['child']) {
                     $ischild = 1;
                     $categorys[$cid]['disabled'] = 'disabled';
                 }
                 $cat[$cid] = $c['catname'];
             }
             if (!$ischild) {
                 $cat_list = form::radio($cat, '', 'name="info[catid]"', '90');
             } else {
                 $tree = pc_base::load_sys_class('tree');
                 $str = "<option value='\$catid' \$selected \$disabled>\$spacer \$catname</option>";
                 $tree->init($categorys);
                 $string = $tree->get_tree(0, $str);
                 $cat_list = '<select name="info[catid]" id="catid"><option value="0">请选择栏目</option>' . $string . '</select>';
             }
         }
         $flash_info = $ku6api->flashuploadparam();
         //加载视频上传工具信息
         include template('member', 'upload_video');
     }
 }
Ejemplo n.º 5
0
<?php

defined('IN_PHPCMS') or exit('No permission resources.');
/**
 * 
 * 视频状态接收接口 vms系统收到ku6系统中视频状态改变时post到cms系统中,此接口负责接收数据改变视频库中视频的状态
 * 
 * @author				chenxuewang
 * @link				http://www.phpcms.cn http://www.ku6.cn
 * @copyright			CopyRight (c) 2006-2012 酷溜网(北京)科技有限公司
 * @license			http://www.phpcms.cn/license/
 * ---------------------------------------------------------------------
 * 参数说明
 * vid, picpath, size, timelen, status
 * 
 * vid,视频vid,视频的唯一的标示符。区分视频
 * 
 * picpath 视频缩略图
 * 
 * size 视频大小
 * 
 * timelen 视频播放时长
 * 
 * status 视频目前的状态
 */
$video_setting = getcache('video');
pc_base::load_app_func('global', 'video');
pc_base::load_app_class('ku6api', 'video', 0);
$ku6api = new ku6api($video_setting['skey'], $video_setting['sn']);
$msg = $ku6api->update_video_status_from_vms();
exit($msg);