function move_order($block_from, $block_to, $banner_id) { //move_block($block_from, $block_to, $banner_id); // get the block_to x,y $pos = get_block_position($block_to); $to_x = $pos['x']; $to_y = $pos['y']; // we need to work out block_from, get the block with the lowest x and y $min_max = get_blocks_min_max($block_from, $banner_id); $from_x = $min_max['low_x']; $from_y = $min_max['low_y']; //echo "block_from: ($block_from) $from_x $from_y<br>"; //echo "block_to: ($block_to) $to_x $to_y<br>"; // get the position move's difference $dx = $to_x - $from_x; //echo "$to_x - $from_x ($dx)<br>"; $dy = $to_y - $from_y; // get the order $sql = "SELECT * from blocks where block_id='{$block_from}' AND banner_id='{$banner_id}' "; //echo "$sql<br>"; $result = mysql_query($sql) or die(mysql_error()); $source_block = mysql_fetch_array($result); $sql = "SELECT * from blocks WHERE order_id='" . $source_block['order_id'] . "' AND banner_id='{$banner_id}' "; //echo "$sql<br>"; $result = mysql_query($sql) or die(mysql_error()); $grid_width = G_WIDTH * BLK_WIDTH; while ($block_row = mysql_fetch_array($result)) { // check each block to make sure we can move it. //echo 'from: '.$block_row['x'].",".$block_row['y']." to ".($block_row['x']+$dx).",".($block_row['y']+$dy)." (to pos: $to_x, $to_y diff: $dx & $dy)<Br>"; //$block_to = ((($block_row['y']+$dy)*$grid_width)+($block_row['x']+$dx))/10 ; $block_to = ($block_row['x'] + $dx) / BLK_WIDTH + ($block_row['y'] + $dy) / BLK_HEIGHT * ($grid_width / BLK_WIDTH); if (!is_block_free($block_to, $banner_id)) { echo "<font color='red'>Cannot move the order - the space chosen is not empty!</font><br>"; return false; } } mysql_data_seek($result, 0); while ($block_row = mysql_fetch_array($result)) { $block_from = $block_row['x'] / BLK_WIDTH + $block_row['y'] / BLK_HEIGHT * ($grid_width / BLK_WIDTH); $block_to = ($block_row['x'] + $dx) / BLK_WIDTH + ($block_row['y'] + $dy) / BLK_HEIGHT * ($grid_width / BLK_WIDTH); move_block($block_from, $block_to, $banner_id); } return true; }
<input name='cb_to' type="hidden" value=""> <input name='move_type' type="hidden" value="B"> <input name='BID' type="hidden" value="<?php echo $BID; ?> "> </form> <?php //print_r($_REQUEST); //echo "bannerid is --- ".$BID; if ($_REQUEST['move_type'] != '') { if ($_REQUEST['move_type'] == 'B') { // move block move_block($_REQUEST['cb_from'], $_REQUEST['cb_to'], $BID); } else { move_order($_REQUEST['cb_from'], $_REQUEST['cb_to'], $BID); } } $sql = "SELECT * FROM blocks WHERE banner_id='{$BID}'"; $result = mysql_query($sql) or die(mysql_error()); ?> <IMG name='button_move' SRC="move.gif" WIDTH="24" HEIGHT="20" BORDER="0" ALT="Move Order" onclick='bm_state_change("MOVE_ORDER")'> <IMG name='button_move_b' SRC="move_b.gif" WIDTH="24" HEIGHT="20" BORDER="0" ALT="Move Block" onclick='bm_state_change("MOVE_BLOCK")' > <map name="main" id="main" onmousemove="cancelIt()"> <?php while ($row = mysql_fetch_array($result)) { $sql = "select * from users where ID='" . $row['user_id'] . "'";