Проблема с меткой выбора и тегами ввода в расширении phpbb - PullRequest
0 голосов
/ 17 апреля 2019

В настоящее время я пытаюсь изменить отличное расширение тегов RH для phpbb3 (можно найти здесь: https://www.phpbb.com/customise/db/extension/rh_topic_tags/?sid=cb6ff742717109c56734c2f8bcdb6265), чтобы изменить функцию «Облако тегов» в раскрывающийся список в соответствии с запросом моей группы пользователей. У меня есть изменил код и теперь у меня есть выпадающий список, показывающий, но я не могу понять, основываясь на исходном коде, как заставить выпадающий список заполнять поле ввода.

Ниже приведен исходный код, прежде чем я добавлю теги выбора:

    <dl style="clear: left;">
        <dt><label for="rh_topictags">{L_RH_TOPICTAGS}{L_COLON}</label></dt>
        <dd>{L_RH_TOPICTAGS_ALLOWED_TAGS}
            <!-- IF S_RH_TOPICTAGS_WHITELIST_ENABLED -->
                <br/>
                <!-- INCLUDEJS @robertheim_topictags/../whitelist.js -->
                <div class="rh_topictags_whitelist">
                    <!-- BEGIN rh_topictags_whitelist -->
                        {% include 'simple_tag.html' with {'NAME' : rh_topictags_whitelist.NAME, 'LINK' : rh_topictags_whitelist.LINK} only %}
                    <!-- END rh_topictags_whitelist -->
                </div>
            <!-- ELSE -->
                {RH_TOPICTAGS_ALLOWED_TAGS_EXP}
            <!-- ENDIF -->
        </dd>
    </dl>


        <div ng-app="rhTopicTagsInputApp" ng-controller="rhTopicTagsInputCtrl" data-ng-init="init('{RH_TOPICTAGS}')">
            <div id="rhTopicTagsInputAppScope"></div>
            <tags-input ng-model="tags" add-on-comma="false" replace-spaces-with-dashes="{RH_TOPICTAGS_CONVERT_SPACE_TO_MINUS}" placeholder="..." tabindex="2" enable-editing-last-tag="true" min-length="1" allowed-tags-pattern="{RH_TOPICTAGS_ALLOWED_TAGS_REGEX}">
                <auto-complete source="loadTags($query)"></auto-complete>
            </tags-input>
            <input type="hidden" name="rh_topictags" id="rh_topictags" value="{[{ jsonRep }]}" />
        </div>

А ниже приведен мой код с выбранным тегом:

<dl style="clear: left;">
        <dt><label for="rh_topictags">{L_RH_TOPICTAGS}{L_COLON}</label></dt>
        <dd>{L_RH_TOPICTAGS_ALLOWED_TAGS}
            <!-- IF S_RH_TOPICTAGS_WHITELIST_ENABLED -->
                <br/>
                <!-- INCLUDEJS @robertheim_topictags/../whitelist.js -->
                <select>
                    <!-- BEGIN rh_topictags_whitelist -->
                        <option onchange="">{% include 'simple_tag.html' with {'NAME' : rh_topictags_whitelist.NAME, 'LINK' : rh_topictags_whitelist.LINK} only %}</option>
                    <!-- END rh_topictags_whitelist -->
                </select>
            <!-- ELSE -->
                {RH_TOPICTAGS_ALLOWED_TAGS_EXP}
            <!-- ENDIF -->
        </dd>
    </dl>


        <div ng-app="rhTopicTagsInputApp" ng-controller="rhTopicTagsInputCtrl" data-ng-init="init('{RH_TOPICTAGS}')">
            <div id="rhTopicTagsInputAppScope"></div>
            <tags-input ng-model="tags" add-on-comma="false" replace-spaces-with-dashes="{RH_TOPICTAGS_CONVERT_SPACE_TO_MINUS}" placeholder="..." tabindex="2" enable-editing-last-tag="true" min-length="1" allowed-tags-pattern="{RH_TOPICTAGS_ALLOWED_TAGS_REGEX}">
                <auto-complete source="loadTags($query)"></auto-complete>
            </tags-input>
            <input type="hidden" name="rh_topictags" id="rh_topictags" value="{[{ jsonRep }]}" />
        </div>

Я уверен, что мне нужно добавить что-то в поле onchange или что-то подобное, но я не уверен, что, основываясь на предыдущем коде, который используется. Я не слишком знаком с javascript, поэтому мне трудно интерпретировать его здесь. Любая помощь будет оценена!

...