Hôm nay, mình xin thức 1 đêm để viết code =))
Code khá thú vị, ta vừa làm vừa nói nhé , các bạn chú ý chút nha =))
Bước 1: Từ Thiết kế (Design) > Cài đặt bố cục (Layout settings) > Tin nhắn riêng (Private message) > Bố cục gửi tin (P.M write layout), các bạn dán code sau vào cuối ô nhập (hoặc nơi muốn đặt layout gửi file, không nhất thiết là ở đây, nhưng nếu bạn đặt nơi khác cần có tham số "p=nick_uid" trên url nhé):
{% set cat_id='123456' %} {# ID thư mục lưu trữ ảnh gửi #} <div class="center"> <form action="file_exchange.php?ses={{ses}}&id=upload{% if api.r.get('upload')=="url" %}_url{% endif %}&category_id={{cat_id}}&fbupload=pm&p={{api.r.get('p')}}" method="post" enctype="multipart/form-data"> <input {% if api.r.get('upload')!="url" %}name="files" type="file" accept="image/gif">{% else %}name="url" value="http://"> <select name="file_name"> <option value="{{"now"|date('mdYHmi')}}_h.jpg">.JPG</option> <option value="{{"now"|date('mdYHmi')}}_h.png">.PNG</option> <option value="{{"now"|date('mdYHmi')}}_h.zip">.ZIP</option> <option value="{{"now"|date('mdYHmi')}}_h.mp3">.MP3</option> <option value="{{"now"|date('mdYHmi')}}_h.MP4">.MP4</option> <option value="{{"now"|date('mdYHmi')}}_h.3gp">.3GP</option> </select> {% endif %} <input name="type" value="1" type="hidden"> <input name="status" value="2" type="hidden"> <input name="desc" maxlength="1024" value="120398_photo_pm_{{api.user_id}}" type="hidden"> <br> <input type="submit" value="Tải lên tập tin"> </form> {% if api.r.get('upload')=="url" %}<br/><a href="{{api.r.getRequestUri()|replace({'&upload=url':''})}}">Tải lên từ thiết bị lưu trữ</a><br/>{% else %}<br/><a href="{{api.r.getRequestUri()}}&upload=url">Tải lên từ url</a><br/>{% endif %} </div>
Code trên có biến {{cat_id}} ở ngay đầu, bạn cần thay id của nó bằng id thư mục trong lưu trữ tập tin.
Cụ thể: thực chất ta đang upload một file lên file_exchange.php, nhưng ta cần cho nó vào một thư mục nào đó cho gọn gàng . Nếu bạn chưa tạo thì lưu lại rồi đi tạo thôi nào =))
Cách lấy id thư mục cho ai chưa biết: chọn thư mục cần xem, xem url có đoạn "categery_id=654872" thì 654872 là id.
Bước 2: Tìm đến Header trang trao đổi tập tin, tạo đối tượng mới "Trao đổi tập tin: danh sách các file" đặt ở đầu nhé.
Có hai ô chính:
Ô 1 xoá hết, dán:
{% if api.r.get('fbupload')=="pm" and api.user_id %} </div></div> {{file_list}} <!-- {% endif %}
Ô 2 xoá hết, dán:
{% set xego='0' %} {# nếu wap bạn làm trên xego: 1 #} {% set width,height='200','200' %} {# chỉnh sửa độ to bé của ảnh hiển thị ở tin nhắn riêng, tính theo pixel #} {% set uid=user_profile_link|slice(54,8+xego) %} {% if api.r.get('post')=='hpa' %} {% if api.user_id==uid%} <body onload="document.autopostpm.submit();"> {% set foto=thumbnail|replace({'&w=0&h=0&preset_size=1':'','[*]':(nick)})|raw %} {% set admj=thumbnail|replace({'<img class="fe-thumb-image" src="':'[fbimg]','" alt="[*]"/>':'[/fbimg]','" alt="':'[/fbimg]','"/>':'','&w':'&w='~width~'&data-width','&h':'&h='~height~'&data-height','_size':'_fb=120398&preset_size=0&data-size'})|raw %} <form action="pm.php?id=new&to={{api.r.get('p')}}&pmupload_h=ok" method="post" name="autopostpm"> <input name="msg" maxlength="500" type="hidden" value='[a href="{{file_url|replace({'%2Fmain.php%3Ff%3D2746881':'%2Fpm.php%3Fid%3Dread'})|raw}}"/]{{admj}}[/a]'> <input type="submit" value="Hoàn thành" class="nobutton" style="padding:2px"> </form> {% else %} <div class="tip"> Liên kết này đã bị lỗi trong khi thực hiện yêu cầu. <br/> Xin quay về và thử lại </div> {% endif %} {%else%} <div class="center"><a href="{{api.r.getRequestUri()}}&post=hpa">Tiếp tục</a></div>{%endif%}
Tham số cài đặt trong đối tượng này:
- Chọn danh mục trao đổi tập tin: chọn thư mục tải file lên
- Số lượng tập tin: 1
- Sắp xếp theo: Ngày tải lên
- Sắp xếp loại: Giảm dần
- Dòng mới: Không
Bước 3: Nếu bạn chưa có BBcode trong tin nhắn riêng thì thêm vào [a] và [fbimg], cái này bạn tự tìm hiểu nhé
Xong rồi, test thử nào =))
Nếu có lỗi thì để bình luận ở đây để mình fix =))
Edited: Đã chỉnh sửa hoàn chỉnh.