Index: /extensions/NBC_UserAdvManager/branches/2.14/admin/UAM_admin.php
===================================================================
--- /extensions/NBC_UserAdvManager/branches/2.14/admin/UAM_admin.php	(revision 5086)
+++ /extensions/NBC_UserAdvManager/branches/2.14/admin/UAM_admin.php	(revision 5087)
@@ -27,9 +27,4 @@
 
 $UAM_Password_Test_Score = 0;
-$UAM_MailInfo_Error_Txt = false;
-$UAM_ConfirmMail_Error_Txt = false;
-$UAM_Reminder_Error_Txt = false;
-$UAM_ConfirmMail_Error_Txt1 = false;
-$UAM_ConfirmMail_Error_Txt2 = false;
 $UAM_Exclusionlist_Error = false;
 
@@ -71,13 +66,25 @@
 // +----------------------------------------------------------+
 
-/* Standby because this may cause too many problems with (;) in text fields */
-//$toolbar = 'Basic';
-//$width = '750px';
-//$height = '300px';
-//$areas = array();
-//array_push( $areas,'UAM_MailInfo_Text','UAM_ConfirmMail_Text','UAM_GhostTracker_ReminderText','UAM_ConfirmMail_ReMail_Txt1','UAM_ConfirmMail_ReMail_Txt2');
- 
-//if (function_exists('set_fckeditor_instance'))
-//  set_fckeditor_instance($areas, $toolbar, $width, $height);
+/* Pending because this may cause problems with special characters in emails */
+/*$toolbar = 'Basic';
+$width = '750px';
+$height = '300px';
+$areas = array();
+array_push( $areas,'UAM_MailInfo_Text','UAM_ConfirmMail_Text','UAM_GhostTracker_ReminderText','UAM_ConfirmMail_ReMail_Txt1','UAM_ConfirmMail_ReMail_Txt2');
+
+if (function_exists('set_fckeditor_instance'))
+{
+  $fcke_config = unserialize($conf['FCKEditor']);
+  foreach($areas as $area)
+  {
+    if (!isset($fcke_config[$area]))
+    {
+      $fcke_config[$area] = false;
+    }
+  }
+  $conf['FCKEditor'] = serialize($fcke_config);
+
+  set_fckeditor_instance($areas, $toolbar, $width, $height);
+}*/
 
 
@@ -106,29 +113,5 @@
 
 
-/* Control of semicolons - Replaced by dots - Warning message is displayed */    
-    if ((preg_match($pattern, $_POST['UAM_MailInfo_Text'])) or (preg_match($pattern, $_POST['UAM_GhostTracker_ReminderText'])) or (preg_match($pattern, $_POST['UAM_ConfirmMail_Text'])))
-    {
-      if (preg_match($pattern, $_POST['UAM_MailInfo_Text']))
-      {
-        $_POST['UAM_MailInfo_Text'] = preg_replace($pattern, $replacement, $_POST['UAM_MailInfo_Text']);
-        $UAM_MailInfo_Error_Txt = true;
-      }
-      
-      if (preg_match($pattern, $_POST['UAM_ConfirmMail_Text']))
-      {
-        $_POST['UAM_ConfirmMail_Text'] = preg_replace($pattern, $replacement, $_POST['UAM_ConfirmMail_Text']);
-        $UAM_ConfirmMail_Error_Txt = true;
-      }
-      
-      if (preg_match($pattern, $_POST['UAM_GhostTracker_ReminderText']))
-      {
-        $_POST['UAM_GhostTracker_ReminderText'] = preg_replace($pattern, $replacement, $_POST['UAM_GhostTracker_ReminderText']);
-        $UAM_Reminder_Error_Txt = true;
-      }
-      
-      array_push($page['errors'], l10n('mail_text_error'));
-    }
-
-    /* Check if CR-LF exist at begining and end of mail exclusion list - If yes, removes them */
+/* Check if CR-LF exist at begining and end of mail exclusion list - If yes, removes them */
     if (preg_match('/^[\s]+/', $_POST['UAM_MailExclusion_List']))
     {
@@ -178,22 +161,4 @@
     $_POST['UAM_ConfirmMail_ReMail_Txt2'] = str_replace("\'", "'", str_replace("\\\\", "\\", $_POST['UAM_ConfirmMail_ReMail_Txt2']));
 
-/* Control of semicolons - Replaced by dots - Warning message displayed */
-    if ((preg_match($pattern, $_POST['UAM_ConfirmMail_ReMail_Txt1'])) or (preg_match($pattern, $_POST['UAM_ConfirmMail_ReMail_Txt2'])))
-    {
-      if ((preg_match($pattern, $_POST['UAM_ConfirmMail_ReMail_Txt1'])))
-      {
-        $_POST['UAM_ConfirmMail_ReMail_Txt1'] = preg_replace($pattern, $replacement, $_POST['UAM_ConfirmMail_ReMail_Txt1']);
-        $UAM_ConfirmMail_Error_Txt1 = true;
-      }
-      
-      if ((preg_match($pattern, $_POST['UAM_ConfirmMail_ReMail_Txt2'])))
-      {
-        $_POST['UAM_ConfirmMail_ReMail_Txt2'] = preg_replace($pattern, $replacement, $_POST['UAM_ConfirmMail_ReMail_Txt2']);
-        
-        $UAM_ConfirmMail_Error_Txt2 = true;
-      }
-      
-      array_push($page['errors'], l10n('mail_text_error'));
-    }
 
 	  $newconf_UAM_ConfirmMail = array (
@@ -366,7 +331,4 @@
     'UAM_ADMINCONFMAIL_FALSE'        => $conf_UAM[21]=='false' ?  'checked="checked"' : '' ,
 		'UAM_PASSWORD_TEST_SCORE'        => $UAM_Password_Test_Score,
-    'UAM_ERROR_REPORTS1'             => $UAM_MailInfo_Error_Txt,
-    'UAM_ERROR_REPORTS2'             => $UAM_ConfirmMail_Error_Txt,
-    'UAM_ERROR_REPORTS3'             => $UAM_Reminder_Error_Txt,
     'UAM_ERROR_REPORTS4'             => $UAM_Exclusionlist_Error,
 		'UAM_CONFIRMMAIL_TIMEOUT_TRUE'	 => $conf_UAM_ConfirmMail[0]=='true' ?  'checked="checked"' : '' ,
@@ -377,6 +339,4 @@
     'UAM_CONFIRMMAIL_REMAIL_TXT1'		 => $conf_UAM_ConfirmMail[2],
     'UAM_CONFIRMMAIL_REMAIL_TXT2'		 => $conf_UAM_ConfirmMail[4],
-    'UAM_ERROR_REPORTS1'             => $UAM_ConfirmMail_Error_Txt1,
-    'UAM_ERROR_REPORTS2'             => $UAM_ConfirmMail_Error_Txt2,
     )
   );
