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> </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> </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> </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> </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> |
---|