Page Menu
Home
In-Portal Phabricator
Search
Configure Global Search
Log In
Files
F925470
in-portal
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Subscribers
None
File Metadata
Details
File Info
Storage
Attached
Created
Tue, May 20, 6:11 AM
Size
23 KB
Mime Type
text/x-diff
Expires
Thu, May 22, 6:11 AM (1 d, 7 h)
Engine
blob
Format
Raw Data
Handle
632855
Attached To
rINP In-Portal
in-portal
View Options
Index: trunk/kernel/units/user_profile/user_profile_tp.php
===================================================================
--- trunk/kernel/units/user_profile/user_profile_tp.php (revision 8633)
+++ trunk/kernel/units/user_profile/user_profile_tp.php (revision 8634)
@@ -1,76 +1,127 @@
<?php
class UserProfileTagProcessor extends kDBTagProcessor {
function Field($params)
{
$profile_mapping = $this->getProfileMapping();
$field = $this->SelectParam($params, 'name,field');
if (isset($params['profile_field']) && $params['profile_field']) {
$params['name'] = $profile_mapping[$field];
$value = $this->Application->ProcessParsedTag('u.profile', 'Field', $params);
}
else {
- $profile_user_id = $this->Application->GetVar('user_id');
- if (!$profile_user_id) {
- // if none user_id given use current user id
- $profile_user_id = $this->Application->RecallVar('user_id');
- }
- $value = $this->recallUserProfileVar($profile_user_id, $field);
+ $value = $this->recallUserProfileVar($field);
}
if (isset($params['checked']) && $params['checked']) {
$checked_value = isset($params['value']) ? $params['value'] : 1;
$value = ($value == $checked_value) ? 'checked' : '';
}
return $value;
}
/**
+ * Returns user_id to view profile from (same as u:getPassedID)
+ *
+ * @return int
+ */
+ function getProfileUserID()
+ {
+ $profile_user_id = $this->Application->GetVar('user_id');
+ if (!$profile_user_id) {
+ // if none user_id given use current user id
+ $profile_user_id = $this->Application->RecallVar('user_id');
+ }
+
+ return $profile_user_id;
+ }
+
+ /**
* Allows to get persistent var from other user
*
* @param int $user_id
* @param string $var_name
* @return mixed
*/
- function recallUserProfileVar($user_id, $var_name)
+ function recallUserProfileVar($var_name, $user_id = null)
{
static $cached_vars = null;
if (!isset($cached_vars)) {
+ if (!isset($user_id)) {
+ $user_id = $this->getProfileUserID();
+ }
+
$sql = 'SELECT VariableValue, VariableName
FROM '.TABLE_PREFIX.'PersistantSessionData
WHERE (PortalUserId = '.$user_id.') AND (LENGTH(VariableValue) < 10)';
$cached_vars = $this->Conn->GetCol($sql, 'VariableName');
}
return isset($cached_vars[$var_name]) ? $cached_vars[$var_name] : false;
}
/**
* Returns mapping between persistent var name and user profile field
*
* @return Array
*/
function getProfileMapping()
{
$profile_mapping = Array (
'pp_firstname' => 'FirstName',
'pp_lastname' => 'LastName',
'pp_dob' => 'dob',
'pp_email' => 'Email',
'pp_phone' => 'Phone',
'pp_street' => 'Street',
'pp_city' => 'City',
'pp_state' => 'State',
'pp_zip' => 'Zip',
'pp_country' => 'Country',
);
return $profile_mapping;
}
+
+ /**
+ * Returns visible field count in user profile
+ *
+ * @param Array $params
+ * @return int
+ */
+ function ProfileFieldCount($params)
+ {
+ static $field_count = null;
+
+ if (!isset($field_count)) {
+ $profile_mapping = $this->getProfileMapping();
+ $field_count = 0;
+ foreach ($profile_mapping as $var_name => $field_name) {
+ if ($this->recallUserProfileVar($var_name) == 1) {
+ $field_count++;
+ }
+ }
+ }
+
+ return $field_count;
+ }
+
+ /**
+ * Allows to detect that not all fields were shown
+ *
+ * @param Array $params
+ * @return bool
+ */
+ function NotLastField($params)
+ {
+ $counter = (int)$this->Application->GetVar($params['counter']);
+
+ return $counter < $this->ProfileFieldCount();
+ }
}
?>
\ No newline at end of file
Property changes on: trunk/kernel/units/user_profile/user_profile_tp.php
___________________________________________________________________
Modified: cvs2svn:cvs-rev
## -1 +1 ##
-1.2
\ No newline at end of property
+1.3
\ No newline at end of property
Index: trunk/themes/default2007/platform/my_account/my_preferences.tpl
===================================================================
--- trunk/themes/default2007/platform/my_account/my_preferences.tpl (revision 8633)
+++ trunk/themes/default2007/platform/my_account/my_preferences.tpl (revision 8634)
@@ -1,89 +1,92 @@
<inp2:m_RequireLogin login_template="platform/login/register"/>
<inp2:m_DefineElement name="sidebar">
<inp2:m_RenderElements
elements="
platform/elements/side_boxes/login,
"
design="blue_box"/>
</inp2:m_DefineElement>
<inp2:m_DefineElement name="content">
<inp2:m_include template="platform/elements/navigation_bar" titles="lu_title_MyAccount,lu_title_MyPreferences" templates="platform/my_account/my_account,platform/my_account/my_preferences"/>
<!-- my preferences -->
<inp2:m_RenderElement design="content_box">
<inp2:m_Capture to_var="header">
<inp2:m_phrase name="lu_title_MyPreferences"/>
</inp2:m_Capture>
<table>
<tr>
<inp2:m_ModuleInclude template="my_account/preferences_tab" in-portal_template="platform/my_account/preferences_tab"/>
</tr>
</table>
<br />
<strong>Profile</strong><br /><br />
<form method="post" action="<inp2:m_FormAction/>">
<table class="form-data fullwidth">
<tr>
<td style="width:140px">
<inp2:m_phrase name="lu_col_AccountInformation"/>
</td>
<td style="width:140px">
<inp2:m_phrase name="lu_col_CurrentValue"/>
</td>
<td>
<inp2:m_phrase name="lu_col_DisplayToPublic"/>
</td>
</tr>
<tr>
<td class="field-name"><inp2:m_phrase name="lu_fld_Login"/></td>
<td><inp2:u_Field field="Login"/></td>
<td class="field-value"> </td>
</tr>
<tr>
<td colspan="3">
<div class="hor-line"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="3" height="1" alt=""/><br /></div>
</td>
</tr>
<inp2:m_include template="platform/designs/preferences"/>
<inp2:m_RenderElement name="privacy_element" field="pp_firstname" title="lu_fld_FirstName"/>
<inp2:m_RenderElement name="privacy_element" field="pp_lastname" title="lu_fld_LastName"/>
<inp2:m_RenderElement name="privacy_element" field="pp_dob" title="lu_fld_BirthDay"/>
<inp2:m_RenderElement name="privacy_element" field="pp_email" title="lu_fld_Email"/>
<inp2:m_RenderElement name="privacy_element" field="pp_phone" title="lu_fld_Phone"/>
<inp2:m_RenderElement name="privacy_element" field="pp_street" title="lu_fld_Street"/>
<inp2:m_RenderElement name="privacy_element" field="pp_city" title="lu_fld_City"/>
<inp2:m_RenderElement name="privacy_element" field="pp_state" title="lu_fld_State"/>
<inp2:m_RenderElement name="privacy_element" field="pp_zip" title="lu_fld_Zip"/>
<inp2:m_RenderElement name="privacy_element" field="pp_country" title="lu_fld_Country" is_last="1"/>
<tr>
<td colspan="3">
<img src="<inp2:m_TemplatesBase module="In-Portal"/>img/grey_pix.gif" width="100%" height="1" align="absmiddle" alt="" />
</td>
</tr>
<tr>
<td>
</td>
- <td>
+ <td colspan="2">
<br />
<input class="button" type="submit" name="events[user-profile][OnUpdate]" value="<inp2:m_Phrase label="lu_btn_Update"/>"/>
+
+ <a href="<inp2:u.current_ProfileLink template="platform/my_account/public_profile"/>"><inp2:m_phrase name="lu_btn_ViewYourProfile"/></a>
+
<br /><br />
</td>
</tr>
</table>
</form>
</inp2:m_RenderElement>
<!-- // my preferences -->
</inp2:m_DefineElement>
<inp2:m_include template="platform/designs/default_design" pass_params="1"/>
\ No newline at end of file
Property changes on: trunk/themes/default2007/platform/my_account/my_preferences.tpl
___________________________________________________________________
Modified: cvs2svn:cvs-rev
## -1 +1 ##
-1.1
\ No newline at end of property
+1.2
\ No newline at end of property
Index: trunk/themes/default2007/platform/my_account/public_profile.tpl
===================================================================
--- trunk/themes/default2007/platform/my_account/public_profile.tpl (nonexistent)
+++ trunk/themes/default2007/platform/my_account/public_profile.tpl (revision 8634)
@@ -0,0 +1,72 @@
+<inp2:m_RequireLogin login_template="platform/login/register"/>
+<inp2:m_DefineElement name="sidebar">
+ <inp2:m_RenderElements
+ elements="
+ platform/elements/side_boxes/login,
+ platform/elements/side_boxes/search,
+ "
+ design="blue_box"/>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="content">
+ <inp2:m_include template="platform/elements/navigation_bar" titles="lu_title_UserProfile" templates="platform/my_account/public_profile"/>
+
+ <!-- public profile -->
+ <inp2:m_RenderElement design="content_box">
+ <inp2:m_Capture to_var="header">
+ <inp2:m_phrase name="lu_title_UserProfile"/>
+ </inp2:m_Capture>
+
+ <table class="form-data fullwidth">
+ <tr>
+ <td class="field-name"><inp2:m_phrase name="lu_fld_Login"/></td>
+ <td class="field-value"><inp2:u.profile_Field field="Login"/></td>
+ </tr>
+
+ <inp2:m_if check="user-profile_ProfileFieldCount">
+ <tr>
+ <td colspan="3">
+ <div class="hor-line"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="3" height="1" alt=""/><br /></div>
+ </td>
+ </tr>
+ </inp2:m_if>
+
+ <inp2:m_include template="platform/designs/preferences"/>
+
+ <inp2:m_RenderElement name="profile_element" field="pp_firstname" title="lu_fld_FirstName"/>
+ <inp2:m_RenderElement name="profile_element" field="pp_lastname" title="lu_fld_LastName"/>
+ <inp2:m_RenderElement name="profile_element" field="pp_dob" title="lu_fld_BirthDay"/>
+ <inp2:m_RenderElement name="profile_element" field="pp_email" title="lu_fld_Email"/>
+ <inp2:m_RenderElement name="profile_element" field="pp_phone" title="lu_fld_Phone"/>
+ <inp2:m_RenderElement name="profile_element" field="pp_street" title="lu_fld_Street"/>
+ <inp2:m_RenderElement name="profile_element" field="pp_city" title="lu_fld_City"/>
+ <inp2:m_RenderElement name="profile_element" field="pp_state" title="lu_fld_State"/>
+ <inp2:m_RenderElement name="profile_element" field="pp_zip" title="lu_fld_Zip"/>
+ <inp2:m_RenderElement name="profile_element" field="pp_country" title="lu_fld_Country"/>
+
+ <tr>
+ <td colspan="3">
+ <img src="<inp2:m_TemplatesBase module="In-Portal"/>img/grey_pix.gif" width="100%" height="1" align="absmiddle" alt="" />
+ </td>
+ </tr>
+ <tr>
+ <td style="width:140px">
+
+ </td>
+ <td colspan="2">
+ <br />
+
+ send message
+<!-- <a href="<inp2:private-message_SendMessageLink template="inbulletin/private_messages/new_message"/>"><inp2:m_phrase name="lu_btn_SendMessage"/></a>-->
+
+ <br /><br />
+
+ </td>
+ </tr>
+ </table>
+ </inp2:m_RenderElement>
+ <!-- // public profile -->
+
+</inp2:m_DefineElement>
+
+<inp2:m_include template="platform/designs/default_design" pass_params="1"/>
\ No newline at end of file
Property changes on: trunk/themes/default2007/platform/my_account/public_profile.tpl
___________________________________________________________________
Added: cvs2svn:cvs-rev
## -0,0 +1 ##
+1.1
\ No newline at end of property
Added: svn:executable
## -0,0 +1 ##
+*
\ No newline at end of property
Index: trunk/themes/default2007/platform/designs/preferences.tpl
===================================================================
--- trunk/themes/default2007/platform/designs/preferences.tpl (revision 8633)
+++ trunk/themes/default2007/platform/designs/preferences.tpl (revision 8634)
@@ -1,17 +1,35 @@
<inp2:m_DefineElement name="privacy_element">
<tr>
<td class="field-name"><inp2:m_phrase name="$title"/></td>
<td><inp2:user-profile_Field field="$field" profile_field="1"/></td>
<td class="field-value">
<input type="hidden" id="user_profile[<inp2:m_param name="field"/>]" name="user_profile[<inp2:m_param name="field"/>]" value="<inp2:user-profile_Field field="$field"/>"/>
<input type="checkbox" id="_cb_user_profile[<inp2:m_param name="field"/>]" <inp2:user-profile_Field field="$field" checked="checked" db="db"/> onchange="update_checkbox(this, document.getElementById('user_profile[<inp2:m_param name="field"/>]'));"/>
</td>
</tr>
<inp2:m_if check="m_ParamEquals" name="is_last" value="0">
<tr>
<td colspan="3">
<div class="hor-line"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="3" height="1" alt=""/><br /></div>
</td>
</tr>
</inp2:m_if>
+</inp2:m_DefineElement>
+
+<inp2:m_DefineElement name="profile_element">
+ <inp2:m_if check="user-profile_Field" name="$field">
+ <inp2:m_inc param="fields_shown" by="1"/>
+ <tr>
+ <td class="field-name"><inp2:m_phrase name="$title"/></td>
+ <td class="field-value"><inp2:user-profile_Field field="$field" profile_field="1"/></td>
+ </tr>
+
+ <inp2:m_if check="user-profile_NotLastField" counter="fields_shown">
+ <tr>
+ <td colspan="3">
+ <div class="hor-line"><img src="<inp2:m_TemplatesBase module="In-Portal"/>img/s.gif" width="3" height="1" alt=""/><br /></div>
+ </td>
+ </tr>
+ </inp2:m_if>
+ </inp2:m_if>
</inp2:m_DefineElement>
\ No newline at end of file
Property changes on: trunk/themes/default2007/platform/designs/preferences.tpl
___________________________________________________________________
Modified: cvs2svn:cvs-rev
## -1 +1 ##
-1.2
\ No newline at end of property
+1.3
\ No newline at end of property
Index: trunk/core/units/users/users_tag_processor.php
===================================================================
--- trunk/core/units/users/users_tag_processor.php (revision 8633)
+++ trunk/core/units/users/users_tag_processor.php (revision 8634)
@@ -1,213 +1,225 @@
<?php
class UsersTagProcessor extends kDBTagProcessor
{
function LogoutLink($params)
{
$pass = Array('pass' => 'all,m,u', 'u_event' => 'OnLogout', 'm_cat_id'=>0);
$logout_template = $this->SelectParam($params, 'template,t');
return $this->Application->HREF($logout_template, '', $pass);
}
function UseUsernames($params)
{
return $this->Application->ConfigValue('Email_As_Login') != 1;
}
function RegistrationEnabled($params)
{
return $this->Application->ConfigValue('User_Allow_New') != 2;
}
function SuggestRegister($params)
{
return !$this->Application->LoggedIn() && !$this->Application->ConfigValue('Comm_RequireLoginBeforeCheckout') && $this->RegistrationEnabled($params);
}
function ConfirmPasswordLink($params)
{
//global $m_var_list_update, $var_list_update, $objSession, $objConfig;
$template = "forgotpw_reset_result";
$tmp_user_id = $this->Application->RecallVar("tmp_user_id");
$saved_denerated_code = $this->Application->GetVar('saved_denerated_code');
if ($saved_denerated_code){
$code = $saved_denerated_code;
}
else {
$code = md5($this->GenerateCode());
$this->Application->SetVar('saved_denerated_code', $code);
}
$sql = 'UPDATE '.TABLE_PREFIX.'PortalUser SET PwResetConfirm="'.$code.'", PwRequestTime='.adodb_mktime().' WHERE PortalUserId='.$tmp_user_id;
$this->Conn->Query($sql);
$params = array_merge($params, array('pass'=>'m', 'user_key'=>$code));
$main_processor =& $this->Application->recallObject('m_TagProcessor');
return $main_processor->T($params);
}
function GenerateCode()
{
list($usec, $sec) = explode(" ",microtime());
$id_part_1 = substr($usec, 4, 4);
$id_part_2 = mt_rand(1,9);
$id_part_3 = substr($sec, 6, 4);
$digit_one = substr($id_part_1, 0, 1);
if ($digit_one == 0) {
$digit_one = mt_rand(1,9);
$id_part_1 = ereg_replace("^0","",$id_part_1);
$id_part_1=$digit_one.$id_part_1;
}
return $id_part_1.$id_part_2.$id_part_3;
}
function ForgottenPassword($params)
{
return $this->Application->GetVar('ForgottenPassword');
}
function TestCodeIsValid($params)
{
$passed_key = $this->Application->GetVar('user_key');
$user_object = &$this->Application->recallObject('u.forgot');
-
+
// used for error reporting only -> rewrite code + theme (by Alex)
$user_current_object = &$this->Application->recallObject('u', null, Array('skip_autoload' => true)); // TODO: change theme too
if (strlen(trim($passed_key)) == 0) {
$user_current_object->ErrorMsgs['code_is_not_valid'] = $this->Application->Phrase('lu_code_is_not_valid');
$user_current_object->FieldErrors['PwResetConfirm']['pseudo'] = 'code_is_not_valid';
return false;
}
if ($user_object->Load(array('PwResetConfirm'=>$passed_key))) {
$exp_time = $user_object->GetDBField('PwRequestTime') + 3600;
if ($exp_time > adodb_mktime())
{
} else {
$user_current_object->ErrorMsgs['code_expired'] = $this->Application->Phrase('lu_code_expired');
$user_current_object->FieldErrors['PwResetConfirm']['pseudo'] = 'code_expired';
return false;
}
}
else {
$user_current_object->ErrorMsgs['code_is_not_valid'] = $this->Application->Phrase('lu_code_is_not_valid');
$user_current_object->FieldErrors['PwResetConfirm']['pseudo'] = 'code_is_not_valid';
return false;
}
return true;
}
/**
* Returns sitem administrator email
*
* @param Array $params
* @return string
*/
function SiteAdminEmail($params)
{
return $this->Application->ConfigValue('Smtp_AdminMailFrom');
}
function AffiliatePaymentTypeChecked($params)
{
static $checked = false;
if( $this->Application->GetVar('PaymentTypeId') )
{
$apt_object =& $this->Application->recallObject('apt.active');
if( $this->Application->GetVar('PaymentTypeId') == $apt_object->GetDBField('PaymentTypeId') )
{
return 1;
}
else
{
return 0;
}
}
if(!$checked)
{
$checked = true;
return 1;
}
else
{
return 0;
}
}
function HasError($params)
{
$res = parent::HasError($params);
if($this->SelectParam($params,'field,fields') == 'any')
{
$res = $res || $this->Application->GetVar('MustAgreeToTerms'); // need to do it not put module fields into kernel ! (noticed by Alex)
$res = $res || $this->Application->GetVar('SSNRequiredError');
}
return $res;
}
/**
* Returns login name of user
*
* @param Array $params
*/
function LoginName($params)
{
$object =& $this->getObject($params);
return $object->GetID() != -1 ? $object->GetDBField('Login') : 'root';
}
-
+
function CookieUsername($params)
{
$submit_value = $this->Application->GetVar($params['submit_field']);
if ($submit_value !== false) {
return $submit_value;
}
-
+
$username = $this->Application->GetVar('save_username'); // from cookie
-
+
if ($username == 'super-root') {
$username = 'root';
}
return $username === false ? '' : $username;
}
/**
* Checks if user have one of required permissions
*
* @param Array $params
* @return bool
*/
function HasPermission($params)
{
$perm_helper =& $this->Application->recallObject('PermissionsHelper');
/* @var $perm_helper kPermissionsHelper */
return $perm_helper->TagPermissionCheck($params, 'u_HasPermission');
}
-
- }
+ /**
+ * Returns link to post author public profile
+ *
+ * @param Array $params
+ * @return string
+ */
+ function ProfileLink($params)
+ {
+ $object =& $this->getObject($params);
+ $params['user_id'] = $object->GetID();
+ return $this->Application->ProcessParsedTag('m', 'Link', $params);
+ }
+
+ }
?>
\ No newline at end of file
Property changes on: trunk/core/units/users/users_tag_processor.php
___________________________________________________________________
Modified: cvs2svn:cvs-rev
## -1 +1 ##
-1.19
\ No newline at end of property
+1.20
\ No newline at end of property
Index: trunk/core/units/user_profile/user_profile_tp.php
===================================================================
--- trunk/core/units/user_profile/user_profile_tp.php (revision 8633)
+++ trunk/core/units/user_profile/user_profile_tp.php (revision 8634)
@@ -1,76 +1,127 @@
<?php
class UserProfileTagProcessor extends kDBTagProcessor {
function Field($params)
{
$profile_mapping = $this->getProfileMapping();
$field = $this->SelectParam($params, 'name,field');
if (isset($params['profile_field']) && $params['profile_field']) {
$params['name'] = $profile_mapping[$field];
$value = $this->Application->ProcessParsedTag('u.profile', 'Field', $params);
}
else {
- $profile_user_id = $this->Application->GetVar('user_id');
- if (!$profile_user_id) {
- // if none user_id given use current user id
- $profile_user_id = $this->Application->RecallVar('user_id');
- }
- $value = $this->recallUserProfileVar($profile_user_id, $field);
+ $value = $this->recallUserProfileVar($field);
}
if (isset($params['checked']) && $params['checked']) {
$checked_value = isset($params['value']) ? $params['value'] : 1;
$value = ($value == $checked_value) ? 'checked' : '';
}
return $value;
}
/**
+ * Returns user_id to view profile from (same as u:getPassedID)
+ *
+ * @return int
+ */
+ function getProfileUserID()
+ {
+ $profile_user_id = $this->Application->GetVar('user_id');
+ if (!$profile_user_id) {
+ // if none user_id given use current user id
+ $profile_user_id = $this->Application->RecallVar('user_id');
+ }
+
+ return $profile_user_id;
+ }
+
+ /**
* Allows to get persistent var from other user
*
* @param int $user_id
* @param string $var_name
* @return mixed
*/
- function recallUserProfileVar($user_id, $var_name)
+ function recallUserProfileVar($var_name, $user_id = null)
{
static $cached_vars = null;
if (!isset($cached_vars)) {
+ if (!isset($user_id)) {
+ $user_id = $this->getProfileUserID();
+ }
+
$sql = 'SELECT VariableValue, VariableName
FROM '.TABLE_PREFIX.'PersistantSessionData
WHERE (PortalUserId = '.$user_id.') AND (LENGTH(VariableValue) < 10)';
$cached_vars = $this->Conn->GetCol($sql, 'VariableName');
}
return isset($cached_vars[$var_name]) ? $cached_vars[$var_name] : false;
}
/**
* Returns mapping between persistent var name and user profile field
*
* @return Array
*/
function getProfileMapping()
{
$profile_mapping = Array (
'pp_firstname' => 'FirstName',
'pp_lastname' => 'LastName',
'pp_dob' => 'dob',
'pp_email' => 'Email',
'pp_phone' => 'Phone',
'pp_street' => 'Street',
'pp_city' => 'City',
'pp_state' => 'State',
'pp_zip' => 'Zip',
'pp_country' => 'Country',
);
return $profile_mapping;
}
+
+ /**
+ * Returns visible field count in user profile
+ *
+ * @param Array $params
+ * @return int
+ */
+ function ProfileFieldCount($params)
+ {
+ static $field_count = null;
+
+ if (!isset($field_count)) {
+ $profile_mapping = $this->getProfileMapping();
+ $field_count = 0;
+ foreach ($profile_mapping as $var_name => $field_name) {
+ if ($this->recallUserProfileVar($var_name) == 1) {
+ $field_count++;
+ }
+ }
+ }
+
+ return $field_count;
+ }
+
+ /**
+ * Allows to detect that not all fields were shown
+ *
+ * @param Array $params
+ * @return bool
+ */
+ function NotLastField($params)
+ {
+ $counter = (int)$this->Application->GetVar($params['counter']);
+
+ return $counter < $this->ProfileFieldCount();
+ }
}
?>
\ No newline at end of file
Property changes on: trunk/core/units/user_profile/user_profile_tp.php
___________________________________________________________________
Modified: cvs2svn:cvs-rev
## -1 +1 ##
-1.2
\ No newline at end of property
+1.3
\ No newline at end of property
Event Timeline
Log In to Comment