Index: tensions/NBC_UserAdvManager/branches/2.14/admin/UserAdvManager_admin.php
===================================================================
--- /extensions/NBC_UserAdvManager/branches/2.14/admin/UserAdvManager_admin.php	(revision 5086)
+++ 	(revision )
@@ -1,1597 +1,0 @@
-<?php
-
-global $user, $lang, $conf, $errors;
-
-if (!defined('PHPWG_ROOT_PATH')) die('Hacking attempt!');
-// +-----------------------------------------------------------------------+
-// | Check Access and exit when user status is not ok                      |
-// +-----------------------------------------------------------------------+
-check_status(ACCESS_ADMINISTRATOR);
-
-if (!defined('NBC_UAM_PATH')) define('NBC_UAM_PATH' , PHPWG_PLUGINS_PATH.basename(dirname(__FILE__)).'/');
-
-//ini_set('error_reporting', E_ALL);
-//ini_set('display_errors', true);
-
-include_once (PHPWG_ROOT_PATH.'admin/include/tabsheet.class.php');
-include_once (PHPWG_ROOT_PATH.'/include/constants.php');
-$my_base_url = get_admin_plugin_menu_link(__FILE__);
-
-load_language('plugin.lang', NBC_UAM_PATH);
-load_language('help/plugin.lang', NBC_UAM_PATH);
-
-$page['global'] = array();
-$error = array();
-$UserAdvManager_Password_Test_Score = 0;
-$pattern = '/;/';
-$replacement = '.';
-
-$UserAdvManager_MailInfo_Error_Txt = false;
-$UserAdvManager_ConfirmMail_Error_Txt = false;
-$UserAdvManager_Reminder_Error_Txt = false;
-$UserAdvManager_ConfirmMail_Error_Txt1 = false;
-$UserAdvManager_ConfirmMail_Error_Txt2 = false;
-$UserAdvManager_Exclusionlist_Error = false;
-
-
-// +-----------------------------------------------------------------------+
-// |                            Tabssheet                                  |
-// +-----------------------------------------------------------------------+
-if (!isset($_GET['tab']))
-	$page['tab'] = 'global';
-else
-  $page['tab'] = $_GET['tab'];
-
-$tabsheet = new tabsheet();
-$tabsheet->add('global',
-               l10n('Tab_Global'),
-               $my_base_url.'&amp;tab=global');
-//if (isset($conf_nbc_UserAdvManager[20]) and $conf_nbc_UserAdvManager[20]=='true')
-//{
-  $tabsheet->add('userlist',
-                 l10n('Tab_UserList'),
-                 $my_base_url.'&amp;tab=userlist');
-//}
-$tabsheet->add('usermanager',
-               l10n('Tab_UserManager'),
-               $my_base_url.'&amp;tab=usermanager');
-$tabsheet->add('ghosttracker',
-               l10n('Tab_GhostTracker'),
-               $my_base_url.'&amp;tab=ghosttracker');
-$tabsheet->select($page['tab']);
-$tabsheet->assign();
-
-
-// +-----------------------------------------------------------------------+
-// |                      Getting plugin version                           |
-// +-----------------------------------------------------------------------+
-$plugin =  PluginVer(NBC_UAM_PATH);
-$version = $plugin['version'] ;
-
-
-// +----------------------------------------------------------+
-// |            FCK Editor for email text fields              |
-// +----------------------------------------------------------+
-
-/* Standby because this may cause too many problems with (;) in text fields */
-//$toolbar = 'Basic';
-//$width = '750px';
-//$height = '300px';
-//$areas = array();
-//array_push( $areas,'UserAdvManager_MailInfo_Text','UserAdvManager_ConfirmMail_Text','UserAdvManager_GhostTracker_ReminderText','UserAdvManager_ConfirmMail_ReMail_Txt1','UserAdvManager_ConfirmMail_ReMail_Txt2');
- 
-//if (function_exists('set_fckeditor_instance'))
-//  set_fckeditor_instance($areas, $toolbar, $width, $height);
-
-
-// +-----------------------------------------------------------------------+
-// |                            Tabssheet select                           |
-// +-----------------------------------------------------------------------+
-
-switch ($page['tab'])
-{
-// *************************************************************************
-// +-----------------------------------------------------------------------+
-// |                           Global Config                               |
-// +-----------------------------------------------------------------------+
-// *************************************************************************
-  case 'global':
-
-	if (isset($_POST['submit']) and !is_adviser() and isset($_POST['UserAdvManager_Mail_Info']) and isset($_POST['UserAdvManager_No_Casse']) and isset($_POST['UserAdvManager_Username_Char']) and isset($_POST['UserAdvManager_Confirm_Mail']) and isset($_POST['UserAdvManager_No_Comment_Anonymous']) and isset($_POST['UserAdvManager_Password_Enforced']) and isset($_POST['UserAdvManager_AdminPassword_Enforced']) and isset($_POST['UserAdvManager_GhostUser_Tracker']))
-  {
-
-/* General configuration settings */
-		$_POST['UserAdvManager_MailInfo_Text'] = str_replace("\'", "'", str_replace("\\\\", "\\", $_POST['UserAdvManager_MailInfo_Text']));
-    
-		$_POST['UserAdvManager_ConfirmMail_Text'] = str_replace("\'", "'", str_replace("\\\\", "\\", $_POST['UserAdvManager_ConfirmMail_Text']));
-
-    $_POST['UserAdvManager_GhostTracker_ReminderText'] = str_replace("\'", "'", str_replace("\\\\", "\\", $_POST['UserAdvManager_GhostTracker_ReminderText']));
-
-
-/* Control of semicolons - Replaced by dots - Warning message is displayed */    
-    if ((preg_match($pattern, $_POST['UserAdvManager_MailInfo_Text'])) or (preg_match($pattern, $_POST['UserAdvManager_GhostTracker_ReminderText'])) or (preg_match($pattern, $_POST['UserAdvManager_ConfirmMail_Text'])))
-    {
-      if (preg_match($pattern, $_POST['UserAdvManager_MailInfo_Text']))
-      {
-        $_POST['UserAdvManager_MailInfo_Text'] = preg_replace($pattern, $replacement, $_POST['UserAdvManager_MailInfo_Text']);
-        $UserAdvManager_MailInfo_Error_Txt = true;
-      }
-      
-      if (preg_match($pattern, $_POST['UserAdvManager_ConfirmMail_Text']))
-      {
-        $_POST['UserAdvManager_ConfirmMail_Text'] = preg_replace($pattern, $replacement, $_POST['UserAdvManager_ConfirmMail_Text']);
-        $UserAdvManager_ConfirmMail_Error_Txt = true;
-      }
-      
-      if (preg_match($pattern, $_POST['UserAdvManager_GhostTracker_ReminderText']))
-      {
-        $_POST['UserAdvManager_GhostTracker_ReminderText'] = preg_replace($pattern, $replacement, $_POST['UserAdvManager_GhostTracker_ReminderText']);
-        $UserAdvManager_Reminder_Error_Txt = true;
-      }
-      
-      array_push($page['errors'], l10n('mail_text_error'));
-    }
-
-    /* Check if CR-LF exist at begining and end of mail exclusion list - If yes, removes them */
-    if (preg_match('/^[\s]+/', $_POST['UserAdvManager_MailExclusion_List']))
-    {
-      array_push($page['errors'], l10n('mail_exclusionlist_error'));
-      $UserAdvManager_Exclusionlist_Error = true;
-    }
-		
-		$newconf_nbc_UserAdvManager =
-      $_POST['UserAdvManager_Mail_Info'].';'
-      .$_POST['UserAdvManager_No_Casse'].';'
-      .$_POST['UserAdvManager_Confirm_Mail'].';'
-      .(isset($_POST['UserAdvManager_No_Confirm_Group'])?$_POST['UserAdvManager_No_Confirm_Group']:'').';'
-      .(isset($_POST['UserAdvManager_Validated_Group'])?$_POST['UserAdvManager_Validated_Group']:'').';'
-      .(isset($_POST['UserAdvManager_Validated_Status'])?$_POST['UserAdvManager_Validated_Status']:'').';'
-      .$_POST['UserAdvManager_No_Comment_Anonymous'].';'
-      .$_POST['UserAdvManager_Username_Char'].';'
-      .$_POST['UserAdvManager_Username_List'].';'
-      .(isset($_POST['UserAdvManager_No_Confirm_Status'])?$_POST['UserAdvManager_No_Confirm_Status']:'').';'
-      .$_POST['UserAdvManager_MailInfo_Text'].';'
-      .$_POST['UserAdvManager_ConfirmMail_Text'].';'
-      .$_POST['UserAdvManager_MailExclusion'].';'
-      .$_POST['UserAdvManager_MailExclusion_List'].';'
-      .$_POST['UserAdvManager_Password_Enforced'].';'
-      .$_POST['UserAdvManager_Password_Score'].';'
-      .$_POST['UserAdvManager_AdminPassword_Enforced'].';'
-      .$_POST['UserAdvManager_GhostUser_Tracker'].';'
-      .$_POST['UserAdvManager_GhostTracker_DayLimit'].';'
-      .$_POST['UserAdvManager_GhostTracker_ReminderText'].';'
-      .$_POST['UserAdvManager_Add_LastVisit_Column'];
-		
-		$conf['nbc_UserAdvManager'] = $newconf_nbc_UserAdvManager;
-		
-		$query = '
-	  	UPDATE '.CONFIG_TABLE.'
-	  	SET value="'.$newconf_nbc_UserAdvManager.'"
-	  	WHERE param="nbc_UserAdvManager"
-	  	LIMIT 1
-	  	;';
-		
-		pwg_query($query);
-
-
-
-/* Email confirmation settings */
-    $_POST['UserAdvManager_ConfirmMail_ReMail_Txt1'] = str_replace("\'", "'", str_replace("\\\\", "\\", $_POST['UserAdvManager_ConfirmMail_ReMail_Txt1']));
-
-    $_POST['UserAdvManager_ConfirmMail_ReMail_Txt2'] = str_replace("\'", "'", str_replace("\\\\", "\\", $_POST['UserAdvManager_ConfirmMail_ReMail_Txt2']));
-
-/* Control of semicolons - Replaced by dots - Warning message displayed */
-    if ((preg_match($pattern, $_POST['UserAdvManager_ConfirmMail_ReMail_Txt1'])) or (preg_match($pattern, $_POST['UserAdvManager_ConfirmMail_ReMail_Txt2'])))
-    {
-      if ((preg_match($pattern, $_POST['UserAdvManager_ConfirmMail_ReMail_Txt1'])))
-      {
-        $_POST['UserAdvManager_ConfirmMail_ReMail_Txt1'] = preg_replace($pattern, $replacement, $_POST['UserAdvManager_ConfirmMail_ReMail_Txt1']);
-        $UserAdvManager_ConfirmMail_Error_Txt1 = true;
-      }
-      
-      if ((preg_match($pattern, $_POST['UserAdvManager_ConfirmMail_ReMail_Txt2'])))
-      {
-        $_POST['UserAdvManager_ConfirmMail_ReMail_Txt2'] = preg_replace($pattern, $replacement, $_POST['UserAdvManager_ConfirmMail_ReMail_Txt2']);
-        
-        $UserAdvManager_ConfirmMail_Error_Txt2 = true;
-      }
-      
-      array_push($page['errors'], l10n('mail_text_error'));
-    }
-
-	  $newconf_nbc_UserAdvManager_ConfirmMail =
-      $_POST['UserAdvManager_ConfirmMail_TimeOut'].';'
-      .$_POST['UserAdvManager_ConfirmMail_Delay'].';'
-      .$_POST['UserAdvManager_ConfirmMail_ReMail_Txt1'].';'
-      .$_POST['UserAdvManager_ConfirmMail_Remail'].';'
-      .$_POST['UserAdvManager_ConfirmMail_ReMail_Txt2'];
-
-    $conf['nbc_UserAdvManager_ConfirmMail'] = $newconf_nbc_UserAdvManager_ConfirmMail;
-		
-	  $query = '
-      UPDATE '.CONFIG_TABLE.'
-			SET value="'.$newconf_nbc_UserAdvManager_ConfirmMail.'"
-			WHERE param="nbc_UserAdvManager_ConfirmMail"
-			LIMIT 1
-		;';
-
-		pwg_query($query);
-
-		array_push($page['infos'], l10n('UserAdvManager_save_config'));
-  }
-
-
-/* Testing password enforcement */
-  if (isset($_POST['PasswordTest']) and !is_adviser() and isset($_POST['UserAdvManager_Password_Test']) and !empty($_POST['UserAdvManager_Password_Test']))
-  {
-    $UserAdvManager_Password_Test_Score = testpassword($_POST['UserAdvManager_Password_Test']);
-  }
-  else if (isset($_POST['PasswordTest']) and !is_adviser() and empty($_POST['UserAdvManager_Password_Test']))
-  {
-    array_push($page['errors'], l10n('reg_err_login3'));
-  }
-	
-
-  $conf_nbc_UserAdvManager = isset($conf['nbc_UserAdvManager']) ? explode(";" , $conf['nbc_UserAdvManager']) : array();
-
-/* Group setting for unvalidated and validated users */
-  $groups[-1] = '---------';
-  $No_Valid = -1;
-  $Valid = -1;
-	
-/* Check groups list in database  */
-  $query = '
-SELECT id, name
-FROM '.GROUPS_TABLE.'
-ORDER BY name ASC
-;';
-	
-  $result = pwg_query($query);
-	
-  while ($row = mysql_fetch_assoc($result))
-  {
-    $groups[$row['id']] = $row['name'];
-/* configuration value for unvalidated users */
-    if (isset($conf_nbc_UserAdvManager[3]) and $conf_nbc_UserAdvManager[3] == $row['id'])
-    {
-	  	$No_Valid = $row['id'];
-		}
-/* configuration value for validated users */
-    if (isset($conf_nbc_UserAdvManager[4]) and $conf_nbc_UserAdvManager[4] == $row['id'])
-		{
-	  	$Valid = $row['id'];
-		}
-  }
-	
-/* Template initialization for unvalidated users group */
-  $template->assign(
-    'No_Confirm_Group',
-   	array(
-	  	'group_options'=> $groups,
-	  	'group_selected' => $No_Valid
-			)
- 		);
-/* Template initialization for validated users group */
-  $template->assign(
-    'Validated_Group',
-		array(
-      'group_options'=> $groups,
-      'group_selected' => $Valid
-			)
-  	);
-	
-/* Status setting for unvalidated and validated users */
-  $status_options[-1] = '------------';
-  $No_Valid_Status = -1;
-  $Valid_Status = -1;
-	
-/* Get status values */
-  foreach (get_enums(USER_INFOS_TABLE, 'status') as $status)
-  {
-	  $status_options[$status] = l10n('user_status_'.$status);
-	  if (isset($conf_nbc_UserAdvManager[9]) and $conf_nbc_UserAdvManager[9] == $status)
-	  {
-	    $No_Valid_Status = $status;
-	  }
-	  
-/* Template initialization for unvalidated users group */
-      $template->assign(
-        'No_Confirm_Status',
-        array(
-					'Status_options' => $status_options,
-		  		'Status_selected' => $No_Valid_Status
-					)
-	  		);
-  }
-  
-/* Get status values */
-  foreach (get_enums(USER_INFOS_TABLE, 'status') as $status)
-  {
-	  $status_options[$status] = l10n('user_status_'.$status);
-	  if (isset($conf_nbc_UserAdvManager[5]) and $conf_nbc_UserAdvManager[5] == $status)
-		{
-		  $Valid_Status = $status;
-		}
-		
-/* Template initialization for unvalidated users group */
-      $template->assign(
-	    'Confirm_Status',
-	    array(
-		    'Status_options' => $status_options,
-		    'Status_selected' => $Valid_Status
-		    )
-	    );
-	}
-
-/* Save last opened paragraph in configuration tab */
-  $nb_para=(isset($_POST["nb_para"])) ? $_POST["nb_para"]:"";
-  $nb_para2=(isset($_POST["nb_para2"])) ? $_POST["nb_para2"]:"";
-
-$conf_nbc_UserAdvManager_ConfirmMail = isset($conf['nbc_UserAdvManager_ConfirmMail']) ? explode(";" , $conf['nbc_UserAdvManager_ConfirmMail']) : array();
-  
-  $template->assign(
-    array(
-    'nb_para'                                   => $nb_para,
-    'nb_para2'                                  => $nb_para2,
-    'UAM_VERSION'                               => $version,
-    'NBC_UAM_PATH'                              => NBC_UAM_PATH,
-		'UserAdvManager_MAIL_INFO_TRUE'             => $conf_nbc_UserAdvManager[0]=='true' ?  'checked="checked"' : '' ,
-		'UserAdvManager_MAIL_INFO_FALSE'            => $conf_nbc_UserAdvManager[0]=='false' ?  'checked="checked"' : '' ,
-		'UserAdvManager_MAILINFO_TEXT'              => $conf_nbc_UserAdvManager[10],
-		'UserAdvManager_NO_CASSE_TRUE'              => $conf_nbc_UserAdvManager[1]=='true' ?  'checked="checked"' : '' ,
-		'UserAdvManager_NO_CASSE_FALSE'             => $conf_nbc_UserAdvManager[1]=='false' ?  'checked="checked"' : '' ,
-		'UserAdvManager_USERNAME_CHAR_TRUE'         => $conf_nbc_UserAdvManager[7]=='true' ?  'checked="checked"' : '' ,
-		'UserAdvManager_USERNAME_CHAR_FALSE'        => $conf_nbc_UserAdvManager[7]=='false' ?  'checked="checked"' : '' ,
-		'UserAdvManager_USERNAME_CHAR_LIST'         => $conf_nbc_UserAdvManager[8],
-		'UserAdvManager_CONFIRM_MAIL_TRUE'          => $conf_nbc_UserAdvManager[2]=='true' ?  'checked="checked"' : '' ,
-		'UserAdvManager_CONFIRM_MAIL_FALSE'         => $conf_nbc_UserAdvManager[2]=='false' ?  'checked="checked"' : '' ,
-		'UserAdvManager_CONFIRMMAIL_TEXT'           => $conf_nbc_UserAdvManager[11],
-		'UserAdvManager_No_Confirm_Group'           => $conf_nbc_UserAdvManager[3],
-		'UserAdvManager_Validated_Group'            => $conf_nbc_UserAdvManager[4],
-		'UserAdvManager_No_Confirm_Status'          => $conf_nbc_UserAdvManager[9],
-		'UserAdvManager_Validated_Status'           => $conf_nbc_UserAdvManager[5],
-		'UserAdvManager_NO_COMMENT_ANO_TRUE'        => $conf_nbc_UserAdvManager[6]=='true' ?  'checked="checked"' : '' ,
-		'UserAdvManager_NO_COMMENT_ANO_FALSE'       => $conf_nbc_UserAdvManager[6]=='false' ?  'checked="checked"' : '' ,
-		'UserAdvManager_MAILEXCLUSION_TRUE'         => $conf_nbc_UserAdvManager[12]=='true' ?  'checked="checked"' : '' ,
-		'UserAdvManager_MAILEXCLUSION_FALSE'        => $conf_nbc_UserAdvManager[12]=='false' ?  'checked="checked"' : '' ,
-		'UserAdvManager_MAILEXCLUSION_LIST'         => $conf_nbc_UserAdvManager[13],
-		'UserAdvManager_PASSWORDENF_TRUE'           => $conf_nbc_UserAdvManager[14]=='true' ?  'checked="checked"' : '' ,
-		'UserAdvManager_PASSWORDENF_FALSE'          => $conf_nbc_UserAdvManager[14]=='false' ?  'checked="checked"' : '' ,
-		'UserAdvManager_PASSWORD_SCORE'             => $conf_nbc_UserAdvManager[15],
-    'UserAdvManager_ADMINPASSWENF_TRUE'         => $conf_nbc_UserAdvManager[16]=='true' ?  'checked="checked"' : '' ,
-		'UserAdvManager_ADMINPASSWENF_FALSE'        => $conf_nbc_UserAdvManager[16]=='false' ?  'checked="checked"' : '' ,
-    'UserAdvManager_GHOSTRACKER_TRUE'           => $conf_nbc_UserAdvManager[17]=='true' ?  'checked="checked"' : '' ,
-		'UserAdvManager_GHOSTRACKER_FALSE'          => $conf_nbc_UserAdvManager[17]=='false' ?  'checked="checked"' : '' ,
-    'UserAdvManager_GHOSTRACKER_DAYLIMIT'       => $conf_nbc_UserAdvManager[18],
-    'UserAdvManager_GHOSTRACKER_REMINDERTEXT'   => $conf_nbc_UserAdvManager[19],
-    'UserAdvManager_ADDLASTVISIT_TRUE'          => $conf_nbc_UserAdvManager[20]=='true' ?  'checked="checked"' : '' ,
-    'UserAdvManager_ADDLASTVISIT_FALSE'         => $conf_nbc_UserAdvManager[20]=='false' ?  'checked="checked"' : '' ,
-		'UserAdvManager_PASSWORD_TEST_SCORE'        => $UserAdvManager_Password_Test_Score,
-    'UserAdvManager_ERROR_REPORTS1'             => $UserAdvManager_MailInfo_Error_Txt,
-    'UserAdvManager_ERROR_REPORTS2'             => $UserAdvManager_ConfirmMail_Error_Txt,
-    'UserAdvManager_ERROR_REPORTS3'             => $UserAdvManager_Reminder_Error_Txt,
-    'UserAdvManager_ERROR_REPORTS4'             => $UserAdvManager_Exclusionlist_Error,
-		'UserAdvManager_CONFIRMMAIL_TIMEOUT_TRUE'		=> $conf_nbc_UserAdvManager_ConfirmMail[0]=='true' ?  'checked="checked"' : '' ,
-		'UserAdvManager_CONFIRMMAIL_TIMEOUT_FALSE'	=> $conf_nbc_UserAdvManager_ConfirmMail[0]=='false' ?  'checked="checked"' : '' ,
-		'UserAdvManager_CONFIRMMAIL_DELAY'					=> $conf_nbc_UserAdvManager_ConfirmMail[1],
-    'UserAdvManager_CONFIRMMAIL_REMAIL_TRUE'		=> $conf_nbc_UserAdvManager_ConfirmMail[3]=='true' ? 'checked="checked"' : '',
-    'UserAdvManager_CONFIRMMAIL_REMAIL_FALSE'		=> $conf_nbc_UserAdvManager_ConfirmMail[3]=='false' ? 'checked="checked"' : '',
-    'UserAdvManager_CONFIRMMAIL_REMAIL_TXT1'		=> $conf_nbc_UserAdvManager_ConfirmMail[2],
-    'UserAdvManager_CONFIRMMAIL_REMAIL_TXT2'		=> $conf_nbc_UserAdvManager_ConfirmMail[4],
-    'UserAdvManager_ERROR_REPORTS1'             => $UserAdvManager_ConfirmMail_Error_Txt1,
-    'UserAdvManager_ERROR_REPORTS2'             => $UserAdvManager_ConfirmMail_Error_Txt2,
-    )
-  );
-
-  if (isset($_POST['audit']))
-	{
-		$msg_error1 = '';
-		
-/* username insensible a la casse */
-    if (isset($conf_nbc_UserAdvManager[3]) and $conf_nbc_UserAdvManager[3] == 'true')
-	  {
-			$query = "
-SELECT ".$conf['user_fields']['username']."
-  FROM ".USERS_TABLE." p1
-WHERE EXISTS(
-  SELECT ".$conf['user_fields']['username']."
-	 FROM ".USERS_TABLE." p2
-	WHERE p1.".$conf['user_fields']['id']." <> p2.".$conf['user_fields']['id']."
-	 AND LOWER(p1.".$conf['user_fields']['username'].") = LOWER(p2.".$conf['user_fields']['username'].")
-	)
-;";
-			  
-		  $result = pwg_query($query);
-			
-		  while($row = mysql_fetch_assoc($result))
-	  	{
-				$msg_error1 .= (($msg_error1 <> '') ? '<br/>' : '') . l10n('Err_audit_no_casse').stripslashes($row['username']);
-			}
-		}
-
-		$msg_error2 = '';
-		
-/* Username without forbidden keys */
-    if ( isset($conf_nbc_UserAdvManager[7]) and $conf_nbc_UserAdvManager[7] == 'true' )
-	  {
-			$query = "
-SELECT ".$conf['user_fields']['username'].", ".$conf['user_fields']['email']."
-  FROM ".USERS_TABLE."
-;";
-			  
-			$result = pwg_query($query);
-			
-			while($row = mysql_fetch_assoc($result))
-			{
-				if (!ValidateUsername(stripslashes($row['username'])))
-					$msg_error2 .= (($msg_error2 <> '') ? '<br/>' : '') . l10n('Err_audit_username_char').stripslashes($row['username']);
-			}
-		}
-
-		$msg_error3 = '';
-		
-/* Email without forbidden domain */
-    if ( isset($conf_nbc_UserAdvManager[12]) and $conf_nbc_UserAdvManager[12] == 'true' )
-	  {
-			$query = "
-SELECT ".$conf['user_fields']['username'].", ".$conf['user_fields']['email']."
-  FROM ".USERS_TABLE."
-;";
-			  
-		  $result = pwg_query($query);
-			
-		  while($row = mysql_fetch_assoc($result))
-		  {
-			  $conf_nbc_MailExclusion = preg_split("/[\s,]+/",$conf_nbc_UserAdvManager[13]);
-			  for ($i = 0 ; $i < count($conf_nbc_MailExclusion) ; $i++)
-			  {
-					$pattern = '/'.$conf_nbc_MailExclusion[$i].'/';
-				  if (preg_match($pattern, $row['mail_address']))
-				  {
-						$msg_error3 .=  (($msg_error3 <> '') ? '<br/>' : '') . l10n('Err_audit_email_forbidden').stripslashes($row['username']).' ('.$row['mail_address'].')';
-					}
-				}
-			}
-		}
-		
-    if ($msg_error1 <> '')
-			$errors[] = $msg_error1.'<br/><br/>';
-		
-		if ($msg_error2 <> '')
-			$errors[] = $msg_error2.'<br/><br/>';
-		
-		if ($msg_error3 <> '')
-	  	$errors[] = $msg_error3.'<br/><br/>';
-		
-		if ($msg_error1 <> '' or $msg_error2 <> '' or $msg_error3 <> '')
-	  	array_push($page['errors'], l10n('Err_audit_advise'));
-		else
-    	array_push($page['infos'], l10n('UserAdvManager_audit_ok'));
-	}
-
-
-// +-----------------------------------------------------------------------+
-// |                             errors display                            |
-// +-----------------------------------------------------------------------+
-  if (isset ($errors) and count($errors) != 0)
-  {
-	  $template->assign('errors',array());
-	  foreach ($errors as $error)
-	  {
-		  array_push($page['errors'], $error);
-		}
-	}  
-
-// +-----------------------------------------------------------------------+
-// |                           templates display                           |
-// +-----------------------------------------------------------------------+
-  $template->set_filename('plugin_admin_content', dirname(__FILE__) . '/global.tpl');
-  $template->assign_var_from_handle('ADMIN_CONTENT', 'plugin_admin_content');
-
-  break;
-
-
-// *************************************************************************
-// +-----------------------------------------------------------------------+
-// |                           Users list page                             |
-// +-----------------------------------------------------------------------+
-// *************************************************************************
-  case 'userlist':
-  
-  $conf_nbc_UserAdvManager = isset($conf['nbc_UserAdvManager']) ? explode(";" , $conf['nbc_UserAdvManager']) : array();
-  
-  if (isset($conf_nbc_UserAdvManager[20]) and $conf_nbc_UserAdvManager[20]=='true')
-  {
-// +-----------------------------------------------------------------------+
-// |                           initialization                              |
-// +-----------------------------------------------------------------------+
-
-		if (!defined('PHPWG_ROOT_PATH'))
-    {
-    	die('Hacking attempt!');
-    }
-          
-    include_once(PHPWG_ROOT_PATH.'admin/include/functions.php');
-
-// +-----------------------------------------------------------------------+
-// | Check Access and exit when user status is not ok                      |
-// +-----------------------------------------------------------------------+
-		check_status(ACCESS_ADMINISTRATOR);
-
-
-// +-----------------------------------------------------------------------+
-// |                               user list                               |
-// +-----------------------------------------------------------------------+
-
-		$page['filtered_users'] = get_user_list();
-
-// +-----------------------------------------------------------------------+
-// |                           Template Init                               |
-// +-----------------------------------------------------------------------+
-		$base_url = PHPWG_ROOT_PATH.'admin.php?page=user_list';
-
-    if (isset($_GET['start']) and is_numeric($_GET['start']))
-    {
-      $start = $_GET['start'];
-    }
-    else
-    {
-      $start = 0;
-    }
-
-// +-----------------------------------------------------------------------+
-// |                            navigation bar                             |
-// +-----------------------------------------------------------------------+
-
-$url = PHPWG_ROOT_PATH.'admin.php'.get_query_string_diff(array('start'));
-
-$navbar = create_navigation_bar(
-  $url,
-  count($page['filtered_users']),
-  $start,
-  $conf['users_page']
-  );
-
-$template->assign('NAVBAR', $navbar);
-
-// +-----------------------------------------------------------------------+
-// |                               user list                               |
-// +-----------------------------------------------------------------------+
-
-    $visible_user_list = array();
-    foreach ($page['filtered_users'] as $num => $local_user)
-    {
-/* simulate LIMIT $start, $conf['users_page'] */
-			if ($num < $start)
-      {
-        continue;
-      }
-      if ($num >= $start + $conf['users_page'])
-      {
-        break;
-      }
-
-      $visible_user_list[] = $local_user;
-		}
-
-		foreach ($visible_user_list as $local_user)
-    {
-      // dates formating and compare
-      $today = date("d-m-Y"); // Get today's date
-      list($day, $month, $year) = explode('-', $today); // explode date of today						 
-      $daytimestamp = mktime(0, 0, 0, $month, $day, $year);// Generate UNIX timestamp
-	  	
-      list($regdate, $regtime) = explode(' ', $local_user['lastvisit']); // Explode date and time from registration date
-      list($regyear, $regmonth, $regday) = explode('-', $regdate); // Explode date from registration date
-      $regtimestamp = mktime(0, 0, 0, $regmonth, $regday, $regyear);// Generate UNIX timestamp
-			
-      $deltasecs = $daytimestamp - $regtimestamp;// Compare the 2 UNIX timestamps	
-      $deltadays = floor($deltasecs / 86400);// Convert result from seconds to days
-      
-      if (isset($conf_nbc_UserAdvManager[17]) and $conf_nbc_UserAdvManager[17]=='true' and $conf_nbc_UserAdvManager[18] <> '')
-      {
-        if ($deltadays <= ($conf_nbc_UserAdvManager[18]/2))
-        {
-          $display = 'green';
-        }
-        
-        if (($deltadays > ($conf_nbc_UserAdvManager[18]/2)) and ($deltadays < $conf_nbc_UserAdvManager[18]))
-        {
-          $display = 'orange';
-        }
-        
-        if ($deltadays >= $conf_nbc_UserAdvManager[18])
-        {
-          $display = 'red';
-        }
-        
-      }
-      /* Plugin version inserted */
-      $template->assign(
-        array(
-          'UAM_VERSION' => $version,
-          'NBC_UAM_PATH'=> NBC_UAM_PATH,
-          )
-        );
-
-   		$template->append(
-     		'users',
-       	array(
-       		'ID'          => $local_user['id'],
-         	'USERNAME'    => stripslashes($local_user['username']),
-					'EMAIL'       => get_email_address_as_display_text($local_user['email']),
-          'LASTVISIT'   => $local_user['lastvisit'],
-          'DAYS'        => $deltadays,
-          'DISPLAY'     => $display,
-				)
-			);
-		}
-// +-----------------------------------------------------------------------+
-// |                             errors display                            |
-// +-----------------------------------------------------------------------+
-		if ( isset ($errors) and count($errors) != 0)
-		{
-	  	$template->assign('errors',array());
-			foreach ($errors as $error)
-	  	{
-				array_push($page['errors'], $error);
-	  	}
- 		}  
-
-// +-----------------------------------------------------------------------+
-// |                           templates display                           |
-// +-----------------------------------------------------------------------+
-		$template->set_filename('plugin_admin_content', dirname(__FILE__) . '/userlist.tpl');
-    $template->assign_var_from_handle('ADMIN_CONTENT', 'plugin_admin_content');		
-  }
-  else
-  {
-		array_push($page['infos'], l10n('Err_Userlist_Settings'));
-  }
-  break;
-
-
-// *************************************************************************
-// +-----------------------------------------------------------------------+
-// |                           Users manager page                          |
-// +-----------------------------------------------------------------------+
-// *************************************************************************
-  case 'usermanager':
-  
-  $conf_nbc_UserAdvManager = isset($conf['nbc_UserAdvManager']) ? explode(";" , $conf['nbc_UserAdvManager']) : array();
-  $conf_nbc_UserAdvManager_ConfirmMail = isset($conf['nbc_UserAdvManager_ConfirmMail']) ? explode(";" , $conf['nbc_UserAdvManager_ConfirmMail']) : array();
-	
-  if (isset($conf_nbc_UserAdvManager[2]) and $conf_nbc_UserAdvManager[2]=='true' and ((isset($conf_nbc_UserAdvManager[3]) and $conf_nbc_UserAdvManager[3] <> '-1') or (isset($conf_nbc_UserAdvManager[9]) and $conf_nbc_UserAdvManager[9] <> '-1')) and isset($conf_nbc_UserAdvManager_ConfirmMail[0]) and $conf_nbc_UserAdvManager_ConfirmMail[0]=='true')
-  {
-// +-----------------------------------------------------------------------+
-// |                           initialization                              |
-// +-----------------------------------------------------------------------+
-
-		if (!defined('PHPWG_ROOT_PATH'))
-    {
-    	die('Hacking attempt!');
-    }
-          
-    include_once(PHPWG_ROOT_PATH.'admin/include/functions.php');
-
-// +-----------------------------------------------------------------------+
-// | Check Access and exit when user status is not ok                      |
-// +-----------------------------------------------------------------------+
-		check_status(ACCESS_ADMINISTRATOR);
-
-// +-----------------------------------------------------------------------+
-// |                               user list                               |
-// +-----------------------------------------------------------------------+
-
-		$page['filtered_users'] = get_unvalid_user_list();
-
-// +-----------------------------------------------------------------------+
-// |                            selected users                             |
-// +-----------------------------------------------------------------------+
-		if (isset($_POST['Del_Selected']))
-		{
-  		$collection = array();
-
-			switch ($_POST['target'])
-    	{
-    		case 'all' :
-      	{
-      		foreach($page['filtered_users'] as $local_user)
-        	{
-        		array_push($collection, $local_user['id']);
-        	}
-					break;
-				}
-      	case 'selection' :
-      	{
-      		if (isset($_POST['selection']))
-        	{
-        		$collection = $_POST['selection'];
-        	}
-        	break;
-      	}
-			}
-
-			if (count($collection) == 0)
-    	{
-    		array_push($page['errors'], l10n('Select at least one user'));
-   		}
-		}
-
-// +-----------------------------------------------------------------------+
-// |                             delete users                              |
-// +-----------------------------------------------------------------------+
-		if (isset($_POST['Del_Selected']) and count($collection) > 0)
-  	{
-  		if (in_array($conf['guest_id'], $collection))
-   		{
-    		array_push($page['errors'], l10n('Guest cannot be deleted'));
-    	}
-    	if (($conf['guest_id'] != $conf['default_user_id']) and
-    		in_array($conf['default_user_id'], $collection))
-    	{
-    		array_push($page['errors'], l10n('Default user cannot be deleted'));
-    	}
-    	if (in_array($conf['webmaster_id'], $collection))
-    	{
-    		array_push($page['errors'], l10n('Webmaster cannot be deleted'));
-    	}
-    	if (in_array($user['id'], $collection))
-    	{
-    		array_push($page['errors'], l10n('You cannot delete your account'));
-    	}
-
-			if (count($page['errors']) == 0)
-    	{
-    		foreach ($collection as $user_id)
-      	{
-      		delete_user($user_id);
-      	}
-     		array_push(
-      		$page['infos'],
-        	l10n_dec(
-        	'%d user deleted', '%d users deleted',
-        	count($collection)
-        	)
-      	);
-
-      	foreach ($page['filtered_users'] as $filter_key => $filter_user)
-      	{
-      		if (in_array($filter_user['id'], $collection))
-        	{
-        		unset($page['filtered_users'][$filter_key]);
-        	}
-     		}
-			}
-		}
-
-// +-----------------------------------------------------------------------+
-// |                 Resend new validation key to users                    |
-// +-----------------------------------------------------------------------+
-// +-----------------------------------------------------------------------+
-// |                            selected users                             |
-// +-----------------------------------------------------------------------+
-		if (isset($_POST['Mail_With_Key']))
-		{
-  		$collection = array();
-
-			switch ($_POST['target'])
-    	{
-    		case 'all' :
-      	{
-      		foreach($page['filtered_users'] as $local_user)
-        	{
-        		array_push($collection, $local_user['id']);
-        	}
-        	break;
-				}
-      	case 'selection' :
-      	{
-      		if (isset($_POST['selection']))
-        	{
-        		$collection = $_POST['selection'];
-        	}
-        	break;
-      	}
-			}
-
-    	if (count($collection) == 0)
-    	{
-    		array_push($page['errors'], l10n('Select at least one user'));
-    	}
-		}
-// +-----------------------------------------------------------------------+
-// |                 Resend new validation key to users                    |
-// +-----------------------------------------------------------------------+
-		if (isset($_POST['Mail_With_Key']) and count($collection) > 0)
-		{
-			if (in_array($conf['guest_id'], $collection))
-   		{
-    		array_push($page['errors'], l10n('No_validation_for_Guest'));
-    	}
-    	if (($conf['guest_id'] != $conf['default_user_id']) and
-    		in_array($conf['default_user_id'], $collection))
-    	{
-    		array_push($page['errors'], l10n('No_validation_for_default_user'));
-    	}
-   		if (in_array($conf['webmaster_id'], $collection))
-    	{
-    		array_push($page['errors'], l10n('No_validation_for_Webmaster'));
-    	}
-    	if (in_array($user['id'], $collection))
-    	{
-    		array_push($page['errors'], l10n('No_validation_for_your_account'));
-    	}
-
-    	if (count($page['errors']) == 0)
-    	{
-    		foreach ($collection as $user_id)
-      	{     	
-      		$typemail = 1;
-				  $query = "
-SELECT id, username, mail_address
-  FROM ".USERS_TABLE."
-WHERE id = '".$user_id."'
-;";
-					$data = mysql_fetch_assoc(pwg_query($query));
-				
-      		ResendMail2User($typemail,$user_id,stripslashes($data['username']),$data['mail_address'],true);
-      	}
-      	array_push(
-      		$page['infos'],
-        	l10n_dec(
-        		'%d_Mail_With_Key', '%d_Mails_With_Key',
-        	count($collection)
-        	)
-      	);
-      	
-				$page['filtered_users'] = get_unvalid_user_list();
-			}
-		}
-
-// +-----------------------------------------------------------------------+
-// |             Send reminder without new key to users                    |
-// +-----------------------------------------------------------------------+
-// +-----------------------------------------------------------------------+
-// |                            selected users                             |
-// +-----------------------------------------------------------------------+
-		if (isset($_POST['Mail_Without_Key']))
-		{
-  		$collection = array();
-
-			switch ($_POST['target'])
-    	{
-    		case 'all' :
-      	{
-      		foreach($page['filtered_users'] as $local_user)
-        	{
-        		array_push($collection, $local_user['id']);
-        	}
-        	break;
-				}
-      	case 'selection' :
-      	{
-      		if (isset($_POST['selection']))
-        	{
-        		$collection = $_POST['selection'];
-        	}
-        	break;
-      	}
-			}
-
-    	if (count($collection) == 0)
-    	{
-    		array_push($page['errors'], l10n('Select at least one user'));
-    	}
-		}
-// +-----------------------------------------------------------------------+
-// |             Send reminder without new key to users                    |
-// +-----------------------------------------------------------------------+
-		if (isset($_POST['Mail_Without_Key']) and count($collection) > 0)
-		{
-			if (in_array($conf['guest_id'], $collection))
-   		{
-    		array_push($page['errors'], l10n('No_validation_for_Guest'));
-    	}
-    	if (($conf['guest_id'] != $conf['default_user_id']) and
-    		in_array($conf['default_user_id'], $collection))
-    	{
-    		array_push($page['errors'], l10n('No_validation_for_default_user'));
-    	}
-   		if (in_array($conf['webmaster_id'], $collection))
-    	{
-    		array_push($page['errors'], l10n('No_validation_for_Webmaster'));
-    	}
-    	if (in_array($user['id'], $collection))
-    	{
-    		array_push($page['errors'], l10n('No_validation_for_your_account'));
-    	}
-
-    	if (count($page['errors']) == 0)
-    	{
-    		foreach ($collection as $user_id)
-      	{
-      		$typemail = 2;
-				  $query = "
-SELECT id, username, mail_address
-  FROM ".USERS_TABLE."
-WHERE id = '".$user_id."'
-;";
-					
-					$data = mysql_fetch_assoc(pwg_query($query));
-				
-      		ResendMail2User($typemail,$user_id,stripslashes($data['username']),$data['mail_address'],false);				
-      	}
-      	array_push(
-      		$page['infos'],
-        	l10n_dec(
-        		'%d_Reminder_Sent', '%d_Reminders_Sent',
-       		count($collection)
-        	)
-      	);
-        
-				$page['filtered_users'] = get_unvalid_user_list();
-			}
-		}
-
-// +-----------------------------------------------------------------------+
-// |             								Force validation					                 |
-// +-----------------------------------------------------------------------+
-// +-----------------------------------------------------------------------+
-// |                            selected users                             |
-// +-----------------------------------------------------------------------+
-		if (isset($_POST['Force_Validation']))
-		{
-  		$collection = array();
-
-			switch ($_POST['target'])
-    	{
-    		case 'all' :
-      	{
-      		foreach($page['filtered_users'] as $local_user)
-        	{
-        		array_push($collection, $local_user['id']);
-        	}
-        	break;
-				}
-      	case 'selection' :
-      	{
-      		if (isset($_POST['selection']))
-        	{
-        		$collection = $_POST['selection'];
-        	}
-        	break;
-      	}
-			}
-
-    	if (count($collection) == 0)
-    	{
-    		array_push($page['errors'], l10n('Select at least one user'));
-    	}
-		}
-// +-----------------------------------------------------------------------+
-// |             								Force validation					                 |
-// +-----------------------------------------------------------------------+
-		if (isset($_POST['Force_Validation']) and count($collection) > 0)
-		{
-			if (in_array($conf['guest_id'], $collection))
-   		{
-    		array_push($page['errors'], l10n('No_validation_for_Guest'));
-    	}
-    	if (($conf['guest_id'] != $conf['default_user_id']) and
-    		in_array($conf['default_user_id'], $collection))
-    	{
-    		array_push($page['errors'], l10n('No_validation_for_default_user'));
-    	}
-   		if (in_array($conf['webmaster_id'], $collection))
-    	{
-    		array_push($page['errors'], l10n('No_validation_for_Webmaster'));
-    	}
-    	if (in_array($user['id'], $collection))
-    	{
-    		array_push($page['errors'], l10n('No_validation_for_your_account'));
-    	}
-
-    	if (count($page['errors']) == 0)
-    	{
-    		foreach ($collection as $user_id)
-      	{
-				  $query = "
-SELECT id, username, mail_address
-  FROM ".USERS_TABLE."
-WHERE id = '".$user_id."'
-;";
-					
-					$data = mysql_fetch_assoc(pwg_query($query));
-				
-      		ForceValidation($data['id']);				
-      	}
-      	array_push(
-      		$page['infos'],
-        	l10n_dec(
-        		'%d_Validated_User', '%d_Validated_Users',
-       		count($collection)
-        	)
-      	);
-
-				$page['filtered_users'] = get_unvalid_user_list();
-			}
-		}
-		
-
-// +-----------------------------------------------------------------------+
-// |                              groups list                              |
-// +-----------------------------------------------------------------------+
-
-		$groups[-1] = '------------';
-
-    $query = '
-SELECT id, name
-  FROM '.GROUPS_TABLE.'
-ORDER BY name ASC
-;';
-
-		$result = pwg_query($query);
-          
-    while ($row = mysql_fetch_assoc($result))
-    {
-      $groups[$row['id']] = $row['name'];
-    }
-
-// +-----------------------------------------------------------------------+
-// |                           Template Init                               |
-// +-----------------------------------------------------------------------+
-		$base_url = PHPWG_ROOT_PATH.'admin.php?page=user_list';
-
-    if (isset($_GET['start']) and is_numeric($_GET['start']))
-    {
-      $start = $_GET['start'];
-    }
-    else
-    {
-      $start = 0;
-    }
-
-/* Hide radio-button if not allow to assign adviser */
-		if ($conf['allow_adviser'])
-    	{
-      	$template->assign('adviser', true);
-    	}
-
-// +-----------------------------------------------------------------------+
-// |                            navigation bar                             |
-// +-----------------------------------------------------------------------+
-
-$url = PHPWG_ROOT_PATH.'admin.php'.get_query_string_diff(array('start'));
-
-$navbar = create_navigation_bar(
-  $url,
-  count($page['filtered_users']),
-  $start,
-  $conf['users_page']
-  );
-
-$template->assign('NAVBAR', $navbar);
-
-// +-----------------------------------------------------------------------+
-// |                               user list                               |
-// +-----------------------------------------------------------------------+
-
-		$profile_url = get_root_url().'admin.php?page=profile&amp;user_id=';
-		$perm_url = get_root_url().'admin.php?page=user_perm&amp;user_id=';
-
-    $visible_user_list = array();
-    foreach ($page['filtered_users'] as $num => $local_user)
-    {
-/* simulate LIMIT $start, $conf['users_page'] */
-			if ($num < $start)
-      {
-        continue;
-      }
-      if ($num >= $start + $conf['users_page'])
-      {
-        break;
-      }
-
-      $visible_user_list[] = $local_user;
-		}
-
-		foreach ($visible_user_list as $local_user)
-    {
-      $groups_string = preg_replace(
-      	'/(\d+)/e',
-        "\$groups['$1']",
-        implode(
-        	', ',
-            $local_user['groups']
-         )
-			);
-
-      $query = '
-SELECT user_id, reminder
-FROM '.USER_CONFIRM_MAIL_TABLE.'
-WHERE user_id = '.$local_user['id'].'
-;';
-      $result = pwg_query($query);
-      
-      $row = mysql_fetch_assoc($result);
-    
-      if (isset($row['reminder']) and $row['reminder'] == 'true')
-      {
-        $reminder = l10n('Reminder_Sent_OK');
-      }
-      else if ((isset($row['reminder']) and $row['reminder'] == 'false') or !isset($row['reminder']))
-      {
-        $reminder = l10n('Reminder_Sent_NOK');
-      }
-
-
-	  	if (isset($_POST['pref_submit'])
-    		and isset($_POST['selection'])
-      	and in_array($local_user['id'], $_POST['selection']))
-	  	{
-				$checked = 'checked="checked"';
-	  	}
-			else
-    	{
-    		$checked = '';
-    	}
-
-    	$properties = array();
-    	if ( $local_user['level'] != 0 )
-			{
-    		$properties[] = l10n( sprintf('Level %d', $local_user['level']) );
-			}
-    	$properties[] =
-    		(isset($local_user['enabled_high']) and ($local_user['enabled_high'] == 'true'))
-      		? l10n('is_high_enabled') : l10n('is_high_disabled');
-
-			$expiration = expiration($local_user['id']);
-
-   		$template->append(
-     		'users',
-       	array(
-       		'ID'               => $local_user['id'],
-         	'CHECKED'          => $checked,
-         	'U_PROFILE'        => $profile_url.$local_user['id'],
-         	'U_PERM'           => $perm_url.$local_user['id'],
-         	'USERNAME'         => stripslashes($local_user['username'])
-                                  .($local_user['id'] == $conf['guest_id']
-                                  ? '<BR>['.l10n('is_the_guest').']' : '')
-                                  .($local_user['id'] == $conf['default_user_id']
-                                  ? '<BR>['.l10n('is_the_default').']' : ''),
-                                  'STATUS' => l10n('user_status_'
-                                  .$local_user['status']).(($local_user['adviser'] == 'true')
-                                  ? '<BR>['.l10n('adviser').']' : ''),
-					'EMAIL'            => get_email_address_as_display_text($local_user['email']),
-         	'GROUPS'           => $groups_string,
-         	'REGISTRATION'     => $local_user['registration_date'],
-          'REMINDER'         => $reminder,    
-         	'EXPIRATION'       => $expiration,
-				)
-			);
-		}
-    /* Plugin version inserted */
-    $template->assign(
-      array(
-        'UAM_VERSION'      => $version,
-        'NBC_UAM_PATH'     => NBC_UAM_PATH,
-      )
-    );
-
-// +-----------------------------------------------------------------------+
-// |                             errors display                            |
-// +-----------------------------------------------------------------------+
-		if ( isset ($errors) and count($errors) != 0)
-		{
-	  	$template->assign('errors',array());
-			foreach ($errors as $error)
-	  	{
-				array_push($page['errors'], $error);
-	  	}
-		}  
-
-// +-----------------------------------------------------------------------+
-// |                           templates display                           |
-// +-----------------------------------------------------------------------+
-		$template->set_filename('plugin_admin_content', dirname(__FILE__) . '/usermanager.tpl');
-    $template->assign_var_from_handle('ADMIN_CONTENT', 'plugin_admin_content');		
-	}
-  else
-  {
-		array_push($page['infos'], l10n('Err_UserManager_Settings'));
-  }
-  break;
-
-
-// *************************************************************************
-// +-----------------------------------------------------------------------+
-// |                           Ghost Tracker page                          |
-// +-----------------------------------------------------------------------+
-// *************************************************************************
-  case 'ghosttracker':
-  $conf_nbc_UserAdvManager = isset($conf['nbc_UserAdvManager']) ? explode(";" , $conf['nbc_UserAdvManager']) : array();
-	
-  if (isset($conf_nbc_UserAdvManager[17]) and $conf_nbc_UserAdvManager[17]=='true')
-  {
-// +-----------------------------------------------------------------------+
-// |                           initialization                              |
-// +-----------------------------------------------------------------------+
-
-		if (!defined('PHPWG_ROOT_PATH'))
-    {
-    	die('Hacking attempt!');
-    }
-          
-    include_once(PHPWG_ROOT_PATH.'admin/include/functions.php');
-
-// +-----------------------------------------------------------------------+
-// | Check Access and exit when user status is not ok                      |
-// +-----------------------------------------------------------------------+
-		check_status(ACCESS_ADMINISTRATOR);
-
-// +-----------------------------------------------------------------------+
-// |                               user list                               |
-// +-----------------------------------------------------------------------+
-
-		$page['filtered_users'] = get_ghost_user_list();
-
-// +-----------------------------------------------------------------------+
-// |                            selected users                             |
-// +-----------------------------------------------------------------------+
-		if (isset($_POST['Del_Selected']))
-		{
-  		$collection = array();
-
-			switch ($_POST['target'])
-    	{
-    		case 'all' :
-      	{
-      		foreach($page['filtered_users'] as $local_user)
-        	{
-        		array_push($collection, $local_user['id']);
-        	}
-					break;
-				}
-      	case 'selection' :
-      	{
-      		if (isset($_POST['selection']))
-        	{
-        		$collection = $_POST['selection'];
-        	}
-        	break;
-      	}
-			}
-
-			if (count($collection) == 0)
-    	{
-    		array_push($page['errors'], l10n('Select at least one user'));
-   		}
-		}
-
-// +-----------------------------------------------------------------------+
-// |                             delete users                              |
-// +-----------------------------------------------------------------------+
-		if (isset($_POST['Del_Selected']) and count($collection) > 0)
-  	{
-  		if (in_array($conf['guest_id'], $collection))
-   		{
-    		array_push($page['errors'], l10n('Guest cannot be deleted'));
-    	}
-    	if (($conf['guest_id'] != $conf['default_user_id']) and
-    		in_array($conf['default_user_id'], $collection))
-    	{
-    		array_push($page['errors'], l10n('Default user cannot be deleted'));
-    	}
-    	if (in_array($conf['webmaster_id'], $collection))
-    	{
-    		array_push($page['errors'], l10n('Webmaster cannot be deleted'));
-    	}
-    	if (in_array($user['id'], $collection))
-    	{
-    		array_push($page['errors'], l10n('You cannot delete your account'));
-    	}
-
-			if (count($page['errors']) == 0)
-    	{
-    		foreach ($collection as $user_id)
-      	{
-      		delete_user($user_id);
-      	}
-     		array_push(
-      		$page['infos'],
-        	l10n_dec(
-        	'%d user deleted', '%d users deleted',
-        	count($collection)
-        	)
-      	);
-
-      	foreach ($page['filtered_users'] as $filter_key => $filter_user)
-      	{
-      		if (in_array($filter_user['id'], $collection))
-        	{
-        		unset($page['filtered_users'][$filter_key]);
-        	}
-     		}
-			}
-		}
-
-// +-----------------------------------------------------------------------+
-// |                          Send ghost reminder                          |
-// +-----------------------------------------------------------------------+
-// +-----------------------------------------------------------------------+
-// |                            selected users                             |
-// +-----------------------------------------------------------------------+
-		if (isset($_POST['Reminder_Email']))
-		{
-  		$collection = array();
-
-			switch ($_POST['target'])
-    	{
-    		case 'all' :
-      	{
-      		foreach($page['filtered_users'] as $local_user)
-        	{
-        		array_push($collection, $local_user['id']);
-        	}
-        	break;
-				}
-      	case 'selection' :
-      	{
-      		if (isset($_POST['selection']))
-        	{
-        		$collection = $_POST['selection'];
-        	}
-        	break;
-      	}
-			}
-
-    	if (count($collection) == 0)
-    	{
-    		array_push($page['errors'], l10n('Select at least one user'));
-    	}
-		}
-// +-----------------------------------------------------------------------+
-// |                         Send ghost reminder                           |
-// +-----------------------------------------------------------------------+
-		if (isset($_POST['Reminder_Email']) and count($collection) > 0)
-		{
-			if (in_array($conf['guest_id'], $collection))
-   		{
-    		array_push($page['errors'], l10n('No_reminder_for_Guest'));
-    	}
-    	if (($conf['guest_id'] != $conf['default_user_id']) and
-    		in_array($conf['default_user_id'], $collection))
-    	{
-    		array_push($page['errors'], l10n('No_reminder_for_default_user'));
-    	}
-   		if (in_array($conf['webmaster_id'], $collection))
-    	{
-    		array_push($page['errors'], l10n('No_reminder_for_Webmaster'));
-    	}
-    	if (in_array($user['id'], $collection))
-    	{
-    		array_push($page['errors'], l10n('No_reminder_for_your_account'));
-    	}
-
-    	if (count($page['errors']) == 0)
-    	{
-    		foreach ($collection as $user_id)
-      	{
-				  $query = "
-SELECT id, username, mail_address
-  FROM ".USERS_TABLE."
-WHERE id = '".$user_id."'
-;";
-					
-					$data = mysql_fetch_assoc(pwg_query($query));
-				
-      		ghostreminder($user_id,stripslashes($data['username']),$data['mail_address']);				
-      	}
-      	array_push(
-      		$page['infos'],
-        	l10n_dec(
-        		'%d_Reminder_Sent', '%d_Reminders_Sent',
-       		count($collection)
-        	)
-      	);
-      	
-				$page['filtered_users'] = get_ghost_user_list();
-			}
-		}
-    
-    if (isset($_POST['GhostTracker_Init']))
-    {
-      /* Reset is only allowed for admins ! */
-      if (is_admin() and !is_adviser())
-      {
-        $query1 = '
-SELECT *
-  FROM '.USER_LASTVISIT_TABLE.';';
-
-        $count = mysql_num_rows(pwg_query($query1));
-
-        if ($count <> 0)
-        {
-          $query = '
-SELECT DISTINCT u.id,
-                ui.status AS status
-FROM '.USERS_TABLE.' AS u
-  INNER JOIN '.USER_INFOS_TABLE.' AS ui
-    ON u.id = ui.user_id
-WHERE u.id NOT IN (SELECT user_id FROM '.USER_LASTVISIT_TABLE.')
-  AND status != "webmaster"
-  AND status != "guest"
-  AND status != "admin"
-ORDER BY u.id ASC
-;';
-
-          $result = pwg_query($query);
-          
-          while ($row = mysql_fetch_assoc($result))
-          {
-            list($dbnow) = mysql_fetch_row(pwg_query('SELECT NOW();'));
-            
-            $query = "
-INSERT INTO ".USER_LASTVISIT_TABLE." (user_id, lastvisit, reminder)
-VALUES ('".$row['id']."','".$dbnow."','false')
-;";
-            pwg_query($query);
-          }
-        }
-        else if ($count == 0)
-        {
-          $query = '
-SELECT DISTINCT u.id,
-                ui.status AS status
-FROM '.USERS_TABLE.' AS u
-  INNER JOIN '.USER_INFOS_TABLE.' AS ui
-    ON u.id = ui.user_id
-WHERE status != "webmaster"
-  AND status != "guest"
-  AND status != "admin"
-ORDER BY u.id ASC
-;';
-
-          $result = pwg_query($query);
-          
-          while($row = mysql_fetch_assoc($result))
-          {
-            list($dbnow) = mysql_fetch_row(pwg_query('SELECT NOW();'));
-            
-            $query = "
-INSERT INTO ".USER_LASTVISIT_TABLE." (user_id, lastvisit, reminder)
-VALUES ('".$row['id']."','".$dbnow."','false')
-;";
-            pwg_query($query);
-          }
-        }
-        
-        array_push($page['infos'], l10n('GhostTracker_Init_OK'));
-      }
-    }
-
-// +-----------------------------------------------------------------------+
-// |                           Template Init                               |
-// +-----------------------------------------------------------------------+
-		$base_url = PHPWG_ROOT_PATH.'admin.php?page=user_list';
-
-    if (isset($_GET['start']) and is_numeric($_GET['start']))
-    {
-      $start = $_GET['start'];
-    }
-    else
-    {
-      $start = 0;
-    }
-
-/* Hide radio-button if not allow to assign adviser */
-		if ($conf['allow_adviser'])
-    {
-      $template->assign('adviser', true);
-   	}
-
-// +-----------------------------------------------------------------------+
-// |                            navigation bar                             |
-// +-----------------------------------------------------------------------+
-
-$url = PHPWG_ROOT_PATH.'admin.php'.get_query_string_diff(array('start'));
-
-$navbar = create_navigation_bar(
-  $url,
-  count($page['filtered_users']),
-  $start,
-  $conf['users_page']
-  );
-
-$template->assign('NAVBAR', $navbar);
-
-// +-----------------------------------------------------------------------+
-// |                               user list                               |
-// +-----------------------------------------------------------------------+
-
-    $visible_user_list = array();
-    foreach ($page['filtered_users'] as $num => $local_user)
-    {
-/* simulate LIMIT $start, $conf['users_page'] */
-			if ($num < $start)
-      {
-        continue;
-      }
-      if ($num >= $start + $conf['users_page'])
-      {
-        break;
-      }
-
-      $visible_user_list[] = $local_user;
-		}
-
-/* Plugin version inserted */
-      $template->assign(
-        array(
-          'UAM_VERSION'      => $version,
-          'NBC_UAM_PATH'     => NBC_UAM_PATH,
-        )
-      );
-
-		foreach ($visible_user_list as $local_user)
-    {
-      $reminder = '';
-    
-      if (isset($local_user['reminder']) and $local_user['reminder'] == 'true')
-      {
-        $reminder = l10n('Reminder_Sent_OK');
-      }
-      else if (isset($local_user['reminder']) and $local_user['reminder'] == 'false')
-      {
-        $reminder = l10n('Reminder_Sent_NOK');
-      }
-    
-      if (isset($_POST['pref_submit']) and isset($_POST['selection']) and in_array($local_user['id'], $_POST['selection']))
-	  	{
-				$checked = 'checked="checked"';
-	  	}
-			else
-    	{
-    		$checked = '';
-    	}
-
-      $template->append(
-     	  'users',
-       	array(
-       		'ID'          => $local_user['id'],
-         	'CHECKED'     => $checked,
-         	'USERNAME'    => stripslashes($local_user['username']),
-					'EMAIL'       => get_email_address_as_display_text($local_user['email']),
-          'LASTVISIT'   => $local_user['lastvisit'],
-          'REMINDER'    => $reminder,
-				)
-			);
-		}
-
-// +-----------------------------------------------------------------------+
-// |                             errors display                            |
-// +-----------------------------------------------------------------------+
-		if ( isset ($errors) and count($errors) != 0)
-		{
-	  	$template->assign('errors',array());
-			foreach ($errors as $error)
-	  	{
-				array_push($page['errors'], $error);
-	  	}
-		}  
-
-// +-----------------------------------------------------------------------+
-// |                           templates display                           |
-// +-----------------------------------------------------------------------+
-		$template->set_filename('plugin_admin_content', dirname(__FILE__) . '/ghosttracker.tpl');
-    $template->assign_var_from_handle('ADMIN_CONTENT', 'plugin_admin_content');		
-	}
-  else
-  {
-		array_push($page['infos'], l10n('Err_GhostTracker_Settings'));
-  }
-
-  break;
-}
-?>
Index: /extensions/NBC_UserAdvManager/branches/2.14/admin/global.tpl
===================================================================
--- /extensions/NBC_UserAdvManager/branches/2.14/admin/global.tpl	(revision 5086)
+++ /extensions/NBC_UserAdvManager/branches/2.14/admin/global.tpl	(revision 5087)
@@ -109,13 +109,7 @@
         <ul>
 {if $UAM_MAIL_INFO_TRUE}
