Changeset 691 for trunk/cgi-bin/IPDB.pm
- Timestamp:
- 02/06/15 17:42:26 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/cgi-bin/IPDB.pm
r690 r691 108 108 our $sublistlayout = 1; 109 109 110 # VLAN validation mode. Set to 0 to allow alphanumeric vlan names instead of using the vlan number. 111 our $numeric_vlan = 1; 112 113 110 114 ## 111 115 ## Internal utility functions … … 506 510 507 511 # Snag the allocations for this block 508 my $sth = $dbh->prepare("SELECT cidr,city,type,custid,swip,description, id,master_id".512 my $sth = $dbh->prepare("SELECT cidr,city,type,custid,swip,description,vrf,id,master_id". 509 513 " FROM allocations WHERE parent_id = ? ORDER BY cidr"); 510 514 $sth->execute($args{parent}); … … 524 528 525 529 my @blocklist; 526 while (my ($cidr,$city,$type,$custid,$swip,$desc,$id,$mid) = $sth->fetchrow_array()) { 530 while (my ($cidr,$city,$type,$custid,$swip,$desc,$vrf,$id,$mid) = $sth->fetchrow_array()) { 531 $desc .= " - vrf:$vrf" if $desc && $vrf; 532 $desc = "vrf:$vrf" if !$desc && $vrf; 527 533 $custsth->execute($custid); 528 534 my ($ncust) = $custsth->fetchrow_array(); … … 575 581 576 582 # Snag the allocations for this block 577 my $sth = $dbh->prepare("SELECT cidr,city,type,custid,swip,description, id,master_id".583 my $sth = $dbh->prepare("SELECT cidr,city,type,custid,swip,description,vrf,id,master_id". 578 584 " FROM allocations WHERE parent_id = ? AND type ~ '[mc]\$' ORDER BY cidr"); 579 585 $sth->execute($args{parent}); … … 586 592 587 593 my @blocklist; 588 while (my ($cidr,$city,$type,$custid,$swip,$desc,$id,$mid) = $sth->fetchrow_array()) { 594 while (my ($cidr,$city,$type,$custid,$swip,$desc,$vrf,$id,$mid) = $sth->fetchrow_array()) { 595 $desc .= " - vrf:$vrf" if $desc && $vrf; 596 $desc = "vrf:$vrf" if !$desc && $vrf; 589 597 $alsth->execute($cidr, $mid); 590 598 my ($alloc) = $alsth->fetchrow_array(); … … 622 630 623 631 # Snag the allocations for this block 624 my $sth = $dbh->prepare("SELECT cidr,city,type,custid,swip,description, id,master_id".632 my $sth = $dbh->prepare("SELECT cidr,city,type,custid,swip,description,vrf,id,master_id". 625 633 " FROM allocations WHERE parent_id = ? AND type !~ '[mc]\$' ORDER BY cidr"); 626 634 $sth->execute($args{parent}); … … 631 639 632 640 my @blocklist; 633 while (my ($cidr,$city,$type,$custid,$swip,$desc,$id,$mid) = $sth->fetchrow_array()) { 641 while (my ($cidr,$city,$type,$custid,$swip,$desc,$vrf,$id,$mid) = $sth->fetchrow_array()) { 642 $desc .= " - vrf:$vrf" if $desc && $vrf; 643 $desc = "vrf:$vrf" if !$desc && $vrf; 634 644 $custsth->execute($custid); 635 645 my ($ncust) = $custsth->fetchrow_array(); … … 959 969 $args{privdata} = '' if !$args{privdata}; 960 970 $args{vrf} = '' if !$args{vrf}; 971 $args{vlan} = '' if !$args{vlan}; 961 972 $args{rdns} = '' if !$args{rdns}; 962 973 … … 1008 1019 # end node hack 1009 1020 1010 $dbh->commit; 1021 $dbh->commit; # Allocate IP from pool 1011 1022 }; 1012 1023 if ($@) { … … 1032 1043 # Insert the allocations entry 1033 1044 $dbh->do("INSERT INTO allocations ". 1034 "(cidr,parent_id,master_id,vrf, custid,type,city,description,notes,circuitid,privdata,rdns)".1035 " VALUES (?,?,?,?,?,?,?,?,?,?,?,? )", undef,1036 ($args{cidr}, $fbparent, $fbmaster, $args{vrf}, $args{ custid}, $args{type}, $args{city},1045 "(cidr,parent_id,master_id,vrf,vlan,custid,type,city,description,notes,circuitid,privdata,rdns)". 1046 " VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?)", undef, 1047 ($args{cidr}, $fbparent, $fbmaster, $args{vrf}, $args{vlan}, $args{custid}, $args{type}, $args{city}, 1037 1048 $args{desc}, $args{notes}, $args{circid}, $args{privdata}, $args{rdns}) ); 1038 1049 my ($bid) = $dbh->selectrow_array("SELECT currval('allocations_id_seq')"); … … 1068 1079 # end node hack 1069 1080 1070 $dbh->commit; 1081 $dbh->commit; # Simple block allocation 1071 1082 }; # end of eval 1072 1083 if ($@) { … … 1114 1125 # Insert the allocations entry 1115 1126 $dbh->do("INSERT INTO allocations ". 1116 "(cidr,parent_id,master_id,vrf, custid,type,city,description,notes,circuitid,privdata,rdns)".1117 " VALUES (?,?,?,?,?,?,?,?,?,?,?,? )", undef,1118 ($args{cidr}, $fbparent, $fbmaster, $args{vrf}, $args{ custid}, $args{type}, $args{city},1127 "(cidr,parent_id,master_id,vrf,vlan,custid,type,city,description,notes,circuitid,privdata,rdns)". 1128 " VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?)", undef, 1129 ($args{cidr}, $fbparent, $fbmaster, $args{vrf}, $args{vlan}, $args{custid}, $args{type}, $args{city}, 1119 1130 $args{desc}, $args{notes}, $args{circid}, $args{privdata}, $args{rdns}) ); 1120 1131 my ($bid) = $dbh->selectrow_array("SELECT currval('allocations_id_seq')"); … … 1145 1156 # end node hack 1146 1157 1147 $dbh->commit; 1158 $dbh->commit; # Complex block allocation 1148 1159 }; # end eval 1149 1160 if ($@) { … … 1186 1197 return ('FAIL',"Refusing to create oversized static IP pool") if $pool->masklen <= 20; 1187 1198 1199 # Retrieve some odds and ends for defaults on the IPs 1188 1200 my ($pcustid) = $dbh->selectrow_array("SELECT def_custid FROM alloctypes WHERE type=?", undef, ($type) ); 1201 my ($vrf,$vlan) = $dbh->selectrow_array("SELECT vrf,vlan FROM allocations WHERE allocation_id = ?", 1202 undef, ($parent) ); 1203 1189 1204 $type =~ s/[pd]$/i/; 1190 1205 my $sth; … … 1250 1265 my @fieldlist; 1251 1266 my @vallist; 1252 foreach ('custid', 'city', 'description', 'notes', 'circuitid', 'privdata', 'rdns' ) {1267 foreach ('custid', 'city', 'description', 'notes', 'circuitid', 'privdata', 'rdns', 'vrf', 'vlan') { 1253 1268 if ($args{$_}) { 1254 1269 push @fieldlist, $_; … … 1701 1716 if ($type eq 'i') { 1702 1717 my $binfo = $dbh->selectrow_hashref("SELECT ip AS block, custid, type, city, circuitid, description,". 1703 " notes, modifystamp AS lastmod, privdata, vrf, rdns, parent_id, master_id".1718 " notes, modifystamp AS lastmod, privdata, vrf, vlan, rdns, parent_id, master_id". 1704 1719 " FROM poolips WHERE id = ?", undef, ($id) ); 1705 1720 return $binfo; 1706 1721 } else { 1707 1722 my $binfo = $dbh->selectrow_hashref("SELECT cidr AS block, custid, type, city, circuitid, ". 1708 "description, notes, modifystamp AS lastmod, privdata, vrf, swip, rdns, parent_id, master_id".1723 "description, notes, modifystamp AS lastmod, privdata, vrf, vlan, swip, rdns, parent_id, master_id". 1709 1724 " FROM allocations WHERE id = ?", undef, ($id) ); 1710 1725 return $binfo;
Note:
See TracChangeset
for help on using the changeset viewer.