(self, id, position)
| 460 | @lock |
| 461 | @change |
| 462 | def reorderPackage(self, id, position): |
| 463 | p = self.getPackage(id) |
| 464 | |
| 465 | e = RemoveEvent("pack", id, "collector" if not p.queue else "queue") |
| 466 | self.core.pullManager.addEvent(e) |
| 467 | self.db.reorderPackage(p, position) |
| 468 | |
| 469 | packs = self.packageCache.values() |
| 470 | for pack in packs: |
| 471 | if pack.queue != p.queue or pack.order < 0 or pack == p: continue |
| 472 | if p.order > position: |
| 473 | if pack.order >= position and pack.order < p.order: |
| 474 | pack.order += 1 |
| 475 | pack.notifyChange() |
| 476 | elif p.order < position: |
| 477 | if pack.order <= position and pack.order > p.order: |
| 478 | pack.order -= 1 |
| 479 | pack.notifyChange() |
| 480 | |
| 481 | p.order = position |
| 482 | self.db.commit() |
| 483 | |
| 484 | e = InsertEvent("pack", id, position, "collector" if not p.queue else "queue") |
| 485 | self.core.pullManager.addEvent(e) |
| 486 | |
| 487 | @lock |
| 488 | @change |
no test coverage detected