-  {if $UAM_ERROR_REPORTS1}      
-          <li><label class="cluetip" title="{'UAM_infotxtTitle'|translate}|{'UAM_infotxtTitle_d'|translate}">{'UAM_MailInfo_Text'|@translate}</label><br><br>
-            <textarea name="UAM_MailInfo_Text" id="UAM_MailInfo_Text" rows="10" cols="80" style="color: red"  {$TAG_INPUT_ENABLED}>{$UAM_MAILINFO_TEXT}</textarea><br><br>
-          </li>
-  {else}
-          <li><label class="cluetip" title="{'UAM_infotxtTitle'|translate}|{'UAM_infotxtTitle_d'|translate}">{'UAM_MailInfo_Text'|@translate}</label><br><br>
-            <textarea name="UAM_MailInfo_Text" id="UAM_MailInfo_Text" rows="10" cols="80" {$TAG_INPUT_ENABLED}>{$UAM_MAILINFO_TEXT}</textarea><br><br>
-          </li>
-  {/if}
+        <li><label class="cluetip" title="{'UAM_infotxtTitle'|translate}|{'UAM_infotxtTitle_d'|translate}">{'UAM_MailInfo_Text'|@translate}</label><br><br>
+          <textarea name="UAM_MailInfo_Text" id="UAM_MailInfo_Text" rows="10" cols="80" {$TAG_INPUT_ENABLED}>{$UAM_MAILINFO_TEXT}</textarea><br><br>
+        </li>
 {else}
           <li><label class="cluetip" title="{'UAM_infotxtTitle'|translate}|{'UAM_infotxtTitle_d'|translate}">{'UAM_MailInfo_Text'|@translate}</label><br><br>
