[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Phpgroupware-cvs] CVS: preferences preferences.php,1.33,1.34
From: |
Ralf Becker <address@hidden> |
Subject: |
[Phpgroupware-cvs] CVS: preferences preferences.php,1.33,1.34 |
Date: |
Mon, 19 May 2003 19:01:01 -0400 |
Update of /cvsroot/phpgroupware/preferences
In directory subversions:/tmp/cvs-serv26999
Modified Files:
preferences.php
Log Message:
added processing of notify-messages (substitions get translated into the user
lang and back)
added a hook to verify the user-input and display an error message
Index: preferences.php
===================================================================
RCS file: /cvsroot/phpgroupware/preferences/preferences.php,v
retrieving revision 1.33
retrieving revision 1.34
diff -C2 -r1.33 -r1.34
*** preferences.php 2 May 2003 01:45:26 -0000 1.33
--- preferences.php 19 May 2003 23:00:59 -0000 1.34
***************
*** 226,230 ****
@param $vars2 array with extra substitution-variables of the form key
=> help-text
*/
! function
create_notify($label,$name,$rows,$cols,$help='',$default='',$vars2='')
{
global $t,$prefs,$notifys;
--- 226,230 ----
@param $vars2 array with extra substitution-variables of the form key
=> help-text
*/
! function
create_notify($label,$name,$rows,$cols,$help='',$default='',$vars2='',$subst_help=True)
{
global $t,$prefs,$notifys;
***************
*** 239,251 ****
$notifys[$name] = $vars; // this gets saved in the
app_session for re-translation
! $help = $help ? lang($help).'<br>' : '';
! $help .= '<p><b>'.lang('Substitutions and their
meanings:').'</b>';
! foreach($vars as $var => $var_help)
{
! $lname = ($lname = lang($var)) == $var.'*' ? $var :
$lname;
! $help .= "<br>\n".'<b>$$'.$lname.'$$</b>: '.$var_help;
}
- $help .= "</p>\n";
-
if ($row == 1)
{
--- 239,253 ----
$notifys[$name] = $vars; // this gets saved in the
app_session for re-translation
! $help = $help ? lang($help) : '';
! if ($subst_help)
{
! $help .= '<p><b>'.lang('Substitutions and their
meanings:').'</b>';
! foreach($vars as $var => $var_help)
! {
! $lname = ($lname = lang($var)) == $var.'*' ?
$var : $lname;
! $help .= "<br>\n".'<b>$$'.$lname.'$$</b>:
'.$var_help;
! }
! $help .= "</p>\n";
}
if ($row == 1)
{
***************
*** 314,318 ****
}
$prefs[$var] = stripslashes($value);
!
if ($notifys[$var]) // need to translate
the key-words back
{
--- 316,320 ----
}
$prefs[$var] = stripslashes($value);
!
if ($notifys[$var]) // need to translate
the key-words back
{
***************
*** 327,331 ****
--- 329,349 ----
//echo "prefix='$prefix', prefs=<pre>";
print_r($repository[$_appname]); echo "</pre>\n";
+ // the following hook can be used to verify the prefs
+ // if you return something else than False, it is treated as an
error-msg and
+ // displayed to the user (the prefs get not saved !!!)
+ //
+ if ($error = $GLOBALS['phpgw']->hooks->single(array(
+ 'location' => 'verify_settings',
+ 'prefs' => $repository[$_appname],
+ 'prefix' => $prefix,
+ 'type' => $GLOBALS['type']
+ ),$_GET['appname']))
+ {
+ return $error;
+ }
+
$GLOBALS['phpgw']->preferences->save_repository(True,$GLOBALS['type']);
+
+ return False;
}
***************
*** 398,415 ****
if ($GLOBALS['type'] == 'user' || !($GLOBALS['type']))
{
!
process_array($GLOBALS['phpgw']->preferences->user,$user,$session_data['notifys'],$prefix);
}
if ($GLOBALS['type'] == 'default' && is_admin())
{
! process_array($GLOBALS['phpgw']->preferences->default,
$default,$session_data['notifys']);
}
if ($GLOBALS['type'] == 'forced' && is_admin())
{
! process_array($GLOBALS['phpgw']->preferences->forced,
$forced,$session_data['notifys']);
}
! if (!is_admin())
{
$GLOBALS['phpgw']->redirect_link('/preferences/index.php');
--- 416,433 ----
if ($GLOBALS['type'] == 'user' || !($GLOBALS['type']))
{
! $error =
process_array($GLOBALS['phpgw']->preferences->user,$user,$session_data['notifys'],$prefix);
}
if ($GLOBALS['type'] == 'default' && is_admin())
{
! $error =
process_array($GLOBALS['phpgw']->preferences->default,
$default,$session_data['notifys']);
}
if ($GLOBALS['type'] == 'forced' && is_admin())
{
! $error =
process_array($GLOBALS['phpgw']->preferences->forced,
$forced,$session_data['notifys']);
}
! if (!is_admin() || $error)
{
$GLOBALS['phpgw']->redirect_link('/preferences/index.php');
***************
*** 428,432 ****
));
// changes for the admin itself, should have immediate feedback ==>
redirect
! if ($_POST['submit'] && $GLOBALS['type'] == 'user' && $_GET['appname']
== 'preferences') {
$GLOBALS['phpgw']->redirect_link('/preferences/preferences.php','appname='.$_GET['appname']);
}
--- 446,450 ----
));
// changes for the admin itself, should have immediate feedback ==>
redirect
! if (!$error && $_POST['submit'] && $GLOBALS['type'] == 'user' &&
$_GET['appname'] == 'preferences') {
$GLOBALS['phpgw']->redirect_link('/preferences/preferences.php','appname='.$_GET['appname']);
}
***************
*** 436,439 ****
--- 454,458 ----
$GLOBALS['phpgw']->common->phpgw_header();
+ $t->set_var('messages',$error);
$t->set_var('action_url',$GLOBALS['phpgw']->link('/preferences/preferences.php','appname='
. $_GET['appname']));
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Phpgroupware-cvs] CVS: preferences preferences.php,1.33,1.34,
Ralf Becker <address@hidden> <=