Changeset 192
Legend:
- Unmodified
- Added
- Removed
-
trunk/DNSDB.pm
r191 r192 487 487 # Log an action 488 488 # Internal sub 489 # Takes a database handle, domain_id, group_id, log entry, and user info hash 490 # User info must contain a user ID OR username+fullname 489 # Takes a database handle, domain_id, user_id, group_id, email, name and log entry 491 490 sub _log { 492 491 my $dbh = shift; 493 492 my ($domain_id,$user_id,$group_id,$username,$name,$entry) = @_; 494 495 ##fixme: need better way(s?) to snag userinfo for log entries496 if (!$user_id) {497 $user_id, $fullname) = $dbh->fetchrow_array("SELECT user_id, firstname || ' ' || lastname FROM users".498 " WHERE username=?", undef, ($username));499 } elsif (!$username) {500 $username, $fullname) = $dbh->fetchrow_array("SELECT username, firstname || ' ' || lastname FROM users".501 " WHERE user_id=?", undef, ($user_id));502 }503 504 $name = $fullname if !$name;505 493 506 494 ##fixme: farm out the actual logging to different subs for file, syslog, internal, etc based on config … … 558 546 local $dbh->{RaiseError} = 1; 559 547 548 my $stage = 'insert'; 560 549 # Wrap all the SQL in a transaction 561 550 eval { 562 551 # insert the domain... 563 552 $dbh->do("INSERT INTO domains (domain,group_id,status) VALUES (?,?,?)", undef, ($domain, $group, $state)); 553 $stage = 'domid'; 564 554 565 555 # get the ID... 566 556 ($dom_id) = $dbh->selectrow_array("SELECT domain_id FROM domains WHERE domain=?", undef, ($domain)); 567 557 558 $stage = 'loginsert'; 568 559 _log($dbh, $dom_id, $userinfo{id}, $group, $userinfo{name}, $userinfo{fullname}, 569 560 "Added ".($state ? 'active' : 'inactive')." domain $domain"); 570 561 562 $stage = 'getdefrec'; 571 563 # ... and now we construct the standard records from the default set. NB: group should be variable. 572 564 my $sth = $dbh->prepare("SELECT host,type,val,distance,weight,port,ttl FROM default_records WHERE group_id=?"); … … 600 592 my $msg = $@; 601 593 eval { $dbh->rollback; }; 602 return ('FAIL', $msg);594 return ('FAIL',"$msg : $stage"); 603 595 } else { 604 596 return ('OK',$dom_id); -
trunk/dns.cgi
r191 r192 347 347 348 348 if ($code eq 'OK') { 349 #logaction($msg, $session->param("username"), $webvar{group}, "Added domain $webvar{domain}");349 logaction($msg, $session->param("username"), $webvar{group}, "Added domain $webvar{domain}"); 350 350 changepage(page => "reclist", id => $msg); 351 351 } else { -
trunk/dns.sql
r191 r192 184 184 \. 185 185 186 -- ennnhhh... do we want to create superusers by default? may save going back to the DB to manually readd one187 186 CREATE TABLE users ( 188 187 user_id serial NOT NULL,
Note:
See TracChangeset
for help on using the changeset viewer.