function divCableLine1($coors, $CableLineId, $nodeInfo, $tmpT = FALSE) { $OpenGIS = "(" . $coors[0]->lon . "," . $coors[0]->lat . ")"; $wr['id'] = $CableLineId; $res = CableLine_SELECT(0, $wr, $tmpT); $CableLine = $res['rows'][0]; unset($wr); $wr['CableLine'] = $CableLineId; $query = 'SELECT * FROM "' . tmpTable('CableLinePoint', $tmpT) . '"' . genWhere($wr) . 'ORDER BY "sequence"'; $res2 = PQuery($query); $CableLinePoints = $res2['rows']; for ($i = 0; $i < count($CableLinePoints); $i++) { $point = $CableLinePoints[$i]; if ($point['OpenGIS'] == $OpenGIS) { $name = $nodeInfo['name']; $NetworkBoxId = $nodeInfo['NetworkBoxId']; $note = $nodeInfo['note']; $SettlementGeoSpatial = "NULL"; $building = $nodeInfo['building']; $apartment = $nodeInfo['apartment']; $res3 = NetworkNode_Add($name, $NetworkBoxId, $note, $OpenGIS, $SettlementGeoSpatial, $building, $apartment, $tmpT); $NetworkNodeId = $res3['rows'][0]['id']; $seq = $point['sequence']; $wr['sequence'] = $seq; $upd['OpenGIS'] = "NULL"; $upd['NetworkNode'] = $NetworkNodeId; CableLinePoint_UPDATE($upd, $wr, $tmpT); $wr1 = array('sequence' => array('val' => $seq, 'sign' => '>')); error_log(genWhere($wr1)); $ins = array(); $ins['CableType'] = $CableLine['CableType']; $ins['name'] = $CableLine['name'] . "_div"; $ins['comment'] = $CableLine['comment']; $query = 'INSERT INTO "' . tmpTable('CableLine', $tmpT) . '"' . genInsert($ins) . ' RETURNING id'; error_log($query); $res4 = PQuery($query); $NCableLineId = $res4['rows'][0]['id']; $ins = array(); foreach ($point as $key => $value) { if ($key != "id" && $key != "sequence") { if ($value != "") { $ins[$key] = $value; } else { $ins[$key] = "NULL"; } } } $ins['CableLine'] = $NCableLineId; $ins['sequence'] = 1; $ins['OpenGIS'] = 'NULL'; $ins['NetworkNode'] = $NetworkNodeId; $query = 'INSERT INTO "' . tmpTable('CableLinePoint', $tmpT) . '"' . genInsert($ins); error_log($query); PQuery($query); $query = 'UPDATE "' . tmpTable('CableLinePoint', $tmpT) . '" SET "CableLine" = ' . $NCableLineId . ', sequence = sequence + 1 - ' . $seq . ' WHERE "sequence" > ' . $seq . ' AND "CableLine" = ' . $CableLineId; error_log($query); PQuery($query); break; } } }
} elseif (!isset($res['error'])) { header("Refresh: 3; url=" . $back); $message = 'Узел изменен!'; $error = 0; } else { $message = 'Неверно заполнены поля!'; $error = 1; } } elseif ($_POST['mode'] == 2) { $name = $_POST['name']; $networkBox = $_POST['boxes']; $note = $_POST['note']; $place = $_POST['place']; $OpenGIS = $_POST['OpenGIS'] == '' ? 'NULL' : $_POST['OpenGIS']; $apartment = $building = $SettlementGeoSpatial = 'NULL'; $res = NetworkNode_Add($name, $networkBox, $note, $OpenGIS, $SettlementGeoSpatial, $building, $apartment, $place); if (isset($res['error'])) { $message = $res['error']; $error = 1; } elseif (!isset($res['error'])) { header("Refresh: 3; url=" . $back); $message = 'Узел добавлен!'; $error = 0; } else { $message = 'Неверно заполнены поля!'; $error = 1; } } showMessage($message, $error); } else { $comboBox_Box_Values = array();