[ Index ]
 

Code source de eGroupWare 1.2.106-2

Accédez au Source d'autres logiciels libresSoutenez Angelica Josefina !

title

Body

[fermer]

/wiki/action/ -> admin.php (source)

   1  <?php
   2  // $Id: admin.php 20295 2006-02-15 12:31:25Z  $
   3  
   4  // Don't freak out lib/init.php.
   5  $document = $categories = $comment = $page = '';
   6  
   7  //require('lib/init.php');
   8  require('parse/html.php');
   9  //require('parse/transforms.php');
  10  require('template/admin.php');
  11  
  12  if(!$GLOBALS['egw_info']['user']['apps']['admin'])
  13      { die($ErrorAdminDisabled); }
  14  
  15  // Harvest script parameters.
  16  
  17  $REMOTE_ADDR = isset($_SERVER['REMOTE_ADDR'])
  18                               ? $_SERVER['REMOTE_ADDR'] : '';
  19  
  20  if(isset($_GET['locking']))
  21      { $locking = $_GET['locking']; }
  22  if(isset($_GET['blocking']))
  23      { $blocking = $_GET['blocking']; }
  24  if(!isset($locking))
  25  {
  26      $locking  = isset($_POST['locking'])
  27                              ? $_POST['locking'] : '';
  28  }
  29  if(!isset($blocking))
  30  {
  31      $blocking = isset($_POST['blocking'])
  32                              ? $_POST['blocking'] : '';
  33  }
  34  
  35  // disable locking and always show blocking, as locking is done on per page basis in edit now
  36  $locking = False;
  37  $blocking = True;
  38  
  39  $Block   = isset($_POST['Block'])
  40                       ? $_POST['Block'] : '';
  41  $Unblock = isset($_POST['Unblock'])
  42                       ? $_POST['Unblock'] : '';
  43  $Save    = isset($_POST['Save'])
  44                       ? $_POST['Save'] : '';
  45  $address = isset($_POST['address'])
  46                       ? $_POST['address'] : '';
  47  
  48  $count = isset($_POST['count']) ? $_POST['count'] : 0;
  49  
  50  if($locking && $count > 0)
  51  {
  52      for($i = 1; $i <= $count; $i++)
  53      {
  54          $var = 'name' + $i;
  55          $$var = isset($_POST[$var]) ? $_POST[$var] : '';
  56          $var = 'lock' + $i;
  57          $$var = isset($_POST[$var]) ? $_POST[$var] : '';
  58      }
  59  }
  60  
  61  if($locking)                            // Locking/unlocking pages.
  62  {
  63      if(empty($Save))                      // Not saving results; display form.
  64      {
  65          $GLOBALS['egw']->common->egw_header();
  66      
  67          $html = html_lock_start();
  68          $pagelist = $pagestore->allpages();
  69          foreach($pagelist as $page)
  70              { $html = $html . html_lock_page($page[1], $page[6]); }
  71          template_admin(array('html' => $html . html_lock_end(count($pagelist))));
  72      }
  73      else                                  // Lock/unlock pages at admin's request.
  74      {
  75          $pagestore->lock();                 // Exclusive access to database.
  76          for($i = 1; $i <= $count; $i++)
  77          {
  78              $page = urldecode($_POST['name' . $i]);
  79              if(isset($_POST['lock' . $i]))
  80                  { $lock = $_POST['lock' . $i]; }
  81              else
  82                  { $lock = 0; }
  83              $pg = $pagestore->page($page);
  84              $pg->read();
  85              $pg->version++;
  86              $pg->hostname = gethostbyaddr($REMOTE_ADDR);
  87              $pg->username = $UserName;
  88              $pg->comment = '';
  89              $pg->text = str_replace('\\', '\\\\', $pg->text);
  90              $pg->text = str_replace('\'', '\\\'', $pg->text);
  91              if($pg->exists && $pg->mutable && $lock)
  92              {
  93                  $pg->mutable = 0;
  94                  $pg->write();
  95              }
  96              else if($pg->exists && !$pg->mutable && !$lock)
  97              {
  98                  $pg->mutable = 1;
  99                  $pg->write();
 100              }
 101          }
 102  
 103          $pagestore->unlock();
 104          header('Location: ' . $AdminScript);
 105      }
 106  }
 107  else if($blocking)                      // Blocking/unblocking IP addrs.
 108  {
 109      if($Block || $Unblock)                // Block/unblock an address group.
 110      {
 111          if(!empty($Block))
 112              { $pagestore->rateBlockAdd($address); }
 113          else if(!empty($Unblock))
 114              { $pagestore->rateBlockRemove($address); }
 115      }
 116      // display form.
 117      {
 118      $html = '';
 119          if($RatePeriod == 0)
 120          {
 121              $html = $html . html_bold_start() .
 122                              lang('Rate control / IP blocking disabled') .
 123                              html_bold_end() . html_newline();
 124          }
 125  
 126          $html = $html . html_rate_start();
 127          $blocklist = $pagestore->rateBlockList();
 128          foreach($blocklist as $block)
 129              { $html = $html . html_rate_entry($block); }
 130          $html = $html . html_rate_end();
 131  
 132          template_admin(array('html' => $html));
 133      }
 134  }
 135  else                                    // Display main menu for admin.
 136  {
 137      $GLOBALS['egw']->common->egw_header();
 138  
 139      template_admin(array('html' => html_url($AdminScript . '&locking=1',
 140                                                                                      lang('Lock / unlock pages')) .
 141                                                                   html_newline() .
 142                                                                   html_url($AdminScript . '&blocking=1',
 143                                                                                      lang('Block / unblock hosts')) .
 144                                                                   html_newline()));
 145  }
 146  
 147  ?>


Généré le : Sun Feb 25 17:20:01 2007 par Balluche grâce à PHPXref 0.7