function delete($id)
 {
     global $cfg;
     $item = new WorkflowItem();
     $item->loadByPrimaryKey($id);
     $pos = $item->get("position");
     $idworkflow = $item->get("idworkflow");
     $oDb = new DB_Contenido();
     $this->select("position > {$pos} AND idworkflow = '" . Contenido_Security::escapeDB($idworkflow, $oDb) . "'");
     while ($obj = $this->next()) {
         $obj->setPosition($obj->get("position") - 1);
         $obj->store();
     }
     $aUserSequencesDelete = array();
     $sSql = 'SELECT idusersequence FROM ' . $cfg["tab"]["workflow_user_sequences"] . ' WHERE idworkflowitem = ' . $id . ';';
     $oDb->query($sSql);
     while ($oDb->next_record()) {
         array_push($aUserSequencesDelete, Contenido_Security::escapeDB($oDb->f('idusersequence'), $oDb));
     }
     $sSql = 'DELETE FROM ' . $cfg["tab"]["workflow_actions"] . ' WHERE idworkflowitem = ' . Contenido_Security::escapeDB($id, $oDb) . ';';
     $oDb->query($sSql);
     $this->updateArtAllocation($id, 1);
     if (count($aUserSequencesDelete) > 0) {
         $sSql = 'DELETE FROM ' . $cfg["tab"]["workflow_user_sequences"] . ' WHERE idusersequence in (' . implode(',', $aUserSequencesDelete) . ');';
         $oDb->query($sSql);
     }
 }
function editWorkflowStep($idworkflowitem)
{
    global $area, $idworkflow, $idworkflowitem, $frame, $availableWorkflowActions;
    global $notification;
    $workflowitem = new WorkflowItem();
    if ($workflowitem->loadByPrimaryKey($idworkflowitem) == false) {
        return " ";
    }
    $workflowactions = new WorkflowActions();
    $stepname = $workflowitem->get("name");
    $stepdescription = $workflowitem->get("description");
    $id = $workflowitem->get("idworkflowitem");
    $task = $workflowitem->get("idtask");
    $form = new UI_Table_Form("workflow_edit");
    $form->setVar("area", $area);
    $form->setVar("action", "workflow_save_step");
    $form->setVar("idworkflow", $idworkflow);
    $form->setVar("idworkflowitem", $idworkflowitem);
    $form->setVar("frame", $frame);
    $form->addHeader(i18n("Edit workflow step", "workflow"));
    $form->add(i18n("Step name", "workflow"), formGenerateField("text", "wfstepname", $stepname, 40, 255));
    $form->add(i18n("Step description", "workflow"), formGenerateField("textbox", "wfstepdescription", $stepdescription, 60, 10));
    foreach ($availableWorkflowActions as $key => $value) {
        $actions .= formGenerateCheckbox("wfactions[" . $key . "]", "1", $workflowactions->get($id, $key)) . '<label for="wfactions[' . $key . ']1">' . $value . '</label>' . "<br>";
    }
    $form->add(i18n("Actions", "workflow"), $actions);
    $form->add(i18n("Assigned users", "workflow"), getWorkflowUsers($idworkflowitem));
    return $form->render(true);
}