mirror of
https://github.com/Lastorder-DC/rhymix.git
synced 2026-01-09 03:32:00 +09:00
파일 용량 제한 기능 추가
git-svn-id: http://xe-core.googlecode.com/svn/sandbox@7925 201d5d3c-b55e-5fd7-737f-ddc643e51545
This commit is contained in:
parent
fe7291f26d
commit
de33d86683
11 changed files with 71 additions and 3 deletions
|
|
@ -273,4 +273,6 @@
|
|||
$lang->edit->autosave_hours_ago = '%d시간 전';
|
||||
$lang->edit->autosave_min_ago = '%d분 전';
|
||||
$lang->edit->autosave_mins_ago = '%d분 전';
|
||||
|
||||
$lang->edit->upload_not_enough_quota = '허용된 용량이 부족하여 파일을 첨부할 수 없습니다.';
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -269,4 +269,6 @@
|
|||
$lang->edit->autosave_hours_ago = '%d시간 전';
|
||||
$lang->edit->autosave_min_ago = '%d분 전';
|
||||
$lang->edit->autosave_mins_ago = '%d분 전';
|
||||
|
||||
$lang->edit->upload_not_enough_quota = '허용된 용량이 부족하여 파일을 첨부할 수 없습니다.';
|
||||
?>
|
||||
|
|
@ -273,4 +273,6 @@
|
|||
$lang->edit->autosave_hours_ago = '%d시간 전';
|
||||
$lang->edit->autosave_min_ago = '%d분 전';
|
||||
$lang->edit->autosave_mins_ago = '%d분 전';
|
||||
|
||||
$lang->edit->upload_not_enough_quota = '허용된 용량이 부족하여 파일을 첨부할 수 없습니다.';
|
||||
?>
|
||||
|
|
@ -275,4 +275,6 @@
|
|||
$lang->edit->autosave_hours_ago = '%d시간 전';
|
||||
$lang->edit->autosave_min_ago = '%d분 전';
|
||||
$lang->edit->autosave_mins_ago = '%d분 전';
|
||||
|
||||
$lang->edit->upload_not_enough_quota = '허용된 용량이 부족하여 파일을 첨부할 수 없습니다.';
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -275,4 +275,6 @@
|
|||
$lang->edit->autosave_hours_ago = '%d시간 전';
|
||||
$lang->edit->autosave_min_ago = '%d분 전';
|
||||
$lang->edit->autosave_mins_ago = '%d분 전';
|
||||
|
||||
$lang->edit->upload_not_enough_quota = '허용된 용량이 부족하여 파일을 첨부할 수 없습니다.';
|
||||
?>
|
||||
|
|
@ -275,4 +275,6 @@
|
|||
$lang->edit->autosave_hours_ago = '%d시간 전';
|
||||
$lang->edit->autosave_min_ago = '%d분 전';
|
||||
$lang->edit->autosave_mins_ago = '%d분 전';
|
||||
|
||||
$lang->edit->upload_not_enough_quota = '허용된 용량이 부족하여 파일을 첨부할 수 없습니다.';
|
||||
?>
|
||||
|
|
@ -276,4 +276,6 @@
|
|||
$lang->edit->autosave_hours_ago = '%d시간 전';
|
||||
$lang->edit->autosave_min_ago = '%d분 전';
|
||||
$lang->edit->autosave_mins_ago = '%d분 전';
|
||||
|
||||
$lang->edit->upload_not_enough_quota = '허용된 용량이 부족하여 파일을 첨부할 수 없습니다.';
|
||||
?>
|
||||
|
|
@ -275,4 +275,6 @@
|
|||
$lang->edit->autosave_hours_ago = '%d시간 전';
|
||||
$lang->edit->autosave_min_ago = '%d분 전';
|
||||
$lang->edit->autosave_mins_ago = '%d분 전';
|
||||
|
||||
$lang->edit->upload_not_enough_quota = '허용된 용량이 부족하여 파일을 첨부할 수 없습니다.';
|
||||
?>
|
||||
|
|
|
|||
|
|
@ -276,4 +276,6 @@
|
|||
$lang->edit->autosave_hours_ago = '%d시간 전';
|
||||
$lang->edit->autosave_min_ago = '%d분 전';
|
||||
$lang->edit->autosave_mins_ago = '%d분 전';
|
||||
|
||||
$lang->edit->upload_not_enough_quota = '허용된 용량이 부족하여 파일을 첨부할 수 없습니다.';
|
||||
?>
|
||||
|
|
@ -390,11 +390,17 @@ var xeed_path = '{$editor_path}';
|
|||
var auto_saved_msg = '{$lang->msg_auto_saved}';
|
||||
var oEditor = editorStart_xe('{$editor_sequence}', '{$editor_primary_key_name}', '{$editor_content_key_name}', '{$editor_height}', '{$colorset}', '{$content_style}', '{$content_font}', '{$content_font_size}');
|
||||
|
||||
// upload settings
|
||||
try {
|
||||
oEditor.setOption('allowed_filesize', '{$file_config->allowed_filesize}');
|
||||
oEditor.setOption('allowed_filetypes', '{$file_config->allowed_filetypes}');
|
||||
} catch(e){}
|
||||
|
||||
window.lang = jQuery.extend(window.lang||{}, {
|
||||
<!--@foreach($lang->edit as $key=>$val)-->
|
||||
<!--@if(strpos($key,'autosave')===0)-->'{$key}':'{$val}',<!--@end-->
|
||||
<!--@end-->
|
||||
'_':'_'
|
||||
'upload_not_enough_quota':'{$lang->edit->upload_not_enough_quota}'
|
||||
});
|
||||
//]]></script>
|
||||
<!-- // Activate Editor -->
|
||||
|
|
|
|||
|
|
@ -2146,6 +2146,8 @@ FileUpload = xe.createPlugin('FileUpload', {
|
|||
esc_fn : null,
|
||||
selection : null,
|
||||
_index : 0,
|
||||
_left_size : 0,
|
||||
_total_size : 0,
|
||||
|
||||
init : function(){
|
||||
var self = this;
|
||||
|
|
@ -2321,6 +2323,24 @@ FileUpload = xe.createPlugin('FileUpload', {
|
|||
$tb.find('a.tb span.'+types[i]+' strong').text($items.length);
|
||||
}
|
||||
},
|
||||
updateFileSize : function(total_size) {
|
||||
var $info = this.$modal_box.find('p.info'), html = $info.html(), units = 'B KB MB GB TB'.split(' ');
|
||||
|
||||
if (!is_def(total_size)) {
|
||||
total_size = 0;
|
||||
this.$file_list.find('li[_key]').each(function(){
|
||||
if (/\-([0-9]+)$/.test($(this).attr('_key'))) total_size += parseInt(RegExp.$1,10);
|
||||
});
|
||||
}
|
||||
|
||||
// size
|
||||
while((units.length > 1) && total_size > 1024) {
|
||||
units.shift();
|
||||
total_size /= 1024;
|
||||
}
|
||||
|
||||
$info.html( html.replace(/([0-9.]+)([a-zA-Z]+)\s*\//, total_size.toFixed(2)+units[0]+'/') );
|
||||
},
|
||||
updateFileList : function() {
|
||||
var self = this, params = {}, $form, seq, primary, target_srl;
|
||||
|
||||
|
|
@ -2342,6 +2362,8 @@ FileUpload = xe.createPlugin('FileUpload', {
|
|||
_callbackFileList : function(ret) {
|
||||
var i, c, f, k, primary, $item, $list, seq = ret.editor_sequence;
|
||||
|
||||
this._left_size = parseInt(ret.left_size) || 0;
|
||||
|
||||
if (!ret.files || !ret.files.item) return;
|
||||
if (!seq || !editorRelKeys[seq] || !(primary = editorRelKeys[seq].primary)) return;
|
||||
if (!$.isArray(ret.files.item)) ret.files.item = [ret.files.item];
|
||||
|
|
@ -2371,6 +2393,7 @@ FileUpload = xe.createPlugin('FileUpload', {
|
|||
}
|
||||
|
||||
this.updateCount();
|
||||
this.updateFileSize();
|
||||
},
|
||||
API_SHOW_FILE_MODAL : function() {
|
||||
var self = this, uploader, file_group = [], $form, params, seq;
|
||||
|
|
@ -2399,7 +2422,23 @@ FileUpload = xe.createPlugin('FileUpload', {
|
|||
|
||||
// file onselect event
|
||||
function file_onselect(files, old_len) {
|
||||
var html, $ob, i, c, $list, $item, type;
|
||||
var html, $ob, i, c, $list, $item, type, limit_size = self.oApp.getOption('allowed_filesize'), total_size = 0, over = false;
|
||||
|
||||
// size check
|
||||
for(i=old_len,c=files.length; i < c; i++) {
|
||||
if (files[i].size > limit_size) {
|
||||
over = true;
|
||||
break;
|
||||
}
|
||||
total_size += files[i].size;
|
||||
}
|
||||
|
||||
if (total_size > self._left_size) over = true;
|
||||
if (over) {
|
||||
alert(lang.upload_not_enough_quota);
|
||||
while(old_len != files.length) files.pop();
|
||||
return;
|
||||
}
|
||||
|
||||
for(i=old_len,c=files.length; i < c; i++) {
|
||||
$item = self.createItem(files[i]).addClass('uploading').attr('_key', self.getKey(files[i]));
|
||||
|
|
@ -2428,6 +2467,9 @@ FileUpload = xe.createPlugin('FileUpload', {
|
|||
|
||||
if ($item.attr('_type') == 'img') {
|
||||
}
|
||||
|
||||
self._total_size += file.size;
|
||||
self.updateFileSize(self._total_size);
|
||||
|
||||
$ob.html($ob.data('html')).parent().removeClass('uploading');
|
||||
}
|
||||
|
|
@ -2521,8 +2563,10 @@ FileUpload = xe.createPlugin('FileUpload', {
|
|||
|
||||
self.$file_list.find(selector.join(',')).remove();
|
||||
|
||||
self.updateCount();
|
||||
if ($.isFunction(callback)) callback();
|
||||
|
||||
self.updateCount();
|
||||
self.updateFileSize();
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue