|
|
@@ -11,6 +11,13 @@
|
|
|
<script src="{__ADMIN_PATH}plug/validate/jquery.validate.js"></script>
|
|
|
<script src="{__FRAME_PATH}js/plugins/chosen/chosen.jquery.js"></script>
|
|
|
<script src="{__ADMIN_PATH}js/axios.min.js"></script>
|
|
|
+<!-- 新增视频上传所需JS -->
|
|
|
+<script src="{__MODULE_PATH}widget/aliyun-oss-sdk-4.4.4.min.js"></script>
|
|
|
+<script src="{__MODULE_PATH}widget/cos-js-sdk-v5.min.js"></script>
|
|
|
+<script src="{__MODULE_PATH}widget/qiniu-js-sdk-2.5.5.js"></script>
|
|
|
+<script src="{__MODULE_PATH}widget/plupload.full.min.js"></script>
|
|
|
+<script src="{__MODULE_PATH}widget/videoUpload.js"></script>
|
|
|
+
|
|
|
<style>
|
|
|
.wrapper-content {
|
|
|
padding: 0 !important;
|
|
|
@@ -297,43 +304,46 @@
|
|
|
$('#video_progress').show();
|
|
|
$('#progress_bar').css('width', '0%').text('0%');
|
|
|
|
|
|
- // 创建FormData对象
|
|
|
- var formData = new FormData();
|
|
|
- formData.append('video', file);
|
|
|
- formData.append('type', 'video');
|
|
|
-
|
|
|
- // 发起AJAX请求上传视频
|
|
|
+ // 获取签名信息
|
|
|
$.ajax({
|
|
|
- url: "{:Url('admin/widget.upload/upload')}",
|
|
|
- type: 'POST',
|
|
|
- data: formData,
|
|
|
- processData: false,
|
|
|
- contentType: false,
|
|
|
- xhr: function() {
|
|
|
- var xhr = new window.XMLHttpRequest();
|
|
|
- xhr.upload.addEventListener("progress", function(evt) {
|
|
|
- if (evt.lengthComputable) {
|
|
|
- var percentComplete = Math.round((evt.loaded / evt.total) * 100);
|
|
|
- $('#progress_bar').css('width', percentComplete + '%').text(percentComplete + '%');
|
|
|
+ url: "https://shop.yzcyzjkc.com/admin/widget.video/get_signature",
|
|
|
+ type: 'GET',
|
|
|
+ success: function(signatureResponse) {
|
|
|
+ if (signatureResponse.code != 200) {
|
|
|
+ $eb.message('error', signatureResponse.msg || '获取上传凭证失败');
|
|
|
+ $('#video_progress').hide();
|
|
|
+ return;
|
|
|
+ }
|
|
|
+
|
|
|
+ // 使用AdminUpload进行上传
|
|
|
+ AdminUpload.upload(signatureResponse.data.uploadType, {
|
|
|
+ token: signatureResponse.data.uploadToken || '',
|
|
|
+ file: file,
|
|
|
+ accessKeyId: signatureResponse.data.accessKey || '',
|
|
|
+ accessKeySecret: signatureResponse.data.secretKey || '',
|
|
|
+ bucketName: signatureResponse.data.storageName || '',
|
|
|
+ region: signatureResponse.data.storageRegion || '',
|
|
|
+ domain: signatureResponse.data.domain || '',
|
|
|
+ uploadIng: function(progress) {
|
|
|
+ $('#progress_bar').css('width', progress + '%').text(progress + '%');
|
|
|
}
|
|
|
- }, false);
|
|
|
- return xhr;
|
|
|
- },
|
|
|
- success: function(response) {
|
|
|
- if (response.code == 200) {
|
|
|
- var videoUrl = response.data.src;
|
|
|
- $('#video_link').val(videoUrl);
|
|
|
+ }).then(function(res) {
|
|
|
+ // 上传成功
|
|
|
+ $('#video_link').val(res.url);
|
|
|
$('#video_preview').show();
|
|
|
- $('#video_preview video').attr('src', videoUrl);
|
|
|
+ $('#video_preview video').attr('src', res.url);
|
|
|
$('#upload_video_btn').text('确认添加');
|
|
|
$eb.message('success', '视频上传成功');
|
|
|
- } else {
|
|
|
- $eb.message('error', response.msg || '视频上传失败');
|
|
|
- }
|
|
|
- $('#video_progress').hide();
|
|
|
+ $('#video_progress').hide();
|
|
|
+ }).catch(function(err) {
|
|
|
+ // 上传失败
|
|
|
+ console.error('视频上传失败:', err);
|
|
|
+ $eb.message('error', '视频上传失败: ' + (err.message || '未知错误'));
|
|
|
+ $('#video_progress').hide();
|
|
|
+ });
|
|
|
},
|
|
|
error: function() {
|
|
|
- $eb.message('error', '服务器错误,请稍后再试');
|
|
|
+ $eb.message('error', '获取上传凭证失败');
|
|
|
$('#video_progress').hide();
|
|
|
}
|
|
|
});
|