@@ -143,13 +137,7 @@
           </li>
 {if $UAM_CONFIRM_MAIL_TRUE}
-  {if $UAM_ERROR_REPORTS2}     
-          <li><label class="cluetip" title="{'UAM_confirmtxtTitle'|translate}|{'UAM_confirmtxtTitle_d'|translate}">{'UAM_ConfirmMail_Text'|@translate}</label><br><br>
-            <textarea name="UAM_ConfirmMail_Text" id="UAM_ConfirmMail_Text" rows="10" cols="80" style="color: red" {$TAG_INPUT_ENABLED}>{$UAM_CONFIRMMAIL_TEXT}</textarea><br><br>
-          </li>
-  {else}
           <li><label class="cluetip" title="{'UAM_confirmtxtTitle'|translate}|{'UAM_confirmtxtTitle_d'|translate}">{'UAM_ConfirmMail_Text'|@translate}</label><br><br>
             <textarea name="UAM_ConfirmMail_Text" id="UAM_ConfirmMail_Text" rows="10" cols="80" {$TAG_INPUT_ENABLED}>{$UAM_CONFIRMMAIL_TEXT}</textarea><br><br>
           </li>
-  {/if}
 {else}
           <li><label class="cluetip" title="{'UAM_confirmtxtTitle'|translate}|{'UAM_confirmtxtTitle_d'|translate}">{'UAM_ConfirmMail_Text'|@translate}</label><br><br>
@@ -214,13 +202,7 @@
         <ul>
 {if $UAM_CONFIRMMAIL_REMAIL_TRUE}
-  {if $UAM_ERROR_REPORTS1}
-        <li><label class="cluetip" title="{'UAM_remailtxt1Title'|translate}|{'UAM_remailtxt1Title_d'|translate}">{'UAM_ConfirmMail_ReMail_Txt1'|@translate}</label><br><br>
-          <textarea name="UAM_ConfirmMail_ReMail_Txt1" id="UAM_ConfirmMail_ReMail_Txt1" rows="10" cols="80" style="color: red" {$TAG_INPUT_ENABLED}>{$UAM_CONFIRMMAIL_REMAIL_TXT1}</textarea><br><br>
-        </li>
-  {else}
         <li><label class="cluetip" title="{'UAM_remailtxt1Title'|translate}|{'UAM_remailtxt1Title_d'|translate}">{'UAM_ConfirmMail_ReMail_Txt1'|@translate}</label><br><br>
           <textarea name="UAM_ConfirmMail_ReMail_Txt1" id="UAM_ConfirmMail_ReMail_Txt1" rows="10" cols="80" {$TAG_INPUT_ENABLED}>{$UAM_CONFIRMMAIL_REMAIL_TXT1}</textarea><br><br>
         </li>
-  {/if}
 {else}
         <li><label class="cluetip" title="{'UAM_remailtxt1Title'|translate}|{'UAM_remailtxt1Title_d'|translate}">{'UAM_ConfirmMail_ReMail_Txt1'|@translate}</label><br><br>
@@ -237,13 +219,7 @@
 
 {if $UAM_CONFIRMMAIL_REMAIL_TRUE}
-  {if $UAM_ERROR_REPORTS2}
-        <li><label class="cluetip" title="{'UAM_remailtxt2Title'|translate}|{'UAM_remailtxt2Title_d'|translate}">{'UAM_ConfirmMail_ReMail_Txt2'|@translate}</label><br><br>
-          <textarea name="UAM_ConfirmMail_ReMail_Txt2" id="UAM_ConfirmMail_ReMail_Txt2" rows="10" cols="80" style="color: red" {$TAG_INPUT_ENABLED}>{$UAM_CONFIRMMAIL_REMAIL_TXT2}</textarea><br>
-        </li>
-  {else}		
         <li><label class="cluetip" title="{'UAM_remailtxt2Title'|translate}|{'UAM_remailtxt2Title_d'|translate}">{'UAM_ConfirmMail_ReMail_Txt2'|@translate}</label><br><br>
           <textarea name="UAM_ConfirmMail_ReMail_Txt2" id="UAM_ConfirmMail_ReMail_Txt2" rows="10" cols="80" {$TAG_INPUT_ENABLED}>{$UAM_CONFIRMMAIL_REMAIL_TXT2}</textarea><br>
         </li>
-  {/if}
 {else}
         <li><label class="cluetip" title="{'UAM_remailtxt2Title'|translate}|{'UAM_remailtxt2Title_d'|translate}">{'UAM_ConfirmMail_ReMail_Txt2'|@translate}</label><br><br>
@@ -281,13 +257,7 @@
         <ul>
 {if $UAM_GHOSTRACKER_TRUE}
-  {if $UAM_ERROR_REPORTS3}
-          <li><label class="cluetip" title="{'UAM_gttextTitle'|translate}|{'UAM_gttextTitle_d'|translate}">{'UAM_GhostTracker_ReminderText'|@translate}</label><br><br>
-            <textarea name="UAM_GhostTracker_ReminderText" id="UAM_GhostTracker_ReminderText" rows="10" cols="80" style="color: red" {$TAG_INPUT_ENABLED}>{$UAM_GHOSTRACKER_REMINDERTEXT}</textarea><br><br>
-          </li>
-  {else}
           <li><label class="cluetip" title="{'UAM_gttextTitle'|translate}|{'UAM_gttextTitle_d'|translate}">{'UAM_GhostTracker_ReminderText'|@translate}</label><br><br>
             <textarea name="UAM_GhostTracker_ReminderText" id="UAM_GhostTracker_ReminderText" rows="10" cols="80" {$TAG_INPUT_ENABLED}>{$UAM_GHOSTRACKER_REMINDERTEXT}</textarea><br><br>
           </li>
-  {/if}
 {else}
           <li><label class="cluetip" title="{'UAM_gttextTitle'|translate}|{'UAM_gttextTitle_d'|translate}">{'UAM_GhostTracker_ReminderText'|@translate}</label><br><br>
Index: /extensions/NBC_UserAdvManager/branches/2.14/changelog.txt.php
===================================================================
--- /extensions/NBC_UserAdvManager/branches/2.14/changelog.txt.php	(revision 5086)
+++ /extensions/NBC_UserAdvManager/branches/2.14/changelog.txt.php	(revision 5087)
@@ -148,4 +148,5 @@
             Evolution 1485 - The admin's can choose if the validation of registration have to be sent to users created by them
             Improving obsolete files cleaning
+            Evolution 1488 - When an admin creates an account an information email is always sent to created user
             Code simplification - All variables are changed from "UserAdvManager" to "UAM"
 */
Index: /extensions/NBC_UserAdvManager/branches/2.14/include/functions.inc.php
===================================================================
--- /extensions/NBC_UserAdvManager/branches/2.14/include/functions.inc.php	(revision 5086)
+++ /extensions/NBC_UserAdvManager/branches/2.14/include/functions.inc.php	(revision 5087)
@@ -98,4 +98,29 @@
     }
   }
+
+/* ******************************************************** */
+/* **** Pending code since to find how to make it work **** */
+/* ******************************************************** */
+// Testing if FCK Editor is used. Then decoding htmlchars to avoid problems with pwg_mail()
+/*$areas = array();
+array_push( $areas,'UAM_MailInfo_Text','UAM_ConfirmMail_Text');
+
+if (function_exists('set_fckeditor_instance'))
+{
+  $fcke_config = unserialize($conf['FCKEditor']);
+  foreach($areas as $area)
+  {
+    if (isset($fcke_config['UAM_MailInfo_Text']) and $fcke_config['UAM_MailInfo_Text'] = true)
+    {
+      $infos1_perso = html_entity_decode($infos1_perso,ENT_QUOTES,UTF-8);
+    }
+    
+    if (isset($fcke_config['UAM_ConfirmMail_Text']) and $fcke_config['UAM_ConfirmMail_Text'] = true)
+    {
+      $infos2_perso = html_entity_decode($infos2_perso,ENT_QUOTES,UTF-8);
+    }
+  }
+}*/
+
 
 /* Sending the email with subject and contents */
