[ Index ]
 

Code source de Horde 3.1.3

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

title

Body

[fermer]

/services/portal/ -> rpcsum.php (source)

   1  <?php
   2  /**
   3   * $Horde: horde/services/portal/rpcsum.php,v 2.26.6.3 2006/01/01 21:29:14 jan Exp $
   4   *
   5   * Copyright 2001-2006 Jan Schneider <jan@horde.org>
   6   *
   7   * See the enclosed file COPYING for license information (LGPL).  If you
   8   * did not receive this file, see http://www.fsf.org/copyleft/lgpl.html.
   9   */
  10  
  11  @define('HORDE_BASE', dirname(__FILE__) . '/../..');
  12  require_once  HORDE_BASE . '/lib/base.php';
  13  require_once 'Horde/RPC.php';
  14  
  15  if (!Auth::isAuthenticated()) {
  16      Horde::authenticationFailureRedirect();
  17  }
  18  
  19  $rpc_servers = @unserialize($prefs->getValue('remote_summaries'));
  20  if (!is_array($rpc_servers)) {
  21      $rpc_servers = array();
  22  }
  23  
  24  $actionID = Util::getFormData('actionID');
  25  
  26  // Handle clients without javascript.
  27  if (is_null($actionID)) {
  28      if (Util::getPost('edit')) {
  29          $actionID = 'edit';
  30      } elseif (Util::getPost('save')) {
  31          $actionID = 'save';
  32      } elseif (Util::getPost('delete')) {
  33          $actionID = 'delete';
  34      }
  35  }
  36  
  37  /* Run through the action handlers */
  38  switch ($actionID) {
  39  case 'save':
  40      if (($to_edit = Util::getFormData('edit_server')) == null) {
  41          $to_edit = count($rpc_servers);
  42          $rpc_servers[] = array();
  43      }
  44      $rpc_servers[$to_edit]['url']    = Util::getFormData('url');
  45      $rpc_servers[$to_edit]['user']   = Util::getFormData('user');
  46      $rpc_servers[$to_edit]['passwd'] = Util::getFormData('passwd');
  47      $prefs->setValue('remote_summaries', serialize($rpc_servers));
  48      $prefs->store();
  49      $notification->push(sprintf(_("The server \"%s\" has been saved."), $rpc_servers[$to_edit]['url']), 'horde.success');
  50      break;
  51  
  52  case 'delete':
  53      $to_delete = Util::getFormData('server');
  54      if ($to_delete != -1) {
  55          $deleted_server = $rpc_servers[$to_delete]['url'];
  56          $server_list = array();
  57          for ($i = 0; $i < count($rpc_servers); $i++) {
  58              if ($i == $to_delete) {
  59                  continue;
  60              }
  61              $server_list[] = $rpc_servers[$i];
  62          }
  63          $prefs->setValue('remote_summaries', serialize($server_list));
  64          $chosenColumns = explode(';', $prefs->getValue('show_summaries'));
  65          if ($chosenColumns != array('')) {
  66              $newColumns = array();
  67              foreach ($chosenColumns as $chosenColumn) {
  68                  $chosenColumn = explode(',', $chosenColumn);
  69                  $remote = explode('|', $chosenColumn[0]);
  70                  if (count($remote) != 3 || $remote[2] == $deleted_server) {
  71                      $newColumns[] = implode(',', $chosenColumn);
  72                  }
  73              }
  74              $prefs->setValue('show_summaries', implode(';', $newColumns));
  75          }
  76          $prefs->store();
  77          $rpc_servers = $server_list;
  78          $notification->push(sprintf(_("The server \"%s\" has been deleted."), $deleted_server), 'horde.success');
  79      } else {
  80          $notification->push(_("You must select an server to be deleted."), 'horde.warning');
  81      }
  82      break;
  83  }
  84  
  85  /* Show the header. */
  86  require_once 'Horde/Prefs/UI.php';
  87  require HORDE_BASE . '/config/prefs.php';
  88  $app = 'horde';
  89  Prefs_UI::generateHeader('remote');
  90  
  91  require  HORDE_TEMPLATES . '/rpcsum/rpcsum.inc';
  92  require  HORDE_TEMPLATES . '/common-footer.inc';


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