CoreCommunity ExtensionsIncubatorDistributionsTYPO3 4.5 ProjectsTYPO3 4.6 ProjectsTYPO3 4.7 ProjectsTYPO3 6.0 ProjectsTYPO3 6.1 ProjectsTYPO3 6.2 Projects (+)

setup_beuserpw_eval.diff

Allowing to register the eval-Hooks for passwords in BE module user->setup - Steffen Ritter, 2009-06-18 10:24

Download (1.9 kB)

 
typo3/sysext/setup/mod/index.php (working copy)
177 177
			$this->PASSWORD_UPDATED = strlen($be_user_data['password'].$be_user_data['password2'])>0 ? -1 : 0;
178 178
			if ($be_user_data['email']!=$BE_USER->user['email']
179 179
					|| $be_user_data['realName']!=$BE_USER->user['realName']
180
					|| (strlen($be_user_data['password'])==32
180
					|| ( (strlen($be_user_data['password'])==32 || (isset($columns['password']['eval']) && strpos($columns['password']['eval'], '->')))
181 181
							&& !strcmp($be_user_data['password'],$be_user_data['password2']))
182 182
					)	{
183 183
				$storeRec = array();
184 184
				$BE_USER->user['realName'] = $storeRec['be_users'][$BE_USER->user['uid']]['realName'] = substr($be_user_data['realName'],0,80);
185 185
				$BE_USER->user['email'] = $storeRec['be_users'][$BE_USER->user['uid']]['email'] = substr($be_user_data['email'],0,80);
186
				if (strlen($be_user_data['password'])==32 && !strcmp($be_user_data['password'],$be_user_data['password2']))	{
187
					$BE_USER->user['password'] = $storeRec['be_users'][$BE_USER->user['uid']]['password'] = $be_user_data['password2'];
186
				
187
				if (isset($columns['password']['eval']) && strpos($columns['password']['eval'], '->')) {
188
					$parts = explode('->', $columns['password']['eval']);
189
					$storeRec['be_users'][$BE_USER->user['uid']]['password'] = call_user_func(array($parts[0], $parts[1]), $be_user_data['password2']);
188 190
					$this->PASSWORD_UPDATED = 1;
191
				} else {
192
					if (strlen($be_user_data['password'])==32 && !strcmp($be_user_data['password'],$be_user_data['password2']))	{
193
						$BE_USER->user['password'] = $storeRec['be_users'][$BE_USER->user['uid']]['password'] = $be_user_data['password2'];
194
						$this->PASSWORD_UPDATED = 1;
195
					}
189 196
				}
190 197

  
191 198
					// Make instance of TCE for storing the changes.