source: extensions/typetags/admin/typetags_admin.tpl @ 10517

Last change on this file since 10517 was 9970, checked in by mistic100, 13 years ago

[extensions] TypeT@gs

File size: 5.4 KB
Line 
1{combine_script id="jquery.ui.draggable"}
2{combine_script id="jquery.ui.droppable"}
3{combine_script id="farbtastic" require="jquery" path=$ROOT_URL|@cat:"plugins/typetags/admin/farbtastic/farbtastic.js"}
4{combine_css path=$ROOT_URL|@cat:"plugins/typetags/admin/farbtastic/farbtastic.css"}
5{combine_css path=$ROOT_URL|@cat:"plugins/typetags/admin/typetags_style.css"}
6
7{footer_script}
8{literal}
9        $(document).ready(function(){
10                // colorpicker
11                $('#colorpicker').farbtastic('#hexval');
12
13                // déplace chaque élément dans la bonne case
14                jQuery('ul#tt-NULL li').each(function() {
15                        var $target = jQuery('ul#' + jQuery(this).attr('title'));
16                        jQuery(this).appendTo($target).css('float', 'left');
17                });
18               
19                // initialise les déplacement
20                jQuery("li").draggable({
21                        revert: "invalid",
22                        helper: "clone",
23                        cursor: "move"
24                });
25
26                // initialise le dépôt
27                jQuery('.tt-container').droppable({
28                        accept: "li",
29                        hoverClass: "active",
30                        drop: function(event, ui) {
31                                var $gallery = this;
32                                ui.draggable.fadeOut(function() {
33                                        jQuery(this).appendTo($gallery).fadeIn();
34                                        equilibrate(); // on rééquilibre les colonnes à chaque déplacement
35                                });                     
36                        }
37                });
38               
39                // équilibrage des colonnes
40                equilibrate();
41        });
42                       
43        function equilibrate() {
44                jQuery("#associations").each(function(){
45                        var h=0;
46                        jQuery("> ul", this).css('height', 'auto')
47                                .each(function(){ h=Math.max(h,jQuery(this).height()); })
48                                .css({'height': h+'px'});
49                });
50        }
51       
52        // génération des couples tag:typetag avant de valider le formulaire
53        function save_datas(form) {
54                var out = '';
55               
56                jQuery(".tt-container").each(function(){
57                        var section = jQuery(this).attr('id');
58                        jQuery("> li", this).each(function(){
59                                out += jQuery(this).attr('id') + ':' + section + ';';
60                        });
61                });
62               
63                jQuery('#assoc-input').val(out);
64                submit(form);
65        }
66{/literal}
67{/footer_script}
68
69<div class="titrePage">
70        <h2>TypeT@gs</h2>
71</div>
72
73<form action="{$typetags_ADMIN}" method="post" name="form">
74        <fieldset>
75        {if isset($edited_typetag)}
76                <legend>{'Edit typetag'|@translate}</legend>
77                <input type="hidden" name="edited_typetag" value="{$edited_typetag}" />
78                <div class="edit-container">
79                        <div id="colorpicker" style="float:right;"></div>
80                        <p><b>{'Edited TypeTag'|@translate} : <input type="text" readonly="readonly" size="18" style="background-color:{$typetag.OLD_COLOR};color:{$typetag.COLOR_TEXT};" value="{$typetag.OLD_NAME}"></b></p>
81                        <p>&nbsp;</p>
82                        <p>{'New name'|@translate} : <input type="text" size="18" name="typetag_name" value="{$typetag.NAME}"/></p>
83                        <p>{'New color'|@translate} : <input type="text" id="hexval" name="typetag_color" size="7" maxlength="7" value="{$typetag.COLOR}"/></p>
84                        <p>&nbsp;</p>
85                        <p>
86                                <input class="submit" type="submit" name="edittypetag" value="{'Modify'|@translate}"/>
87                                <input class="submit" type="submit" name="cancel" value="{'Reset'|@translate}"/>
88                        </p>
89                </div>
90        {else}
91                <legend>{'Create a Typetag'|@translate}</legend>
92                <div class="edit-container">
93                        <div id="colorpicker" style="float:right;"></div>
94                        <p>&nbsp;</p>
95                        <p>{'New TypeTag'|@translate} : <input type="text" size="18" name="typetag_name" value="{if isset($typetag.NAME)}{$typetag.NAME}{/if}"/></p>
96                        <p>{'Color TypeTag'|@translate} : <input type="text" id="hexval" name="typetag_color" size="7" maxlength="7" value="{if isset($typetag.COLOR)}{$typetag.COLOR}{else}#444444{/if}"/></p>
97                        <p>&nbsp;</p>
98                        <p>
99                                <input class="submit" type="submit" name="addtypetag" value="{'Create a Typetag'|@translate}"/>
100                        </p>
101                </div>
102        {/if}
103        </fieldset>
104</form>
105
106        {if !empty($typetags_selection)}
107        <fieldset>
108                <legend>{'TypeTag selection'|@translate}</legend>
109                <ul class="tagSelection">
110                        {foreach from=$typetags_selection item=typetag}
111                        <li>
112                                <input type="text" readonly="readonly" style="background-color:{$typetag.color};color:{$typetag.color_text};margin:5px 0;" value="{$typetag.name}">
113                                <a href="{$typetag.u_edit}" title="{'edit'|@translate}"><img src="{$themeconf.icon_dir}/edit.png" class="button" alt="{'edit'|@translate}"/></a>
114                                <a href="{$typetag.u_delete}" title="{'delete'|@translate}" onclick="return confirm('{'Are you sure?'|@translate}');"><img src="{$themeconf.admin_icon_dir}/plug_delete.png" class="button" alt="{'delete'|@translate}"/></a>
115                        </li>
116                        {/foreach}
117                </ul>
118        </fieldset>
119        {/if}
120
121<form action="{$typetags_ADMIN}" method="post" name="form" onsubmit="save_datas(this);">
122        {if !empty($typetags_association) and !empty($typetags_selection)}
123        <fieldset>
124                <legend>{'TypeTag association'|@translate}</legend>
125               
126                <ul id="tt-NULL" class="tt-container NULL">
127                        <h5>Non associés</h5>
128                        {foreach from=$typetags_association item=tag}
129                        <li id="t-{$tag.tagid}" title="tt-{$tag.typetagid}">
130                                {$tag.tagname}
131                        </li>
132                        {/foreach}
133                </ul>
134               
135                <div id="associations">
136                {foreach from=$typetags_selection item=typetag}
137                        <ul id="tt-{$typetag.id}" class="tt-container" style="box-shadow:inset 0 0 5px {$typetag.color};">
138                                <h5 style="background-color:{$typetag.color};color:{$typetag.color_text};">{$typetag.name}</h5>
139                        </ul>
140                {/foreach}
141                </div>
142               
143                <p style="clear:both;">
144                        <input type="hidden" name="associations" id="assoc-input"/>
145                        <input class="submit" type="submit" name="associate" value="{'Validate'|@translate}"/>
146                        <input class="submit" type="submit" name="delete_all_assoc" value="{'Delete all associations'|@translate}" onclick="return confirm('{'Are you sure?'|@translate}');"/>
147                </p>
148        </fieldset>
149        {/if}
150</form>
Note: See TracBrowser for help on using the repository browser.