context); try { $stop = $context["position"] + $context["batch"]; for (; $context["position"] < $stop; $context["position"]++ ) { $id = $context["items"][$context["position"]]; Database::instance() ->query("Update {items} set weight = {$context["position"]} where id=$id;"); } $task->state = "success"; } catch(Exception $e) { $tast->status = $e->getMessage(); $task->state = "error"; } $task->context = serialize($context); $total = count($context["items"]); $task->percent_complete = $context["position"] / (float)$total * 100; $task->done = $context["position"] == $total; } }