Cách làm: mở index.twig
1. Thay form chat bằng code sau
{% if api.can_chat %} <div class="menu"><form action="{{ chat_data.form_url }}" method="post" id="chat-form"> <textarea name="text" id="chat-input"></textarea> <input type="hidden" name="token" value="{{ chat_data.form_token }}" /> <input type="submit" name="submit" value="Gửi" /> {% if api.device != 'old_phone' %}<a class="btn" href="#" id="img-button">Đăng ảnh</a><span id="img-status"></span>{% endif %} </form><input type="file" id="img-select" class="hide" accept="image/*" /></div> <div class="menu hide" id="img-result"></div> {% endif %}
2. Thêm code sau vào cuối index.twig
{% if api.device != 'old_phone' %} <script type="text/javascript" src="http://code.jquery.com/jquery-3.3.1.min.js"></script> <script type="text/javascript"> var imgs = ''; $(document).ready(function(){ $('#img-button').click(function(){$('#img-select').trigger('click');return !1}); $('#img-select').change(function(){upload(this.files[0])}); $('#chat-form').submit(function(e){ var _this = $(this); if (imgs.length > 0) { e.preventDefault(); $.post(_this.attr('action'), {text: ($('#chat-input').val() + imgs), token: _this.find('input[name="token"]').val()}, function(){ window.location.reload(); }) }}); }); function upload(file) { if(file && file.type.match(/image.*/)){ var fd = new FormData(); fd.append("image", file); var xhr = new XMLHttpRequest(); xhr.open("POST", "https://api.imgur.com/3/image.json"); xhr.upload.onprogress = function(e) { if (e.lengthComputable) { var percent = Math.floor((e.loaded / e.total) * 100) + '%'; $("#img-status").html("Đang tải ("+percent+")"); } }; xhr.onload = function() { try{ var res = JSON.parse(xhr.responseText); if (res.status === 200 && res.success === true) { var data = res.data; $("#img-status").html("Đang xử lí..."); $('#img-result').show(); imgs += '\r\n[url=' + data.link + '][img]' + data.link.replace(/\.([a-z]+)$/, 'm.$1') + '[/img][/url]'; $("#img-result").append('<img src="' + data.link.replace(/\.([a-z]+)$/, 'b.$1') + '" class="img-thumb">'); $("#img-status").html(''); } else { window.alert('Lỗi: tải lên thất bại'); $("#img-status").html(''); } } catch (e) { window.alert('Lỗi: tải lên thất bại'); $("#img-status").html(''); } } xhr.setRequestHeader('Authorization', 'Client-ID 21ca8b31c6adc09'); xhr.send(fd); } else { window.alert('Chỉ cho phép chọn ảnh'); }; }; </script> {% endif %}
3. Thêm vào CSS
.hide {display:none}
Vậy là xong.
Chúc các bạn thành công!