On peut maintenant trier les liens !
This commit is contained in:
36
ajax/update-links-order.php
Normal file
36
ajax/update-links-order.php
Normal file
@@ -0,0 +1,36 @@
|
||||
<?
|
||||
$label = $_POST['label'];
|
||||
$order = $_POST['order'];
|
||||
$itemMoved = $_POST['itemMoved'];
|
||||
|
||||
$orderArray = explode(',', $order);
|
||||
$itemIndex = 0;
|
||||
|
||||
foreach($orderArray as $index=>$value){
|
||||
if($value == $itemMoved)
|
||||
$itemIndex = (int)$index;
|
||||
}
|
||||
|
||||
$itemAfter = '';
|
||||
if(isset($orderArray[$itemIndex+1]))
|
||||
$itemAfter = $orderArray[$itemIndex+1];
|
||||
|
||||
$doc = new DOMDocument;
|
||||
$doc->load('../db/links.xml');
|
||||
|
||||
$xpath = new DOMXpath($doc);
|
||||
|
||||
// Buffering and deleting moved element
|
||||
foreach($xpath->query('label/link[title = "'.$itemMoved.'"]') as $node) {
|
||||
$buffer = $node;
|
||||
$node->parentNode->removeChild($node);
|
||||
}
|
||||
|
||||
if($itemAfter != ''){
|
||||
$searchLabel = $xpath->query('label[@id="'.$label.'"]/link[title = "'.$itemAfter.'"]')->item(0);
|
||||
$searchLabel->parentNode->insertBefore($buffer, $searchLabel);
|
||||
}else{
|
||||
$searchLabel = $xpath->query('label[@id="'.$label.'"]');
|
||||
$searchLabel->item(0)->appendChild($buffer);
|
||||
}
|
||||
$doc->save('../db/links.xml');
|
Reference in New Issue
Block a user