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

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

[extensions] TypeTags

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