解決THINKCMF後臺文章的相冊圖集只能上傳一個圖片的問題

遇到的問題:
最近使用了THINKCMF給客戶開發了一個企業網站,客戶在使用了一段時間後打電話說後臺文章編輯頁面有問題
通過溝經過知道,在後臺文章編輯和添加頁面相冊圖集每次只能上傳一張圖片

 
在跟客戶確認了全部的細節後就開始解決,首頁在本地進行了測試發現客戶說的是對的,因而就查看源代碼
在\tpl_admin\simpleboot\Asset\swfupload.html 發現 上傳的圖片數量是固定的,找到問題後就開始在網絡上搜索有沒有現有的解決方案
在網絡上沒有找到現有的解決方案,因而本身動手直接在源碼裏解決
解決方案:
實現原理:主要是在頁面調用時加了一個參數,而後在上傳頁面根據此參數動態設置要上傳的數量
 
1.修改 \tpl_admin\simpleboot\Asset\swfupload.html源文件代碼(僅修改過的JS文件列出)
<script>
/**
* @Author: HTL
* @Email: Huangyuan413026@163.com
* @DateTime: 2015-07-13 14:23:01
* @Description: 經過參數自定義上傳的數量
*/
var _file_upload_limit="<php>echo $_GET['max_count'];</php>";
//默認爲1個,爲0則表示不限制
if(_file_upload_limit.length<=0)
_file_upload_limit=1;
//用於圖庫加載
function set_iframe(id,src){
if($("#"+id).attr("src")==""){
$("#"+id).attr("src",src);
}
}
//網絡地址
function addonlinefile(obj){
var strs = $(obj).val()?'|'+ $(obj).val():'';
$('#att-status').html(strs);
}
//是否添加水印設置
function change_params(){
if($('#watermark_enable').attr('checked')){
swfu.addPostParam('watermark_enable','1');
}else{
swfu.removePostParam('watermark_enable');
}
}
//圖片選擇處理回調
function album_cancel(obj,id,source){
//圖片地址
var src = $(obj).attr("data-path");
//上傳圖片文件名
var filename = $(obj).attr("title");
//選擇狀態中的數據對象
var selected = $("#fsUploadProgress .selected");
if($("#aid-"+id).hasClass('selected')){
$("#aid-"+id).removeClass("selected");
selected = $("#fsUploadProgress .selected");
var imgstr = $("#att-status").html();
var length = selected.children("img").length;
var strs = filenames ='';
for(var i=0;i<length;i++){
strs +='|'+selected.children("img").eq(i).attr('path');
filenames +='|'+selected.children("img").eq(i).attr('title');
}
$('#att-status').html(strs);
$('#att-status').html(filenames);
}else{
var num = $('#att-status').html().split('|').length;
var file_upload_limit = _file_upload_limit;//自定義上傳的數量
//_file_upload_limit=0爲不限制數量
if(file_upload_limit>0&& num > file_upload_limit){alert('不能選擇超過'+file_upload_limit+'個附件');returnfalse;}
$("#aid-"+id).addClass("selected");
$('#att-status').append('|'+src);
$('#att-name').append('|'+filename);
}
}
</script>
<scripttype="text/javascript">
var swfu ='';
$(document).ready(function(){
Wind.use("swfupload",GV.DIMAUB+"statics/js/swfupload/handlers.js",function(){
swfu =newSWFUpload({
flash_url:"__ROOT__/statics/js/swfupload/swfupload.swf",
upload_url:"{:u('asset/swfupload')}",
file_post_name :"Filedata",
post_params:{
"{:C('VAR_SESSION_ID')}":"{:session_id()}",
"thumb_width":"0",
"thumb_height":"0",
"watermark_enable":"1",
"filetype_post":"jpg|jpeg|gif|png|bmp|zip"
},
file_size_limit:"20240KB",
file_types:"*.jpg;*.jpeg;*.gif;*.png;*.bmp;*.zip",
file_types_description:"All Files",
file_upload_limit:_file_upload_limit,//自定義上傳的數量
custom_settings :{progressTarget :"fsUploadProgress",cancelButtonId :"btnCancel"},
button_image_url:"",
button_width:75,
button_height:28,
button_placeholder_id:"buttonPlaceHolder",
button_text_style:"",
button_text_top_padding:3,
button_text_left_padding:12,
button_window_mode:SWFUpload.WINDOW_MODE.TRANSPARENT,
button_cursor:SWFUpload.CURSOR.HAND,
file_dialog_start_handler : fileDialogStart,
file_queued_handler : fileQueued,
file_queue_error_handler:fileQueueError,
file_dialog_complete_handler:fileDialogComplete,
upload_progress_handler:uploadProgress,
upload_error_handler:uploadError,
upload_success_handler:uploadSuccess,
upload_complete_handler:uploadComplete
});
});
})</script>
<script>
$(function(){
$("#att-status").html("");
$("#att-status-del").html("");
$("#att-name").html("");
});
//設置上傳的最大數量,爲0表示不限制數量
if(_file_upload_limit<=0)
   $("#max_count").text("N");
else
   $("#max_count").text(_file_upload_limit);
</script>

 

2.替換\tpl_admin\simpleboot\Portal\AdminPost\裏的edit.html和add.html如下內容
   
<ahref="javascript:;"style="margin:5px0;"onclick="javascript:flashupload('albums_images','圖片上傳','photos',change_images,'10,gif|jpg|jpeg|png|bmp,0','','','')"class="btn">選擇圖片 </a>
//更改成,max_count=0表示不限制,不設置默認爲1
<ahref="javascript:;"style="margin:5px0;"onclick="javascript:flashupload('albums_images','圖片上傳','photos',change_images,'10,gif|jpg|jpeg|png|bmp,0','','&max_count=0','')"class="btn">選擇圖片 </a>

 

max_count=0
 
max_count=5 或指定數字
max_count=未設置 默認爲1
 
    



相關文章
相關標籤/搜索