Index: tensions/NBC_UserAdvManager/branches/2.14/include/functions_UserAdvManager.inc.php
===================================================================
--- /extensions/NBC_UserAdvManager/branches/2.14/include/functions_UserAdvManager.inc.php	(revision 5086)
+++ 	(revision )
@@ -1,1192 +1,0 @@
-<?php
-include_once (NBC_UAM_PATH.'include/constants.php');
-load_language('plugin.lang', NBC_UAM_PATH);
-
-/* Function called from main.inc.php to send validation email */
-function SendMail2User($typemail, $id, $username, $password, $email, $confirm)
-{
-  /* Only available for next Piwigo release (bug in switch_lang function) */
-  //global $conf;
-  
-  /* ****************************************************************** */
-  /* Delete this after new Piwigo release (bug in switch_lang function) */
-  global $conf, $user;
-  $save_user = $user; 
-  /* ****************************************************************** */
-
-  $conf_nbc_UserAdvManager = isset($conf['nbc_UserAdvManager']) ? explode(";" , $conf['nbc_UserAdvManager']) : array();
-  
-	include_once(PHPWG_ROOT_PATH.'include/functions_mail.inc.php');
-  
-	$infos1_perso = "";
-  $infos2_perso = "";
-
-/* We have to get the user's language in database */
-  $query ='
-SELECT user_id, language
-FROM '.USER_INFOS_TABLE.'
-WHERE user_id = '.$id.'
-;';
-  $data = mysql_fetch_assoc(pwg_query($query));
-
-/* Check if user is already registered (profile changing) - If not (new registration), language is set to current gallery language */
-  if (empty($data))
-  {
-/* And switch gallery to this language before using personalized and multilangual contents */
-    $language = pwg_get_session_var( 'lang_switch', $user['language'] );
-    switch_lang_to($language);
-  }
-  else
-  {
-/* And switch gallery to this language before using personalized and multilangual contents */
-    $language = $data['language']; /* Usefull for debugging */
-    switch_lang_to($data['language']);
-    load_language('plugin.lang', NBC_UAM_PATH);
-  }
-
-  switch($typemail)
-  {
-    case 1:
-      $subject = '['.$conf['gallery_title'].'] '.l10n_args(get_l10n_args('Add of %s', stripslashes($username)));
-      $password = $password <> '' ? $password : l10n('UserAdvManager_empty_pwd');
-      
-      if (isset($conf_nbc_UserAdvManager[10]) and $conf_nbc_UserAdvManager[10] <> '')
-      {
-        if (function_exists('get_user_language_desc'))
-        {
-          $infos1_perso = get_user_language_desc($conf_nbc_UserAdvManager[10])."\n\n";
-        }
-        else $infos1_perso = l10n($conf_nbc_UserAdvManager[10])."\n\n"; 
-      }
-      
-      break;
-      
-    case 2:
-      $subject = '['.$conf['gallery_title'].'] '.l10n_args(get_l10n_args('Update of %s', stripslashes($username)));
-      $password = $password <> '' ? $password : l10n('UserAdvManager_empty_pwd');
-
-      break;
-        
-    case 3:
-      $subject = '['.$conf['gallery_title'].'] '.l10n_args(get_l10n_args('Update of %s', stripslashes($username)));
-      $password = $password <> '' ? $password : l10n('UserAdvManager_no_update_pwd');
-
-      break;
-  }
-
-  if (isset($conf_nbc_UserAdvManager[0]) and $conf_nbc_UserAdvManager[0] == 'true')
-  {
-    $infos1 = array(
-      get_l10n_args('infos_mail %s', stripslashes($username)),
-      get_l10n_args('User: %s', stripslashes($username)),
-      get_l10n_args('Password: %s', $password),
-      get_l10n_args('Email: %s', $email),
-      get_l10n_args('', ''),
-    );
-  }
-
-
-  if ( isset($conf_nbc_UserAdvManager[2]) and $conf_nbc_UserAdvManager[2] == 'true' and $confirm)
-  {
-    $infos2 = array
-    (
-      get_l10n_args('Link: %s', AddConfirmMail($id, $email)),
-      get_l10n_args('', ''),
-    );
-
-    if (isset($conf_nbc_UserAdvManager[11]) and $conf_nbc_UserAdvManager[11] <> '')
-    {
-      if (function_exists('get_user_language_desc'))
-      {
-        $infos2_perso = get_user_language_desc($conf_nbc_UserAdvManager[11])."\n\n";
-      }
-      else $infos2_perso = l10n($conf_nbc_UserAdvManager[11])."\n\n";
-    }
-  }
-
-/* Sending the email with subject and contents */
-  pwg_mail($email, array(
-    'subject' => $subject,
-    'content' => (isset($infos1) ? $infos1_perso.l10n_args($infos1)."\n\n" : "").(isset($infos2) ? $infos2_perso.l10n_args($infos2)."\n\n" : "").get_absolute_root_url(),
-  ));
-
-/* ********************** */
-/* Email sending debugger */
-/* This is only to trace  */
-/* the send of emails for */
-/* debugging              */
-/* ********************** */
-//$content = (isset($infos1) ? $infos1_perso.l10n_args($infos1)."\n\n" : "").(isset($infos2) ? $infos2_perso.l10n_args($infos2)."\n\n" : "").get_absolute_root_url();   
-//MailLog($email,$subject,$content,$language);
-/* ********************** */
-
-/* Switching back to default language */
-  /* ****************************************************************** */
-  /* Delete this after new Piwigo release (bug in switch_lang function) */
-$user=$save_user ;
-  /* ****************************************************************** */
-switch_lang_back();
-}
-
-
-/* Function called from UserAdvManager_admin.php to resend validation email with or without new validation key */
-function ResendMail2User($typemail, $user_id, $username, $email, $confirm)
-{
-  /* Only available for next Piwigo release (bug in switch_lang function) */
-  //global $conf;
-  
-  /* ****************************************************************** */
-  /* Delete this after new Piwigo release (bug in switch_lang function) */
-  global $conf, $user;
-  $save_user = $user; 
-  /* ****************************************************************** */
-  
-  $conf_nbc_UserAdvManager = isset($conf['nbc_UserAdvManager']) ? explode(";" , $conf['nbc_UserAdvManager']) : array();
-	$conf_nbc_UserAdvManager_ConfirmMail = isset($conf['nbc_UserAdvManager_ConfirmMail']) ? explode(";" , $conf['nbc_UserAdvManager_ConfirmMail']) : array();
-  
-	include_once(PHPWG_ROOT_PATH.'include/functions_mail.inc.php');
-  
-	$infos1_perso = "";
-  $infos2_perso = "";
-  
-/* We have to get the user's language in database */
-  $query ='
-SELECT user_id, language
-FROM '.USER_INFOS_TABLE.'
-WHERE user_id = '.$user_id.'
-;';
-  $data = mysql_fetch_assoc(pwg_query($query));
-  $language = $data['language'];
-  
-/* And switch gallery to this language before using personalized and multilangual contents */
-  switch_lang_to($data['language']);
-   
-  load_language('plugin.lang', NBC_UAM_PATH);
-
-  switch($typemail)
-  {
-    case 1:
-      $subject = '['.$conf['gallery_title'].'] '.l10n_args(get_l10n_args('Reminder_with_key_of_%s', $username));
-      
-      if (isset($conf_nbc_UserAdvManager_ConfirmMail[2]) and $conf_nbc_UserAdvManager_ConfirmMail[2] <> '' and isset($conf_nbc_UserAdvManager_ConfirmMail[3]) and $conf_nbc_UserAdvManager_ConfirmMail[3] == 'true' and $confirm)
-      {
-        if (function_exists('get_user_language_desc'))
-        {
-          $infos1 = get_user_language_desc($conf_nbc_UserAdvManager_ConfirmMail[2])."\n\n";
-        }
-				else $infos1 = l10n($conf_nbc_UserAdvManager_ConfirmMail[2])."\n\n";
-
-        $infos2 = array
-        (
-          get_l10n_args('Link: %s', ResetConfirmMail($user_id)),
-          get_l10n_args('', ''),
-        );        
-			}
-
-/* Set reminder true */      
-      $query = "
-UPDATE ".USER_CONFIRM_MAIL_TABLE."
-SET reminder = 'true'
-WHERE user_id = '".$user_id."'
-;";
-      pwg_query($query);
-      
-		break;
-      
-    case 2:
-      $subject = '['.$conf['gallery_title'].'] '.l10n_args(get_l10n_args('Reminder_without_key_of_%s',$username));
-      
-      if (isset($conf_nbc_UserAdvManager_ConfirmMail[2]) and $conf_nbc_UserAdvManager_ConfirmMail[2] <> '' and isset($conf_nbc_UserAdvManager_ConfirmMail[3]) and $conf_nbc_UserAdvManager_ConfirmMail[3] == 'true' and !$confirm)
-      {
-        if (function_exists('get_user_language_desc'))
-        {
-          $infos1 = get_user_language_desc($conf_nbc_UserAdvManager_ConfirmMail[2])."\n\n";
-        }
-        else $infos1 = l10n($conf_nbc_UserAdvManager_ConfirmMail[2])."\n\n";
-      }
-      
-/* Set reminder true */      
-      $query = "
-UPDATE ".USER_CONFIRM_MAIL_TABLE."
-SET reminder = 'true'
-WHERE user_id = '".$user_id."'
-;";
-      pwg_query($query);
-      
-    break;
-	}
-  
-  pwg_mail($email, array(
-    'subject' => $subject,
-    'content' => ($infos1."\n\n").(isset($infos2) ? l10n_args($infos2)."\n\n" : "").get_absolute_root_url(),
-  ));
-
-/* ********************** */
-/* Email sending debugger */
-/* This is only to trace  */
-/* the send of emails for */
-/* debugging              */
-/* ********************** */
-//$content = ($infos1."\n\n").(isset($infos2) ? l10n_args($infos2)."\n\n" : "").get_absolute_root_url();
-//MailLog($email,$subject,$content,$language);
-/* ********************** */
-
-/* Switching back to default language */
-  /* ****************************************************************** */
-  /* Delete this after new Piwigo release (bug in switch_lang function) */
-$user=$save_user ;
-  /* ****************************************************************** */
-switch_lang_back();
-}
-
-
-/* Function called from UserAdvManager_admin.php to send a reminder mail for ghost users */
-function ghostreminder($user_id, $username, $email)
-{
-  /* Only available for next Piwigo release (bug in switch_lang function) */
-  //global $conf;
-  
-  /* ****************************************************************** */
-  /* Delete this after new Piwigo release (bug in switch_lang function) */
-  global $conf, $user;
-  $save_user = $user; 
-  /* ****************************************************************** */
-  
-  $conf_nbc_UserAdvManager = isset($conf['nbc_UserAdvManager']) ? explode(";" , $conf['nbc_UserAdvManager']) : array();
-  
-	include_once(PHPWG_ROOT_PATH.'include/functions_mail.inc.php');
-  
-	$infos1_perso = "";
-
-/* We have to get the user's language in database */
-  $query ='
-SELECT user_id, language
-FROM '.USER_INFOS_TABLE.'
-WHERE user_id = '.$user_id.'
-;';
-  $data = mysql_fetch_assoc(pwg_query($query));
-  $language = $data['language'];
-
-/* And switch gallery to this language before using personalized and multilangual contents */
-  switch_lang_to($data['language']);
-   
-  load_language('plugin.lang', NBC_UAM_PATH);
-  
-  $subject = '['.$conf['gallery_title'].'] '.l10n_args(get_l10n_args('Ghost_reminder_of_%s', $username));     
-
-  if (isset($conf_nbc_UserAdvManager[19]) and $conf_nbc_UserAdvManager[19] <> '' and isset($conf_nbc_UserAdvManager[17]) and $conf_nbc_UserAdvManager[17] == 'true')
-  {
-    if (function_exists('get_user_language_desc'))
-    {
-      $infos1 = get_user_language_desc($conf_nbc_UserAdvManager[19])."\n\n";
-    }
-    else
-    {
-      $infos1 = l10n($conf_nbc_UserAdvManager[19])."\n\n";
-    }
-
-    resetlastvisit($user_id);
-  }
-
-  pwg_mail($email, array(
-    'subject' => $subject,
-    'content' => $infos1.get_absolute_root_url(),
-  ));
-
-/* ********************** */
-/* Email sending debugger */
-/* This is only to trace  */
-/* the send of emails for */
-/* debugging              */
-/* ********************** */
-//$content = get_user_language_desc($conf_nbc_UserAdvManager[19])."\n\n";  
-//MailLog($email,$subject,$content,$language);
-/* ********************** */
-
-/* Switching back to default language */
-  /* ****************************************************************** */
-  /* Delete this after new Piwigo release (bug in switch_lang function) */
-$user=$save_user ;
-  /* ****************************************************************** */
-switch_lang_back();
-}
-
-
-/* Function called from functions AddConfirmMail and ResetConfirmMail for validation key generation */
-function FindAvailableConfirmMailID()
-{
-  while (true)
-  {
-    $id = generate_key(16);
-    $query = "
-SELECT COUNT(*)
-  FROM ".USER_CONFIRM_MAIL_TABLE."
-WHERE id = '".$id."'
-;";
-    list($count) = mysql_fetch_row(pwg_query($query));
-
-    if ($count == 0)
-      return $id;
-  }
-}
-
-
-/* Function called from functions SendMail2User to process unvalidated users and generate validation key link */
-function AddConfirmMail($user_id, $email)
-{
-  global $conf;
-  $conf_nbc_UserAdvManager = isset($conf['nbc_UserAdvManager']) ? explode(";" , $conf['nbc_UserAdvManager']) : array();
-  $Confirm_Mail_ID = FindAvailableConfirmMailID();
-
-  list($dbnow) = mysql_fetch_row(pwg_query('SELECT NOW();'));
-  
-  if (isset($Confirm_Mail_ID))
-  {
-    $query = "
-SELECT status
-  FROM ".USER_INFOS_TABLE."
-WHERE user_id = '".$user_id."'
-;";
-    list($status) = mysql_fetch_row(pwg_query($query));
-    
-    $query = "
-INSERT INTO ".USER_CONFIRM_MAIL_TABLE."
-  (id, user_id, mail_address, status, date_check)
-VALUES
-  ('".$Confirm_Mail_ID."', '".$user_id."', '".$email."', '".$status."', null)
-;";
-    pwg_query($query);
-
-    $query = "
-DELETE FROM ".USER_GROUP_TABLE."
-WHERE user_id = '".$user_id."'
-  AND (
-    group_id = '".$conf_nbc_UserAdvManager[3]."'
-  OR 
-    group_id = '".$conf_nbc_UserAdvManager[4]."'
-  )
-;";
-    pwg_query($query);
-
-    if (!is_admin() and $conf_nbc_UserAdvManager[9] <> -1)
-    {
-      $query = "
-UPDATE ".USER_INFOS_TABLE."
-SET status = '".$conf_nbc_UserAdvManager[9]."'
-WHERE user_id = '".$user_id."'
-;";
-      pwg_query($query);
-    }
-
-    if ( $conf_nbc_UserAdvManager[3] <> -1 )
-    {
-      $query = "
-INSERT INTO ".USER_GROUP_TABLE."
-  (user_id, group_id)
-VALUES
-  ('".$user_id."', '".$conf_nbc_UserAdvManager[3]."')
-;";
-      pwg_query($query);
-    }
-    
-    return get_absolute_root_url().NBC_UAM_PATH.'ConfirmMail.php?key='.$Confirm_Mail_ID;
-  }
-}
-
-
-/* Function called from UserAdvManager_admin.php to reset validation key */
-function ResetConfirmMail($user_id)
-{
-  global $conf;
-  
-  $Confirm_Mail_ID = FindAvailableConfirmMailID();
-
-  list($dbnow) = mysql_fetch_row(pwg_query('SELECT NOW();'));
-  
-  if (isset($Confirm_Mail_ID))
-  { 
-    $query = "
-UPDATE ".USER_CONFIRM_MAIL_TABLE."
-SET id = '".$Confirm_Mail_ID."'
-WHERE user_id = '".$user_id."'
-;";
-    pwg_query($query);
-
-		$query = "
-UPDATE ".USER_INFOS_TABLE."
-SET registration_date = '".$dbnow."'
-WHERE user_id = '".$user_id."'
-;";
-		pwg_query($query);
-    
-    return get_absolute_root_url().NBC_UAM_PATH.'ConfirmMail.php?key='.$Confirm_Mail_ID;
-  }
-}
-
-
-/* Function called from function_UserAdvManager.inc.php to reset last visit date after sending a reminder */
-function resetlastvisit($user_id)
-{
-  global $conf;
-
-  list($dbnow) = mysql_fetch_row(pwg_query('SELECT NOW();'));
-
-  $query = "
-UPDATE ".USER_LASTVISIT_TABLE."
-SET lastvisit = '".$dbnow."', reminder = 'true'
-WHERE user_id = '".$user_id."'
-;";
-  pwg_query($query);
-}
-
-
-/* Function called from main.inc.php - Triggered on user deletion */
-function DeleteConfirmMail($user_id)
-{
-  $query = "
-DELETE FROM ".USER_CONFIRM_MAIL_TABLE."
-WHERE user_id = '".$user_id."'
-;";
-  pwg_query($query);
-}
-
-/* Function called from main.inc.php - Triggered on user deletion */
-function DeleteLastVisit($user_id)
-{
-  $query = "
-DELETE FROM ".USER_LASTVISIT_TABLE."
-WHERE user_id = '".$user_id."'
-;";
-  pwg_query($query);
-}
-
-/* Function called from ConfirmMail.php to verify validation key used by user according time limit */
-function VerifyConfirmMail($id)
-{
-  global $conf;
-
-  include_once(PHPWG_ROOT_PATH.'admin/include/functions.php');
-  
-  $conf_nbc_UserAdvManager = isset($conf['nbc_UserAdvManager']) ? explode(";" , $conf['nbc_UserAdvManager']) : array();
-  $conf_nbc_UserAdvManager_ConfirmMail = isset($conf['nbc_UserAdvManager_ConfirmMail']) ? explode(";" , $conf['nbc_UserAdvManager_ConfirmMail']) : array();
-
-  $query = "
-SELECT COUNT(*)
-FROM ".USER_CONFIRM_MAIL_TABLE."
-WHERE id = '".$id."'
-;";
-  list($count) = mysql_fetch_row(pwg_query($query));
-
-  if ($count == 1)
-  {
-    $query = "
-SELECT user_id, status, date_check
-FROM ".USER_CONFIRM_MAIL_TABLE."
-WHERE id = '".$id."'
-;";
-    $data = mysql_fetch_assoc(pwg_query($query));
-        
-    if (!empty($data) and isset($data['user_id']) and !isset($data['date_check']))
-    {
-      $query = "
-SELECT registration_date
-FROM ".USER_INFOS_TABLE."
-WHERE user_id = '".$data['user_id']."'
-;";
-      list($registration_date) = mysql_fetch_row(pwg_query($query));
-
-/*              Time limit process              */
-/* ****************** begin ******************* */  
-      if (!empty($registration_date))
-      {
-				// Verify Confirmmail with time limit ON
-				if (isset ($conf_nbc_UserAdvManager_ConfirmMail[1]))
-				{
-					// dates formating and compare
-					$today = date("d-m-Y"); // Get today's date
-					list($day, $month, $year) = explode('-', $today); // explode date of today						 
- 					$daytimestamp = mktime(0, 0, 0, $month, $day, $year);// Generate UNIX timestamp
-	  		
-	  			list($regdate, $regtime) = explode(' ', $registration_date); // Explode date and time from registration date
-					list($regyear, $regmonth, $regday) = explode('-', $regdate); // Explode date from registration date
-					$regtimestamp = mktime(0, 0, 0, $regmonth, $regday, $regyear);// Generate UNIX timestamp
-			
-					$deltasecs = $daytimestamp - $regtimestamp;// Compare the 2 UNIX timestamps	
-					$deltadays = floor($deltasecs / 86400);// Convert result from seconds to days
-
-					// Condition with the value set for time limit
-					if ($deltadays <= $conf_nbc_UserAdvManager_ConfirmMail[1]) // If Nb of days is less than the limit set
-					{
-						list($dbnow) = mysql_fetch_row(pwg_query('SELECT NOW();'));
-
-						$query = '
-UPDATE '.USER_CONFIRM_MAIL_TABLE.'
-SET date_check="'.$dbnow.'"
-WHERE id = "'.$id.'"
-;';
-						pwg_query($query);
-      
-						if ($conf_nbc_UserAdvManager[3] <> -1) // Delete user from unvalidated users group
-						{
-							$query = "
-DELETE FROM ".USER_GROUP_TABLE."
-WHERE user_id = '".$data['user_id']."'
-  AND group_id = '".$conf_nbc_UserAdvManager[3]."'
-;";
-							pwg_query($query);
-						}
-	    
-						if ($conf_nbc_UserAdvManager[4] <> -1) // Add user to validated users group 
-						{
-							$query = "
-INSERT INTO ".USER_GROUP_TABLE."
-  (user_id, group_id)
-VALUES
-  ('".$data['user_id']."', '".$conf_nbc_UserAdvManager[4]."')
-;";
-							pwg_query($query);
-						}
-
-						if (($conf_nbc_UserAdvManager[5] <> -1 or isset($data['status']))) // Change user's status
-						{
-							$query = "
-UPDATE ".USER_INFOS_TABLE."
-SET status = '".(isset($data['status']) ? $data['status'] : $conf_nbc_UserAdvManager[5])."'
-WHERE user_id = '".$data['user_id']."'
-;";
-							pwg_query($query);
-						}
-						// Refresh user's category cache
-						invalidate_user_cache();
-  
-						return true;
-					}
-					elseif ($deltadays > $conf_nbc_UserAdvManager_ConfirmMail[1]) // If timelimit exeeds
-					{
-						return false;
-					}
-				}
-				// Verify Confirmmail with time limit OFF
-				else
-				{
-					list($dbnow) = mysql_fetch_row(pwg_query('SELECT NOW();'));
-
-					$query = '
-UPDATE '.USER_CONFIRM_MAIL_TABLE.'
-SET date_check="'.$dbnow.'"
-WHERE id = "'.$id.'"
-;';
-					pwg_query($query);
-      
-					if ($conf_nbc_UserAdvManager[3] <> -1)
-					{
-						$query = "
-DELETE FROM ".USER_GROUP_TABLE."
-WHERE user_id = '".$data['user_id']."'
-AND group_id = '".$conf_nbc_UserAdvManager[3]."'
-;";
-						pwg_query($query);
-					}
-    
-					if ($conf_nbc_UserAdvManager[4] <> -1)
-					{
-						$query = "
-DELETE FROM ".USER_GROUP_TABLE."
-WHERE user_id = '".$data['user_id']."'
-AND group_id = '".$conf_nbc_UserAdvManager[4]."'
-;";
-						pwg_query($query);
-
-						$query = "
-INSERT INTO ".USER_GROUP_TABLE."
-  (user_id, group_id)
-VALUES
-  ('".$data['user_id']."', '".$conf_nbc_UserAdvManager[4]."')
-;";
-						pwg_query($query);
-					}
-
-					if (($conf_nbc_UserAdvManager[5] <> -1 or isset($data['status'])))
-					{
-						$query = "
-UPDATE ".USER_INFOS_TABLE."
-SET status = '".(isset($data['status']) ? $data['status'] : $conf_nbc_UserAdvManager[5])."'
-WHERE user_id = '".$data['user_id']."'
-;";
-						pwg_query($query);
-					}
-					// Refresh user's category cache
-					invalidate_user_cache();
-  
-					return true;
-				}
-			}
-		}
-	}
-  else
-    return false;
-}
-
-/* Function called from UserAdvManager_admin.php to force users validation by admin */
-function ForceValidation($id)
-{
-  global $conf;
-
-  include_once(PHPWG_ROOT_PATH.'admin/include/functions.php');
-  
-  $conf_nbc_UserAdvManager = isset($conf['nbc_UserAdvManager']) ? explode(";" , $conf['nbc_UserAdvManager']) : array();
-        
-  $query = "
-SELECT COUNT(*)
-  FROM ".USER_CONFIRM_MAIL_TABLE."
-WHERE user_id = '".$id."'
-;";
-  list($count) = mysql_fetch_row(pwg_query($query));
-
-  if ($count == 1)
-  {
-    $query = "
-SELECT user_id, status, date_check
-  FROM ".USER_CONFIRM_MAIL_TABLE."
-WHERE user_id = '".$id."'
-;";
-    $data = mysql_fetch_assoc(pwg_query($query));
-
-    if (!empty($data) and isset($data['user_id']) and !isset($data['date_check']))
-    {      
-			list($dbnow) = mysql_fetch_row(pwg_query('SELECT NOW();'));
-
-			$query = "
-UPDATE ".USER_CONFIRM_MAIL_TABLE."
-SET date_check='".$dbnow."'
-WHERE user_id = '".$data['user_id']."'
-;";
-			pwg_query($query);
-	     
-			if ($conf_nbc_UserAdvManager[3] <> -1)
-			{
-				$query = "
-DELETE FROM ".USER_GROUP_TABLE."
-WHERE user_id = '".$data['user_id']."'
-  AND group_id = '".$conf_nbc_UserAdvManager[3]."'
-;";
-				pwg_query($query);
-			}
-  
-			if ($conf_nbc_UserAdvManager[4] <> -1)
-			{
-				$query = "
-DELETE FROM ".USER_GROUP_TABLE."
-WHERE user_id = '".$data['user_id']."'
-  AND group_id = '".$conf_nbc_UserAdvManager[4]."'
-				;";
-				pwg_query($query);
-	
-				$query = "
-INSERT INTO ".USER_GROUP_TABLE."
-  (user_id, group_id)
-VALUES
-  ('".$data['user_id']."', '".$conf_nbc_UserAdvManager[4]."')
-;";
-				pwg_query($query);
-			}
-
-			if (($conf_nbc_UserAdvManager[5] <> -1 or isset($data['status'])))
-			{
-				$query = "
-UPDATE ".USER_INFOS_TABLE."
-SET status = '".(isset($data['status']) ? $data['status'] : $conf_nbc_UserAdvManager[5])."'
-WHERE user_id = '".$data['user_id']."'
-;";
-				pwg_query($query);
-			}
-			// Refresh user's category cache
-			invalidate_user_cache();
-			return true;
-		}
-	}
-}
-
-/* Function called from main.inc.php - Get username case insensitive */
-function NotSensibleSearchUsername($username)
-{
-  global $conf;
-  
-  if (isset($username))
-  {
-    $query = "
-SELECT ".$conf['user_fields']['username']."
-FROM ".USERS_TABLE."
-WHERE LOWER(".stripslashes($conf['user_fields']['username']).") = '".strtolower($username)."'
-;";
-    $users = mysql_num_rows(pwg_query($query));
-    if ($users > 0)
-    {
-      return true;
-    }
-    else
-    {
-      return false;
-    }
-  }
-}
-
-
-/* Function called from main.inc.php - Check if username matches forbidden caracters */
-function ValidateUsername($login)
-{
-  global $conf;
-
-  $conf_nbc_UserAdvManager = isset($conf['nbc_UserAdvManager']) ? explode(";" , $conf['nbc_UserAdvManager']) : array();
-
-  if (isset($login) and isset($conf_nbc_UserAdvManager[8]) and $conf_nbc_UserAdvManager[8] <> '')
-  {
-    $conf_nbc_CharExclusion = preg_split("/,/",$conf_nbc_UserAdvManager[8]);
-    for ($i = 0 ; $i < count($conf_nbc_CharExclusion) ; $i++)
-    {
-      $pattern = '/'.$conf_nbc_CharExclusion[$i].'/i';
-      if (preg_match($pattern, $login))
-      {
-        return true;
-      }
-    }
-  }
-  else
-  {
-    return false;
-  }
-}
-
-
-/* Function called from main.inc.php - Check if user's email is in excluded email providers list */
-/* Doesn't work on call - Must be copied in main.inc.php to work */
-function ValidateEmailProvider($email)
-{
-  global $conf;
-
-	$conf_nbc_UserAdvManager = isset($conf['nbc_UserAdvManager']) ? explode(";" , $conf['nbc_UserAdvManager']) : array();
-  
-	if (isset($email) and isset($conf_nbc_UserAdvManager[13]) and $conf_nbc_UserAdvManager[13] <> '')
-	{
-		//$ncsemail = strtolower($email);
-		$conf_nbc_MailExclusion = preg_split("/[\s,]+/",$conf_nbc_UserAdvManager[13]);
-		for ($i = 0 ; $i < count($conf_nbc_MailExclusion) ; $i++)
-		{
-			$pattern = '/'.$conf_nbc_MailExclusion[$i].'/i';
-			if (preg_match($pattern, $email))
-      {
-        		return true;
-      }
-		}
-	}
-  else
-  {
-    return false;
-  }
-}
-
-
-/* Function called from UserAdvManager.php - Get unvalidated users according time limit */
-function get_unvalid_user_list()
-{
-	global $conf, $page;
-          
-	/* Get ConfirmMail configuration */
-	$conf_nbc_UserAdvManager_ConfirmMail = isset($conf['nbc_UserAdvManager_ConfirmMail']) ? explode(";" , $conf['nbc_UserAdvManager_ConfirmMail']) : array();
-          
-	/* Get UserAdvManager configuration */
-	$conf_nbc_UserAdvManager = isset($conf['nbc_UserAdvManager']) ? explode(";" , $conf['nbc_UserAdvManager']) : array();  
-  
-  $users = array();
-
-	/* search users depending expiration date */
-  $query = '
-SELECT DISTINCT u.'.$conf['user_fields']['id'].' AS id,
-                u.'.$conf['user_fields']['username'].' AS username,
-                u.'.$conf['user_fields']['email'].' AS email,
-                ui.status,
-                ui.adviser,
-                ui.enabled_high,
-                ui.level,
-                ui.registration_date
-FROM '.USERS_TABLE.' AS u
-  INNER JOIN '.USER_INFOS_TABLE.' AS ui
-    ON u.'.$conf['user_fields']['id'].' = ui.user_id
-  LEFT JOIN '.USER_GROUP_TABLE.' AS ug
-    ON u.'.$conf['user_fields']['id'].' = ug.user_id
-WHERE u.'.$conf['user_fields']['id'].' >= 3
-  AND (TO_DAYS(NOW()) - TO_DAYS(ui.registration_date) >= "'.$conf_nbc_UserAdvManager_ConfirmMail[1].'"
-  OR TO_DAYS(NOW()) - TO_DAYS(ui.registration_date) < "'.$conf_nbc_UserAdvManager_ConfirmMail[1].'")';
-
-	if ($conf_nbc_UserAdvManager[3] <> '-1' and $conf_nbc_UserAdvManager[9] == '-1')
-  {
-    $query.= '
-  AND ug.group_id = '.$conf_nbc_UserAdvManager[3];
-  }
-  if ($conf_nbc_UserAdvManager[3] == '-1' and $conf_nbc_UserAdvManager[9] <> '-1')
-  {
-    $query.= '
-  AND ui.status = \''.$conf_nbc_UserAdvManager[9]."'";
-  }
-  if ($conf_nbc_UserAdvManager[3] <> '-1' and $conf_nbc_UserAdvManager[9] <> '-1')
-  {
-    $query.= '
-  AND ug.group_id = \''.$conf_nbc_UserAdvManager[3]."'";
-  }
-  $query.= '
-ORDER BY id ASC
-;';
-
-	$result = pwg_query($query);
-      
-  while ($row = mysql_fetch_assoc($result))
-  {
-  	$user = $row;
-    $user['groups'] = array();
-
-    array_push($users, $user);
-	}
-
-	/* add group lists */
-  $user_ids = array();
-  foreach ($users as $i => $user)
-  {
-  	$user_ids[$i] = $user['id'];
-	}
-	
-	$user_nums = array_flip($user_ids);
-
-  if (count($user_ids) > 0)
-  {
-  	$query = '
-SELECT user_id, group_id
-  FROM '.USER_GROUP_TABLE.'
-WHERE user_id IN ('.implode(',', $user_ids).')
-;';
-        
-		$result = pwg_query($query);
-        
-    while ($row = mysql_fetch_assoc($result))
-    {
-    	array_push(
-      	$users[$user_nums[$row['user_id']]]['groups'],
-        $row['group_id']
-			);
-		}
-	}
-
-	return $users;
-}
-
-
-/* Function called from UserAdvManager.php - Get ghost users */
-function get_ghost_user_list()
-{
-	global $conf, $page;
-          
-	/* Get UserAdvManager configuration */
-	$conf_nbc_UserAdvManager = isset($conf['nbc_UserAdvManager']) ? explode(";" , $conf['nbc_UserAdvManager']) : array();  
-  
-  $users = array();
-
-	/* search users depending expiration date */
-  $query = '
-SELECT DISTINCT u.'.$conf['user_fields']['id'].' AS id,
-                u.'.$conf['user_fields']['username'].' AS username,
-                u.'.$conf['user_fields']['email'].' AS email,
-                lv.lastvisit,
-                lv.reminder
-FROM '.USERS_TABLE.' AS u
-  INNER JOIN '.USER_LASTVISIT_TABLE.' AS lv
-    ON u.'.$conf['user_fields']['id'].' = lv.user_id
-WHERE (TO_DAYS(NOW()) - TO_DAYS(lv.lastvisit) >= "'.$conf_nbc_UserAdvManager[18].'")
-ORDER BY id ASC;';
-
-	$result = pwg_query($query);
-      
-  while ($row = mysql_fetch_assoc($result))
-  {
-  	$user = $row;
-    $user['groups'] = array();
-
-    array_push($users, $user);
-	}
-
-	/* add group lists */
-  $user_ids = array();
-  foreach ($users as $i => $user)
-  {
-  	$user_ids[$i] = $user['id'];
-	}
-
-	return $users;
-}
-
-
-/* Function called from UserAdvManager.php - Get all users to display the number of days since their last visit */
-function get_user_list()
-{
-	global $conf, $page;
-  
-  $users = array();
-
-	/* search users depending expiration date */
-  $query = '
-SELECT DISTINCT u.'.$conf['user_fields']['id'].' AS id,
-                u.'.$conf['user_fields']['username'].' AS username,
-                u.'.$conf['user_fields']['email'].' AS email,
-                ug.lastvisit
-FROM '.USERS_TABLE.' AS u
-  INNER JOIN '.USER_LASTVISIT_TABLE.' AS ug
-    ON u.'.$conf['user_fields']['id'].' = ug.user_id
-WHERE u.'.$conf['user_fields']['id'].' >= 3
-ORDER BY lastvisit DESC
-;';
-
-	$result = pwg_query($query);
-      
-  while ($row = mysql_fetch_assoc($result))
-  {
-  	$user = $row;
-    $user['groups'] = array();
-
-    array_push($users, $user);
-	}
-
-	/* add group lists */
-  $user_ids = array();
-  foreach ($users as $i => $user)
-  {
-  	$user_ids[$i] = $user['id'];
-	}
-
-	return $users;
-}
-
-
-/* Function called from UserAdvManager.php - to determine who is expired or not and giving a different display color */
-function expiration($id)
-{
-	global $conf, $page;
-          
-	/* Get ConfirmMail configuration */
-	$conf_nbc_UserAdvManager_ConfirmMail = isset($conf['nbc_UserAdvManager_ConfirmMail']) ? explode(";" , $conf['nbc_UserAdvManager_ConfirmMail']) : array();
-          
-	/* Get UserAdvManager configuration */
-	$conf_nbc_UserAdvManager = isset($conf['nbc_UserAdvManager']) ? explode(";" , $conf['nbc_UserAdvManager']) : array(); 
-	
-	$query = "
-SELECT registration_date
-  FROM ".USER_INFOS_TABLE."
-WHERE user_id = '".$id."'
-;";
-	list($registration_date) = mysql_fetch_row(pwg_query($query));
-
-/*              Time limit process              */
-/* ****************** begin ******************* */  
-	if (!empty($registration_date))
-  {
-		// dates formating and compare
-		$today = date("d-m-Y"); // Get today's date
-		list($day, $month, $year) = explode('-', $today); // explode date of today						 
- 		$daytimestamp = mktime(0, 0, 0, $month, $day, $year);// Generate UNIX timestamp
-	  	
-	  list($regdate, $regtime) = explode(' ', $registration_date); // Explode date and time from registration date
-		list($regyear, $regmonth, $regday) = explode('-', $regdate); // Explode date from registration date
-		$regtimestamp = mktime(0, 0, 0, $regmonth, $regday, $regyear);// Generate UNIX timestamp
-			
-		$deltasecs = $daytimestamp - $regtimestamp;// Compare the 2 UNIX timestamps	
-		$deltadays = floor($deltasecs / 86400);// Convert result from seconds to days
-
-		// Condition with the value set for time limit
-		if ($deltadays <= $conf_nbc_UserAdvManager_ConfirmMail[1]) // If Nb of days is less than the limit set
-		{
-			return false;
-		}
-		else
-		{
-			return True;
-		}
-	}
-}
-
-
-/**
- * Returns a password's score for password complexity check
- *
- * @param password filled by user
- * 
- * Thanx to MathieuGut from http://m-gut.developpez.com
- */
-function testpassword($password) // Le mot de passe passé en paramètre - $password given by user
-{
-
-  // Initialisation des variables - Variables initiation
-  $points = 0;
-  $point_lowercase = 0;
-  $point_uppercase = 0;
-  $point_numbers = 0;
-  $point_characters = 0;
-
-  // On récupère la longueur du mot de passe - Getting password lengh	
-  $length = strlen($password);
-  
-  // On fait une boucle pour lire chaque lettre - Loop to read password characters
-  for($i = 0; $i < $length; $i++)
-  {
-    // On sélectionne une à une chaque lettre - Select each letters
-    // $i étant à 0 lors du premier passage de la boucle - $i is 0 at first turn
-    $letters = $password[$i];
-
-    if ($letters>='a' && $letters<='z')
-    {
-      // On ajoute 1 point pour une minuscule - Adding 1 point to score for a lowercase
-		  $points = $points + 1;
-
-		  // On rajoute le bonus pour une minuscule - Adding bonus points for lowercase
-		  $point_lowercase = 1;
-    }
-    else if ($letters>='A' && $letters <='Z')
-    {
-      // On ajoute 2 points pour une majuscule - Adding 2 points to score for uppercase
-      $points = $points + 2;
-		
-      // On rajoute le bonus pour une majuscule - Adding bonus points for uppercase
-      $point_uppercase = 2;
-    }
-    else if ($letters>='0' && $letters<='9')
-    {
-      // On ajoute 3 points pour un chiffre - Adding 3 points to score for numbers
-      $points = $points + 3;
-		
-      // On rajoute le bonus pour un chiffre - Adding bonus points for numbers
-      $point_numbers = 3;
-    }
-    else
-    {
-      // On ajoute 5 points pour un caractère autre - Adding 5 points to score for special characters
-      $points = $points + 5;
-		
-      // On rajoute le bonus pour un caractère autre - Adding bonus points for special characters
-      $point_characters = 5;
-    }
-  }
-
-  // Calcul du coefficient points/longueur - calculating the coefficient points/length
-  $step1 = $points / $length;
-
-  // Calcul du coefficient de la diversité des types de caractères... - Calculation of the diversity of character types...
-  $step2 = $point_lowercase + $point_uppercase + $point_numbers + $point_characters;
-
-  // Multiplication du coefficient de diversité avec celui de la longueur - Multiplying the coefficient of diversity with that of the length
-  $score = $step1 * $step2;
-
-  // Multiplication du résultat par la longueur de la chaîne - Multiplying the result by the length of the chain
-  $finalscore = $score * $length;
-
-  return $finalscore;
-}
-
-/* Function called from maintain.inc.php - to check if database upgrade is needed */
-function table_exist($table)
-{
-  $query = 'DESC '.$table.';';
-  return (bool)($res=mysql_query($query));
-}
-
-/* Email sending debugger function */
-function MailLog  ($to, $subject, $content, $language)
-{
-   $fo=fopen (NBC_UAM_PATH.'admin/maillog.txt','a') ;
-   fwrite($fo,"======================\n") ;
-   fwrite($fo,'le ' . date('D, d M Y H:i:s') . "\r\n");
-   fwrite($fo,$to . "\n" . $subject . "\r\n") ;
-   fwrite($fo, "\n" . $content . "\r\n") ;
-   fwrite($fo, 'Langue : '."\n" . $language . "\r\n") ;
-   fclose($fo) ;
- //return mail ($to,$subject) ;
-}
-
-
-/* Function called from UserAdvManager_admin.php to get the plugin version */
-function PluginVer($dir)
-{
-  $path = $dir;
-
-  $plg_data = implode( '', file($path.'main.inc.php') );
-  if ( preg_match("|Plugin Name: (.*)|", $plg_data, $val) )
-  {
-    $plugin['name'] = trim( $val[1] );
-  }
-  if (preg_match("|Version: (.*)|", $plg_data, $val))
-  {
-    $plugin['version'] = trim($val[1]);
-  }
-  if ( preg_match("|Plugin URI: (.*)|", $plg_data, $val) )
-  {
-    $plugin['uri'] = trim($val[1]);
-  }
-  if ($desc = load_language('description.txt', $path.'/', array('return' => true)))
-  {
-    $plugin['description'] = trim($desc);
-  }
-  elseif ( preg_match("|Description: (.*)|", $plg_data, $val) )
-  {
-    $plugin['description'] = trim($val[1]);
-  }
-  if ( preg_match("|Author: (.*)|", $plg_data, $val) )
-  {
-    $plugin['author'] = trim($val[1]);
-  }
-  if ( preg_match("|Author URI: (.*)|", $plg_data, $val) )
-  {
-    $plugin['author uri'] = trim($val[1]);
-  }
-  if (!empty($plugin['uri']) and strpos($plugin['uri'] , 'extension_view.php?eid='))
-  {
-    list( , $extension) = explode('extension_view.php?eid=', $plugin['uri']);
-    if (is_numeric($extension)) $plugin['extension'] = $extension;
-  }
-// IMPORTANT SECURITY !
-  $plugin = array_map('htmlspecialchars', $plugin);
-
-  return $plugin ;
-}
-
-/* Funtion called in maintain.inc.php to clean obsolete files */
-function clean_obsolete_files($obsolete_file_list)
-{
-  if (!file_exists(NBC_UAM_PATH.$obsolete_file_list))
-  {
-    return TRUE;
-  }
-  $obsolete = file(NBC_UAM_PATH.$obsolete_file_list);
-  array_push($obsolete, $obsolete_file_list);
-  return clean_obsolete_list($obsolete);
-}
-
-function clean_obsolete_list($file_list = array(), &$errors = array())
-{
-  if (!function_exists('unlink'))
-  {
-      // No unlink available...
-      array_push($errors, l10n('uam_no_unlink'));
-      return FALSE;
-  }
-  $success = TRUE;
-  foreach ($file_list as $file)
-  {
-    $file = NBC_UAM_PATH . $file;
-    if (file_exists($file))
-    {
-      // Remove obsolete file
-      $success &= unlink($file);
-    }
-  }
-  if (!$success)
-  {
-      array_push($errors, l10n('uam_unlink_errors'));
-  }
-  return $success;
-}
-?>
Index: /extensions/NBC_UserAdvManager/branches/2.14/language/de_DE/plugin.lang.php
===================================================================
--- /extensions/NBC_UserAdvManager/branches/2.14/language/de_DE/plugin.lang.php	(revision 5086)
+++ /extensions/NBC_UserAdvManager/branches/2.14/language/de_DE/plugin.lang.php	(revision 5087)
@@ -95,10 +95,4 @@
 $lang['GT_Reset'] = 'Geist Tracker neu stellen';
 // --------- End: New or revised $lang ---- from version 2.12.2
