source: extensions/ContestResults/admin/template/results.tpl @ 9745

Revision 9745, 5.7 KB checked in by mistic100, 9 years ago (diff)

[extensions] Contest Results

  • New bloc for PWG Stuffs
  • Use new admin links and javascript implementation
  • Distinguish pending and running contests (both pending before)
Line 
1{combine_script id='jquery.ui'                  require='jquery' path='themes/default/js/ui/minified/jquery.ui.core.min.js'}
2{combine_script id='jquery.ui.sortable' require='jquery' path='themes/default/js/ui/minified/jquery.ui.sortable.min.js'}
3{combine_script id='jquery.cluetip'     require='jquery' path='themes/default/js/plugins/jquery.cluetip.js'}
4{combine_script id='jquery.vtip'                require='jquery' path=$CR_PATH|@cat:'admin/template/vtip.js'}
5
6{combine_css path=$CR_PATH|@cat:'admin/template/style.css'}
7{include file='include/autosize.inc.tpl'}
8
9{footer_script require='jquery'}
10        // AJOUTE UN CHAMP DE RESULTAT
11        function CreateResultField(j, new_contest){ldelim}
12                // Si il n'y a aucun résultats on efface le message
13                if(new_contest) jQuery('#categoryUl').html('');
14               
15                // Ajoute à la fin de la liste une nouvelle ligne de résultat vide
16                jQuery('<li id="result_'+ j +'" class="categoryLi virtual_cat"></li>').appendTo('#categoryUl');
17               
18                // Contenu de la ligne
19                jQuery('#result_'+ j).html('<ul class="categoryActions"> '+
20                                '<li> '+
21                                        '<a href="#" title="{'CR_delete_result'|@translate}" onclick="jQuery(\'#result_'+ j +'\').remove();return false;"> '+
22                                                '<img src="{$themeconf.admin_icon_dir}/category_delete.png" class="button" alt="{'CR_delete_result'|@translate}"/> '+
23                                        '</a> '+
24                                '</li> '+
25                        '</ul> '+
26                        '<p> '+
27                                '<img src="{$themeconf.admin_icon_dir}/cat_move.png" class="button drag_button" style="display:none;" title="{'Drag to re-order'|@translate}"> '+
28                                '{'CR_image_no'|@translate} <input type="text" size="6" name="results['+ j +'][image_id]" value="" onkeyup="UpdatePreview('+ j +', this);"/> '+
29                                '<span id="preview-'+ j +'"> '+
30                                        '<span class="vtip" title="<img src=\'admin/themes/default/icon/errors.png\'/><br>N/A"> '+
31                                                '<img src="{$CR_PATH}admin/template/image/images.png"/> '+
32                                        '</span> '+
33                                '</span> '+
34                                '{'CR_author'|@translate} : <input type="text" name="results['+ j +'][author]" value=""/> '+
35                                '<textarea class="result_comment" name="results['+ j +'][comment]"></textarea> '+
36                        '</p> '+
37                        '<p class="catPos">{'CR_rank'|@translate} : <input type="text" name="results['+ j +'][rank]" value=""/></p>');
38               
39                // Remplace le lien de création
40                jQuery('#AddLink').html('<input class="submit" type="reset" onclick="CreateResultField('+ (j+1) +');return false;" value="{'CR_addfield'|@translate}"/>');
41               
42                // Réinitiliase les fonctions jQuery
43                jQuery('.catPos').hide();
44                jQuery('.drag_button').show();
45                jQuery('.categoryLi').css('cursor', 'move');
46                jQuery('textarea').autogrow();
47                jQuery('textarea').css('overflow-y', 'hidden');
48                vtip();
49        }
50       
51        // MET A JOUR LA PREVISUALISATION DE L'IMAGE
52        function UpdatePreview(image_id, input){ldelim}
53                $.get("{$CR_PATH}admin/get_tn.php", {ldelim}image_id: input.value},
54                        function success(data){ldelim}
55                                document.getElementById('preview-'+image_id).innerHTML = '<span class="vtip" title="'+ data + '">'+
56                                                '<img src="{$CR_PATH}admin/template/image/images.png"/>'+
57                                        '</span>';
58                                vtip();
59                        }
60                );
61        }
62               
63{literal}
64        jQuery().ready(function(){
65                //  Drag-and-Drop
66                jQuery('.catPos').hide();
67                jQuery('.drag_button').show();
68                jQuery('.categoryLi').css('cursor', 'move');
69                jQuery('.categoryUl').sortable({
70                        axis: 'y',
71                        opacity: 0.8
72                });
73                jQuery('#categoryOrdering').submit(function(){
74                        ar = jQuery('.categoryUl').sortable('toArray');
75                        for(i=0; i<ar.length; i++) {
76                                cat = ar[i].split('result_');
77                                document.getElementsByName('results[' + cat[1] + '][rank]')[0].value = i+1;
78                        }
79                });
80                // Cluetip
81                jQuery('.cluetip').cluetip({
82                        width: 550,
83                        splitTitle: '|'
84                });
85        });
86{/literal}
87{/footer_script}
88
89{html_head}
90<style type="text/css">
91        .cluetip:after {ldelim}
92                content:url('{$themeconf.admin_icon_dir}/help.png');
93        }
94</style>
95{/html_head}
96
97<h2 class="version_title">{$CR_VERSION}</h2>
98
99<div class="titrePage">
100        <h2><span class="cluetip" title="{'CR_results_tab'|@translate}|{'CR_help_results'|@translate}">{'CR_results_tab'|@translate|cat:' : '|cat:$NAME} </span></h2>
101</div>
102
103<form method="post" id="categoryOrdering" action="">
104        <ul class="categoryUl" id="categoryUl">
105        {counter start=0 assign=i}
106        {if isset($results)}
107                {foreach from=$results item=result}
108                        <li class="categoryLi {if isset($result.ERROR)}error_cat{/if}" id="result_{$i}">
109                                <ul class="categoryActions">
110                                        <li>
111                                                <a href="#" title="{'CR_delete_result'|@translate}" onclick="jQuery('#result_{$i}').remove();return false;">
112                                                        <img src="{$themeconf.admin_icon_dir}/category_delete.png" class="button" alt="{'CR_delete_result'|@translate}"/>
113                                                </a>
114                                        </li>
115                                </ul>
116                               
117                                <p>
118                                        <img src="{$themeconf.admin_icon_dir}/cat_move.png" class="button drag_button" style="display:none;" title="{'Drag to re-order'|@translate}">
119                                        {'CR_image_no'|@translate} <input type="text" size="6" name="results[{$i}][image_id]" value="{$result.IMAGE_ID}" onkeyup="UpdatePreview({$i}, this);"/>
120                                       
121                                        <span id="preview-{$i}">
122                                                <span class="vtip" title="<img src='{$result.TN_SRC}'/><br>{$result.IMAGE_NAME}">
123                                                        <img src="{$CR_PATH}admin/template/image/images.png"/>
124                                                </span>
125                                        </span>
126                                       
127                                        {'CR_author'|@translate} : <input type="text" name="results[{$i}][author]" value="{$result.AUTHOR}"/>
128                                        <textarea class="result_comment" name="results[{$i}][comment]">{$result.COMMENT}</textarea>
129                                </p>
130                                <p class="catPos">{'CR_rank'|@translate} : <input type="text" name="results[{$i}][rank]" value="{$result.RANK}"/></p>
131                        </li>
132                        {counter}
133                {/foreach}
134        {else}
135                {'CR_no_result'|@translate}
136        {/if}
137        </ul>
138       
139        <p>
140                <span id="AddLink"><input class="submit" type="reset" onclick="CreateResultField({$i}{if !isset($results)}, true{/if});return false;" value="{'CR_addfield'|@translate}"/></span>
141                <input class="submit" type="submit" value="{'Submit'|@translate}" name="results_modify"/>
142        </p>
143</form>
Note: See TracBrowser for help on using the repository browser.