image upload from chat
This commit is contained in:
122
masks/chat.html
122
masks/chat.html
@@ -24,12 +24,17 @@
|
||||
</div>
|
||||
<div id="chat_input" class="round">
|
||||
<form id="chat_form" name="chat_form">
|
||||
<i id="message_img" class="fa fa-fw fa-20 fa-c-comment"></i><input type="text" id="message" name="message" value="" maxlength="500" autofocus />
|
||||
<input type="hidden" id="chan" name="chan" value="" maxlength="50" />
|
||||
|
||||
</form>
|
||||
</div>
|
||||
</div>
|
||||
<div id="template" class="hide">
|
||||
<div id="message_input">
|
||||
<i id="message_img" class="fa fa-fw fa-20 fa-c-comment"></i>
|
||||
<input type="text" id="message" name="message" value="" maxlength="500" autofocus />
|
||||
<input type="hidden" id="chan" name="chan" value="" maxlength="50" />
|
||||
<i id="upload_img" class="fa fa-fw fa-20 fa-c-image"></i>
|
||||
</div>
|
||||
<div id="help" class="help tiny_round">
|
||||
<p class="title">Manuel d'utilisation</p>
|
||||
<p class="title righty"> <span id="close_help" class="clickable"><i class="fa fa-30 fa-c-close"></i></span></p>
|
||||
@@ -93,7 +98,7 @@ databap.pageInit = function()
|
||||
//Bind message box key events
|
||||
databap.getMainElem('#chat_form').submit(function(e){e.preventDefault();});
|
||||
$MsgInput.bind('keydown', function(e){if(e.which == 9)e.preventDefault();});
|
||||
$MsgInput.keyup(function(event){add_message(event);});
|
||||
$MsgInput.keyup(function(e){keyController(e);});
|
||||
|
||||
//Loading the chat
|
||||
self.initScrollBar('#chat_container', '#chat_messages_box', '#chat_messages');
|
||||
@@ -114,6 +119,9 @@ databap.pageInit = function()
|
||||
//Init sidebar events
|
||||
initSideBar();
|
||||
|
||||
//Setup Image upload
|
||||
initImageUpload();
|
||||
|
||||
//Init's end
|
||||
databap.setInitEnd(true);
|
||||
};
|
||||
@@ -124,7 +132,7 @@ databap.onResize = function()
|
||||
self.setScrollBarSize('maximize');
|
||||
|
||||
//Message Input
|
||||
$('#message').width($('#chat_input').width() - $('#message_img').outerWidth(true)- 1);
|
||||
//$('#message').width($('#chat_input').width() - $('#message_img').outerWidth(true)- 1);
|
||||
};
|
||||
|
||||
//Disconnect from the chat
|
||||
@@ -143,6 +151,49 @@ databap.onKeyDown = function(e)
|
||||
else databap.tmp('refresh', false);
|
||||
};
|
||||
|
||||
function initImageUpload()
|
||||
{
|
||||
//load Uploader
|
||||
self.tmp('uploader', new qq.FileUploader
|
||||
(
|
||||
{
|
||||
element: document.getElementById('chat_form'),
|
||||
action: databap.getActionLink('upload_image'),
|
||||
allowedExtensions: databap.consts.authorized_img_exts,
|
||||
sizeLimit: parseInt(databap.consts.max_size)*100,
|
||||
template: '<div class="uploader_box">' +
|
||||
'<div class="uploader_droparea round">' +
|
||||
'<span>Glisser les images ici</span>' +
|
||||
'</div>' +
|
||||
'<a class="uploader_button hide"></a>' +
|
||||
'<div class="uploader_buffer hide"></div>' +
|
||||
'<ul id="uploader_list" class="uploader_list hide"></ul>' +
|
||||
'</div>',
|
||||
onComplete:function(id, fileName, result)
|
||||
{
|
||||
if(result.success==true)
|
||||
{
|
||||
postMessage('/img '+result.file_path+result.file_name);
|
||||
}
|
||||
},
|
||||
onProgress:function(id, fileName, loaded, total)
|
||||
{
|
||||
databap.feedback('success', 'Télécharge: '+(loaded/total*100)+'%', true);
|
||||
},
|
||||
showMessage:function(sMsg)
|
||||
{
|
||||
databap.feedback('error', sMsg);
|
||||
},
|
||||
debug: false,
|
||||
stepId: 1
|
||||
}
|
||||
));
|
||||
$('.uploader_box').append($('#message_input').children());
|
||||
|
||||
//prompt file explorer
|
||||
$('#upload_img').click(function(){$('#c1_file').click();});
|
||||
}
|
||||
|
||||
function initSideBar()
|
||||
{
|
||||
//Sidebar Events
|
||||
@@ -503,7 +554,42 @@ function quitChan(sChanKeyName)
|
||||
else databap.addFailIcon('Ceci est le dernier chan');
|
||||
}
|
||||
|
||||
function add_message(e)
|
||||
function postMessage(sMsg)
|
||||
{
|
||||
sMsg = sMsg || '';
|
||||
var bSuccess = true;
|
||||
if(databap.tmp('sending_msg') == true)
|
||||
{
|
||||
databap.feedback('warning', 'Pas si pressé ! J\'ai pas encore envoyé le dernier message');
|
||||
bSuccess = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
if(sMsg!='')
|
||||
{
|
||||
databap.tmp('msg_buffer', $('#message').val());
|
||||
$('#message').val(sMsg);
|
||||
}
|
||||
databap.tmp('sending_msg', true);
|
||||
databap.saveForm
|
||||
(
|
||||
'add_message',
|
||||
databap.getMainElem('#chat_form'),
|
||||
function(oData)
|
||||
{
|
||||
databap.tmp('sending_msg', false);
|
||||
if(oData.result==databap.consts.error) databap.feedback('error', oData.desc);
|
||||
else refresh_chat();
|
||||
},
|
||||
true,
|
||||
'json'
|
||||
);
|
||||
if(sMsg!='') $('#message').val(databap.tmp('msg_buffer'));
|
||||
}
|
||||
return bSuccess;
|
||||
}
|
||||
|
||||
function keyController(e)
|
||||
{
|
||||
if(e.keyCode != 9) databap.tmp('tab_info', {}); //See case 9, tab
|
||||
switch(e.keyCode)
|
||||
@@ -516,31 +602,7 @@ function add_message(e)
|
||||
else if(chat_message.substr(0, 7) == '/quit #') quitChan(getChanKeyName(chat_message.substr(7)));
|
||||
else if(chat_message == '/help') displayHelp();
|
||||
else if(chat_message.substr(0, 8) == '/invite ') invite($.trim(chat_message.substr(8)), currentChan());
|
||||
else if(chat_message != '' && databap.tmp('sending_msg') == false) //send
|
||||
{
|
||||
if(databap.tmp('sending_msg') == true)
|
||||
{
|
||||
databap.feedback('warning', 'Pas si pressé ! J\'ai pas encore envoyé le dernier message');
|
||||
bSuccess = false;
|
||||
}
|
||||
else
|
||||
{
|
||||
databap.tmp('sending_msg', true);
|
||||
databap.saveForm
|
||||
(
|
||||
'add_message',
|
||||
databap.getMainElem('#chat_form'),
|
||||
function(oData)
|
||||
{
|
||||
databap.tmp('sending_msg', false);
|
||||
if(oData.result==databap.consts.error) databap.feedback('error', oData.desc);
|
||||
else refresh_chat();
|
||||
},
|
||||
true,
|
||||
'json'
|
||||
);
|
||||
}
|
||||
}
|
||||
else if(chat_message != '') bSuccess = postMessage();
|
||||
|
||||
if(bSuccess)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user