Hide Polls in Specific Forums - Ẩn bình chọn trong diễn đàn cụ thể

PVS

Super Moderator
Thành viên BQT
Tham gia
28/02/2015
Bài viết
17,142
Được Like
12,745
Hide Polls in Specific Forums - Ẩn bình chọn trong diễn đàn cụ thể

Điều này không thực sự vô hiệu hóa khả năng của một người nhưng không có cách nào mà tôi biết để tạo ra một cuộc bình chọn mà không đi qua quá trình tạo chủ đề thực tế. Vì vậy, điều này loại bỏ các bình chọn từ view.

Tôi sẽ đi qua các bước của việc cho phép các nhóm người dùng cụ thể để xem các tùy chọn tạo bình chọn cũng như hiển thị cho bạn làm thế nào để loại bỏ nó từ các diễn đàn cụ thể.

Đầu tiên đăng nhập vào admincp của bạn và đi đến Appearance -> Templates -> thread_create
Loại bỏ bình chọn từ diễn đàn cụ thể
Tìm:
Mã:
<xen:hook name="thread_create_fields_extra" params="{xen:array 'forum={$forum}'}" />

Thêm vào sau:
Mã:
<xen:if is="in_array({$forum.node_id}, array(#))">
<xen:else />

Thay thế dấu # với các id node bạn muốn loại bỏ các cuộc bình chọn. Nếu bạn đang thêm nhiều id danh sách các node thì thay như vậy: 1, 2, 3.

Tiếp theo tìm:
Mã:
</xen:hook>
    <dl class="ctrlUnit submitUnit">

Thêm vào trước:
Mã:
</xen:if>

Lựa chọn 2 *làm một trong hai bước ở trên hoặc các bước dưới đây, không kết hợp 2 lựa chọn với nhau*
Loại bỏ bình chọn & thêm User Group truy cập
Tìm:
Mã:
<xen:hook name="thread_create_fields_extra" params="{xen:array 'forum={$forum}'}" />

Thêm vào sau:
Mã:
<xen:if is="in_array({$forum.node_id}, array(#)) AND {xen:helper ismemberof, $visitor, X, Y}">

<h3 class="textHeading">{xen:phrase post_poll}</h3>
    <dl class="ctrlUnit">
        <dt><label for="ctrl_poll_question">{xen:phrase question}:</label></dt>
        <dd><input type="text" name="poll[question]" class="textCtrl" id="ctrl_poll_question" maxlength="100" /></dd>
    </dl>
    <dl class="ctrlUnit">
        <dt>{xen:phrase possible_responses}:</dt>
        <dd>
            <ul class="PollResponseContainer">
                <xen:foreach loop="$pollExtraArray" value="$****">
                    <li class="PollNonJsInput"><input type="text" name="poll[responses][]" class="textCtrl" placeholder="{xen:phrase poll_choice}..." maxlength="100" /></li>
                </xen:foreach>
                <li><input type="text" name="poll[responses][]" class="textCtrl" placeholder="{xen:phrase poll_choice}..." maxlength="100" /></li>
                <li><input type="text" name="poll[responses][]" class="textCtrl" placeholder="{xen:phrase poll_choice}..." maxlength="100" /></li>
            </ul>
            <input type="button" value="{xen:phrase add_additional_response}" class="button smallButton FieldAdder JsOnly" data-source="ul.PollResponseContainer li" data-maxfields="{$xenOptions.pollMaximumResponses}" />
        </dd>
    </dl>

    <!-- slot: after_poll_responses -->
    <dl class="ctrlUnit">
        <dt></dt>
        <dd>
            <ul>
                <li><label for="ctrl_poll_multiple"><input type="checkbox" name="poll[multiple]" value="1" id="ctrl_poll_multiple" /> {xen:phrase allow_selection_of_multiple_responses}</label></li>
                <li><label for="ctrl_poll_public_votes"><input type="checkbox" name="poll[public_votes]" value="1" id="ctrl_poll_public_votes" /> {xen:phrase display_votes_publicly}</label></li>
                <li><label for="ctrl_poll_close"><input type="checkbox" name="poll[close]" value="1" class="Disabler" id="ctrl_poll_close" /> {xen:phrase close_this_poll_after}:</label>
                    <ul id="ctrl_poll_close_Disabler">
                        <li>
                            <input type="text" size="5" name="poll[close_length]" value="7" class="textCtrl autoSize" />
                            <select name="poll[close_units]" class="textCtrl autoSize">
                                <option value="hours">{xen:phrase hours}</option>
                                <option value="days" selected="selected">{xen:phrase days}</option>
                                <option value="weeks">{xen:phrase weeks}</option>
                                <option value="months">{xen:phrase months}</option>
                            </select>
                        </li>
                    </ul>
                </li>
            </ul>
        </dd>
    </dl>


<xen:elseif is="in_array({$forum.node_id}, array(#))" />
<xen:else />

Thay thế dấu # với các id node bạn muốn loại bỏ các cuộc bình chọn. Thay thế X, Y với nhóm người dùng bạn muốn cho phép để tạo bình chọn, không có vấn đề gì. Nếu bạn đang thêm nhiều node hoặc nhóm người dùng, thì id danh sách node như vậy: 1, 2, 3. CÓ HAI DẤU # KHÁC BIỆT trong mã trên. Thay thế tất cả cùng một id node!

Tiếp theo tìm:

Mã:
</xen:hook>
    <dl class="ctrlUnit submitUnit">

Thêm vào trước:
Mã:
</xen:if>

Lưu lại là xong.

nopoll.png

Chúc các bạn thành công.


Nguồn: xenforo.com​
 
  • Like
Reactions: THB

Top Bottom