-
-
-// --------- Starting below: New or revised $lang ---- from version 2.12.7
-/* Errors and Warnings */
-$lang['mail_text_error'] = '<b>Warnung!</b> - Semikolon (;) sind nicht im addtionnal E-Mail-Text erlaubt. Diese Zeichen wurden automatisch durch einen Punkt ersetzt (.). Für Informationen, ist der geänderte Text (n) (sind) in Rot in das entsprechende Feld (s dargestellt). Sie bitte, ob es (sie) aus.';
-// --------- End: New or revised $lang ---- from version 2.12.7
 
 
@@ -180,60 +174,4 @@
 $lang['UAM_No_Comment_Anonymous_false'] = ' Deaktivieren (Standard)';
 
-$lang['UAM_Tips1'] = 'Registrations with email validation and warning message on the Piwigo\'s homepage';
-$lang['UAM_Tips1_txt'] = '
-          <ul>
-            <li>
-Ingredients needed:<br>
-- 2 Piwigo\'s user groups at least: &quot;Waiting&quot; for visitors awaiting validation and &quot;Validated&quot; for visitors who have validated their registration<br>
-- NBC_UAM plugin<br>
-- PWG Stuffs plugin<br>
-- Possibly Extended Description plugin (to support multi-lingual)
-            </li>
-<br><br>
-            <li>
-La recette :<br>
-            <ul>
-              <li>
-Preamble: It\'s located in the case of a private gallery or semi-private (ie only a small part of categories is available by Guests and registered can see everything). We consider that the required plugins are installed (does it remind you?).<br><br>
-              </li>
-              <li>
-Attribute group &quot;Waiting&quot; no permission on private categories<br><br>
-              </li>
-              <li>
-Attribute group &quot;Validated&quot; all permissions on the private categories<br><br>
-              </li>
-              <li>
-In NBC_UAM plugin:
-              <ol>
-                <li>Enable registration confirmation</li>
-                <li>In the field below &quot;Customizing the confirmation email&quot;, enter text for additional explanation will be attached to email registration confirmation. Possibly, it is possible to use markup language implemented by the plugin Extended Description</li>
-                <li>In the &quot;Group for users who have not validated their registration&quot;, select group &quot;Waiting&quot;</li>
-                <li>In the &quot;Group for users who have validated their registration&quot;, select group &quot;Validated&quot;</li>
-                <li>Save the plugin configuration</li>
-              </ol>
-              </li>
-<br><br>
-              <li>
-In PWG Stuff plugin:
-              <ol>
-                <li>Add a new module personal block like an edito</li>
-                <li>In the module\'s configuration, in addition to its title (eg &quot;Registration pending validation&quot;) and its description, check only the authorized group &quot;Waiting&quot;</li>
-                <li>In the content module, enter the message text which sought information will be visible as invalid user. Again, ability to manage multi-language through Extended Description\'s tags</li>
-                <li>Validate module</li>
-                <li>Define its place on the main page of the gallery</li>
-              </ol>
-              </li>
-            </ul>
-            </li>
-<br><br>
-            <li>
-              The result:<br>
-              - A &quot;Guest&quot; arrives on the gallery, he sees nothing other than the public categories and no information message.<br>
-              - He registers. This generates an email validation and automatic membership to the group &quot;Waiting&quot;.<br>
-              - At the end, he\'s redirected to the gallery homepage and a message indicating the waiting of validate its registration<br><br>
-              He received his email validation, following the link provided for that purpose in the mail, releases the group &quot;Waiting&quot; and takes place in the group &quot;Validated&quot;. By clicking the &quot;Home&quot;, then he\'s connected to the gallery with full access to private groups and without the information message.
-            </li>
-          </ul>';
-
 $lang['Tab_UserManager'] = 'Tracking Validierungen';
 
@@ -269,4 +207,42 @@
 $lang['UAM_Admin_ConfMail_true'] = ' Aktivieren';
 $lang['UAM_Admin_ConfMail_false'] = '  Deaktivieren (Standard)';
