[ Index ]
 

Code source de eGroupWare 1.2.106-2

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

title

Body

[fermer]

/registration/inc/ -> class.uimanagefields.inc.php (source)

   1  <?php
   2      /**************************************************************************\
   3      * eGroupWare - Registration                                                *
   4      * http://www.egroupware.org                                                *
   5      * This file written by Jason Wies (Zone) <zone@users.sourceforge.net>      *
   6      * Based on calendar/inc/class.uiholiday.inc.php by Mark Peters             *
   7      * --------------------------------------------                             *
   8      *  This program is free software; you can redistribute it and/or modify it *
   9      *  under the terms of the GNU General Public License as published by the   *
  10      *  Free Software Foundation; either version 2 of the License, or (at your  *
  11      *  option) any later version.                                              *
  12      \**************************************************************************/
  13  
  14      /* $Id: class.uimanagefields.inc.php 19547 2005-11-02 11:45:52Z ralfbecker $ */
  15  
  16      class uimanagefields
  17      {
  18          var $debug = False;
  19          var $base_url;
  20          var $bo;
  21  
  22          var $public_functions = array (
  23              'admin'  => True,
  24              'submit' => True
  25          );
  26  
  27  		function uimanagefields ()
  28          {
  29              $GLOBALS['egw']->nextmatches =& CreateObject ('phpgwapi.nextmatchs');
  30  
  31              $this->bo =& CreateObject ('registration.bomanagefields');
  32              $this->bo->check_admin ();
  33              $this->base_url = $this->bo->base_url;
  34          }
  35  
  36  		function admin ($message = NULL)
  37          {
  38              unset ($GLOBALS['egw_info']['flags']['noheader']);
  39              unset ($GLOBALS['egw_info']['flags']['nonavbar']);
  40              $GLOBALS['egw_info']['flags']['noappfooter'] = True;
  41              $GLOBALS['egw']->common->egw_header ();
  42  
  43              $p = $GLOBALS['egw']->template;
  44              $p->set_file(Array('fields'=>'fields.tpl'));
  45  
  46              if (!isset ($message))
  47              {
  48                  $message = $_GET['message'];
  49              }
  50  
  51              $var = array (
  52                  'action_url' => $GLOBALS['egw']->link ($this->base_url, 'menuaction=registration.uimanagefields.submit'),
  53                  'message'    => $message,
  54                  'lang_current_fields' => lang ('Current fields:'),
  55                  'lang_name_and_shortdesc' => lang ('Name (blank unless Text, Textarea, Dropdown, Checkbox; else alphanumeric only)'),
  56                  'lang_text'  => lang ('Text'),
  57                  'lang_type'  => lang ('Type'),
  58                  'lang_values_and_shortdesc' => lang ('Values (For Dropdown only; comma separated)'),
  59                  'lang_required' => lang ('Required'),
  60                  'lang_remove'   => lang ('Remove'),
  61                  'lang_order'    => lang ('Order'),
  62                  'lang_textarea' => lang ('Textarea'),
  63                  'lang_dropdown' => lang ('Dropdown'),
  64                  'lang_checkbox' => lang ('Checkbox'),
  65                  'lang_email'    => lang ('Email'),
  66                  'lang_first_name' => lang ('First Name'),
  67                  'lang_last_name'  => lang ('Last Name'),
  68                  'lang_address'  => lang ('Address'),
  69                  'lang_city'     => lang ('City'),
  70                  'lang_state'    => lang ('State'),
  71                  'lang_zip'      => lang ('ZIP/Postal'),
  72                  'lang_country'  => lang ('Country'),
  73                  'lang_gender'   => lang ('Gender'),
  74                  'lang_phone'    => lang ('Phone'),
  75                  'lang_birthday' => lang ('Birthday'),
  76                  'lang_cancel'   => lang ('Cancel'),
  77                  'lang_update_add' => lang ('Update/Add'),
  78                  'lang_challenge' => lang('Challenge Question'),
  79                  'lang_response' => lang('Response')
  80              );
  81              $p->set_var ($var);
  82  
  83              $row_color = $GLOBALS['egw']->nextmatches->alternate_row_color ($row_color);
  84              $var = Array(
  85                  'row_off' => $GLOBALS['egw']->nextmatches->alternate_row_color ($row_color)
  86              );
  87              $p->set_var ($var);
  88  
  89              $row_color = $GLOBALS['egw']->nextmatches->alternate_row_color ($row_color);
  90              $var = Array(
  91                  'row_on' => $GLOBALS['egw']->nextmatches->alternate_row_color ($row_color)
  92              );
  93              $p->set_var ($var);
  94  
  95              $p->set_block ('fields', 'info', 'info_list');
  96  
  97              $fields = $this->bo->fields;
  98              while (list ($num, $field_info) = each ($fields))
  99              {
 100                  unset ($field_required);
 101  
 102                  if ($field_info['field_required'] == 'Y')
 103                  {
 104                      $field_required = "checked";
 105                  }
 106  
 107                  $var = array (
 108                      'field_short_name' => $field_info['field_name'],
 109                      'field_name' => $field_info['field_name'],
 110                      'field_text' => $field_info['field_text'],
 111                      'field_type' => $field_info['field_type'],
 112                      'field_type_selected_text' => '',
 113                      'field_type_selected_textarea' => '',
 114                      'field_type_selected_dropdown' => '',
 115                      'field_type_selected_checkbox' => '',
 116                      'field_type_selected_email' => '',
 117                      'field_type_selected_first_name' => '',
 118                      'field_type_selected_last_name' => '',
 119                      'field_type_selected_address' => '',
 120                      'field_type_selected_city' => '',
 121                      'field_type_selected_state' => '',
 122                      'field_type_selected_zip' => '',
 123                      'field_type_selected_country' => '',
 124                      'field_type_selected_gender' => '',
 125                      'field_type_selected_phone' => '',
 126                      'field_type_selected_birthday' => '',
 127                      'field_type_selected_' . $field_info['field_type'] => 'selected',
 128                      'field_values' => $field_info['field_values'],
 129                      'field_required' => $field_required,
 130                      'field_order' => $field_info['field_order'],
 131                      'field_challenge' => '',
 132                      'field_response' => ''
 133                  );
 134  
 135                  $p->set_var ($var);
 136                  $p->parse ('info_list', 'info', True);
 137              }
 138  
 139              /* Add an empty entry line */
 140              $var = array (
 141                  'field_short_name' => 'reg_new',
 142                  'field_name' => '',
 143                  'field_text' => '',
 144                  'field_type' => '',
 145                  'field_type_selected_text'       => '',
 146                  'field_type_selected_textarea'   => '',
 147                  'field_type_selected_dropdown'   => '',
 148                  'field_type_selected_checkbox'   => '',
 149                  'field_type_selected_email'      => '',
 150                  'field_type_selected_first_name' => '',
 151                  'field_type_selected_last_name'  => '',
 152                  'field_type_selected_address'    => '',
 153                  'field_type_selected_city'       => '',
 154                  'field_type_selected_state'      => '',
 155                  'field_type_selected_zip'        => '',
 156                  'field_type_selected_country'    => '',
 157                  'field_type_selected_gender'     => '',
 158                  'field_type_selected_phone'      => '',
 159                  'field_type_selected_birthday'   => '',
 160                  'field_values'   => '',
 161                  'field_required' => '',
 162                  'field_remove'   => '',
 163                  'field_order'    => '',
 164                  'field_challenge' => '',
 165                  'field_response' => ''
 166              );
 167  
 168              $p->set_var ($var);
 169              $p->parse ('info_list', 'info', True);
 170  
 171              $p->pfp ('out', 'fields');
 172          }
 173  
 174  		function submit ()
 175          {
 176              $this->bo->check_admin ();
 177  
 178              $post_vars = $_POST;
 179  
 180              unset($GLOBALS['egw_info']['flags']['noheader']);
 181              unset($GLOBALS['egw_info']['flags']['nonavbar']);
 182              $GLOBALS['egw_info']['flags']['noappfooter'] = True;
 183  
 184              $this->bo->submit ($post_vars);
 185  
 186              Header ('Location: ' . $GLOBALS['egw']->link ($this->base_url, 'menuaction=registration.uimanagefields.admin&message=Updated'));
 187          }
 188      }
 189  ?>


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