Changeset 18 for trunk/dns.cgi


Ignore:
Timestamp:
10/08/09 17:29:50 (15 years ago)
Author:
Kris Deugau
Message:

/trunk

checkpoint

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/dns.cgi

    r17 r18  
    4545# need to know the "upper" group the user can deal with;  may as well
    4646# stick this in the session rather than calling out to the DB every time.
    47   $session->param('logingroupid',1);
    48   $session->param('workinggroupid',1);  # yes, we *do* need to track this too.  er, probably.
    49 }
    50 
     47  $session->param('logingroup',1);
     48  $session->param('curgroup',1);        # yes, we *do* need to track this too.  er, probably.
     49}
     50
     51my $logingroup = $session->param('logingroup');
     52my $curgroup = ($session->param('curgroup') ? $session->param('curgroup') : $session->param('logingroup'));
    5153my $group = ($webvar{group} ? $webvar{group} : 1);
     54
    5255# handle login redirect
    5356if ($webvar{action} && $webvar{action} eq 'login') {
     
    102105  }
    103106
     107  $page->param(curpage => $webvar{page});
     108
    104109  listdomains();
    105110
     
    110115  $page->param(defrec => $webvar{defrec});
    111116  $page->param(id => $webvar{id});
    112   $page->param(curpage => 'reclist');
     117  $page->param(curpage => $webvar{page});
    113118
    114119# select count(*) from (default_)?records where (group|domain)_id=?
     
    134139} elsif ($webvar{page} eq 'newdomain') {
    135140
    136   # weesa gonna discard parent_group_id for now
    137   my $sth = $dbh->prepare("select group_id,parent_group_id,name from groups order by group_id");
    138   $sth->execute;
    139   my @grplist;
    140   while (my ($grpid,$pargrp,$grpname) = $sth->fetchrow_array()) {
    141     my %row;
    142     $row{grpname} = $grpname;
    143     $row{grpval} = $grpid;
    144 ##fixme: need magic
    145 #    $row{defgrp} = '';
    146     push @grplist, \%row;
    147   }
    148 
    149   $page->param(grplist => \@grplist);
    150141
    151142} elsif ($webvar{page} eq 'deldom') {
     
    384375        "LEFT OUTER JOIN domains d ON d.group_id=g.group_id ".
    385376        "GROUP BY g.group_id, g.group_name, g2.group_name ".
    386         "ORDER BY g.group_name".($offset eq 'all' ? '' : " LIMIT $perpage OFFSET ".$offset*$perpage));
    387 
     377        "ORDER BY g.group_id".($offset eq 'all' ? '' : " LIMIT $perpage OFFSET ".$offset*$perpage));
    388378  $sth->execute;
     379
    389380  my $rownum = 0;
    390381  while (my @data = $sth->fetchrow_array) {
     
    401392  $page->param(grptable => \@grplist);
    402393
     394  $page->param(curpage => $webvar{page});
     395
    403396} elsif ($webvar{page} eq 'newgrp') {
    404 
     397  # do.. uhh.. stuff.. if we have no webvar{action}
     398  if ($webvar{action} && $webvar{action} eq 'add') {
     399        # not gonna provide the 4th param: template-or-clone flag, just yet
     400    my ($code,$msg) = addGroup($dbh, $webvar{newgroup}, $webvar{pargroup});
     401    changepage(page => "grpman") if $code eq 'OK';
     402    $page->param(add_failed => 1);
     403    $page->param(errmsg => $msg);
     404    $page->param(newgroup => $webvar{newgroup});
     405  }
    405406}
    406407
     
    415416  $page->param(grp => $group);
    416417  $page->param(grpname => grpName($dbh,$group));
    417   $page->param(curpage => $webvar{page});
     418  fill_grplist();
    418419}
    419420
     
    433434print $footer->output;
    434435
     436# as per the docs, Just In Case
     437$session->flush();
    435438
    436439exit 0;
     
    628631  $page->param(domtable => \@domlist);
    629632} # end listdomains()
     633
     634
     635sub fill_grplist {
     636  # weesa gonna discard parent_group_id for now
     637  my $sth = $dbh->prepare("SELECT group_id,parent_group_id,group_name FROM groups ORDER BY group_id");
     638push @debugbits, "grp list sth err: ".$sth->errstr."<br>\n";
     639  $sth->execute;
     640  my @grplist;
     641  while (my ($grpid,$pargrp,$grpname) = $sth->fetchrow_array()) {
     642    my %row;
     643    $row{grpname} = $grpname;
     644    $row{grpval} = $grpid;
     645##fixme: need magic
     646#    $row{defgrp} = '';
     647    $row{grpactive} = 1 if $grpid eq $curgroup;
     648    push @grplist, \%row;
     649  }
     650
     651  $page->param(grplist => \@grplist);
     652
     653}
Note: See TracChangeset for help on using the changeset viewer.