+$lang['UAM_Tips1'] = 'Anmeldungen mit E-Mail Validierung und Warnmeldung auf der Piwigo\'s Homepage';
+$lang['UAM_Tips1_txt'] = '
+          <ul>
+            <li>
+            Tore:<br>
+            - Bei seiner Ankunft in der Galerie: Unterrichtung der Besucher, dass er sich registrieren um Zugang private Fotos<br>
+            - Bei der Registrierung: Erzeugen Sie eine E-Mail Validierung mit direkter Verbindung, sie dem neuen Anwender seiner Nicht-Validierung und Integration von ihm mit der Gruppe "Warten"<br>
+            - Bei der Validierung: Switch automatisch zur Gruppe "Warten" der Gruppe "Validiert", die den Zugang zu privaten Gruppen bietet<br><br>
+            <span style="font-style:italic">Warnung: Im Standard-Betrieb, der "Gast" sieht nur den öffentlichen Kategorien, ohne Angaben Nachricht.</span>
+            </li><br><br>
+            <li>
+Voraussetzung:<br>
+- Eine Galerie mit allen oder einigen privaten Kategorien, sichtbar nur durch registrierte Benutzer<br>
+- Mindestens 2 der folgenden Piwigo Nutzergruppen: "Warten", ohne die Erlaubnis der privaten Gruppen und "Validiert" mit allen Berechtigungen für den privaten Kategorien<br>
+- NBC_UAM plugin<br>
+- PWG Stuffs plugin, für das Hinzufügen eines Moduls Art "Personal Block"<br>
+- Optional können Sie das Plugin Extended Description Multi-Sprachen<br>
+            </li><br><br>
+              <li>
+Etappen:<br><br>
+A. In plugin NBC_UAM:
+              <ol>
+                <li>Aktivieren Sie Anmeldebestätigung</li>
+                <li>Geben Sie den Text für weitere Erklärung, die angebracht werden, um Anmeldebestätigung mail sendet. Wenn das Plugin Extended Description aktiviert ist, können die Sprach-Tags verwendet werden</li>
+                <li>Wählen Sie das "Warten"-Gruppe unter "Für Anwender, die noch nicht validiert ihrer Eintragung"</li>
+                <li>Wählen Sie das "Validiert"-Gruppe unter "Für Anwender, die ihre Anmeldung bestätigt haben"</li>
+                <li>Speichern Sie das Plugin-Konfiguration</li>
+              </ol>
+              </li><br>
+B. In plugin PWG Stuffs :
+              <ol>
+                <li>Fügen Sie ein neues Modul Typ "Personal-Block: Zeigt einen Block Personal (z. B. eine redaktionelle)"</li>
+                <li>Konfigurieren Sie das Modul unter Angabe der Titel (zB "Anmeldung bis Validierung") und seine Beschreibung, und aktivieren Sie nur "Warten" in der Liste der Gruppen erlaubt</li>
+                <li>Kompletten Inhalt des Moduls mit der Meldung Informationen, die den Benutzern angezeigt werden nicht validiert. Als NBC_UAM kann Markup-Sprachen verwendet werden, wenn das Plugin Extended Description aktiviert ist</li>
+                <li>Check "Display das Modul auf der Homepage der Website"</li>
+                <li>Überprüfen Sie die Konfiguration des Moduls</li>
+              </ol>
+          </ul>';
 // --------- End: New or revised $lang ---- from version 2.14.0
 ?>
Index: /extensions/NBC_UserAdvManager/branches/2.14/language/en_UK/plugin.lang.php
===================================================================
--- /extensions/NBC_UserAdvManager/branches/2.14/language/en_UK/plugin.lang.php	(revision 5086)
+++ /extensions/NBC_UserAdvManager/branches/2.14/language/en_UK/plugin.lang.php	(revision 5087)
@@ -95,10 +95,4 @@
 $lang['GT_Reset'] = 'Reset Ghost Tracker';
 // --------- End: New or revised $lang ---- from version 2.12.2
-
-
-// --------- Starting below: New or revised $lang ---- from version 2.12.7
-/* Errors and Warnings */
-$lang['mail_text_error'] = '<b>Warning!</b> - Semicolons (;) are not allowed in addtionnal email text. This Character have been automatically replaced by a dot (.). For information, the amended text(s) is(are) shown in red in the corresponding field(s). Please, check it(them) out.';
-// --------- End: New or revised $lang ---- from version 2.12.7
 
 
@@ -181,58 +175,4 @@
 
 $lang['UAM_Tips1'] = 'Registrations with email validation and warning message on the Piwigo\'s homepage';
-$lang['UAM_Tips1_txt'] = '
-          <ul>
-            <li>
-Ingredients needed:<br>
-- 2 Piwigo\'s user groups at least: &quot;Waiting&quot; for visitors awaiting validation and &quot;Validated&quot; for visitors who have validated their registration<br>
-- NBC_UAM plugin<br>
-- PWG Stuffs plugin<br>
-- Possibly Extended Description plugin (to support multi-lingual)
-            </li>
-<br><br>
-            <li>
-La recette :<br>
-            <ul>
-              <li>
-Preamble: It\'s located in the case of a private gallery or semi-private (ie only a small part of categories is available by Guests and registered can see everything). We consider that the required plugins are installed (does it remind you?).<br><br>
-              </li>
-              <li>
-Attribute group &quot;Waiting&quot; no permission on private categories<br><br>
-              </li>
-              <li>
-Attribute group &quot;Validated&quot; all permissions on the private categories<br><br>
-              </li>
-              <li>
-In NBC_UAM plugin:
-              <ol>
-                <li>Enable registration confirmation</li>
-                <li>In the field below &quot;Customizing the confirmation email&quot;, enter text for additional explanation will be attached to email registration confirmation. Possibly, it is possible to use markup language implemented by the plugin Extended Description</li>
-                <li>In the &quot;Group for users who have not validated their registration&quot;, select group &quot;Waiting&quot;</li>
-                <li>In the &quot;Group for users who have validated their registration&quot;, select group &quot;Validated&quot;</li>
-                <li>Save the plugin configuration</li>
-              </ol>
-              </li>
-<br><br>
-              <li>
-In PWG Stuff plugin:
-              <ol>
-                <li>Add a new module personal block like an edito</li>
-                <li>In the module\'s configuration, in addition to its title (eg &quot;Registration pending validation&quot;) and its description, check only the authorized group &quot;Waiting&quot;</li>
-                <li>In the content module, enter the message text which sought information will be visible as invalid user. Again, ability to manage multi-language through Extended Description\'s tags</li>
-                <li>Validate module</li>
-                <li>Define its place on the main page of the gallery</li>
-              </ol>
-              </li>
-            </ul>
-            </li>
-<br><br>
-            <li>
-              The result:<br>
-              - A "Guest" arrives on the gallery, he sees nothing other than the public categories and no information message.<br>
-              - He registers. This generates an email validation and automatic membership to the group &quot;Waiting&quot;.<br>
-              - At the end, he\'s redirected to the gallery homepage and a message indicating the waiting of validate its registration<br><br>
-              He received his email validation, following the link provided for that purpose in the mail, releases the group &quot;Waiting&quot; and takes place in the group &quot;Validated&quot;. By clicking the &quot;Home&quot;, then he\'s connected to the gallery with full access to private groups and without the information message.
-            </li>
-          </ul>';
 
 $lang['Tab_UserManager'] = 'Tracking validations';
@@ -269,4 +209,41 @@
 $lang['UAM_Admin_ConfMail_true'] = ' Enable';
 $lang['UAM_Admin_ConfMail_false'] = ' Disable (default)';
+$lang['UAM_Tips1_txt'] = '
+          <ul>
+            <li>
+            Goals:<br>
+            - On his arrival at the gallery: To inform the visitor that he has to register to access private photos<br>
+            - At registration: Generate an email validation with direct link, inform the new user of its non-validation and integrate him to the group "Waiting"<br>
+            - At validation: Switch automatically group "Waiting" to group "Validated", which provides access to private categories<br><br>
+            <span style="font-style:italic">Recall: In standard operation, the "Guest" only sees the public categories, without information message.</span>
+            </li><br><br>
+            <li>
+Prerequisite:<br>
+- A gallery with all or some private categories, visible only by registered users<br>
+- At least 2 following Piwigo\'s users groups: "Waiting," without permission on private categories, and "Validated" with all the permissions on the private categories<br>
+- NBC_UAM plugin<br>
+- PWG Stuffs plugin, for adding a module type "Personal Block"<br>
+- Optionally, the plugin Extended Description to support multi-languages<br>
+            </li><br><br>
+              <li>
+Stages:<br><br>
+A. In plugin NBC_UAM:
+              <ol>
+                <li>Enable registration confirmation</li>
+                <li>Enter text for additional explanation which will be attached to mail registration confirmation. If the plugin Extended Description is activated, the language tags can be used</li>
+                <li>Select the "Waiting" group under "For users who have not validated their registration"</li>
+                <li>Select the "Validated" group under "For users who have validated their registration"</li>
+                <li>Save the plugin configuration</li>
+              </ol>
+              </li><br>
+B. In plugin PWG Stuffs :
+              <ol>
+                <li>Add a new module type "Personal block: Shows a block staff (eg an editorial)"</li>
+                <li>Configure the module, indicating the title (eg "Registration pending validation") and its description, and only check "Waiting" in the list of groups allowed</li>
+                <li>Complete content of the module with the message information to be displayed to users not validated. As NBC_UAM, languages markup may be used if the plugin is enabled Extended Description</li>
+                <li>Check "Display the module on the homepage of the site"</li>
+                <li>Validate the configuration of the module</li>
+              </ol>
+          </ul>';
 // --------- End: New or revised $lang ---- from version 2.14.0
 ?>
Index: /extensions/NBC_UserAdvManager/branches/2.14/language/es_ES/plugin.lang.php
===================================================================
--- /extensions/NBC_UserAdvManager/branches/2.14/language/es_ES/plugin.lang.php	(revision 5086)
+++ /extensions/NBC_UserAdvManager/branches/2.14/language/es_ES/plugin.lang.php	(revision 5087)
@@ -95,10 +95,4 @@
 $lang['GT_Reset'] = 'Perdí Ghost Tracker';
 // --------- End: New or revised $lang ---- from version 2.12.2
-
-
-// --------- Starting below: New or revised $lang ---- from version 2.12.7
-/* Errors and Warnings */
-$lang['mail_text_error'] = '<b>¡Advertencia!</b> - Punto y coma (;) no están permitidos en el texto del mensaje addtionnal. Este carácter se han sustituido automáticamente por un punto (.). Para más información, el texto modificado(s) es(son) se muestra en rojo en el campo correspondiente(s). Por favor, compruebe que (ellos) hacia fuera.';
-// --------- End: New or revised $lang ---- from version 2.12.7
 
 
@@ -180,59 +174,5 @@
 $lang['UAM_No_Comment_Anonymous_false'] = ' Desactivar (por defecto)';
 
-$lang['UAM_Tips1'] = 'Con la validación de los registros de correo electrónico y mensaje de advertencia en la página principal de Piwigo (ingles)';
-$lang['UAM_Tips1_txt'] = '
-          <ul>
-            <li>
-Ingredients needed:<br>
-- 2 Piwigo\'s user groups at least: &quot;Waiting&quot; for visitors awaiting validation and &quot;Validated&quot; for visitors who have validated their registration<br>
-- NBC_UAM plugin<br>
-- PWG Stuffs plugin<br>
-- Possibly Extended Description plugin (to support multi-lingual)
-            </li>
-<br><br>
-            <li>
-La recette :<br>
-            <ul>
-              <li>
-Preamble: It\'s located in the case of a private gallery or semi-private (ie only a small part of categories is available by Guests and registered can see everything). We consider that the required plugins are installed (does it remind you?).<br><br>
-              </li>
-              <li>
-Attribute group &quot;Waiting&quot; no permission on private categories<br><br>
-              </li>
-              <li>
-Attribute group &quot;Validated&quot; all permissions on the private categories<br><br>
-              </li>
-              <li>
-In NBC_UAM plugin:
-              <ol>
-                <li>Enable registration confirmation</li>
-                <li>In the field below &quot;Customizing the confirmation email&quot;, enter text for additional explanation will be attached to email registration confirmation. Possibly, it is possible to use markup language implemented by the plugin Extended Description</li>
-                <li>In the &quot;Group for users who have not validated their registration&quot;, select group &quot;Waiting&quot;</li>
-                <li>In the &quot;Group for users who have validated their registration&quot;, select group &quot;Validated&quot;</li>
-                <li>Save the plugin configuration</li>
-              </ol>
-              </li>
-<br><br>
-              <li>
-In PWG Stuff plugin:
-              <ol>
-                <li>Add a new module personal block like an edito</li>
-                <li>In the module\'s configuration, in addition to its title (eg &quot;Registration pending validation&quot;) and its description, check only the authorized group &quot;Waiting&quot;</li>
-                <li>In the content module, enter the message text which sought information will be visible as invalid user. Again, ability to manage multi-language through Extended Description\'s tags</li>
-                <li>Validate module</li>
-                <li>Define its place on the main page of the gallery</li>
-              </ol>
-              </li>
-            </ul>
-            </li>
-<br><br>
-            <li>
-              The result:<br>
-              - A "Guest" arrives on the gallery, he sees nothing other than the public categories and no information message.<br>
-              - He registers. This generates an email validation and automatic membership to the group &quot;Waiting&quot;.<br>
-              - At the end, he\'s redirected to the gallery homepage and a message indicating the waiting of validate its registration<br><br>
-              He received his email validation, following the link provided for that purpose in the mail, releases the group &quot;Waiting&quot; and takes place in the group &quot;Validated&quot;. By clicking the &quot;Home&quot;, then he\'s connected to the gallery with full access to private groups and without the information message.
-            </li>
-          </ul>';
+$lang['UAM_Tips1'] = 'Con la validación de los registros de correo electrónico y mensaje de advertencia en la página principal de Piwigo';
 
 $lang['Tab_UserManager'] = 'Seguimiento de las Validaciones';
@@ -269,4 +209,41 @@
 $lang['UAM_Admin_ConfMail_true'] = ' Activar';
 $lang['UAM_Admin_ConfMail_false'] = ' Desactivar (por defecto)';
+$lang['UAM_Tips1_txt'] = '
+          <ul>
+            <li>
+            Goles:<br>
+            - A su llegada a la galería: Para informar al visitante de que tiene que registrarse para acceder a fotos privadas<br>
+            - En el registro: Generar una validación de correo electrónico con enlace directo, informar al nuevo usuario de su falta de validación y de integrarlo al grupo "Espera"<br>
+            - En la validación: cambiar automáticamente de grupo "Espera" al grupo "Validado", que proporciona acceso a categorías particulares<br><br>
+            <span style="font-style:italic">Recuerde: En funcionamiento normal, el "Invitado" sólo ve las categorías de público, sin mensaje de información.</span>
+            </li><br><br>
+            <li>
+Requisito previo:<br>
+- Una galería con todas o algunas categorías privado, visible sólo por los usuarios registrados<br>
+- Al menos 2 siguientes Piwigo grupos de usuarios: "Espera," sin permiso en las categorías de privados, y "Validado" con todos los permisos en las categorías de privados<br>
+- NBC_UAM plugin<br>
+- PWG Stuffs plugin, para agregar un tipo de módulo "Personal Block"<br>
+- Opcionalmente, la Extended Description plugin para soportar múltiples idiomas<br>
+            </li><br><br>
+              <li>
+Etapas:<br><br>
+A. En plugin NBC_UAM:
+              <ol>
+                <li>Activar la confirmación de registro</li>
+                <li>Introduzca el texto para la explicación adicional, que se adjunta al correo de confirmación de registro. Si se activa el plugin Extended Description, las etiquetas de idioma se puede utilizar</li>
+                <li>Seleccione la opción "Espera" del grupo en "Para los usuarios que no han validado su registro"</li>
+                <li>Seleccione la opción "Validado" en grupo "Para los usuarios que han validado su registro"</li>
+                <li>Guardar la configuración de plug-in</li>
+              </ol>
+              </li><br>
+B. En plugin PWG Stuffs :
+              <ol>
+                <li>Añadir un tipo de módulo nuevo "bloque de Personal: Muestra una plantilla de bloque (por ejemplo, un editorial)"</li>
+                <li>Configurar el módulo, lo que indica el título (por ejemplo, "en espera de la validación de Registro") y su descripción, y solamente "Espera" en la lista de grupos permitido</li>
+                <li>El contenido completo del módulo con la información del mensaje que se mostrará a los usuarios no validados. Como NBC_UAM, lenguajes de marcas pueden ser utilizados si el plugin Extended Description está activado</li>
+                <li>Active la casilla "Mostrar el módulo en la página principal del sitio"</li>
+                <li>Validar la configuración del módulo</li>
+              </ol>
+          </ul>';
 // --------- End: New or revised $lang ---- from version 2.14.0
 ?>
Index: /extensions/NBC_UserAdvManager/branches/2.14/language/fr_FR/plugin.lang.php
===================================================================
--- /extensions/NBC_UserAdvManager/branches/2.14/language/fr_FR/plugin.lang.php	(revision 5086)
+++ /extensions/NBC_UserAdvManager/branches/2.14/language/fr_FR/plugin.lang.php	(revision 5087)
@@ -95,10 +95,4 @@
 $lang['GT_Reset'] = 'Initialisation Ghost Tracker';
 // --------- End: New or revised $lang ---- from version 2.12.2
-
-
-// --------- Starting below: New or revised $lang ---- from version 2.12.7
-/* Errors and Warnings */
-$lang['mail_text_error'] = '<b>Attention!</b> - Le point-virgule (;) n\'est pas autorisé dans le texte additionnel des emails. Ce caractère a été automatiquement remplacé par un point (.). Pour information, le(s) texte(s) modifié(s) est(sont) affiché(s) en rouge dans le(s) champ(s) correspondant(s). Veuillez le(s) vérifier.';
-// --------- End: New or revised $lang ---- from version 2.12.7
 
 
@@ -182,58 +176,4 @@
 
 $lang['UAM_Tips1'] = 'Inscriptions avec validation par email et message d\'avertissement sur la page d\'accueil de Piwigo';
-$lang['UAM_Tips1_txt'] = '
-          <ul>
-            <li>
-Les ingrédients nécessaires:<br>
-- 2 groupes d\'utilisateurs Piwigo au minimum: &quot;Attente&quot; pour les visiteur en attente de validation et &quot;Validés&quot; pour les visiteurs ayant validé leur inscription<br>
-- Le plugin NBC_UAM<br>
-- Le plugin PWG Stuffs<br>
-- Eventuellement le plugin Extended Description (pour le support multi-langues)
-            </li>
-<br><br>
-            <li>
-La recette:<br>
-            <ul>
-              <li>
-Préambule: On se place dans le cas d\'une galerie privée ou semi-privée (c\'est à dire qu\'une petite partie des catégories est accessible par les Guests et que les inscrits peuvent tout voir). On considère que les plugins requis sont installés (faut-il le rappeler ?).<br><br>
-              </li>
-              <li>
-N\'attribuer au groupe &quot;Attente&quot; aucune permission sur les catégories privées<br><br>
-              </li>
-              <li>
-Attribuer au groupe &quot;Validés&quot; toutes les permissions sur les catégories privées<br><br>
-              </li>
-              <li>
-Dans le plugin NBC_UAM:
-              <ol>
-                <li>Activer la confirmation d\'inscription</li>
-                <li>Dans le champ sous &quot;Personnalisation de l\'email confirmation&quot;, saisir un texte additionnel d\'explication qui sera joint au mail de confirmation d\'inscription. Eventuellement, il est possible d\'utiliser les balises de langues implémentées par le plugin Extended Description</li>
-                <li>Dans la liste &quot;Groupe pour les utilisateurs n\'ayant pas validé leur inscription&quot;, sélectionner le groupe &quot;Attente&quot;</li>
-                <li>Dans la liste &quot;Groupe pour les utilisateurs ayant validé leur inscription&quot;, sélectionner le groupe &quot;Validés&quot;</li>
-                <li>Enregistrer la configuration du plugin</li>
-              </ol>
-              </li>
-<br><br>
-              <li>
-Dans le plugin PWG Stuff:
-              <ol>
-                <li>Ajouter un nouveau module de type &quot;Bloc personnel : Affiche un bloc personnel (un édito par exemple)&quot;</li>
-                <li>Dans la configuration du module, outre son titre (ex : &quot;Inscription en attente de validation&quot;) et sa description, cocher uniquement le groupe autorisé &quot;Attente&quot;</li>
-                <li>Dans le contenu du module, saisir le texte du message d\'information voulu qui ne sera visible que des utilisateurs non validés. Là aussi, possibilité de gérer le multi-langue grâce aux balises d\'Extended Description</li>
-                <li>Valider le module</li>
-                <li>Définir sa place dans l\'affiche de la page principale de la galerie</li>
-              </ol>
-              </li>
-            </ul>
-            </li>
-<br><br>
-            <li>
-              Le résultat:<br>
-              - Un &quot;Guest&quot; arrive sur la galerie, il ne voit rien d\'autre que les catégories publiques et pas de message d\'information.<br>
-              - Il s\'inscrit. Ce qui génère un email de validation et son appartenance automatique au groupe &quot;Attente&quot;.<br>
-              - A l\'issue, il est redirigé sur la page d\'accueil de la galerie avec, cette fois, un message lui indiquant la non-validation de son inscription<br><br>
-              Il reçoit son email de validation, suit le lien prévu à cet effet dans le mail, ce qui le sort du groupe &quot;Attente&quot; et le place dans le groupe &quot;Validés&quot;. En cliquant sur le bouton &quot;Home&quot;, il est alors connecté à la galerie avec accès total aux catégories privées et sans le message d\'information.
-            </li>
-          </ul>';
 
 $lang['Tab_UserManager'] = 'Suivi des validations';
@@ -269,4 +209,41 @@
 $lang['UAM_Admin_ConfMail_true'] = ' Activer';
 $lang['UAM_Admin_ConfMail_false'] = ' Désactiver (valeur par défaut)';
