Changeset 1594:2c7be9167efb
- Timestamp:
- 08/26/13 21:28:25 (11 years ago)
- Branch:
- default
- Files:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
admin/categories.php
r1576 r1594 16 16 17 17 # Remove a categories 18 if (!empty($_POST['categories']) ) {18 if (!empty($_POST['categories']) && !empty($_POST['delete'])) { 19 19 try { 20 20 # Check if category where to move posts exists … … 56 56 57 57 # Update order 58 if (!empty($_POST['categories_order'])) 59 { 60 $categories = json_decode($_POST['categories_order']); 61 62 foreach ($categories as $category) { 63 if (!empty($category->item_id)) { 64 $core->blog->updCategoryPosition($category->item_id, $category->left, $category->right); 65 } 66 } 58 if (!empty($_POST['save_order'])) 59 { 60 if (!empty($_POST['categories_order'])) { // js is enable 61 $categories = json_decode($_POST['categories_order']); 62 63 foreach ($categories as $category) { 64 if (!empty($category->item_id)) { 65 $core->blog->updCategoryPosition($category->item_id, $category->left, $category->right); 66 } 67 } 68 } elseif (!empty($_POST['cat_rank'])) { 69 function countChildren($t, $id) { 70 $c = 0; 71 foreach ($t as $k => $v) { 72 if (preg_match('`^'.$id.'\..*`', $k)) { 73 $c++; 74 } 75 } 76 77 return $c; 78 } 79 80 $i = 1; 81 $ranks = array_flip($_POST['cat_rank']); 82 uksort($ranks, 'version_compare'); 83 foreach ($ranks as $str => $id) { 84 $core->blog->updCategoryPosition($id, $i, ($i + 2 * countChildren($ranks, $str) + 1)); 85 $i = $i+2; 86 } 87 } 88 67 89 http::redirect('categories.php?reord=1'); 68 90 } … … 143 165 144 166 $ref_level = $level = $rs->level-1; 167 $parts = array(); 145 168 while ($rs->fetch()) 146 169 { … … 149 172 if ($rs->level > $level) { 150 173 echo str_repeat('<ul><li '.$attr.'>',$rs->level - $level); 174 $parts[] = 1; 151 175 } elseif ($rs->level < $level) { 152 176 echo str_repeat('</li></ul>',-($rs->level - $level)); 177 $parts = array_slice($parts,0,(count($parts) - ($level - $rs->level))); 178 $parts[count($parts)-1]++; 179 } else { 180 $parts[count($parts)-1]++; 153 181 } 154 182 … … 157 185 } 158 186 187 $cat_rank = implode('.',$parts); 159 188 echo 160 189 '<p>'. … … 164 193 sprintf(($rs->nb_post > 1 ? __('%d entries') : __('%d entry') ),$rs->nb_post).'</a>'. 165 194 ', '.__('total:').' '.$rs->nb_total.') '. 166 '<span class="cat-url">'.__('URL:').' <code>'.html::escapeHTML($rs->cat_url).'</code></span></p>'; 195 '<span class="cat-url">'.__('URL:').' <code>'.html::escapeHTML($rs->cat_url).'</code></span>'. 196 form::field('cat_rank['.$rs->cat_id.']',10,10,$cat_rank,'cat-rank'). 197 '</p>'; 167 198 168 199 $level = $rs->level; … … 183 214 '</p>'. 184 215 '<p class="right">'. 185 $core->formNonce(). 186 '<input type="submit" value="'.__('Delete selected categories').'"/>'. 216 '<input type="submit" name="delete" value="'.__('Delete selected categories').'"/>'. 187 217 '</p>'. 188 '</div>'. 189 '</form>'; 218 '</div>'; 190 219 191 220 echo '<h3 class="clear">'.__('Categories order').'</h3>'; 192 221 193 222 if ($core->auth->check('categories',$core->blog->id) && $rs->count()>1) { 223 if (!$core->auth->user_prefs->accessibility->nodragdrop) { 224 echo '<p class="no-js-hidden">'.__('To rearrange categories order, move items by drag and drop, then click on “Save categories order” button.').'</p>'; 225 } 194 226 echo 195 '<form action="categories.php" method="post">'; 196 if (!$core->auth->user_prefs->accessibility->nodragdrop) { 197 echo '<p class="no-js-hidden">'.__('To rearrange categories order, move items by drag and drop, then click on “Save categories order” button.').'</p>'; 198 } 199 echo 200 '<p class="js-hidden">'.__('To rearrange categories order, change position number and click on “Save categories order” button.').'</p>'. 227 '<p class="dragdrop-hidden">'.__('To rearrange categories order, change position number and click on “Save categories order” button.').'</p>'. 201 228 '<p>'. 202 229 '<input type="hidden" id="categories_order" name="categories_order" value=""/>'. 203 '<input type="submit" id="save-set-order" value="'.__('Save categories order').'" />'. 204 $core->formNonce().'</p>'. 205 '</form>'; 206 } 207 208 echo 209 '<form action="categories.php" method="post" id="reset-order">'. 210 '<p><input type="submit" value="'.__('Reorder all categories on the top level').'" />'. 211 form::hidden(array('reset'),1). 230 '<input type="submit" name="save_order" id="save-set-order" value="'.__('Save categories order').'" />'. 231 '</p>'; 232 } 233 234 echo 235 '<p><input type="submit" name="reset" value="'.__('Reorder all categories on the top level').'" />'. 212 236 $core->formNonce().'</p>'. 213 237 '</form>'; -
admin/js/_categories.js
r1563 r1594 1 1 $(function() { 2 2 if ($.fn['nestedSortable']!==undefined) { 3 $('.dragdrop-hidden, .cat-rank').hide(); 3 4 $('#categories ul li').css('cursor','move'); 4 5 $('#save-set-order').prop('disabled',true).addClass('disabled'); … … 18 19 }); 19 20 20 dotclear.categoriesActionsHelper(); 21 $('input[name="delete"]').click(function() { 22 var nb_ckecked = $('input[name="categories[]"]:checked').length; 23 if (nb_ckecked==0) { 24 return false; 25 } 21 26 27 return window.confirm(dotclear.msg.confirm_delete_categories.replace('%s',nb_ckecked)); 28 }); 22 29 23 $(' form#reset-order').submit(function() {30 $('input[name="reset"]').click(function() { 24 31 return window.confirm(dotclear.msg.confirm_reorder_categories); 25 32 }); -
admin/js/common.js
r1576 r1594 299 299 300 300 return true; 301 });302 },303 304 categoriesActionsHelper: function() {305 $('#form-categories').submit(function() {306 var nb_ckecked = $('input[name="categories[]"]:checked').length;307 if (nb_ckecked==0) {308 return false;309 }310 311 return window.confirm(dotclear.msg.confirm_delete_categories.replace('%s',nb_ckecked));312 301 }); 313 302 }, -
admin/style/default.css
r1589 r1594 689 689 outline: 1px dashed #4183C4; 690 690 min-height: 2.5em; 691 } 692 #categories input.cat-rank { 693 float: right; 694 margin-left: 30px; 691 695 } 692 696 #save-set-order.disabled { -
locales/fr/main.po
r1590 r1594 2246 2246 msgstr "Êtes-vous certain de vouloir supprimer la catégorie \"%s\" ?" 2247 2247 2248 #, php-format 2249 msgid "Are you sure you want to delete selected categories (%s)?" 2250 msgstr "Êtes-vous certain de vouloir supprimer les categories sélectionnées (%s) ?" 2251 2248 2252 msgid "Are you sure you want to reorder all categories?" 2249 2253 msgstr "Êtes-vous certain de vouloir réinitialiser l'ordre des catégories ?"
Note: See TracChangeset
for help on using the changeset viewer.