1{#
2!!!! BECAREFUL: ONLY FOR TESTING !!!!!
3!!!! DON'T START TO TRANSLATE ALL VIEWS BASED ON THIS MODEL !!!!!
4
5!!!! IT WILL PROBABLY FIRST NEED TO CHANGE  THE TWIG TEMPLATE SYNTAX TO AVOID CONFLICT WITH EXPRESSION MANAGER !!!!
6
7/**
8 * Ranking question, item list header Html
9 *
10 * @var $sOptions         : the select options, generated with the view answer_row.php
11 *
12 * @var $name
13 * @var $myfname
14 * @var $labeltext
15 * @var $rankId
16 * @var $rankingName
17 * @var $max_answers
18 * @var $min_answers
19 * @var $qid
20 * @var $choice_title
21 * @var $rank_title
22 * @var $rank_help
23 * @var $showpopups
24 * @var $samechoiceheight
25 * @var $samelistheight
26 **** Additional attributes:
27 * @var question_template_attribute.show_handle
28 * @var question_template_attribute.only_pull
29 * @var question_template_attribute.visualize
30 */
31#}
32
33
34{% set show_handle=question_template_attribute.show_handle %}
35{% set show_number=question_template_attribute.show_number %}
36{# {% set show_handle="yes" %} #}
37
38{% set show_number="yes" %}
39
40
41<!-- answer -->
42<div class="{{coreClass}} ranking-advanced-style">
43    <ul class="list-unstyled ls-js-hidden-sr answers-list select-list " role="group" aria-labelledby="ls-question-text-{{basename}}">
44            {# rows/answer_row.twig #}
45            {{sSelects}}
46    </ul>
47    {% set rankingView = './views/' ~ question_template_attribute.visualize ~ '.twig' %}
48    {% set rankingView = './views/blocks.twig' %}
49    {{ include(rankingView) }}
50</div>
51
52{% set script %}
53    try{
54    var ranking{{qId}} = new AdvancedRankingQuestion({
55            max_answers      : {{max_answers}},
56            min_answers      : {{min_answers}},
57            showpopups       : "{{showpopups}}",
58            samechoiceheight : "{{samechoiceheight}}",
59            samelistheight   : "{{samelistheight}}",
60            rankingName      : "{{rankingName}}",
61            questionId       : "{{qId}}",
62            numbersActive    : {{ ((show_number is same as('yes'))) ? 1 : 0 }},
63            withHandle       : {{ ((show_handle is same as('yes'))) ? 1 : 0 }}
64        });
65        ranking{{qId}}.init()
66        console.ls.log("Ranking advances initialized for qid {{qId}}");
67    } catch(e){
68        console.ls.error(e);
69    }
70{% endset %}
71{# DEBUG #}
72<div class="hidden">
73{{script}}
74</div>
75{{ registerScript( 'RankingQuestion'~qId, script, 'POS_POSTSCRIPT') }}
76{{ registerPackage( 'sortable' ) }}
77
78
79<!-- end of answer -->
80