+$lang['UAM_Tips1_txt'] = '
+          <ul>
+            <li>
+            Objectifs:<br>
+            - A son arrivée sur la galerie : Informer le visiteur qu\'il peut s\'inscrire pour accéder aux photos privées<br>
+            - A l\'inscription : Générer un email avec lien direct de validation, informer le nouvel utilisateur de sa non-validation et le rattacher au groupe &quot;Attente&quot;<br>
+            - A la validation : Le passer automatiquement du groupe &quot;Attente&quot; au groupe &quot;Validés&quot;, qui lui permet d\'accéder normalement aux catégories privées<br><br>
+            <span style="font-style:italic">Rappel: En fonctionnement standard, le &quot;Guest&quot; ne voit que les catégories publiques, sans message d\'information.</span>
+            </li><br><br>
+            <li>
+Pré-requis:<br>
+- Une galerie avec tout ou partie des catégories privées, visibles par les seuls utilisateurs inscrits<br>
+- Au moins les 2 groupes d\'utilisateurs Piwigo suivants : &quot;Attente&quot;, sans aucune permission sur les catégories privées, et &quot;Validés&quot;, avec toutes les permissions sur les catégories privées<br>
+- Le plugin NBC_UAM<br>
+- Le plugin PWG Stuffs, pour l\'ajout d\'un module de type &quot;Bloc personnel&quot;<br>
+- En option, le plugin Extended Description, pour le support multi-langues<br>
+            </li><br><br>
+              <li>
+Réalisation:<br><br>
+A. Dans le plugin NBC_UAM:
+              <ol>
+                <li>Activer la confirmation d\'inscription</li>
+                <li>Saisir un &quot;texte d\'accueil personnalisé&quot; qui sera joint au mail de confirmation d\'inscription. Si le plugin Extended Description est activé, les balises de langues peuvent être utilisées</li>
+                <li>Sélectionner le groupe &quot;Attente&quot; à la rubrique &quot;Pour les utilisateurs n\'ayant pas validé leur inscription&quot;</li>
+                <li>Sélectionner le groupe &quot;Validés&quot; à la rubrique &quot;Pour les utilisateurs ayant validé leur inscription&quot;</li>
+                <li>Enregistrer la configuration du plugin</li>
+              </ol>
+              </li><br>
+B. Dans le plugin PWG Stuffs:
+              <ol>
+                <li>Ajouter un nouveau module de type &quot;Bloc personnel : Affiche un bloc personnel (un édito par exemple)&quot;</li>
+                <li>Configurer le module, en indiquant son titre (ex : &quot;Inscription en attente de validation&quot;) et sa description, et cocher uniquement&quot;Attente&quot; dans la liste des groupes autorisés</li>
+                <li>Compléter le contenu du module avec le texte du message d\'information qui sera affiché aux utilisateurs non validés. Comme dans NBC_UAM, les balises de langues peuvent être utilisées si le plugin Extended Description est activé</li>
+                <li>Cocher &quot;Afficher le module sur la page d\'accueil du site&quot;</li>
+                <li>Valider la configuration du module</li>
+              </ol>
+          </ul>';
 // --------- End: New or revised $lang ---- from version 2.14.0
 ?>
Index: /extensions/NBC_UserAdvManager/branches/2.14/language/it_IT/plugin.lang.php
===================================================================
--- /extensions/NBC_UserAdvManager/branches/2.14/language/it_IT/plugin.lang.php	(revision 5086)
+++ /extensions/NBC_UserAdvManager/branches/2.14/language/it_IT/plugin.lang.php	(revision 5087)
@@ -11,5 +11,5 @@
 
 /* Mailing */
-$lang['infos_mail %s'] = '%s, di seguito i tuoi dati per accedere alla galleria:';
+$lang['infos_mail %s'] = '%s, di seguito i vostri dati per accedere alla galleria:';
 $lang['User: %s'] = 'Utente: %s';
 $lang['Password: %s'] = 'Password: %s';
@@ -20,42 +20,42 @@
 $lang['title_confirm_mail'] = 'Confermare la vostra iscrizzione';
 $lang['confirm_mail_page_title'] = 'Confermare l\'iscrizzione';
-$lang['confirm_mail_ok'] = '<br><br><br>Grazie per aver confermato il tuo indirizzo e-mail e per la registrazione sulla galleria. Buona visione!<br><br><br><br>';
+$lang['confirm_mail_ok'] = '<br><br><br>Grazie per aver confermato il vostro indirizzo e-mail e per la registrazione sulla galleria. Buona visione!<br><br><br><br>';
 
 
 /* Errors and Warnings */
 $lang['UAM_audit_ok'] = 'Audit OK';
-$lang['Err_audit_no_casse'] = '<b>Questi conti sono identici al caso da vicino:</b> ';
+$lang['Err_audit_no_casse'] = '<b>Questi conti sono identici (escluso maiuscola/minuscola):</b> ';
 $lang['Err_audit_username_char'] = '<b>Questo conto utente utilizza uno o più caratteri vietati:</b> ';
 $lang['Err_audit_email_forbidden'] = '<b>Questo conto utente usa un dominio di email proibito:</b> ';
-$lang['Err_audit_advise'] = '<b>è necessario eseguire correzioni per conformarsi alle nuove regole che sono state attivate.<br>Utilizzare un programma per la gestione di database per correggere gli account utente direttamente nella tabella ###_USERS';
-$lang['UAM_Empty Author'] = 'Il campo autore devono essere riempiti per inviare un commento.';
+$lang['Err_audit_advise'] = '<b>Dovete eseguire delle correzioni per rispettare le nuove impostazzioni che avete attivato.<br> Utilizzare un programma per la gestione della base dati per correggere i conti utente direttamente nella tabella ###_USERS';
+$lang['UAM_Empty Author'] = 'Il campo autore deve essere riempito per potere inviare un commento.';
 if ( isset($conf_UAM[1]) and $conf_UAM[1] == 'true' )
-	$lang['reg_err_login5'] = 'Nome utente esistono già, il nome di richiamo è case insensitive (Shift = Tiny).';
-$lang['reg_err_login6'] = 'Nome utente non deve corrispondere i seguenti caratteri: ';
-$lang['reg_err_login7'] = 'Il tuo provider di posta elettronica è vietato per la registrazione. Vietato provider di posta elettronica sono i seguenti: ';
+	$lang['reg_err_login5'] = 'Nome utente esiste già. Attenzione : il campo è insensibile alle maiuscole/minuscole.';
+$lang['reg_err_login6'] = 'Nome utente non deve contenere in caratteri seguenti: ';
+$lang['reg_err_login7'] = 'Il tuo provider di posta usa dominio di email proibito. I dominii preibiti sono i seguenti: ';
 $lang['UAM_empty_pwd'] = '[password vuota]';
-$lang['UAM_no_update_pwd'] = '[profilo aggiornato senza password cambiata]';
+$lang['UAM_no_update_pwd'] = '[profilo aggiornato senza modifica della password]';
 $lang['invalid_pwd'] = 'Nome utente o password non validi!';
-$lang['No_validation_for_Guest'] = '"Guest" conto non è soggetta a convalida';
-$lang['No_validation_for_default_user'] = 'L\'account predefinito non è soggetta a convalida';
-$lang['No_validation_for_Webmaster'] = '"Webmaster" conto non è soggetta a convalida';
-$lang['No_validation_for_your_account'] = 'Il tuo account admin Personnal non è soggetta a convalida';
-$lang['Database_Error'] = '<b><u>Attenzione! Errore di integrità critico nel database.</u></b><br><br>Si prega di verificare l\'integrità della tabella #_user_confirm_mail.';
+$lang['No_validation_for_Guest'] = 'Il conto "Guest" non è soggetto a convalida';
+$lang['No_validation_for_default_user'] = 'Il conto di default non è soggetto a convalida';
+$lang['No_validation_for_Webmaster'] = 'Il conto del "Webmaster" non è soggetto a convalida';
+$lang['No_validation_for_your_account'] = 'Il tuo conto amminstratore non è soggetto a convalida';
+$lang['Database_Error'] = '<b><u>Attenzione! Errore di integrità critico nella base dati.</u></b><br><br>Si prega di verificare l\'integrità della tabella #_user_confirm_mail.';
 
 
 /* Processing messages */
-$lang['%d_Mail_With_Key'] = '%d messaggio con il rinnovo chiave è stata inviata';
-$lang['%d_Mails_With_Key'] = '%d messaggi con il rinnovo chiave sono stati inviati';
+$lang['%d_Mail_With_Key'] = '%d messaggio con il rinnovo della chiave è stato inviato';
+$lang['%d_Mails_With_Key'] = '%d messaggi con il rinnovo della chiave sono stati inviati';
 $lang['%d_Reminder_Sent'] = '%d messaggio di promemoria è stato inviato';
 $lang['%d_Reminders_Sent'] = '%d messaggi di promemoria sono stati inviati';
 $lang['%d_Validated_User'] = '%d utente convalidato manualmente';
-$lang['%d_Validated_Users'] = '%d utenti convalidato manualmente';
+$lang['%d_Validated_Users'] = '%d utenti convalidati manualmente';
 
 
 /* Action button names */
-$lang['Delete_selected'] = 'Eliminare';
+$lang['Delete_selected'] = 'Cancellare';
 $lang['Mail_without_key'] = 'Promemoria senza chiave';
 $lang['Mail_with_key'] = 'Promemoria con chiave';
-$lang['Force_Validation'] = 'Forzati di convalida';
+$lang['Force_Validation'] = 'Convalida forzata';
 
 
@@ -64,8 +64,8 @@
 // --------- Starting below: New or revised $lang ---- from version 2.12.0 and 2.12.1
 /* Global Configuration Tab */
-$lang['PasswordTest'] = 'Calcolo punteggio';
+$lang['PasswordTest'] = 'Calcolo del punteggio';
 /* Ghost Tracker Tab */
 $lang['Tab_GhostTracker'] = 'Ghost Tracker';
-$lang['LastVisit_Date'] = 'Ultima visita';
+$lang['LastVisit_Date'] = 'Data ultima visita';
 $lang['Reminder'] = 'E-mail di sollecito';
 $lang['Reminder_Sent_OK'] = 'SI';
@@ -73,17 +73,17 @@
 /* Errors and Warnings */
 $lang['UAM_save_config'] ='Configurazione salvata.';
-$lang['reg_err_login3'] = 'Security: Password è obbligatorio!';
-$lang['reg_err_login4_%s'] = 'Sicurezza: un sistema di controllo calcola un punteggio sulla scelta password complessità. La complessità della password è troppo bassa (punteggio = %s). Si prega di scegliere una nuova password più sicura seguendo queste regole:<br>
-- Utilizzare le lettere e numeri<br>
-- Usare maiuscole e minuscole<br>
-- Aumentare la sua lunghezza (numero di caratteri)<br>
-Le password punteggio minimo richiesto dall\'amministratore è: ';
-$lang['No_reminder_for_Guest'] = '"Guest" conto non è soggetto a ricevere i promemoria da GhostTracker';
-$lang['No_reminder_for_default_user'] = 'L\'account predefinito non è soggetto a ricevere i promemoria da GhostTracker';
-$lang['No_reminder_for_Webmaster'] = '"Webmaster" conto non è soggetto a ricevere i promemoria da GhostTracker';
-$lang['No_reminder_for_your_account'] = 'Il tuo account admin Personnal non è soggetto a ricevere i promemoria da GhostTracker';
+$lang['reg_err_login3'] = 'Sicurezza: La password è obbligatoria!';
+$lang['reg_err_login4_%s'] = 'Sicurezza: un sistema di controllo calcola un punteggio basandosi sulla complessità della password scelta. La complessità della password è troppo bassa (punteggio = %s). Si prega di scegliere una nuova password più sicura seguendo queste regole:<br>
+- Utilizzare delle lettere e dei numeri<br>
+- Usare delle maiuscole e delle minuscole<br>
+- Aumentare la lunghezza (numero di caratteri)<br>
+Il punteggio minimo richiesto dall\'amministratore per la password è di : ';
+$lang['No_reminder_for_Guest'] = 'Il conto utente "Guest" non è soggetto a ricevere dei promemoria dal GhostTracker';
+$lang['No_reminder_for_default_user'] = 'Il conto utente di default non è soggetto a ricevere dei promemoria dal GhostTracker';
+$lang['No_reminder_for_Webmaster'] = 'Il conto utente "Webmaster" non è soggetto a ricevere dei promemoria dal GhostTracker';
+$lang['No_reminder_for_your_account'] = 'Il tuo conto amministratore non è soggetto a ricevere dei promemoria dal GhostTracker';
 /* Action button names */
-$lang['audit'] = 'Audit impostazioni';
-$lang['submit'] = 'Salva impostazioni';
+$lang['audit'] = 'Audit delle impostazioni';
+$lang['submit'] = 'Salvare le impostazioni';
 // --------- End: New or revised $lang ---- from version 2.12.0 and 2.12.1
 
@@ -91,14 +91,8 @@
 // --------- Starting below: New or revised $lang ---- from version 2.12.2
 /* Errors and Warnings */
-$lang['GhostTracker_Init_OK'] = 'GhostTracker reset fatto!';
+$lang['GhostTracker_Init_OK'] = 'Inizzializzazione GhostTracker eseguita!';
 /* Action button names */
-$lang['GT_Reset'] = 'Reset Ghost Tracker';
+$lang['GT_Reset'] = 'Reset del GhostTracker';
 // --------- End: New or revised $lang ---- from version 2.12.2
-
-
-// --------- Starting below: New or revised $lang ---- from version 2.12.7
-/* Errors and Warnings */
-$lang['mail_text_error'] = '<b>Attenzione!</b> - Punto e virgola (;) non sono ammessi in addtionnal testo e-mail. Questo carattere è stato automaticamente sostituito da un punto (.). Per informazioni, il testo modificato(s) è (sono) indicato in rosso nel campo corrispondente (s). Vi preghiamo di controllare lo(li) fuori.';
-// --------- End: New or revised $lang ---- from version 2.12.7
 
 
@@ -180,59 +174,5 @@
 $lang['UAM_No_Comment_Anonymous_false'] = ' Disattivare (predefinito)';
 
-$lang['UAM_Tips1'] = 'Registrazioni con la convalida e-mail e messaggio di avviso nella home page del PhpWebGallery (Inglese)';
-/* TODO */$lang['UAM_Tips1_txt'] = '
-          <ul>
-            <li>
-Ingredients needed:<br>
-- 2 Piwigo\'s user groups at least: &quot;Waiting&quot; for visitors awaiting validation and &quot;Validated&quot; for visitors who have validated their registration<br>
-- NBC_UAM plugin<br>
-- PWG Stuffs plugin<br>
-- Possibly Extended Description plugin (to support multi-lingual)
-            </li>
-<br><br>
-            <li>
-La recette :<br>
-            <ul>
-              <li>
-Preamble: It\'s located in the case of a private gallery or semi-private (ie only a small part of categories is available by Guests and registered can see everything). We consider that the required plugins are installed (does it remind you?).<br><br>
-              </li>
-              <li>
-Attribute group &quot;Waiting&quot; no permission on private categories<br><br>
-              </li>
-              <li>
-Attribute group &quot;Validated&quot; all permissions on the private categories<br><br>
-              </li>
-              <li>
-In NBC_UAM plugin:
-              <ol>
-                <li>Enable registration confirmation</li>
-                <li>In the field below &quot;Customizing the confirmation email&quot;, enter text for additional explanation will be attached to email registration confirmation. Possibly, it is possible to use markup language implemented by the plugin Extended Description</li>
-                <li>In the &quot;Group for users who have not validated their registration&quot;, select group &quot;Waiting&quot;</li>
-                <li>In the &quot;Group for users who have validated their registration&quot;, select group &quot;Validated&quot;</li>
-                <li>Save the plugin configuration</li>
-              </ol>
-              </li>
-<br><br>
-              <li>
-In PWG Stuff plugin:
-              <ol>
-                <li>Add a new module personal block like an edito</li>
-                <li>In the module\'s configuration, in addition to its title (eg &quot;Registration pending validation&quot;) and its description, check only the authorized group &quot;Waiting&quot;</li>
-                <li>In the content module, enter the message text which sought information will be visible as invalid user. Again, ability to manage multi-language through Extended Description\'s tags</li>
-                <li>Validate module</li>
-                <li>Define its place on the main page of the gallery</li>
-              </ol>
-              </li>
-            </ul>
-            </li>
-<br><br>
-            <li>
-              The result:<br>
-              - A "Guest" arrives on the gallery, he sees nothing other than the public categories and no information message.<br>
-              - He registers. This generates an email validation and automatic membership to the group &quot;Waiting&quot;.<br>
-              - At the end, he\'s redirected to the gallery homepage and a message indicating the waiting of validate its registration<br><br>
-              He received his email validation, following the link provided for that purpose in the mail, releases the group &quot;Waiting&quot; and takes place in the group &quot;Validated&quot;. By clicking the &quot;Home&quot;, then he\'s connected to the gallery with full access to private groups and without the information message.
-            </li>
-          </ul>';
+$lang['UAM_Tips1'] = 'Registrazioni con la convalida e-mail e messaggio di avviso nella home page del Piwigo (Inglese)';
 
 $lang['Tab_UserManager'] = 'Tracciamento convalide';
@@ -269,4 +209,41 @@
 $lang['UAM_Admin_ConfMail_true'] = ' Consentire';
 $lang['UAM_Admin_ConfMail_false'] = ' Disattivare (predefinito)';
+$lang['UAM_Tips1_txt'] = '
+          <ul>
+            <li>
+            Obiettivi:<br>
+            - Al suo arrivo presso la galleria: a informare il visitatore che si deve registrare per accedere a foto private<br>
+            - Al momento della registrazione: Genera una validazione e-mail con il link diretto, informa il nuovo utente della sua mancata convalida e integrare lo al gruppo "Attesa"<br>
+            - All\'atto della convalida: Switch automaticamente gruppo "Attesa" di gruppo "Validati", che fornisce l\'accesso a categorie privato<br><br>
+            <span style="font-style:italic">Ricordo: In funzionamento standard, il "cliente" vede solo le categorie del pubblico, senza messaggio di informazione.</span>
+            </li><br><br>
+            <li>
+Prerequisito:<br>
+- Una galleria con tutte o alcune categorie private, visibili solo agli utenti registrati<br>
+- Almeno 2 seguenti gruppi di utenti Piwigo\'s: "Attesa", senza il consenso sulle categorie private, e "Validati" con tutte le autorizzazioni per le categorie privato<br>
+- NBC_UAM plugin<br>
+- PWG Stuffs plugin, per aggiungere un tipo di modulo "Personal Block"<br>
+- Facoltativamente, il plugin Extended Description al supporto multi-lingue<br>
+            </li><br><br>
+              <li>
+Tappe:<br><br>
+A. In plugin NBC_UAM:
+              <ol>
+                <li>Consentire la conferma della registrazione</li>
+                <li>Inserisci il testo per ulteriori spiegazioni, che sarà allegato a una mail di conferma della registrazione. Se il plugin Extended Description è attivato, i tag linguaggio può essere utilizzato</li>
+                <li>Selezionare l\'opzione "Attesa" gruppo sotto la voce "Per gli utenti che non hanno convalidato la loro registrazione"</li>
+                <li>Selezionare l\'opzione "Validati" gruppo sotto la voce "Per gli utenti che hanno convalidato la loro iscrizione"</li>
+                <li>Salvare la configurazione</li>
+              </ol>
+              </li><br>
+B. In plugin PWG Stuffs :
+              <ol>
+                <li>Aggiungere un nuovo tipo di modulo "block personali: mostra personale di blocco (ad esempio, un editoriale)"</li>
+                <li>Configurare il modulo, indicando il titolo (ad esempio, "in attesa di convalida Registrazione") e la sua descrizione, e selezionare solo "Attesa" nella lista dei gruppi ammessi</li>
+                <li>Contenuto completo del modulo con le informazioni di messaggio da visualizzare per gli utenti non convalidato. Come NBC_UAM, linguaggi di markup possono essere utilizzati se il plugin Extended Description è abilitato</li>
+                <li>Check "visualizzare il modulo nella homepage del sito"</li>
+                <li>Convalidare la configurazione del modulo</li>
+              </ol>
+          </ul>';
 // --------- End: New or revised $lang ---- from version 2.14.0
 ?>
Index: /extensions/NBC_UserAdvManager/branches/2.14/maintain.inc.php
===================================================================
--- /extensions/NBC_UserAdvManager/branches/2.14/maintain.inc.php	(revision 5086)
+++ /extensions/NBC_UserAdvManager/branches/2.14/maintain.inc.php	(revision 5087)
@@ -280,9 +280,13 @@
 function upgrade_213()
 {
-  $data = explode(';', $conf['nbc_UserAdvManager']);
+	global $conf;
+  
+  $conf_UAM = explode(';', $conf['nbc_UserAdvManager']);
+
+  $upgrade_UAM = array($conf_UAM[0],$conf_UAM[1],$conf_UAM[2],$conf_UAM[3],$conf_UAM[4],$conf_UAM[5],$conf_UAM[6],$conf_UAM[7],$conf_UAM[8],$conf_UAM[9],$conf_UAM[10],$conf_UAM[11],$conf_UAM[12],$conf_UAM[13],$conf_UAM[14],$conf_UAM[15],$conf_UAM[16],$conf_UAM[17],$conf_UAM[18],$conf_UAM[19],$conf_UAM[20],'false');
 
   $query = '
 UPDATE '.CONFIG_TABLE.'
-  SET value = "'.addslashes(serialize($data)).'"
+  SET value = "'.addslashes(serialize($upgrade_UAM)).'"
   WHERE param = "nbc_UserAdvManager"
 ;';
