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

Last change on this file since 15149 was 15149, checked in by mistic100, 12 years ago
  • display typetags everywhere (not only tags page)
  • little redesign of admin page + code cleaning
File size: 5.9 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}{literal}
8// set all containers the same size
9function equilibrate() {
10  var h=0;
11  jQuery("#associations ul")
12    .css('height', 'auto')
13    .each(function() {
14      h = Math.max(h, jQuery(this).height());
15    })
16    .promise().done(function() {
17      jQuery("#associations ul").css({'height': h+'px'});
18    });
19   
20  //jQuery("#tt-NULL").css('height', 'auto');
21}
22
23// generate tag:typetag couples before submit the form
24function save_datas(form) {
25  var out = '';
26 
27  jQuery(".tt-container").each(function() {
28    var section = jQuery(this).attr('id');
29    jQuery("> li", this).each(function() {
30      out += jQuery(this).attr('id') + ':' + section + ';';
31    });
32  });
33 
34  jQuery('#assoc-input').val(out);
35  submit(form);
36}
37
38// colorpicker
39jQuery('#colorpicker').farbtastic('#hexval');
40
41// move each tag in it's typetag container
42jQuery('ul#tt-NULL li').each(function() {
43  var $target = jQuery('ul#' + jQuery(this).attr('data'));
44  jQuery(this).appendTo($target).css('float', 'left');
45  if ($($target).attr('id') == 'tt-NULL') jQuery(this).css({'display':'inline-block','float':'none'});
46});
47equilibrate();
48
49// init drag
50jQuery("li").draggable({
51  revert: "invalid",
52  helper: "clone",
53  cursor: "move"
54});
55
56// init drop
57jQuery('.tt-container').droppable({
58  accept: "li",
59  hoverClass: "active",
60  drop: function(event, ui) {
61    var $gallery = this;
62    ui.draggable.fadeOut(function() {
63      jQuery(this).appendTo($gallery).css('float', 'left').css('display','').fadeIn();
64      if ($($gallery).attr('id') == 'tt-NULL') jQuery(this).css({'display':'inline-block','float':'none'});
65      equilibrate();
66    });     
67  }
68});
69{/literal}{/footer_script}
70
71<div class="titrePage">
72  <h2>TypeT@gs</h2>
73</div>
74
75<form action="{$typetags_ADMIN}" method="post" name="form">
76<fieldset>
77  <legend>{'Configuration'|@translate}</legend>
78  <b>{'Display colored tags'|@translate}</b>
79  <label><input type="radio" name="show_all" value="false" {if not $SHOW_ALL}checked="checked"{/if}> {'Only on tags page'|@translate}</label>
80  <label><input type="radio" name="show_all" value="true" {if $SHOW_ALL}checked="checked"{/if}> {'Everywhere'|@translate}</label>
81  <p><input class="submit" type="submit" name="save_config" value="{'Submit'|@translate}"></p>
82</fieldset>
83</form>
84 
85<form action="{$typetags_ADMIN}" method="post" name="form">
86  <fieldset>
87  {if isset($edited_typetag)}
88    <legend>{'Edit typetag'|@translate}</legend>
89    <div class="edit-container">
90      <div id="colorpicker" style="float:right;"></div>
91      <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>
92      <p>&nbsp;</p>
93      <p>{'New name'|@translate} : <input type="text" size="18" name="typetag_name" value="{$typetag.NAME}"></p>
94      <p>{'New color'|@translate} : <input type="text" id="hexval" name="typetag_color" size="7" maxlength="7" value="{$typetag.COLOR}"></p>
95      <p>&nbsp;</p>
96      <p>
97        <input type="hidden" name="edited_typetag" value="{$edited_typetag}">
98        <input class="submit" type="submit" name="edittypetag" value="{'Modify'|@translate}">
99        <input class="submit" type="submit" name="cancel" value="{'Reset'|@translate}">
100      </p>
101    </div>
102  {else}
103    <legend>{'Create a Typetag'|@translate}</legend>
104    <div class="edit-container">
105      <div id="colorpicker" style="float:right;"></div>
106      <p>&nbsp;</p>
107      <p>{'New TypeTag'|@translate} : <input type="text" size="18" name="typetag_name" value="{if isset($typetag.NAME)}{$typetag.NAME}{/if}"></p>
108      <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>
109      <p>&nbsp;</p>
110      <p>
111        <input class="submit" type="submit" name="addtypetag" value="{'Create a Typetag'|@translate}">
112      </p>
113    </div>
114  {/if}
115  </fieldset>
116</form>
117
118{if !empty($typetags_selection)}
119<form action="{$typetags_ADMIN}" method="post" name="form" onsubmit="save_datas(this);">
120  <fieldset>
121    <legend>{'Edit and associate TypeTags'|@translate}</legend>
122   
123    <ul id="tt-NULL" class="tt-container NULL">
124      <h5>{'Not associated'|@translate}</h5>
125      {foreach from=$typetags_association item=tag}
126      <li id="t-{$tag.tagid}" data="tt-{$tag.typetagid}">
127        {$tag.tagname}
128      </li>
129      {/foreach}
130    </ul>
131   
132    <div id="associations">
133    {foreach from=$typetags_selection item=typetag}
134      <ul id="tt-{$typetag.id}" class="tt-container" style="box-shadow:inset 0 0 5px {$typetag.color};">
135        <span class="buttons">
136          <a href="{$typetag.u_edit}" title="{'edit'|@translate}"><img src="{$themeconf.icon_dir}/edit.png" class="button" alt="{'edit'|@translate}"></a>
137          <a href="{$typetag.u_delete}" title="{'delete'|@translate}" onclick="return confirm('{'Are you sure?'|@translate}');"><img src="{$themeconf.icon_dir}/delete.png" class="button" alt="{'delete'|@translate}"></a>
138        </span>
139        <h5 style="background-color:{$typetag.color};color:{$typetag.color_text};">{$typetag.name}</h5>
140      </ul>
141    {/foreach}
142    </div>
143   
144    <div style="clear:both;"></div>
145    <p style="margin-top:20px;">
146      <input type="hidden" name="associations" id="assoc-input">
147      <input class="submit" type="submit" name="associate" value="{'Validate'|@translate}">
148      <input class="submit" type="submit" name="delete_all_assoc" value="{'Delete all associations'|@translate}" onclick="return confirm('{'Are you sure?'|@translate}');">
149    </p>
150  </fieldset>
151</form>
152{/if}
Note: See TracBrowser for help on using the repository browser.