| 1 | <mt:setvarblock name="page_title"><__trans phrase="Manage Categories"></mt:setvarblock> |
|---|
| 2 | <mt:setvarblock name="html_head" append="1"> |
|---|
| 3 | <script type="text/javascript"> |
|---|
| 4 | <!-- |
|---|
| 5 | // build array of each category's id and the header id |
|---|
| 6 | var categoryRows = new Array('0'<mt:loop name="category_loop">,'<mt:var name="category_id">'</mt:loop>); |
|---|
| 7 | |
|---|
| 8 | function submitMoveMode() { |
|---|
| 9 | var f = getByID('category-listing-form'); |
|---|
| 10 | f['__mode'].value = 'save_cat'; |
|---|
| 11 | f.submit(); |
|---|
| 12 | } |
|---|
| 13 | function setCreateMode (id) { |
|---|
| 14 | DOM.addClassName(getByID('create-new-link'), 'hidden'); |
|---|
| 15 | var f = getByID('category-listing-form'); |
|---|
| 16 | f['__mode'].value = 'save_cat'; |
|---|
| 17 | if (getByID('msg-block')) { |
|---|
| 18 | getByID('msg-block').style.display = 'none'; // hide any messaging |
|---|
| 19 | } |
|---|
| 20 | if (document.all) { |
|---|
| 21 | getByID('create-' + id).style.display = 'block'; // show subcategory creation row |
|---|
| 22 | } else { |
|---|
| 23 | getByID('create-' + id).style.display = 'table-row'; |
|---|
| 24 | } |
|---|
| 25 | // reset any fields that might be set from a previous failed attempt. |
|---|
| 26 | for (var i = 0; i < categoryRows.length; i++) { |
|---|
| 27 | getByID('category-new-parent-' + categoryRows[i]).value = ''; |
|---|
| 28 | if (categoryRows[i] != id) { |
|---|
| 29 | el = getByID('create-' + categoryRows[i]); |
|---|
| 30 | if (el.style.display != 'none') el.style.display = 'none'; |
|---|
| 31 | } |
|---|
| 32 | } |
|---|
| 33 | if (document.forms['category-listing-form'].move_cat_id) |
|---|
| 34 | document.forms['category-listing-form'].move_cat_id.value = '0'; |
|---|
| 35 | |
|---|
| 36 | getByID('category-new-parent-' + id).focus(); |
|---|
| 37 | |
|---|
| 38 | if (getByID('action-col-head')) |
|---|
| 39 | getByID('action-col-head').style.display = 'none'; // hide header of actions column |
|---|
| 40 | if (getByID('delete-col-head')) |
|---|
| 41 | getByID('delete-col-head').style.display = 'none'; // hide header of delete column |
|---|
| 42 | for (var i = 0; i < categoryRows.length; i++) { |
|---|
| 43 | if (getByID('action-' + categoryRows[i])) |
|---|
| 44 | getByID('action-' + categoryRows[i]).style.display = 'none'; // hide actions column for category rows |
|---|
| 45 | if (getByID('delete-' + categoryRows[i])) |
|---|
| 46 | getByID('delete-' + categoryRows[i]).style.display = 'none'; // hide delete column for category rows |
|---|
| 47 | } |
|---|
| 48 | if (getByID('footer-list-actions')) { |
|---|
| 49 | getByID('footer-list-actions').style.display = 'none'; |
|---|
| 50 | } |
|---|
| 51 | return false; |
|---|
| 52 | } |
|---|
| 53 | |
|---|
| 54 | function cancelCreateMode (id) { |
|---|
| 55 | DOM.removeClassName(getByID('create-new-link'), 'hidden'); |
|---|
| 56 | getByID('create-' + id).style.display = 'none'; // hide subcategory creation row |
|---|
| 57 | if (document.all) { |
|---|
| 58 | if (getByID('action-col-head')) |
|---|
| 59 | getByID('action-col-head').style.display = 'block'; // show header of actions column |
|---|
| 60 | if (getByID('delete-col-head')) |
|---|
| 61 | getByID('delete-col-head').style.display = 'block'; // show header of delete column |
|---|
| 62 | } else { |
|---|
| 63 | if (getByID('action-col-head')) |
|---|
| 64 | getByID('action-col-head').style.display = 'table-cell'; |
|---|
| 65 | if (getByID('delete-col-head')) |
|---|
| 66 | getByID('delete-col-head').style.display = 'table-cell'; |
|---|
| 67 | } |
|---|
| 68 | for (var i = 0; i < categoryRows.length; i++) { |
|---|
| 69 | if (document.all) { |
|---|
| 70 | if (getByID('action-' + categoryRows[i])) |
|---|
| 71 | getByID('action-' + categoryRows[i]).style.display = 'block'; // show actions column for category rows |
|---|
| 72 | if (getByID('delete-' + categoryRows[i])) |
|---|
| 73 | getByID('delete-' + categoryRows[i]).style.display = 'block'; // show delete column for category rows |
|---|
| 74 | } else { |
|---|
| 75 | if (getByID('action-' + categoryRows[i])) |
|---|
| 76 | getByID('action-' + categoryRows[i]).style.display = 'table-cell'; |
|---|
| 77 | if (getByID('delete-' + categoryRows[i])) |
|---|
| 78 | getByID('delete-' + categoryRows[i]).style.display = 'table-cell'; |
|---|
| 79 | } |
|---|
| 80 | } |
|---|
| 81 | if (getByID('footer-list-actions')) { |
|---|
| 82 | getByID('footer-list-actions').style.display = 'block'; |
|---|
| 83 | } |
|---|
| 84 | } |
|---|
| 85 | |
|---|
| 86 | function setMoveMode (id) { |
|---|
| 87 | var f = getByID('category-listing-form'); |
|---|
| 88 | f['__mode'].value = 'save_cat'; |
|---|
| 89 | if (getByID('msg-block')) { |
|---|
| 90 | getByID('msg-block').style.display = 'none'; // hide any messaging |
|---|
| 91 | } |
|---|
| 92 | DOM.addClassName( getByID('category-' + id), "selected" ); |
|---|
| 93 | getByID('move-radio-' + id).style.display = 'none'; // hide radio button of selected row |
|---|
| 94 | if (document.all) { |
|---|
| 95 | getByID('move-col-head').style.display = 'block'; // show header of radio button column |
|---|
| 96 | getByID('move-0').style.display = 'block'; // show top level row |
|---|
| 97 | } else { |
|---|
| 98 | getByID('move-col-head').style.display = 'table-cell'; |
|---|
| 99 | getByID('move-0').style.display = 'table-row'; |
|---|
| 100 | } |
|---|
| 101 | getByID('action-col-head').style.display = 'none'; // hide header of actions column |
|---|
| 102 | getByID('delete-col-head').style.display = 'none'; // hide header of delete column |
|---|
| 103 | if (getByID('footer-list-actions')) { |
|---|
| 104 | getByID('footer-list-actions').style.display = 'none'; |
|---|
| 105 | } |
|---|
| 106 | document.forms['category-listing-form'].move_cat_id.value = id; |
|---|
| 107 | for (var i = 0; i < categoryRows.length; i++) { |
|---|
| 108 | if (document.all) { |
|---|
| 109 | getByID('move-col-' + categoryRows[i]).style.display = 'block'; // show radio buttons for category rows |
|---|
| 110 | } else { |
|---|
| 111 | getByID('move-col-' + categoryRows[i]).style.display = 'table-cell'; |
|---|
| 112 | } |
|---|
| 113 | getByID('action-' + categoryRows[i]).style.display = 'none'; // hide actions column for category rows |
|---|
| 114 | getByID('delete-' + categoryRows[i]).style.display = 'none'; // hide delete column for category rows |
|---|
| 115 | } |
|---|
| 116 | return false; |
|---|
| 117 | } |
|---|
| 118 | |
|---|
| 119 | var tableSelect; |
|---|
| 120 | function init() |
|---|
| 121 | { |
|---|
| 122 | // setup |
|---|
| 123 | tableSelect = new TC.TableSelect( "category-listing-table" ); |
|---|
| 124 | tableSelect.rowSelect = true; |
|---|
| 125 | } |
|---|
| 126 | |
|---|
| 127 | TC.attachLoadEvent( init ); |
|---|
| 128 | //--> |
|---|
| 129 | </script> |
|---|
| 130 | </mt:setvarblock> |
|---|
| 131 | <mt:setvarblock name="system_msg"> |
|---|
| 132 | <div id="msg-block"> |
|---|
| 133 | <mt:if name="saved"> |
|---|
| 134 | <mtapp:statusmsg |
|---|
| 135 | id="saved" |
|---|
| 136 | class="success" |
|---|
| 137 | rebuild="all"> |
|---|
| 138 | <__trans phrase="Your category changes and additions have been made."> |
|---|
| 139 | </mtapp:statusmsg> |
|---|
| 140 | </mt:if> |
|---|
| 141 | |
|---|
| 142 | <mt:if name="saved_deleted"> |
|---|
| 143 | <mtapp:statusmsg |
|---|
| 144 | id="saved-deleted" |
|---|
| 145 | class="success" |
|---|
| 146 | rebuild="all"> |
|---|
| 147 | <__trans phrase="You have successfully deleted the selected category."> |
|---|
| 148 | </mtapp:statusmsg> |
|---|
| 149 | </mt:if> |
|---|
| 150 | </div> |
|---|
| 151 | </mt:setvarblock> |
|---|
| 152 | <mt:setvarblock name="action_buttons"> |
|---|
| 153 | <a href="javascript:void(0)" |
|---|
| 154 | onclick="doRemoveItems(getByID('<$mt:var name="object_type"$>-listing-form'), '<__trans phrase="category" escape="js">', '<__trans phrase="categories" escape="js">'); return false;" |
|---|
| 155 | accesskey="x" |
|---|
| 156 | title="<__trans phrase="Delete selected category (x)">" |
|---|
| 157 | ><__trans phrase="Delete"></a> |
|---|
| 158 | </mt:setvarblock> |
|---|
| 159 | <mt:setvarblock name="related_content"> |
|---|
| 160 | <$MTApp:PageActions from="list_cat"$> |
|---|
| 161 | </mt:setvarblock> |
|---|
| 162 | <mt:var name="position_actions_top" value="1"> |
|---|
| 163 | <mt:setvarblock name="content_header"> |
|---|
| 164 | <p id="create-new-link"><a href="javascript:void(0)" onclick="return setCreateMode(0)" class="icon-left icon-create"><__trans phrase="Create top level category"></a></p> |
|---|
| 165 | </mt:setvarblock> |
|---|
| 166 | <mt:include name="include/header.tmpl"> |
|---|
| 167 | |
|---|
| 168 | <mtapp:listing |
|---|
| 169 | hide_pager="1"> |
|---|
| 170 | <mt:if __first__> |
|---|
| 171 | <input type="hidden" name="move_cat_id" value="" /> |
|---|
| 172 | <thead> |
|---|
| 173 | <tr> |
|---|
| 174 | <th id="delete-col-head" class="cb"><input type="checkbox" name="id-head" value="all" class="select" /></th> |
|---|
| 175 | <th id="move-col-head" class="move-col"> </th> |
|---|
| 176 | <th id="cat-categories" class="category"><mt:var name="object_label_plural"></th> |
|---|
| 177 | <th id="action-col-head" class="actions"><__trans phrase="Actions"></th> |
|---|
| 178 | <th id="cat-entries" class="entry"><mt:var name="entry_label_plural"></th> |
|---|
| 179 | <th id="cat-trackbacks" class="trackback"><__trans phrase="TrackBacks"></th> |
|---|
| 180 | </tr> |
|---|
| 181 | </thead> |
|---|
| 182 | <tbody> |
|---|
| 183 | </mt:if> |
|---|
| 184 | <tr class="create-row create-inline" id="create-0"> |
|---|
| 185 | <td class="move-col" colspan="2"> </td> |
|---|
| 186 | <td colspan="4"> |
|---|
| 187 | <mt:setvarblock name="new_parent_label"><__trans phrase="New Parent [_1]" params="<mt:var name="object_label">"></mt:setvarblock> |
|---|
| 188 | <mtapp:setting |
|---|
| 189 | id="new-parent-category" |
|---|
| 190 | label="$new_parent_label" |
|---|
| 191 | label_class="inline field-no-header" |
|---|
| 192 | hint="" |
|---|
| 193 | show_hint="0"> |
|---|
| 194 | <input type="text" name="category-new-parent-0" id="category-new-parent-0" value="" maxlength="100" /> |
|---|
| 195 | </mtapp:setting> |
|---|
| 196 | <mtapp:setting |
|---|
| 197 | id="actions" |
|---|
| 198 | label="<__trans phrase="Actions">" |
|---|
| 199 | label_class="inline field-no-header" |
|---|
| 200 | hint="" |
|---|
| 201 | show_hint="0"> |
|---|
| 202 | <span class="buttons"> |
|---|
| 203 | <a href="javascript:void(0)" mt:command="submit" |
|---|
| 204 | title="<__trans phrase="Create Category" params="<mt:var name="sub_object_label">">" |
|---|
| 205 | ><__trans phrase="Create Category"></a> |
|---|
| 206 | <a href="javascript:void(0)" |
|---|
| 207 | onclick="cancelCreateMode(0); return false" |
|---|
| 208 | ><__trans phrase="Cancel"></a> |
|---|
| 209 | </span> |
|---|
| 210 | </mtapp:setting> |
|---|
| 211 | </tr> |
|---|
| 212 | |
|---|
| 213 | <tr class="move-row" id="move-0"> |
|---|
| 214 | <td id="delete-0"> </td> |
|---|
| 215 | <td class="move-col" id="move-col-0"><input type="radio" name="move-radio" id="move-radio-0" value="0" onclick="submitMoveMode()" /></td> |
|---|
| 216 | <td><__trans phrase="Top Level"></td> |
|---|
| 217 | <td id="action-0"> </td> |
|---|
| 218 | <td> </td> |
|---|
| 219 | <td> </td> |
|---|
| 220 | </tr> |
|---|
| 221 | |
|---|
| 222 | <tr class="<mt:if name="__odd__">odd<mt:else>even</mt:if>" id="category-<mt:var name="category_id">"> |
|---|
| 223 | <td class="cb" id="delete-<mt:var name="category_id">"><input type="checkbox" name="id" value="<mt:var name="category_id">" class="select" /></td> |
|---|
| 224 | <td class="move-col" id="move-col-<mt:var name="category_id">"><input type="radio" name="move-radio" id="move-radio-<mt:var name="category_id">" value="<mt:var name="category_id">" onclick="submitMoveMode()" /></td> |
|---|
| 225 | <td class="category"> |
|---|
| 226 | <mt:if name="category_has_children"> |
|---|
| 227 | <mt:if name="category_is_expanded"> |
|---|
| 228 | <a href="javascript:void(0)" onclick="return doCollapse(<mt:var name="category_id">)" title="<__trans phrase="Collapse">"><img alt="<__trans phrase="Collapse">" src="<mt:var name="static_uri">images/status_icons/collapse.gif" width="9" height="9" class="expcol" /></a> |
|---|
| 229 | <mt:else> |
|---|
| 230 | <a href="javascript:void(0)" onclick="return doExpand(<mt:var name="category_id">)" title="<__trans phrase="Expand">"><img alt="<__trans phrase="Expand">" src="<mt:var name="static_uri">images/status_icons/expand.gif" width="9" height="9" class="expcol" /></a> |
|---|
| 231 | </mt:if> |
|---|
| 232 | </mt:if> |
|---|
| 233 | <div style="margin-left: <mt:var name="category_pixel_depth">px;"><a href="<mt:var name="script_url">?__mode=view&_type=<mt:var name="object_type">&blog_id=<mt:var name="blog_id">&id=<mt:var name="category_id">"><mt:var name="category_label_full"></a></div> |
|---|
| 234 | </td> |
|---|
| 235 | <td id="action-<mt:var name="category_id">" class="actions"> |
|---|
| 236 | <a href="javascript:void(0)" onclick="return setCreateMode(<mt:var name="category_id">)" class="icon-left icon-create" title="<__trans phrase="Create Category">"><__trans phrase="Create"></a> |
|---|
| 237 | <a href="javascript:void(0)" onclick="return setMoveMode(<mt:var name="category_id">)" class="icon-left icon-move" title="<__trans phrase="Move Category">"><__trans phrase="Move"></a> |
|---|
| 238 | </td> |
|---|
| 239 | <td class="entry"> |
|---|
| 240 | <mt:if name="category_entrycount"> |
|---|
| 241 | <mt:if name="can_edit_entries"> |
|---|
| 242 | <a href="<mt:var name="script_url">?__mode=list_entries&_type=<mt:var name="entry_type">&blog_id=<mt:var name="blog_id">&filter=category_id&filter_val=<mt:var name="category_id">"><__trans phrase="[quant,_1,entry,entries]" params="<mt:var name="category_entrycount">"></a> |
|---|
| 243 | <mt:else> |
|---|
| 244 | <__trans phrase="[quant,_1,entry,entries]" params="<mt:var name="category_entrycount">"> |
|---|
| 245 | </mt:if> |
|---|
| 246 | </mt:if> |
|---|
| 247 | </td> |
|---|
| 248 | <td class="trackback"> |
|---|
| 249 | <mt:if name="has_tb"> |
|---|
| 250 | <mt:if name="category_tbcount"> |
|---|
| 251 | <mt:if name="can_edit_entries"> |
|---|
| 252 | <a href="<mt:var name="script_url">?__mode=list_pings&filter=<$mt:var name="object_type"$>_id&blog_id=<mt:var name="blog_id">&filter_val=<mt:var name="category_id">"> |
|---|
| 253 | <__trans phrase="[quant,_1,TrackBack,TrackBacks]" params="<mt:var name="category_tbcount">"> |
|---|
| 254 | </a> |
|---|
| 255 | </mt:if> |
|---|
| 256 | <mt:else> |
|---|
| 257 | <__trans phrase="[quant,_1,TrackBack,TrackBacks]" params="<mt:var name="category_tbcount">"> |
|---|
| 258 | </mt:if> |
|---|
| 259 | </mt:if> |
|---|
| 260 | |
|---|
| 261 | </td> |
|---|
| 262 | </tr> |
|---|
| 263 | |
|---|
| 264 | <tr class="create-row create-inline" id="create-<mt:var name="category_id">"> |
|---|
| 265 | <td class="move-col" colspan="2"> </td> |
|---|
| 266 | <td colspan="4" style="padding-left: 15px;"> |
|---|
| 267 | <span style="margin-left: <mt:var name="category_pixel_depth">px;"> |
|---|
| 268 | <mt:setvarblock name="new_label"><__trans phrase="New [_1]" params="<mt:var name="object_label">"></mt:setvarblock> |
|---|
| 269 | <mtapp:setting |
|---|
| 270 | id="new_category" |
|---|
| 271 | label="$new_label" |
|---|
| 272 | label_class="inline field-no-header" |
|---|
| 273 | hint="" |
|---|
| 274 | show_hint="0"> |
|---|
| 275 | <input type="text" name="category-new-parent-<mt:var name="category_id">" id="category-new-parent-<mt:var name="category_id">" value="" maxlength="100"/> |
|---|
| 276 | </mtapp:setting> |
|---|
| 277 | <mtapp:setting |
|---|
| 278 | id="actions" |
|---|
| 279 | label="<__trans phrase="Actions">" |
|---|
| 280 | label_class="inline field-no-header" |
|---|
| 281 | hint="" |
|---|
| 282 | show_hint="0"> |
|---|
| 283 | <span class="buttons"> |
|---|
| 284 | <a href="javascript:void(0)" |
|---|
| 285 | mt:command="submit" |
|---|
| 286 | ><__trans phrase="Create Category"></a> |
|---|
| 287 | <a href="javascript:void(0)" |
|---|
| 288 | onclick="cancelCreateMode(<mt:var name="category_id">); return false" |
|---|
| 289 | ><__trans phrase="Cancel"></a> |
|---|
| 290 | </span> |
|---|
| 291 | </mtapp:setting> |
|---|
| 292 | </span></td> |
|---|
| 293 | </tr> |
|---|
| 294 | <mt:if __last__> |
|---|
| 295 | </tbody> |
|---|
| 296 | </mt:if> |
|---|
| 297 | <mt:else> |
|---|
| 298 | <mtapp:statusmsg id="zero-state" class="info zero-state"> |
|---|
| 299 | <__trans phrase="No categories could be found."> |
|---|
| 300 | </mtapp:statusmsg> |
|---|
| 301 | <form id="category-listing-form" method="post" action="<$mt:var name="script_url"$>"> |
|---|
| 302 | <input type="hidden" name="__mode" value="save_cat" /> |
|---|
| 303 | <input type="hidden" name="_type" value="category" /> |
|---|
| 304 | <input type="hidden" name="return_args" value="<$mt:var name="return_args" escape="html"$>" /> |
|---|
| 305 | <input type="hidden" name="blog_id" value="<$mt:var name="blog_id"$>" /> |
|---|
| 306 | <input type="hidden" name="magic_token" value="<$mt:var name="magic_token"$>" /> |
|---|
| 307 | <table width="100%"> |
|---|
| 308 | <tr id="create-0" class="create-row create-inline"> |
|---|
| 309 | <td style="padding: 5px"> |
|---|
| 310 | <mt:setvarblock name="new_label"><__trans phrase="New [_1]" params="<mt:var name="object_label">"></mt:setvarblock> |
|---|
| 311 | <mtapp:setting |
|---|
| 312 | id="new_category" |
|---|
| 313 | label="$new_label" |
|---|
| 314 | label_class="inline field-no-header" |
|---|
| 315 | hint="" |
|---|
| 316 | show_hint="0"> |
|---|
| 317 | <input type="text" name="category-new-parent-0" id="category-new-parent-0" value="" maxlength="100" /> |
|---|
| 318 | </mtapp:setting> |
|---|
| 319 | <mtapp:setting |
|---|
| 320 | id="actions" |
|---|
| 321 | label="<__trans phrase="Actions">" |
|---|
| 322 | label_class="inline field-no-header" |
|---|
| 323 | hint="" |
|---|
| 324 | show_hint="0"> |
|---|
| 325 | <span class="buttons"> |
|---|
| 326 | <a href="javascript:void(0)" mt:command="submit" |
|---|
| 327 | ><__trans phrase="Create"></a> |
|---|
| 328 | <a href="javascript:void(0)" |
|---|
| 329 | onclick="cancelCreateMode(0); return false" |
|---|
| 330 | ><__trans phrase="Cancel"></a> |
|---|
| 331 | </span> |
|---|
| 332 | </mtapp:setting> |
|---|
| 333 | </td> |
|---|
| 334 | </tr> |
|---|
| 335 | </table> |
|---|
| 336 | </form> |
|---|
| 337 | </mtapp:listing> |
|---|
| 338 | <mt:include name="include/footer.tmpl"> |
|---|