Revision: 45317
http://sourceforge.net/p/tikiwiki/code/45317
Author: lindonb
Date: 2013-03-25 00:56:58 +0000 (Mon, 25 Mar 2013)
Log Message:
-----------
[bp/r45315][FIX] ReCaptcha: Widget was disappearing when a wrong antibot code was entered and was displaying error messages when a correct one was entered. Also, just show error message once. Still disappears when a pretty registration tracker is used (smarty tpl variables don't seem to be recognized)
Revision Links:
--------------
http://sourceforge.net/p/tikiwiki/code/45315
Modified Paths:
--------------
branches/9.x/lib/smarty_tiki/function.user_registration.php
Modified: branches/9.x/lib/smarty_tiki/function.user_registration.php
===================================================================
--- branches/9.x/lib/smarty_tiki/function.user_registration.php 2013-03-25 00:55:35 UTC (rev 45316)
+++ branches/9.x/lib/smarty_tiki/function.user_registration.php 2013-03-25 00:56:58 UTC (rev 45317)
@@ -72,21 +72,26 @@
}
$smarty->assign('errortype', 'no_redirect_login');
-
+ //result is empty if fields (including antibot) validate and new user is successfully created
+ //no user notification at this stage if user tracker is used
$result = $registrationlib->register_new_user($_REQUEST);
- if (is_array($result)) {
- foreach ($result as $r) {
- $errorreportlib->report($r->msg);
+ if (empty($result)) {
+ $_REQUEST['valerror'] = false;
+ } else {
+ $_REQUEST['valerror'] = $result;
+ if (is_array($result)) {
+ foreach ($result as $r) {
+ $errorreportlib->report($r->msg);
+ }
+ } elseif (is_a($result, 'RegistrationError')) {
+ $errorreportlib->report($result->msg);
+ } elseif (is_string($result) && $registrationlib->merged_prefs['userTracker'] !== 'y') { // more to do for usertrackers
+ return $result;
+ } elseif (!empty($result['msg']) && $registrationlib->merged_prefs['userTracker'] !== 'y') {
+ return $result['msg'];
}
- } else if (is_a($result, 'RegistrationError')) {
- $errorreportlib->report($result->msg);
- } else if (is_string($result) && $registrationlib->merged_prefs['userTracker'] !== 'y') { // more to do for usertrackers
- return $result;
- } elseif (!empty($result['msg']) && $registrationlib->merged_prefs['userTracker'] !== 'y') {
- return $result['msg'];
}
-
}
$outputtowiki='';
$outputwiki='';
@@ -117,9 +122,9 @@
}
if ($registrationlib->merged_prefs["user_register_prettytracker"] == 'y' && !empty($registrationlib->merged_prefs["user_register_prettytracker_tpl"])) {
if (substr($registrationlib->merged_prefs["user_register_prettytracker_tpl"], -4) == ".tpl") {
- $userTrackerData = wikiplugin_tracker('', array('trackerId' => $re['usersTrackerId'], 'fields' => $re['registrationUsersFieldIds'], 'showdesc' => 'y', 'showmandatory' => 'y', 'embedded' => 'n', 'action' => tra('Register'), 'registration' => 'y', 'tpl' => $re["user_register_prettytracker_tpl"], 'userField' => $re['usersFieldId'], 'outputwiki' => $outputwiki, 'outputtowiki' => $outputtowiki));
+ $userTrackerData = wikiplugin_tracker('', array('trackerId' => $re['usersTrackerId'], 'fields' => $re['registrationUsersFieldIds'], 'showdesc' => 'y', 'showmandatory' => 'y', 'embedded' => 'n', 'action' => tra('Register'), 'registration' => 'y', 'tpl' => $registrationlib->merged_prefs["user_register_prettytracker_tpl"], 'userField' => $re['usersFieldId'], 'outputwiki' => $outputwiki, 'outputtowiki' => $outputtowiki));
} else {
- $userTrackerData = wikiplugin_tracker('', array('trackerId' => $re['usersTrackerId'], 'fields' => $re['registrationUsersFieldIds'], 'showdesc' => 'y', 'showmandatory' => 'y', 'embedded' => 'n', 'action' => tra('Register'), 'registration' => 'y', 'wiki' => $re["user_register_prettytracker_tpl"], 'userField' => $re['usersFieldId'],'outputwiki' => $outputwiki, 'outputtowiki' => $outputtowiki));
+ $userTrackerData = wikiplugin_tracker('', array('trackerId' => $re['usersTrackerId'], 'fields' => $re['registrationUsersFieldIds'], 'showdesc' => 'y', 'showmandatory' => 'y', 'embedded' => 'n', 'action' => tra('Register'), 'registration' => 'y', 'wiki' => $registrationlib->merged_prefs["user_register_prettytracker_tpl"], 'userField' => $re['usersFieldId'],'outputwiki' => $outputwiki, 'outputtowiki' => $outputtowiki));
}
} else {
$userTrackerData = wikiplugin_tracker('', array('trackerId' => $re['usersTrackerId'], 'fields' => $re['registrationUsersFieldIds'], 'showdesc' => 'y', 'showmandatory' => 'y', 'embedded' => 'n', 'action' => tra('Register'), 'registration' => 'y', 'userField' => $re['usersFieldId']));
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|